name: phx:research description: 在网络上研究Elixir/Phoenix主题。高效搜索ElixirForum、HexDocs、博客和GitHub,并使用高效Markdown转换。 disable-model-invocation: true
研究Elixir主题
通过搜索网络并高效获取相关来源来研究一个主题。
用法
/phx:research Oban唯一作业最佳实践
/phx:research LiveView文件上传与进度
/phx:research Ecto多租户模式
/phx:research Phoenix PubSub vs GenServer用于实时
参数
$ARGUMENTS = 研究主题/问题。添加--library用于结构化库评估(使用references/library-evaluation.md模板)。
库评估模式
如果$ARGUMENTS包含--library或主题明显关于评估Hex依赖(例如,“我们应该使用permit”、“评估sagents”、“比较oban vs exq”):
- 阅读
references/library-evaluation.md以获取模板 - 遵循结构化评估工作流
- 输出一个文档到
.claude/research/{lib}-evaluation.md - 跳过下面的一般研究工作流
工作流
1. 搜索来源
在多个地方搜索:$ARGUMENTS
优先级来源:
1. ElixirForum - 社区讨论,真实世界经验
2. HexDocs - 官方文档
3. GitHub - 问题、讨论、代码示例
4. 博客 - fly.io/phoenix-files, dashbit.co, thoughtbot
使用WebSearch工具查找相关URL:
WebSearch(query: "$ARGUMENTS site:elixirforum.com OR site:hexdocs.pm OR site:github.com")
针对特定域搜索:
# 仅ElixirForum
WebSearch(query: "$ARGUMENTS", allowed_domains: ["elixirforum.com"])
# 仅HexDocs
WebSearch(query: "$ARGUMENTS", allowed_domains: ["hexdocs.pm"])
2. 启动web-researcher
使用Task工具启动web-researcher代理:
Task({
subagent_type: "web-researcher",
prompt: "研究:$ARGUMENTS
获取并分析这些来源:{urls from search}
专注于:
- 代码示例
- 常见模式
- 陷阱和警告
- 版本兼容性",
run_in_background: false
})
3. 输出(文件优先 — 绝不内联转储)
始终将输出写入文件 — 绝不内联转储研究。每个研究问题一个文档。无冗余摘要/索引文件。目标大小:库评估约5KB,主题研究约8KB。
创建.claude/research/{topic-slug}.md,内容如下:
# 研究:{topic}
## 摘要
{2-3句回答研究问题}
## 来源
### ElixirForum讨论
- [{thread title}]({url}) - {关键见解}
### 文档
- [{doc page}]({url}) - {相关部分}
### 代码示例
```elixir
# 从{source}
{example code}
推荐
基于研究:
- {有证据的推荐}
- {有证据的推荐}
注意事项
- {来自论坛/问题的陷阱}
- {版本兼容性说明}
## 令牌预算
| 来源类型 | 最大令牌 |
|-------------|------------|
| 论坛线程 | 40,000 |
| HexDocs | 30,000 |
| 博客 | 25,000 |
| GitHub问题 | 20,000 |
总研究输出应低于100k令牌。
## 研究后 — 停止
**停止并呈现研究摘要。** 绝不自动转换到规划、实施或任何其他工作流阶段。
使用`AskUserQuestion`让用户选择下一步操作:
- “基于此研究规划功能” → `/phx:plan`
- “调查特定发现” → `/phx:investigate`
- “研究更多子主题” → 继续研究
- “完成” → 结束
**研究后绝不自动调用`/phx:plan`或任何其他技能。**