ccstory week。系統印「Parsing sessions and token usage…」
三條主要流程:init 三選一、改類別(folder vs LLM)、 刷新週報(flag 矩陣)。 每個節點都標出:用戶輸入 → 系統做什麼 → 預期產出 → 副作用 → 下一步該幹嘛。
ccstory init 是一次性決策。三個選項對應三種「初始信任 LLM 的程度」——
Quick 信 LLM 看 folder 命名、Deep 信 LLM 看每個 session 內容、Skip 完全靠 keyword。
ccstory init--quick ~10 秒{folder: [first_user_text]}claude -p 整批分類
~/.ccstory/config.toml[categories] block
ccstory week--deep ~1-3 分鐘claude -p per-session 判斷~/.ccstory/config.toml (folder rules)~/.ccstory/cache.db (per-session bucket)
ccstory week--skip 瞬時,無 LLMconfig.toml[categories] 留空~/.ccstory/config.toml(template)ccstory week 走內建 keyword| 分支 | 耗時 | 用了 LLM? | 寫進 cache.db? | 寫進 config.toml? | 下次 ccstory week 的影響 |
|---|---|---|---|---|---|
| Quick | ~10s | 是(1 次 batch) | 否 | 是(folder rules) | folder rule 命中的直接定案;未命中走 layer 2 LLM(第一次跑會 call) |
| Deep | ~1-3min | 是(per-session batch) | 是(per-session) | 是(folder rules) | folder rule + LLM cache 同時就緒 → 第一次跑就全 cache hit |
| Skip | 瞬時 | 否 | 否 | 是(空 template) | 完全靠內建 DEFAULT_RULES + layer 2 fresh LLM call(hybrid 預設) |
session_content_buckets 快取的分支。
Quick / Skip 後的第一次 ccstory week,folder 沒命中的 session 還是會走一次 LLM——只是不會跑 200 個那麼多。
用戶看到 recap 想改類別時,會碰到 ccstory 最容易誤解的設計: category 是兩層。CLI / config 改的是 folder layer; LLM layer 只能透過清快取 + 重跑來「重新被分類」。
ccstory category set research ai-proj~/.ccstory/config.toml
[categories] tablesession_content_buckets
config.toml 即時生效ccstory week--refresh(清本期間 cache)--refresh-all(清光)init --deep(force_refresh batch)
invalidate_content_buckets(sids)session_content_buckets 對應 rowneeds_llm
session_content_buckets 被刪掉的 row 不見了ccstory weekclaude -p| 用戶意圖 | 打的指令 | 為什麼 |
|---|---|---|
把 my-project 永遠歸到 research |
ccstory category set research my-project |
folder rule = layer 1,永遠勝出。下次跑即時生效。 |
| 讓 LLM 重新看內容判斷(不動 pin) | ccstory week --refresh |
清本週 LLM cache。folder rule 還是優先;沒 pin 的部分重 call LLM。 |
| 連 pin 的也讓 LLM 重判一次 | ccstory week --classify content --refresh |
content 模式跳過 layer 1,--refresh 強制 LLM 重 call。 |
| 新增了一個 bucket,要套到歷史 session | ccstory week --refresh-all |
整表 DELETE,LLM 才會在新 bucket 體系下重判。 |
| 大改 folder 命名規則想重來 | ccstory init --deep |
重採樣 + force_refresh batch + 寫回 folder rule + cache。 |
| 對「特定一個 session」推翻 LLM 判斷 | ⚠ 沒有此功能 | 目前只能升級到 folder 層 pin(影響該 folder 全部 session)。 |
research bucket、
希望歷史 session「該屬於 research 的」自動歸位。但 LLM cache 是
per session_id 永久 hit,之前在「沒 research」的時代被判成 coding 的 session
不會自己改過來——你必須 --refresh-all 強制重判。
跑 ccstory week 時,底下走 7 個 stage。每個 stage 都會被特定 flag 影響、
決定要不要走 LLM、要不要寫快取。
~/.claude/projects/**/*.jsonl~/.ccstory/reports/| 用戶意圖 | 指令 | 影響的 stage | 預期 |
|---|---|---|---|
| 「平常週報,越快越好」 | ccstory week |
3 fallback / 4 cache hit / 6 cache hit | < 1 秒(第二次起) |
| 「年度回顧,潤稿到極致」 | ccstory week --llm-narrative |
3 走 claude -p | ~40s × N session(顯示 ETA,可 Ctrl+C) |
| 「只要數字,不要旁白」 | ccstory week --minimal |
跳過 stage 3 + 6 | 最快路徑,純表格 |
| 「改完 category 想看新結果」 | ccstory week --refresh |
清 stage 4 快取 | 本期間 LLM 重判一次 |
| 「讓 LLM 重新審視所有 session」 | ccstory week --classify content --refresh-all |
stage 4 跳 folder + 全清快取 | ~40s × N session,重新分桶 |
| 「丟進 Obsidian vault」 | ccstory week --for=obsidian --reports-dir ~/vault/recaps |
stage 7 換 flavor | YAML frontmatter + [[wikilinks]] |
| 「不想看 vs 上週的對比」 | ccstory week --no-compare |
跳過 comparison stage(不在 7-stage 主線,但會跑) | 純當期報告 |
ccstory week 的完整時間軸ccstory week。系統印「Parsing sessions and token usage…」
✓ 74 sessions · 3,692 turns
session_summaries 快取。cache hit 的不動;
miss 的——預設用 first_user_msg fallback,幾乎瞬間。
claude -p,逐個跑 ~40s。會印 ETA 警告
+ Rich progress bar,可 Ctrl+C 中斷。
claude -p。
印「Content-classifying N session(s)」+ status spinner。結果寫回
session_content_buckets 表,下次跑 cache hit。
✓ resolved into N categories。
claude -p 跨所有 bucket 寫 3 句 overall narrative。
cache key 是「session id 集合 + label」,沒變不重 call。
compare_to_previous,
生 vs 上期的 deltas + 旁白。可用 --no-compare 整段跳過。
~/.ccstory/reports/recap-2026-W20.md。
最後一行 breadcrumb:「Bucket looks wrong? ccstory category set …」
--refresh → 回來再跑一次。
這是 ccstory 的核心 feedback loop。
pipx install ccstory → ccstory init → 選 [Y] Quick。
看到提案 bucket 表,覺得「coding 包太雜」。
ccstory week。看到 coding 53%。覺得有個 folder research-ai-tools 應該歸到 research。
ccstory category set research research-ai-tools →
ccstory week --refresh。看到 research 17% 出現了。滿意。
~/.claude/projects/ 自動長新 jsonl。ccstory 不會主動跑。
ccstory week。新的一週、cache hit 為主、< 1 秒跑完。
卡片 + markdown 報告當作週報素材。
ccstory week --refresh-all 一次性重判全歷史。