会话洞察Skill session-insights

这是一个用于分析Elixir和Phoenix开发会话的技能,提供完整的会话分析管道。通过自然语言描述搜索开发会话,自动生成转录和综合报告,帮助开发者识别工作流模式、摩擦点和插件改进机会。关键词:会话分析,Elixir开发,Phoenix框架,开发调试,自动化报告,量化交易分析辅助工具。

后端开发 0 次安装 0 次浏览 更新于 3/11/2026

名称: 会话洞察 描述: 完整会话分析管道。用自然语言描述您想查找的内容,并获得综合报告。需要 ccrider MCP。 参数提示: <描述搜索内容的提示> [–项目 名称] [–之后 日期] [–限制 N]

会话洞察

端到端管道:通过自然语言提示搜索会话,分析所有匹配项,综合发现。

用法

/phx:session-insights "我所有的 Elixir Phoenix 会话"
/phx:session-insights "我调试 LiveView 的会话"
/phx:session-insights --项目 我的应用
/phx:session-insights "Oban 工作器问题" --之后 2026-01-15
/phx:session-insights "包含测试失败的会话" --限制 10

要求

需要 ccrider MCP。如果不可用,请告知用户:

需要 ccrider MCP。请查看:https://github.com/neilberkman/ccrider

管道

步骤 1:从 $参数 解析意图

$参数 中提取:

  • 提示(非标志文本):自然语言描述要查找的内容
  • --项目 名称:按项目过滤(在路径中匹配子字符串)
  • --之后 日期:仅此日期之后的会话(ISO 格式)
  • --限制 N:最大分析会话数(默认:15)

如果未提供提示,默认为:“所有 Elixir 和 Phoenix 开发会话”

步骤 2:将提示翻译为搜索查询

基于用户提示,生成 2-5 个 ccrider 搜索查询 来覆盖意图。思考会话中可能出现的术语。

示例:

用户提示 运行的查询
“所有我的 Elixir 会话” mix compile, \.ex, Phoenix, Ecto
“LiveView 调试” LiveView, _live.ex, assign_async, handle_event
“Oban 工作器问题” Oban, worker, perform, queue
“我使用插件的会话” /phx:, elixir-phoenix:, Iron Law
“数据库工作” Ecto, migration, Repo., schema
“项目 我的应用” (使用 --项目 过滤器,无需查询)
“测试失败” mix test, test failed, assertion, ExUnit

对每个查询运行 mcp__ccrider__search_sessions,如果提供则传递 --项目--之后 过滤器。

步骤 3:合并和去重

合并所有查询结果。按会话 ID 去重。按日期排序(最近优先)。

报告给用户:

找到 {N} 个唯一会话 匹配 “{提示}”(来自 {Q} 次搜索)。 项目:{唯一项目名称列表} 日期范围:{最早} 到 {最新}

如果找到的会话超过 --限制,取最近 N 个。

如果找到 0 个会话,建议更广泛的搜索词并停止。

步骤 4:与用户确认

以紧凑表格显示会话列表:

| #  | ID       | 项目    | 日期       | 消息 | 摘要                    |
|----|----------|---------|------------|------|------------------------|
| 1  | 90a74843 | 我的应用 | 2026-02-09 | 30   | 修复 gettext 翻译       |

询问:

“分析所有 {N} 个会话?或者输入特定数字(例如,1,3,5)以选择子集。”

步骤 5:获取转录

对于每个确认的会话:

  1. 调用 mcp__ccrider__get_session_messages(session_id: id)
  2. 如果 >200 条消息,使用 last_n: 150 并注意截断
  3. 将转录写入 .claude/session-analysis/{短-id}-transcript.md

格式化每个转录文件:

# 会话:{短-id}

项目:{项目}
日期:{日期}
消息:{数量}

## 消息

### 用户(序列 1)

{内容}

### 助手(序列 2)

{内容}

步骤 6:分析会话

通过搜索定位分析模板:

全局:**/analyze-session/references/analysis-template.md

读取模板内容。如果未找到,使用此技能指令中的内联分析问题。

按会话数量策略

  • 1-2 个会话:直接在上下文中分析
  • 3-6 个会话:生成 sonnet 子代理(每个会话一个)。每个读取转录 + 模板,写入报告。
  • 7+ 个会话:生成 haiku 子代理以加速

子代理提示:

读取位于 {模板路径} 的分析模板。 读取位于 {转录路径} 的会话转录。 应用模板分析此会话。 将您的报告(少于 200 行)写入 {报告路径}。

将报告写入 .claude/session-analysis/{短-id}-report.md

步骤 7:综合

所有报告写入后,读取所有内容并生成综合报告:

.claude/session-analysis/insights-{日期}.md

结构:

# 会话洞察:{提示}

日期:{日期}
分析的会话:{N}
项目:{列表}

## 主要发现

### 最常见的摩擦模式

1. {模式} — 在 {N} 个会话中看到
2. {模式} — 在 {N} 个会话中看到

### 您应尝试的插件技能

| 技能              | 原因      | 可能帮助的会话         |
| ----------------- | --------- | ---------------------- |
| `/phx:investigate` | {原因} | {短-ids}              |
| `/phx:plan`        | {原因} | {短-ids}              |

### 插件改进机会

汇总个体报告第 5 节的发现。按类型分组:

**缺少的自动化**:

- {具体自动化机会} — 在 {N} 个会话中看到

**缺少的技能或代理**:

- {应存在的功能} — {来自会话的证据}

**铁律候选**:

- {导致错误的模式} — 应自动捕获

**自动加载差距**:

- {文件模式,技能应加载但未加载}

### 工作流模式

- {关于开发人员工作方式的观察}
- {关于工具使用的观察}
- {有插件与无插件的会话 — 有何不同?}

## 每个会话摘要

### {短-id} — {项目} ({日期})

**目标**:{1 行}
**摩擦**:{关键痛点}
**插件机会**:{顶部改进建议}

(为每个会话重复)

步骤 8:展示结果

直接在对话中向用户显示主要发现部分。告知他们:

完整报告:.claude/session-analysis/insights-{日期}.md 每个会话报告:.claude/session-analysis/{id}-report.md

铁律

  1. 始终在分析前确认 — 显示会话列表,获取用户批准
  2. 从不跳过综合 — 个体报告有用,但跨会话模式是真正价值
  3. 尊重限制 — 默认最多 15 个会话以保持分析可管理