skills/pi-share/SKILL.md
Use when the user asks to load, parse, or summarize pi-share session URLs or gist IDs.
npx skillsauth add goofansu/pi-stuff pi-shareInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Load and parse session transcripts from pi-share URLs (shittycodingagent.ai, buildwithpi.ai, buildwithpi.com, pi.dev).
Loading sessions: Use this skill when the user provides a URL like:
https://shittycodingagent.ai/session/?<gist_id>https://buildwithpi.ai/session/?<gist_id>https://buildwithpi.com/session/?<gist_id>https://pi.dev/session/?<gist_id>https://pi.dev/session/#<gist_id>46aee35206aefe99257bc5d5e60c6121#46aee35206aefe99257bc5d5e60c6121Human summaries: Use --human-summary when the user asks you to:
The human summary focuses on: initial goals, re-prompts, steering/corrections, interventions, and overall prompting style.
?session.html file with base64-encoded session data# Get full session data (default)
node ~/.pi/agent/skills/pi-share/fetch-session.mjs "<url-or-gist-id>"
# Get just the header
node ~/.pi/agent/skills/pi-share/fetch-session.mjs <gist-id> --header
# Get entries as JSON lines (one entry per line)
node ~/.pi/agent/skills/pi-share/fetch-session.mjs <gist-id> --entries
# Get the system prompt
node ~/.pi/agent/skills/pi-share/fetch-session.mjs <gist-id> --system
# Get tool definitions
node ~/.pi/agent/skills/pi-share/fetch-session.mjs <gist-id> --tools
# Get human-centric summary (what did the human do in this session?)
node ~/.pi/agent/skills/pi-share/fetch-session.mjs <gist-id> --human-summary
The --human-summary flag generates a ~300 word summary focused on the human's experience:
This uses claude-haiku-4-5 via pi -p to analyze the condensed session transcript.
The decoded session contains:
interface SessionData {
header: {
type: "session";
version: number;
id: string; // Session UUID
timestamp: string; // ISO timestamp
cwd: string; // Working directory
};
entries: SessionEntry[]; // Conversation entries (JSON lines format)
leafId: string | null; // Current branch leaf
systemPrompt?: string; // System prompt text
tools?: { name: string; description: string }[];
}
Entry types include:
message - User/assistant/toolResult messages with content blocksmodel_change - Model switchesthinking_level_change - Thinking mode changescompaction - Context compaction eventsMessage content block types:
text - Text contenttoolCall - Tool invocation with toolName and argsthinking - Model thinking contentimage - Embedded images# Pipe entries through jq to filter
node ~/.pi/agent/skills/pi-share/fetch-session.mjs "<url>" --entries | jq 'select(.type == "message" and .message.role == "user")'
# Count tool calls
node ~/.pi/agent/skills/pi-share/fetch-session.mjs "<url>" --entries | jq -s '[.[] | select(.type == "message") | .message.content[]? | select(.type == "toolCall")] | length'
development
Use when the user asks to research a topic online, find current information, compare options, or produce a research report.
content-media
Use when the user asks to transcribe audio files to text.
documentation
Use when the user asks to convert a URL or local document into Markdown or summarize it.
development
Use when the user asks to simplify, clean up, or improve changed code.