History Insight

ai-native-camp/camp-2/.claude/skills/history-insight

作者 ai-native-camp16c00971bf22無授權條款19 個星標收錄於 2026年10月9日更新於 2026年10月9日儲存庫6 個月前更新

This skill should be used when user wants to access, capture, or reference Claude Code session history. Trigger when user says "capture session", "save session history", or references past/current conversation as a source - whether for saving, extracting, summarizing, or reviewing. This includes any mention of "what we discussed", "today's work", "session history", or when user treats the conversation itself as source material (e.g., "from our conversation").

AI 產生的概覽

分析 Claude Code 工作階段歷史檔案,從過往對話中擷取洞察與摘要。

功能
讀取存放在本機 Claude 專案目錄下、以 JSONL 格式儲存的 Claude Code 工作階段歷史,可依專案範圍或日期篩選。它會解析或前處理這些檔案,包括使用指令碼移除 thinking 與 tool_use 項目,並在檔案較多時分批與彙總。最終產出包含擷取洞察與訊息數量的報告。
適用情境
當使用者想要擷取、儲存、提取、摘要或回顧過去或目前的 Claude Code 對話,或將對話本身當作素材來源時使用。
執行需求
需要存取本機 Claude Code 工作階段檔案、jq 命令列工具,以及 find、stat、split 等標準 shell 工具。此技能附有可執行指令碼(scripts/extract-session.sh)與一份關於工作階段檔案格式的參考文件。

History Insight

Claude Code 세션 히스토리를 분석하고 인사이트를 추출합니다.


Data Location

~/.claude/projects/<encoded-cwd>/*.jsonl

Path Encoding: /Users/foo/project → -Users-foo-project

상세 파일 포맷: ${baseDir}/references/session-file-format.md


Execution Algorithm

Step 1: Ask Scope [MANDATORY]

스코프 결정:

  1. 명시된 경우 (AskUserQuestion 생략 가능):

    • "현재 프로젝트만" / "이 프로젝트" → current_project
    • "모든 세션" / "전체" → all_sessions
  2. 명시되지 않은 경우 - AskUserQuestion 호출:

    question: "세션 검색 범위를 선택하세요"options:  - "현재 프로젝트만" → ~/.claude/projects/<encoded-cwd>/*.jsonl  - "모든 Claude Code 세션" → ~/.claude/projects/**/*.jsonl

Step 2: Find Session Files

bash
# Current project onlyfind ~/.claude/projects/<encoded-cwd> -name "*.jsonl" -type f
# All sessions (모든 프로젝트)find ~/.claude/projects -name "*.jsonl" -type f

날짜 필터링: 파일의 mtime(수정시간) 확인 후 필터. OS별 stat 옵션 다름:

  • macOS: stat -f "%Sm" -t "%Y-%m-%d" <file>
  • Linux: stat -c "%y" <file>

Step 3: Process Sessions

Decision Tree
Session files found?├─ No → Error: "No sessions found"└─ Yes → How many files?    ├─ 1-3 files → Direct Read + parse    └─ 4+ files → Batch Extract Pipeline
1-3 Files

직접 Read로 JSONL 파싱. 파일이 크면(≥5000 tokens) extract-session.sh 사용:

bash
${baseDir}/scripts/extract-session.sh <session.jsonl>
4+ Files: Batch Extract Pipeline
  1. 캐시 디렉토리 생성 (/tmp/cc-cache/<analysis-name>/)
  2. 세션 목록 저장 (sessions.txt)
  3. jq로 메시지 일괄 추출 (user_messages.txt)
  4. 정리 및 필터링 (clean_messages.txt)
  5. Task(opus)로 종합 분석
파일이 너무 클 때: 병렬 배치 분석

clean_messages.txt가 너무 커서 Read 실패 시:

  1. 파일 분할:

    bash
    split -l 2000 clean_messages.txt /tmp/cc-cache/<name>/batch_
  2. 병렬 Task(opus) 호출:

    Task(subagent_type="general-purpose", model="opus", run_in_background=true)prompt: "batch_XX 파일을 읽고 주제/패턴 요약해줘"
  3. 결과 병합: Task(opus)로 종합


Step 4: Report Results

markdown
## Session Capture Complete
- **Sessions:** N files processed- **Messages:** X total, Y after filter
### Extracted Insights[분석 결과]

Error Handling

ScenarioResponse
No session files found"No session files found for this project."
File too largeAuto-preprocess with extract-session.sh
jq not installed"Error: jq is required. Install with: brew install jq"
Task failed"Warning: Could not process [file]. Skipping."
0 relevant sessions"No sessions matched your criteria."

Security Notes

  • 출력에 전체 경로 노출 금지 (~ prefix 사용)

Related Resources

  • ${baseDir}/scripts/extract-session.sh - JSONL 압축 (thinking, tool_use 제거)
  • ${baseDir}/references/session-file-format.md - JSONL 구조 및 파싱

來源與署名

來源:ai-native-camp/camp-2位於.claude/skills/history-insight提交16c0097

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架