affaan-m/ECC/docs/ja-JP/skills/search-first/SKILL.md
search-first
Use it for engineering tasks; the detail page covers purpose, installation, and practical steps.
- Source repository stars
- 234,327
- Declared platforms
- 0
- Static risk flags
- 0
- Last source update
- 2026-07-27
- Source checked
- 2026-07-28
Decision brief
What it does—and where it fits
「既存のソリューションを実装前に検索する」ワークフローを体系化します。
Not for
- Tasks that require unconfirmed production actions or broad system permissions.
- Environments where the pinned source and install steps cannot be inspected.
Compatibility matrix
Platform support, with evidence labels
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
Inspect first. Install second.
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/affaan-m/ECC --skill "docs/ja-JP/skills/search-first"Inspect the Agent Skill "search-first" from https://github.com/affaan-m/ECC/blob/4e973d3eaf92d97f8d2e2d8abb39d8bdc8711b38/docs/ja-JP/skills/search-first/SKILL.md at commit 4e973d3eaf92d97f8d2e2d8abb39d8bdc8711b38. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
What the source asks the agent to do
- 01
トリガー
以下の場合にこのスキルを使用します: - 既存のソリューションが存在する可能性が高い新しい機能を開始する場合 - 依存関係やインテグレーションを追加する場合 - ユーザーが「X 機能を追加して」と要求し、コードを書こうとしている場合 - 新しいユーティリティ、ヘルパー、または抽象化を作成する前
既存のソリューションが存在する可能性が高い新しい機能を開始する場合依存関係やインテグレーションを追加する場合ユーザーが「X 機能を追加して」と要求し、コードを書こうとしている場合 - 02
ワークフロー
Review the “ワークフロー” section in the pinned source before continuing.
Review and apply the “ワークフロー” source section. - 03
判断マトリクス
Review the “判断マトリクス” section in the pinned source before continuing.
Review and apply the “判断マトリクス” source section. - 04
使い方
これはエージェントのガイダンスであり、実行可能なセットアップスクリプトではありません。目の前のタスクとプロジェクトに関連するチャネルのみを確認します。
これはリポジトリに既に存在するか? → まず関連モジュール/テストを rg で確認これはよくある問題か? → npm/PyPI を検索MCP はあるか? → /.claude/settings.json を確認して検索
Permission review
Static risk signals and limitations
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
Why each signal appears
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 68/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 234,327 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Provenance and original SKILL.md
- Repository
- affaan-m/ECC
- Skill path
- docs/ja-JP/skills/search-first/SKILL.md
- Commit
- 4e973d3eaf92d97f8d2e2d8abb39d8bdc8711b38
- License
- MIT
- Collected
- 2026-07-28
- Default branch
- main
View the original SKILL.md
/search-first — コーディング前に調査する
「既存のソリューションを実装前に検索する」ワークフローを体系化します。
トリガー
以下の場合にこのスキルを使用します:
- 既存のソリューションが存在する可能性が高い新しい機能を開始する場合
- 依存関係やインテグレーションを追加する場合
- ユーザーが「X 機能を追加して」と要求し、コードを書こうとしている場合
- 新しいユーティリティ、ヘルパー、または抽象化を作成する前
ワークフロー
┌─────────────────────────────────────────────┐
│ 0. ツール利用可能性の事前確認 │
│ 依存する前に検索チャネルを確認; │
│ スキップしたチャネルを正直に報告する │
├─────────────────────────────────────────────┤
│ 1. ニーズ分析 │
│ 必要な機能を定義する │
│ 言語/フレームワークの制約を特定する │
├─────────────────────────────────────────────┤
│ 2. 並列検索(researcher エージェント) │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ npm / │ │ MCP / │ │ GitHub / │ │
│ │ PyPI │ │ スキル │ │ Web │ │
│ └──────────┘ └──────────┘ └──────────┘ │
├─────────────────────────────────────────────┤
│ 3. 評価 │
│ 候補をスコアリング(機能性、保守性、 │
│ コミュニティ、ドキュメント、ライセンス、│
│ 依存関係) │
├─────────────────────────────────────────────┤
│ 4. 決定 │
│ ┌─────────┐ ┌──────────┐ ┌─────────┐ │
│ │ 採用 │ │ 拡張/ │ │ カスタム │ │
│ │ そのまま│ │ ラップ │ │ ビルド │ │
│ └─────────┘ └──────────┘ └─────────┘ │
├─────────────────────────────────────────────┤
│ 5. 実装 │
│ パッケージをインストール / MCP を設定 / │
│ 最小限のカスタムコードを書く │
└─────────────────────────────────────────────┘
判断マトリクス
| シグナル | アクション |
|---|---|
| 完全一致、よく保守されている、MIT/Apache | 採用 — 直接インストールして使用 |
| 部分一致、良い基盤 | 拡張 — インストール + 薄いラッパーを書く |
| 複数の弱い一致 | 組み合わせ — 2〜3 の小さなパッケージを組み合わせる |
| 適切なものが見つからない | ビルド — カスタムを書くが、調査に基づいて |
使い方
ステップ 0: ツール利用可能性の事前確認
これはエージェントのガイダンスであり、実行可能なセットアップスクリプトではありません。目の前のタスクとプロジェクトに関連するチャネルのみを確認します。
| チャネル | 確認 | 欠如している場合 |
|---|---|---|
| リポジトリ検索 | rg --files と的を絞った rg クエリ | 可視ファイルのみが検査されたことを明示 |
| パッケージレジストリ | npm --version、python -m pip --version、またはプロジェクトのパッケージマネージャー | Web/ドキュメント検索を使用し、レジストリカバレッジを主張しない |
| GitHub CLI | gh auth status | 公開 Web またはローカル git 履歴のみを使用 |
| MCP/ドキュメントツール | 利用可能なツールリストまたはローカル MCP 設定 | 公式ドキュメント/ウェブ検索にフォールバック |
| スキルディレクトリ | ls ~/.claude/skills ~/.codex/skills(該当する場合) | ローカルスキルカタログが利用できないと明示 |
クイックモード(インライン)
ユーティリティを書いたり機能を追加したりする前に、以下を確認します:
- これはリポジトリに既に存在するか? → まず関連モジュール/テストを
rgで確認 - これはよくある問題か? → npm/PyPI を検索
- MCP はあるか? →
~/.claude/settings.jsonを確認して検索 - このためのスキルはあるか? →
~/.claude/skills/を確認 - GitHub に実装/テンプレートがあるか? → 新規コードを書く前に保守された OSS の GitHub コード検索を実行
フルモード(エージェント)
非自明な機能には、researcher エージェントを起動します:
Agent(subagent_type="general-purpose", prompt="
既存のツールを調査してください: [説明]
言語/フレームワーク: [言語]
制約: [あれば]
検索先: npm/PyPI、MCP サーバー、Claude Code スキル、GitHub
返却: 推薦付きの構造化比較
")
古い Claude Code ドキュメントではこれを Task(...) と呼ぶ場合があります;アクティブなハーネスが公開している現在のエージェント/サブエージェントツール名を使用してください。
カテゴリ別検索ショートカット
開発ツール
- Linting →
eslint、ruff、textlint、markdownlint - フォーマット →
prettier、black、gofmt - テスト →
jest、pytest、go test - プレコミット →
husky、lint-staged、pre-commit
AI/LLM 統合
- Claude SDK → 最新ドキュメントには Context7 を使用
- プロンプト管理 → MCP サーバーを確認
- 文書処理 →
unstructured、pdfplumber、mammoth
データ & API
- HTTP クライアント →
httpx(Python)、ky/undici(Node) - バリデーション →
zod(TS)、pydantic(Python) - データベース → まず MCP サーバーを確認
コンテンツ & 公開
- Markdown 処理 →
remark、unified、markdown-it - 画像最適化 →
sharp、imagemin
統合ポイント
planner エージェントとの統合
planner はフェーズ1(アーキテクチャレビュー)の前に researcher を呼び出すべきです:
- Researcher が利用可能なツールを特定
- Planner がそれらを実装計画に組み込む
- 計画での「車輪の再発明」を回避
architect エージェントとの統合
architect は以下のために researcher に相談すべきです:
- テクノロジースタックの決定
- 統合パターンの発見
- 既存のリファレンスアーキテクチャ
iterative-retrieval スキルとの統合
段階的な発見のために組み合わせます:
- サイクル1: 広い検索(npm、PyPI、MCP)
- サイクル2: 上位候補を詳細に評価
- サイクル3: プロジェクトの制約との互換性をテスト
例
例1: 「デッドリンクチェックを追加」
必要: Markdown ファイルのリンク切れを確認
検索: npm "markdown dead link checker"
発見: textlint-rule-no-dead-link(スコア: 9/10)
アクション: 採用 — npm install textlint-rule-no-dead-link
結果: カスタムコードなし、実証済みのソリューション
例2: 「HTTP クライアントラッパーを追加」
必要: リトライとタイムアウト処理を持つ信頼性の高い HTTP クライアント
検索: npm "http client retry", PyPI "httpx retry"
発見: got(Node)with retry plugin, httpx(Python)with built-in retry
アクション: 採用 — got/httpx をリトライ設定で直接使用
結果: カスタムコードなし、本番実証済みのライブラリ
例3: 「設定ファイルリンターを追加」
必要: プロジェクト設定ファイルをスキーマに対して検証
検索: npm "config linter schema", "json schema validator cli"
発見: ajv-cli(スコア: 8/10)
アクション: 採用 + 拡張 — ajv-cli をインストール、プロジェクト固有のスキーマを記述
結果: 1 パッケージ + 1 スキーマファイル、カスタム検証ロジックなし
アンチパターン
- コードへの飛び込み: 既存のものがあるか確認せずにユーティリティを書く
- MCP の無視: MCP サーバーが既にその機能を提供しているかチェックしない
- サイレントスキップ: 検索チャネルが利用できなかったのに「何も見つからなかった」と報告する
- 過度なカスタマイズ: ライブラリをラップしすぎてそのメリットを失う
- 依存関係の肥大化: 1つの小さな機能のために巨大なパッケージをインストールする
Alternatives
Compare before choosing
affaan-m/ECC
search-first
Research-before-coding workflow. Search for existing tools, libraries, and patterns before writing custom code. Systematizes the "search for existing solutions before implementing" approach. Use when starting new features or adding functionality.
affaan-m/ECC
search-first
Research-before-coding workflow. Search for existing tools, libraries, and patterns before writing custom code. Invokes the researcher agent.
affaan-m/ECC
search-first
Use it for engineering tasks; the detail page covers purpose, installation, and practical steps.
coreyhaines31/marketingskills
ab-testing
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program