Implements automatic memory extraction when Claude Code sessions end:
- Add SessionEnd hook to hooks.json with 120s timeout
- Create session-end.sh wrapper that parses hook input and runs summarizer
- Create summarize-transcript.py that:
- Loads transcript from Claude's storage
- Skips trivial sessions (<3 user messages)
- Extracts paths/facts via heuristics
- Uses Claude CLI (subscription auth) for decisions/preferences
- Saves to memory files with deduplication
- Updates history index with summarized flag
Uses `claude -p --model haiku` for LLM extraction, leveraging
existing subscription credentials instead of requiring API key.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Documentation:
- Add commands/README.md documenting all slash commands
- Add skills/README.md documenting skill structure and patterns
- Add .claude-plugin/marketplace.json for local dev testing
Hooks:
- Add PreCompact hook to remind about context preservation
- Update hooks/README.md with new hook
GCal improvements:
- Add scripts/next_event.py for single event lookup
- Update SKILL.md with simplified format and allowed-tools: Read
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add hooks/scripts/session-start.sh that:
- Checks for unsummarized sessions
- Checks for pending decisions
- Outputs context to session
- Update hooks.json to use the script
- Add hooks/README.md documenting hook events and configuration
This provides automatic context loading at session start.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>