Elixir主题研究技能Skill phx:research

这个技能用于高效研究和搜索Elixir和Phoenix相关主题,通过集成搜索ElixirForum、HexDocs、GitHub和博客等来源,提供代码示例、常见模式、陷阱和版本兼容性分析,帮助开发者快速获取并整理技术信息。关键词:Elixir, Phoenix, 研究, 搜索, 代码示例, 后端开发, Web框架。

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

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”):

  1. 阅读references/library-evaluation.md以获取模板
  2. 遵循结构化评估工作流
  3. 输出一个文档到.claude/research/{lib}-evaluation.md
  4. 跳过下面的一般研究工作流

工作流

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}

推荐

基于研究:

  1. {有证据的推荐}
  2. {有证据的推荐}

注意事项

  • {来自论坛/问题的陷阱}
  • {版本兼容性说明}

## 令牌预算

| 来源类型 | 最大令牌 |
|-------------|------------|
| 论坛线程 | 40,000 |
| HexDocs | 30,000 |
| 博客 | 25,000 |
| GitHub问题 | 20,000 |

总研究输出应低于100k令牌。

## 研究后 — 停止

**停止并呈现研究摘要。** 绝不自动转换到规划、实施或任何其他工作流阶段。

使用`AskUserQuestion`让用户选择下一步操作:

- “基于此研究规划功能” → `/phx:plan`
- “调查特定发现” → `/phx:investigate`
- “研究更多子主题” → 继续研究
- “完成” → 结束

**研究后绝不自动调用`/phx:plan`或任何其他技能。**