skills/chandlerhardy/chronicle-context-retriever/SKILL.md
Search and retrieve context from past development sessions using Chronicle data. Works with MCP (fast, structured) or CLI commands (portable). Use when user asks about previous work, wants to recall past decisions, needs to understand codebase history, or wants to avoid repeating past approaches.
npx skillsauth add aiskillstore/marketplace chronicle-context-retrieverInstall 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.
This skill helps you search and retrieve context from past development sessions using Chronicle's database. Works with both MCP server (fast, structured JSON) or CLI commands (portable, everywhere).
This skill auto-activates! (Milestone #13)
Prompts like "how did I implement auth?" or "what did I do yesterday?" automatically trigger this skill. No manual loading needed!
Trigger patterns: how did I, what did I do, find sessions about, search past work See:
docs/HOOKS.mdfor full details
Use this skill when:
Option 1: With MCP (Preferred)
mcp__chronicle__search_sessions() returns structured JSON (fast!)mcp__chronicle__get_session_summary() for full summariesOption 2: With CLI (Portable)
chronicle search "keywords" returns formatted outputchronicle session <id> for full summariesDecision Tree:
Search past work
├─ MCP available? → Use mcp__chronicle__search_sessions() for fast JSON
└─ CLI only? → Use `chronicle search` and parse output
The most effective way to search Chronicle is using a two-phase approach:
Phase 1: Broad Discovery
Phase 2: Deep Dive
Example workflow:
# Phase 1: Broad OR search (multiple words = implicit OR)
results = mcp__chronicle__search_sessions(query="hooks json output", limit=10)
# → Returns sessions 108, 109, 110, 111, 112 (any word matches)
# Review the results - which sessions look most relevant?
# Get full summaries for promising sessions
summaries = mcp__chronicle__get_sessions_summaries(session_ids=[110, 111, 112])
# Phase 2: After reading summaries, dig deeper with AND
# Now you know the exact terms to search for
precise_results = mcp__chronicle__search_sessions(
query="hookSpecificOutput AND decision/reason/systemMessage",
limit=5
)
# → Returns only sessions with BOTH terms (precise match)
Why this works:
With MCP:
# Search session summaries and prompts for keywords
mcp__chronicle__search_sessions(query="authentication", limit=10)
mcp__chronicle__search_sessions(query="database migration", limit=5)
With CLI:
# Search sessions
chronicle search "authentication" --limit 10
chronicle search "database migration" --limit 5
With MCP:
# Get sessions from specific time periods
mcp__chronicle__get_sessions(days=7, limit=20) # Last week
mcp__chronicle__get_timeline(days=1) # Yesterday with commits
With CLI:
# View recent sessions
chronicle sessions --days 7 --limit 20
chronicle timeline yesterday # Yesterday with commits
With MCP:
# Filter sessions by repository path
mcp__chronicle__get_sessions(repo_path="/Users/.../my-app", limit=20)
With CLI:
# Sessions command supports repo filtering via config
chronicle sessions --limit 20 # Defaults to current repo
With MCP:
# Filter by AI tool used
mcp__chronicle__get_sessions(tool="claude-code", limit=10)
mcp__chronicle__get_sessions(tool="gemini-cli", limit=10)
With CLI:
# Filter by tool
chronicle sessions --tool claude-code --limit 10
chronicle sessions --tool gemini-cli --limit 10
With MCP:
# Search for authentication-related sessions
sessions = mcp__chronicle__search_sessions(query="authentication", limit=5)
# Get full details of relevant sessions
for session in sessions:
details = mcp__chronicle__get_session_summary(session_id=session["id"])
# Extract implementation approach and decisions
With CLI:
# Search for authentication work
chronicle search "authentication" --limit 5
# View specific session details
chronicle session <id>
# Parse output for approach and decisions
With MCP:
# Search for database migration issues
sessions = mcp__chronicle__search_sessions(query="database migration blocker", limit=5)
# Find relevant session and extract problem + solution
With CLI:
# Search for migration blockers
chronicle search "database migration blocker" --limit 5
# View session with blocker
chronicle session <id>
With MCP:
# Search for user-dashboard work
sessions = mcp__chronicle__search_sessions(query="user-dashboard", limit=10)
# List chronological sessions and summarize progress
With CLI:
# Search for dashboard work
chronicle search "user-dashboard" --limit 10
# View sessions chronologically
chronicle sessions --limit 10
When retrieving context, structure the response like:
## Context from Past Sessions
### Session {id} - {date}
**What was done:** {summary}
**Key decision:** {decision and rationale}
**Outcome:** {result}
**Related:** [[Session-{id}]]
### Session {id} - {date}
...
## Relevant for Current Work
- {How this context applies}
- {What to keep in mind}
- {What to avoid based on past experience}
MCP Approach (Preferred):
mcp__chronicle__search_sessions - Search session summaries and prompts (fast JSON)mcp__chronicle__get_session_summary - Get full summary for specific sessionmcp__chronicle__get_sessions - List sessions with filters (tool, repo, days)mcp__chronicle__get_timeline - Get sessions + commits for time periodmcp__chronicle__search_commits - Search git commit messagesmcp__chronicle__get_commits - List commits with filtersCLI Alternatives (Portable):
chronicle search "query" - Search sessions by keywordschronicle session <id> - Get full session summarychronicle sessions --limit 10 - List recent sessionschronicle timeline today - View sessions + commitschronicle search "commit message" - Search commitschronicle show today - List recent commitsOnly if user wants vault notes:
mcp__obsidian__search_notes - Find documented sessions in vaultmcp__obsidian__read_note - Read Obsidian note for sessiondevelopment
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.