AI 对话自我洞察分析器(AI Self-Insight Analyzer)
核心理念:你与 AI 的每一次对话,都是一面映照内心的镜子。 通过系统分析你的提问模式、决策风格、关注领域和思维习惯, 帮你看见"日用而不知"的自己。
触发条件
当用户提出以下类型的请求时激活此 skill:
- "分析我的 AI 对话记录"
- "我有什么思维盲区"
- "从对话中帮我做自我分析"
- "我的 MBTI/人格是什么"
- "最近我的核心矛盾是什么"
- "帮我构建认知地图"
- "做一次自我洞察"
数据源
支持的本地数据源
| 平台 | 存储位置 | 格式 |
|------|---------|------|
| Claude Code | ~/.claude/projects/*/*.jsonl + ~/.claude/history.jsonl | JSONL |
| GitHub Copilot CLI | ~/.copilot/session-store.db | SQLite |
数据读取方法
Claude Code
# 列出所有 Claude Code 对话会话
find ~/.claude/projects -name "*.jsonl" -type f
# 读取单个会话(每行一个 JSON 对象)
# type 字段值:user / assistant / system / attachment / file-history-snapshot / permission-mode / last-prompt
# 关键字段:
# - type=user → message.role="user", message.content=[{type:"text", text:"..."}]
# - type=assistant → message.role="assistant", message.content=[...]
# - timestamp, sessionId, cwd, gitBranch
GitHub Copilot CLI
-- 查询所有会话
SELECT id, cwd, repository, branch, summary, created_at FROM sessions ORDER BY created_at DESC;
-- 查询对话内容
SELECT s.id, s.summary, t.turn_index, t.user_message, t.assistant_response, t.timestamp
FROM turns t JOIN sessions s ON t.session_id = s.id
ORDER BY t.timestamp;
-- 全文搜索
SELECT content, session_id, source_type FROM search_index WHERE search_index MATCH 'query';
分析流程
Step 1: 数据采集与归一化
- 读取所有可用数据源
- 转换为统一格式:
{
"source": "claude-code | copilot-cli",
"session_id": "xxx",
"project": "/path/to/project",
"timestamp": "ISO8601",
"turns": [
{ "role": "user", "content": "...", "ts": "..." },
{ "role": "assistant", "content": "...", "ts": "..." }
]
}
Step 2: 数据预处理(去噪 + 压缩)
去噪规则:
- 剥离 assistant 回复中的大段代码块(只保留文字解释)
- 去掉 tool_use / tool_result 的技术细节
- 去掉重复的系统提示和 permission-mode 消息
- 保留:用户完整输入 + assistant 的文字回复摘要
数据量判断:
- < 100K tokens → 直接进入分析(fast path)
-
100K tokens → 进入 Map-Reduce 模式
Step 3: Map 阶段(仅大数据量时)
对每个 session 独立提取:
- 话题分类(工作/学习/生活/决策/创意/情绪)
- 用户提问风格(开放式/封闭式/指令式/探索式)
- 关键决策和取舍
- 情绪基调
- 特殊模式(反复修改、犹豫不决、快速推进等)
Step 4: Reduce 分析阶段
参考 references/analysis-framework.md 中的完整方法论,生成多维度分析。
Step 5: 报告生成
按照 references/output-template.md 的结构输出报告,存入用户指定目录或当前工作目录。
Step 6: 苏格拉底式追问
基于分析结果,参考 references/socratic-prompting.md 向用户发起反思性追问。
分析准则(强制遵循)
- 证据驱动 — 每个结论必须引用至少 2 条具体对话证据
- 概率化表述 — 使用置信度标注:🟢高(5+证据)| 🟡中(2-4证据)| 🔴低(推测性)
- 反向验证 — 对每个判断主动寻找反例,如有矛盾如实报告
- 谦逊边界 — 明确标注"基于 N 条对话推断,样本可能不足以…"
- 非病理化 — 这是自我认知工具,不是心理诊断。避免任何病理化标签
- 隐私优先 — 所有数据完全本地处理,不上传任何内容到第三方
用户交互
在分析开始前,询问用户:
- 分析时间范围(全部 / 最近一个月 / 自定义)
- 重点关注维度(全面分析 / 重点关注某些方面)
- 输出格式(Markdown / Markdown + HTML / 仅 HTML)
- 报告存储位置(默认:当前工作目录或 Obsidian vault)
输出
Markdown 报告(默认)
- 主输出:结构化 Markdown 报告(存入指定目录)
- 文件命名:
AI自我洞察报告-{YYYY-MM-DD}.md - 结构参照:
references/output-template.md
HTML 仪表盘(可选)
当用户要求 HTML 版本或更可视化的报告时,生成交互式仪表盘:
- 文件命名:
AI自我洞察报告-{YYYY-MM-DD}.html - 模板参照:
references/html-output-template.html - 单文件输出,浏览器直接打开
- 外部依赖仅限 Google Fonts CDN
HTML 报告核心差异(不是 Markdown 的简单搬运):
| 维度 | Markdown | HTML Dashboard | |------|----------|----------------| | 数据呈现 | 文字列表 + Markdown 表格 | KPI 卡片 + 动画条形图 + 交互表格 | | 信息架构 | 线性滚动 | Tab 导航 + 渐进式披露 | | 证据展示 | 内联引用 | 点击展开式卡片 | | OCEAN/MBTI | 静态表格 | 动画滑块 + 轴线可视化 | | 盲区 | 列表 | 虚线网格 + 悬停高亮 | | 趋势 | 简单表格 | 带变化标签的对比矩阵 |
设计规范:
- 字体:Sora(Display)+ Noto Sans SC(Body)+ IBM Plex Mono(Data)
- 色彩:暖白底色
#f8f6f3,语义色(Indigo/Emerald/Amber/Rose/Violet)按维度分配 - 交互:Tab 键盘导航、偏误卡片展开、IntersectionObserver 动画触发
- 响应式:768px 断点折叠为单列
- 详见
SPEC.md§10.3
苏格拉底式追问
- 在报告生成后交互式提出
- 方法参照:
references/socratic-prompting.md
微信扫一扫