{"id":"6e06f8f1-8e6e-4b00-b522-decfc4f785d1","shortId":"uned3m","kind":"skill","title":"session-index","tagline":"Search, analyze, and synthesize across all your Claude Code sessions. Ask \"what did I try last time?\" and get answers with resume links.","description":"# Session index skill\n\nYou have access to a session index — a SQLite database with FTS5 full-text search across all Claude Code sessions. Use it whenever the user asks about past sessions, previous conversations, or wants to know what they've tried before.\n\n**The user's interface is this conversation.** They ask naturally (\"Didn't we discuss browser control recently?\"), you translate to CLI commands, and present results conversationally. They should never need to know the CLI syntax.\n\n## How to handle session queries\n\n### 1. Extract keywords from the question\n\nThe user says: \"Didn't we discuss browser control recently?\"\nYou search: `sessions \"browser control\"`\n\nThe user says: \"What approaches have I tried for form automation?\"\nYou search: `sessions \"form automation\"`\n\nThe user says: \"How much time did I spend on Acme this week?\"\nYou run: `sessions analytics --client \"Acme\" --week`\n\n### 2. Run the right command via Bash\n\n**Search** — find sessions by topic:\n```bash\nsessions \"relevant keywords\"\nsessions \"relevant keywords\" --context    # includes conversation excerpts\n```\n\n**Context** — read the actual conversation from a session:\n```bash\nsessions context <session_id> \"search term\"   # exchanges matching a term\nsessions context <session_id>                 # all exchanges\n```\n\n**Analytics** — effort, time, tool usage:\n```bash\nsessions analytics                    # overall\nsessions analytics --client \"Acme\"    # per client\nsessions analytics --week             # this week\nsessions analytics --month            # this month\n```\n\n**Filter** — find sessions by metadata:\n```bash\nsessions find --client \"Acme\"              # by client\nsessions find --tool Task --week           # by tool + date\nsessions find --project myapp              # by project\nsessions recent 20                         # last N sessions\n```\n\n### 3. For synthesis (\"what worked?\", \"what have I tried?\")\n\nThis is the most valuable capability. When the user asks a question that spans multiple sessions:\n\n1. Search: `sessions \"topic\" -n 10`\n2. For the top 3-5 results, extract context: `sessions context <id> \"topic\" -n 3`\n3. Spawn a Task with `model=\"haiku\"` to synthesize:\n   - What approaches were tried?\n   - What worked / what failed?\n   - Recurring patterns?\n   - Current state?\n4. Present the synthesis conversationally with `claude --resume <id>` links for each source session\n\nThis uses an in-session Haiku subagent — no external API key needed.\n\n### 4. Present results conversationally\n\nDon't dump raw CLI output. Summarize:\n- \"You discussed browser control in 3 sessions last week...\"\n- \"The main approach that worked was...\"\n- Include `claude --resume <session_id>` links so they can jump back in\n- If context is relevant, quote key exchanges\n\n## Installation\n\n```bash\npip install claude-session-index\n```\n\nFirst run of any command auto-indexes all existing sessions.\n\n## Data location\n\n- **Database:** `~/.session-index/sessions.db`\n- **Topics:** `~/.claude/session-topics/`\n- **Config:** `~/.session-index/config.json` (optional)","tags":["session","index","claude","lee-fuhr","agent-skills","analytics","claude-code","claude-code-skill","claude-code-skills","claude-skill","cli","developer-tools"],"capabilities":["skill","source-lee-fuhr","skill-session-index","topic-agent-skills","topic-analytics","topic-claude","topic-claude-code","topic-claude-code-skill","topic-claude-code-skills","topic-claude-skill","topic-cli","topic-developer-tools","topic-fts5","topic-search","topic-session"],"categories":["claude-session-index"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/lee-fuhr/claude-session-index/session-index","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add lee-fuhr/claude-session-index","source_repo":"https://github.com/lee-fuhr/claude-session-index","install_from":"skills.sh"}},"qualityScore":"0.459","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 19 github stars · SKILL.md body (3,034 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-23T07:01:12.513Z","embedding":null,"createdAt":"2026-04-18T23:06:20.957Z","updatedAt":"2026-04-23T07:01:12.513Z","lastSeenAt":"2026-04-23T07:01:12.513Z","tsv":"'-5':305 '/.claude/session-topics':428 '/.session-index/config.json':430 '/.session-index/sessions.db':426 '1':111,294 '10':299 '2':168,300 '20':265 '3':269,304,313,314,377 '4':335,361 'access':32 'acm':158,166,224,246 'across':8,46 'actual':194 'analyt':164,212,219,222,228,233 'analyz':5 'answer':23 'api':358 'approach':136,324,383 'ask':14,56,79,287 'auto':418 'auto-index':417 'autom':142,147 'back':395 'bash':174,180,199,217,242,405 'browser':85,124,130,374 'capabl':283 'claud':11,48,341,388,409 'claude-session-index':408 'cli':91,104,369 'client':165,223,226,245,248 'code':12,49 'command':92,172,416 'config':429 'context':187,191,201,209,308,310,398 'control':86,125,131,375 'convers':61,77,96,189,195,339,364 'current':333 'data':423 'databas':39,425 'date':256 'didn':81,120 'discuss':84,123,373 'dump':367 'effort':213 'excerpt':190 'exchang':204,211,403 'exist':421 'extern':357 'extract':112,307 'fail':330 'filter':237 'find':176,238,244,250,258 'first':412 'form':141,146 'fts5':41 'full':43 'full-text':42 'get':22 'haiku':320,354 'handl':108 'in-sess':351 'includ':188,387 'index':3,28,36,411,419 'instal':404,407 'interfac':74 'jump':394 'key':359,402 'keyword':113,183,186 'know':65,102 'last':19,266,379 'link':26,343,390 'locat':424 'main':382 'match':205 'metadata':241 'model':319 'month':234,236 'much':152 'multipl':292 'myapp':260 'n':267,298,312 'natur':80 'need':100,360 'never':99 'option':431 'output':370 'overal':220 'past':58 'pattern':332 'per':225 'pip':406 'present':94,336,362 'previous':60 'project':259,262 'queri':110 'question':116,289 'quot':401 'raw':368 'read':192 'recent':87,126,264 'recur':331 'relev':182,185,400 'result':95,306,363 'resum':25,342,389 'right':171 'run':162,169,413 'say':119,134,150 'search':4,45,128,144,175,202,295 'session':2,13,27,35,50,59,109,129,145,163,177,181,184,198,200,208,218,221,227,232,239,243,249,257,263,268,293,296,309,347,353,378,410,422 'session-index':1 'skill':29 'skill-session-index' 'sourc':346 'source-lee-fuhr' 'span':291 'spawn':315 'spend':156 'sqlite':38 'state':334 'subag':355 'summar':371 'syntax':105 'synthes':7,322 'synthesi':271,338 'task':252,317 'term':203,207 'text':44 'time':20,153,214 'tool':215,251,255 'top':303 'topic':179,297,311,427 'topic-agent-skills' 'topic-analytics' 'topic-claude' 'topic-claude-code' 'topic-claude-code-skill' 'topic-claude-code-skills' 'topic-claude-skill' 'topic-cli' 'topic-developer-tools' 'topic-fts5' 'topic-search' 'topic-session' 'translat':89 'tri':18,69,139,277,326 'usag':216 'use':51,349 'user':55,72,118,133,149,286 'valuabl':282 've':68 'via':173 'want':63 'week':160,167,229,231,253,380 'whenev':53 'work':273,328,385","prices":[{"id":"f5880108-ca6a-4701-94f7-bf705a01b1b5","listingId":"6e06f8f1-8e6e-4b00-b522-decfc4f785d1","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"lee-fuhr","category":"claude-session-index","install_from":"skills.sh"},"createdAt":"2026-04-18T23:06:20.957Z"}],"sources":[{"listingId":"6e06f8f1-8e6e-4b00-b522-decfc4f785d1","source":"github","sourceId":"lee-fuhr/claude-session-index/session-index","sourceUrl":"https://github.com/lee-fuhr/claude-session-index/tree/main/skills/session-index","isPrimary":false,"firstSeenAt":"2026-04-18T23:06:20.957Z","lastSeenAt":"2026-04-23T07:01:12.513Z"}],"details":{"listingId":"6e06f8f1-8e6e-4b00-b522-decfc4f785d1","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"lee-fuhr","slug":"session-index","github":{"repo":"lee-fuhr/claude-session-index","stars":19,"topics":["agent-skills","ai","analytics","claude","claude-code","claude-code-skill","claude-code-skills","claude-skill","cli","developer-tools","fts5","search","session","session-management","session-search","sqlite"],"license":"mit","html_url":"https://github.com/lee-fuhr/claude-session-index","pushed_at":"2026-03-21T23:17:46Z","description":"Index, search, and analyze your Claude Code sessions. Full-text search, conversation retrieval, analytics, and cross-session synthesis.","skill_md_sha":"68c52787d909155e4ba4653adb4b29fbf26fd467","skill_md_path":"skills/session-index/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/lee-fuhr/claude-session-index/tree/main/skills/session-index"},"layout":"multi","source":"github","category":"claude-session-index","frontmatter":{"name":"session-index","description":"Search, analyze, and synthesize across all your Claude Code sessions. Ask \"what did I try last time?\" and get answers with resume links."},"skills_sh_url":"https://skills.sh/lee-fuhr/claude-session-index/session-index"},"updatedAt":"2026-04-23T07:01:12.513Z"}}