Agent Skills by ALSEL
Anthropic Claudeソフトウェア開発⭐ リポ 301品質スコア 89/100

phx:research

Elixir/Phoenixのトピックについて調査したり、Hexライブラリを評価(--libraryオプション使用)できます。ライブラリについて学習したい場合、パターンを知りたい場合、またはアプローチを比較したい場合に利用してください。HexDocs、ElixirForum、GitHubから検索します。

description の原文を見る

Research Elixir/Phoenix topics or evaluate Hex libraries (--library). Use when learning about libraries, patterns, or comparing approaches. Searches HexDocs, ElixirForum, GitHub.

SKILL.md 本文

Elixir トピックのリサーチ

ウェブ検索と関連ソースの効率的な取得により、トピックをリサーチします。

使用方法

/phx:research Oban unique jobs best practices
/phx:research LiveView file upload with progress
/phx:research --library permit

引数

$ARGUMENTS = リサーチトピック/質問。ライブラリの構造化された評価を行う場合は --library を追加します(${CLAUDE_SKILL_DIR}/references/library-evaluation.md テンプレートを使用)。

重要原則

  1. 出力をファイルに書き込む、インラインで表示しない — リサーチ出力は会話を圧迫し、将来のセッションでの参照を失う
  2. リサーチ後に停止する、自動遷移しない — 次のステップはユーザーが決定する
  3. ブログ記事より公式ソースを優先する — HexDocs と ElixirForum はバージョン固有のコンテキストを持つ
  4. リサーチ質問ごとに1つのドキュメント — ファイルを分散させない
  5. 生のユーザー入力を WebSearch クエリとして渡さない — まず分解する

ライブラリ評価モード

$ARGUMENTS--library が含まれているか、トピックが明らかに Hex 依存の評価についての場合("permit を使うべきか", "sagents を評価する", "oban vs exq を比較") :

  1. ${CLAUDE_SKILL_DIR}/references/library-evaluation.md からテンプレートを読む
  2. 構造化された評価ワークフローに従う
  3. 1つのドキュメントを .claude/research/{lib}-evaluation.md に出力する
  4. 以下の一般的なリサーチワークフローをスキップする

ワークフロー

0. 事前チェック

キャッシュチェック: .claude/research/{topic-slug}.md が既に存在するかチェックします。最近のもの(<24時間)の場合: 既存のサマリーを提示し、「更新するか既存のものを使用するか?」と尋ねます

Tidewave ショートカット: トピックが既存の依存関係(ライブラリが mix.exs に既に含まれている)についてのものの場合、ウェブ検索より Tidewave を優先します:

mcp__tidewave__get_docs(module: "LibraryModule")

これは mix.lock バージョンに一致するドキュメントを返します — より高速、より正確、ウェブトークンなし。Tidewave が利用不可の場合か、トピックがコミュニティの議論を必要とする場合(課題、実装パターン、比較)にのみウェブ検索に進みます。

1. クエリ分解(重要 — 検索前に必ず実施)

生の $ARGUMENTS を WebSearch に渡さない。 まず分解します:

  • $ARGUMENTS が30語未満で焦点を絞っている → 単一クエリとして使用
  • $ARGUMENTS が30語以上または複数トピック → 2~4つのクエリを抽出

各クエリ: 最大10語、1つの特定な側面を対象。

例:

入力: "detect files, export to md, feed database with embeddings,
       use ReqLLM for OpenAI API..."
クエリ:
  1. "Elixir PDF text extraction library hex"
  2. "Ecto pgvector embeddings setup"
  3. "ReqLLM OpenAI embeddings Elixir"

2. 並列ウェブ検索

分解されたすべてのクエリを1つのレスポンス内で並列検索します:

WebSearch(query: "{query1} site:elixirforum.com OR site:hexdocs.pm OR site:github.com")
WebSearch(query: "{query2} site:hexdocs.pm OR site:elixirforum.com")

結果全体で URL を重複排除します。明らかに無関係なヒットは破棄します。

3. 並列リサーチワーカーを起動

URL をトピッククラスタでグループ化します。1~3つのウェブリサーチエージェント(トピッククラスタごとに1つ)を並列で起動します:

Agent(subagent_type: "web-researcher", prompt: """
リサーチ焦点: {分解されたクエリからの特定の側面}
これらの URL をフェッチしてください:
- {url1}
- {url2}
- {url3}
抽出対象: コード例、パターン、課題、バージョン互換性。
500~800語のサマリーを返してください。
""", run_in_background: true)

ルール:

  • 1つのトピッククラスタ = 1つのエージェント(無関係な URL を混在させない)
  • エージェントあたり最大5つの URL(それ以上は効果が薄れる)
  • 合計が1~3つの URL のみの場合、単一のフォアグラウンドエージェントを使用
  • URL を明示的に渡す — エージェントは再検索してはいけません
  • エージェントは簡潔 — 安価、高速、抽出に焦点を絞ったもの

4. 出力の書き込み(ファイル優先 — インラインで表示しない)

すべてのエージェントが完了した後、サマリーを1つのファイルに統合します。 目標: トピックリサーチの場合 ~5KB、ライブラリ評価の場合 ~3KB。

.claude/research/{topic-slug}.md を作成します:

# リサーチ: {トピック}

## サマリー
{すべてのワーカー結果を組み合わせた2~3文の回答}

## ソース

### {カテゴリ}
- [{タイトル}]({url}) - {重要な洞察}

### コード例

```elixir
# {ソース}より: {これが何を示すか}
{コード}

推奨事項

  1. {証拠付きの推奨事項}
  2. {証拠付きの推奨事項}

注意すべき点

  • {フォーラム/問題からの課題}
  • {バージョン互換性の注記}

### 5. リサーチ後 — 停止

**リサーチサマリーを提示して停止します。** 自動遷移しないでください。

`AskUserQuestion` を使用してユーザーに次のアクションを選択させます:

- 「このリサーチに基づいて機能を計画する」 → `/phx:plan`
- 「特定の発見を調査する」 → `/phx:investigate`
- 「サブトピックについてさらにリサーチする」 → リサーチを継続
- 「完了」 → 終了

**リサーチ後に `/phx:plan` やその他のスキルを自動呼び出ししない。**

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
oliver-kriska
リポジトリ
oliver-kriska/claude-elixir-phoenix
ライセンス
MIT
最終更新
2026/5/12

Source: https://github.com/oliver-kriska/claude-elixir-phoenix / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: oliver-kriska · oliver-kriska/claude-elixir-phoenix · ライセンス: MIT