This skill should be used when the user asks to "record session", "log interactions", "track session activity", "audit Claude usage", "create session logs", or when session recording is enabled. Provides instructions for the hybrid recording approach where Claude self-reports summaries of completed work.
/plugin marketplace add rafaelcalleja/claude-market-place/plugin install session-recorder@claude-market-placeThis skill is limited to using the following tools:
hooks/record_tool_result.shhooks/record_user_prompt.shhooks/session_finalize.shhooks/session_init.shreferences/integration.mdreferences/log-analysis.mdscripts/add_assistant_response.shRecords all Claude Code session interactions using a hybrid approach: automated hooks capture user messages and tool calls, while explicit self-reporting captures summaries of completed work.
The session recorder uses two complementary mechanisms:
Four hooks automatically capture events without any action required:
| Hook | Event | What It Records |
|---|---|---|
SessionStart | Session begins | Creates log file, records session ID and start time |
UserPromptSubmit | User sends message | Records user message content and timestamp |
PostToolUse | Tool completes | Records tool name, arguments, and result |
SessionEnd | Session ends | Updates end timestamp, calculates statistics |
Self-report summaries of completed work to capture reasoning and context that hooks cannot observe. This provides the "why" behind the "what" recorded by hooks.
Report after completing significant work:
Execute the helper script with summary information:
bash ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh \
--summary "Brief description of what was accomplished" \
--actions "Specific actions taken" \
--tools "Tool1,Tool2,Tool3"
| Argument | Required | Description |
|---|---|---|
--summary | Recommended | Brief description of accomplishment (1-2 sentences) |
--actions | Optional | Comma-separated list of specific actions taken |
--tools | Optional | Comma-separated list of tools used |
After implementing a feature:
bash ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh \
--summary "Implemented user authentication with JWT tokens" \
--actions "Created auth middleware, added token validation, updated routes" \
--tools "Write,Edit,Bash"
After fixing a bug:
bash ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh \
--summary "Fixed race condition in database connection pool" \
--actions "Added mutex lock, implemented connection timeout" \
--tools "Edit,Read"
After research and decision:
bash ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh \
--summary "Analyzed performance bottleneck - recommending Redis caching" \
--actions "Profiled application, identified database queries as bottleneck"
After configuration:
bash ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh \
--summary "Configured CI/CD pipeline with GitHub Actions" \
--actions "Created workflow file, added test and deploy stages" \
--tools "Write"
Logs are stored in .claude/session_logs/session_YYYY-MM-DD.json:
{
"session_id": "UUID",
"start_timestamp": "ISO-8601",
"end_timestamp": "ISO-8601",
"project_path": "/absolute/path",
"interactions": [
{
"interaction_id": "UUID",
"timestamp": "ISO-8601",
"type": "user_message|tool_call|tool_result|assistant_summary",
"content": "...",
"metadata": {}
}
]
}
| Type | Source | Content |
|---|---|---|
user_message | UserPromptSubmit hook | User's message text |
tool_call | PostToolUse hook | Tool name and arguments |
tool_result | PostToolUse hook | Tool output (truncated if large) |
assistant_summary | Self-reporting | Summary, actions, tools used |
Write summaries that capture intent and context:
Good: "Refactored authentication to use middleware pattern for better separation of concerns"
Poor: "Changed some files"
Good: "Fixed XSS vulnerability by sanitizing user input in comment form"
Poor: "Fixed bug"
Skip self-reporting for:
Self-report at natural completion points, not after every action. One summary per logical unit of work is ideal.
Verify jq is installed:
which jq
Check directory permissions:
ls -la .claude/session_logs/
Ensure script is executable:
chmod +x ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh
Test manually:
bash ${CLAUDE_PLUGIN_ROOT}/skills/session-recorder/scripts/add_assistant_response.sh --summary "Test"
jq - JSON processing (required)uuidgen - UUID generation (usually pre-installed)Install on Ubuntu/Debian:
sudo apt-get install jq uuid-runtime
Install on macOS:
brew install jq
references/log-analysis.md - Guide to analyzing session logsreferences/integration.md - Integrating with external toolsscripts/add_assistant_response.sh - Self-reporting helperhooks/session_init.sh - Session initializationhooks/record_user_prompt.sh - User message recordinghooks/record_tool_result.sh - Tool usage recordinghooks/session_finalize.sh - Session finalizationCreating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.