ai-usage-mirrorlisted
Install: claude install-skill Lazarus893/ai-usage-mirror
# ai-usage-mirror
给"我"(Claude)一面镜子:回顾用户跟本地各 AI 助手的真实交互,总结使用习惯与常用任务/代码。
架构与实现细节见同目录 `ARCHITECTURE.md`;所有确定性活由 `scripts/mirror.py` 完成,语义判断由本 skill(装载它的我)完成。
## 何时用
用户想**回顾/复盘自己怎么用 AI**、想知道**常做哪些任务、常写哪些代码、哪类需求反复返工**时。
不是实时编排(那是别的工具),是**回顾性个人画像**。
## 数据边界(先说清,别过度承诺)
- v1 只覆盖**留下本地结构化记录的 CLI/编辑器类助手**:Claude Code(`~/.claude/projects`)+ Codex(`~/.codex/sessions`)。
- ChatGPT/Claude 桌面版对话在服务端或 IndexedDB,**本地拿不到**,不在范围。
- 全程**只读源、脱敏后入库、绝不上传**。
## 执行流程(我按此跑)
工作目录 = 本 skill 目录。所有命令 `--json` 时 **stdout 只出数据、stderr 出进度**;按语义退出码分支。
1. **预检**:`python3 scripts/mirror.py triage`
- exit 0 → 就绪,读其 `next_command`;exit 3(空库)→ 先 `ingest`;exit 6(版本不符)→ `ingest --full`。
2. **增量入库**:`python3 scripts/mirror.py ingest`(通常 <0.2s;首次约 2s)。
3. **取聚合**:`python3 scripts/mirror.py digest --json` → 读 stdout 的 digest(≤30KB,**只有它进我的 context,原始 transcript 永不进**)。
4. **取任务簇**:`python3 scripts/mirror.py cluster --json`(有 `fastembed` 时可加 `--embeddings` 提质;没有会自动降级 TF-IDF)。
5. **按需取证**(可选):对某主题想要原话佐证时 `python3 scripts/mirror.py pack "<主题词>" --max-tokens 3000`。
6. **生成报告页并唤起**:`python3 scripts/mirror.py report` → 把真实数据注入 `report_template.html`,写出 `.state/report.html`(编辑部式审计手记,单文件可双击),**默认自动在浏览器打开**供审阅(`--no-open` 可抑制)。
7. 同时在对话里基于 digest + clusters 写**五段报告**(见下)作为速览,收尾询问是否落盘到 `memory/`。
## 读数纪律(关键,别读错)
digest 是**分层**的,解读时必须区分:
- **你的直接投入**(会话数 / 作息 `temporal` / 摩擦 `friction_candidates` / `task_prompts`)= 仅 `real` 会话(你亲手开的顶层对话)。
- **发生的工作量**(`tools_used` / `commands_top` / `edited_filetypes` / `models` / `outpu