1 · カスタムdroids とは?
カスタムdroids は、プロジェクトの.factory/droids/ またはあなた個人の ~/.factory/droids/ ディレクトリ配下の .md ファイルとして存在します。CLI はこれらのフォルダをスキャンし(トップレベルファイルのみ)、各定義を検証して、Task ツール用の subagent_type ターゲットとして公開します。これにより、プライマリアシスタントがセッション中に専用のヘルパーを起動できます。
Custom Droids are enabled by default. You can toggle them off in Settings (
/settings) under the Experimental section if needed.- プロジェクトdroids は
<repo>/.factory/droids/に配置され、チームメンバーと共有されます。 - 個人droids は
~/.factory/droids/に保存され、ワークスペース間で引き継がれます。 - 名前が一致する場合、プロジェクト定義が個人定義を上書きします。
2 · なぜ使うのか?
- 高速な委任 – 複雑なチェックリストを一度エンコードし、単一のツール呼び出しで再利用。
- 厳格な安全性 – エージェントを読み取り専用、編集専用、または厳選されたツールセットに制限。
- コンテキスト分離 – 各サブエージェントは新しいコンテキストウィンドウで実行され、プロンプトの肥大化を回避。
- 再現可能なレビュー – チーム固有のレビュー、テスト、またはリリースゲートをバージョン管理可能なコードとして取得。
3 · クイックスタート
/droidsを実行してDroids メニューを起動します。- Create a new Droid を選択し、保存場所(プロジェクトまたは個人)を選んで、ウィザードに従って以下を設定します:
- droid が実行すべきことの説明
- システムプロンプト(自動生成または手動編集)
- 識別子(droid の名前)
- モデル(または親セッションから継承)
- ツール(ツールIDの明示的なリストまたはカテゴリ)
- 保存します。CLI は選択した
droids/ディレクトリに<name>.mdを書き込み、ファイル名を正規化します(小文字、ハイフン区切り)。 - droid に使用を依頼します。例:「サブエージェント
code-reviewerでTask ツールを実行してこのdiffをレビューして」、または自動化からトリガーします。
4 · 設定
各droid ファイルは YAML frontmatter を持つMarkdown です。| フィールド | 注記 |
|---|---|
name | 必須。小文字、数字、-、_。subagent_type 値とファイル名を決定します。 |
description | 任意。UI リストに表示されます。≤500文字に抑えてください。 |
model | inherit (親セッションのモデルを使用)、またはモデル識別子を指定します。組み込みモデルの場合、claude-sonnet-4-5-20250929 のような値を使用します。カスタムモデル(BYOK)の場合、custom: + 設定の model フィールドを使用します(例:custom:gpt-4o-mini)。model_display_name ではありません。モデルIDについては pricing page を参照してください。 |
reasoningEffort | 任意。対応するモデル(例:low、medium、high)の推論努力を設定します。model が inherit の場合は無視されます。選択したモデルと互換性が必要です。 |
tools | ツール選択:すべてのツールを使用する場合は省略、カテゴリ文字列を使用(例:read-only)、または ["Read", "Edit", "Execute"] のようなツールIDの配列を指定します。大文字小文字を区別します。 |
name を含むYAML frontmatter で始まり、空でない本文を含む必要があります。DroidValidator はエラー(無効な名前、未知のモデル、未知のツール)と警告(説明の欠落、重複したツール)を表示します。検証の問題は、ファイルの読み込みに失敗した際にCLI ログに表示されます。
ツールカテゴリ → 具体的なツール
tools 値としてカテゴリ名を直接使用する(例:tools: read-only)か、配列で個別のツールIDを指定できます。
| カテゴリ | ツールID | 目的 |
|---|---|---|
read-only | Read、LS、Grep、Glob | 安全な分析とファイル探索 |
edit | Create、Edit、ApplyPatch | コード生成と修正 |
execute | Execute | シェルコマンド実行 |
web | WebSearch、FetchUrl | インターネット調査とコンテンツ |
mcp | 動的に追加(存在する場合) | Model Context Protocol ツール |
TodoWrite is automatically included for all droids to enable task tracking. You don’t need to add it to your tools list.When using
Edit with OpenAI models, ApplyPatch is automatically included for compatibility. When model is inherit, both tools are enabled to ensure coverage across model providers.5 · UI でのdroids 管理
/droids でモーダルが開き、以下が表示されます:
- droids のリスト – 各droid を以下の情報と共に表示:
- 名前とモデル(括弧内)
- 説明のプレビュー
- 場所バッジ(Project / Personal)
- ツールの概要(例:「All tools」または選択されたツールの数)
- Create a new Droid – ガイド付きウィザードを起動:
- 場所を選択(Project または Personal)
- droid が実行すべきことを説明
- システムプロンプトを生成または手動編集
- 識別子、モデル、ツールを確認
- Import from Claude Code –
~/.claude/agents/の既存エージェントをカスタムdroids としてインポート - アクション – droids の表示、編集、削除、またはリロードしてリストを更新
5.5 · Claude Code サブエージェントのインポート
Claude Code で作成されたエージェントをカスタムdroids としてインポートできます。これにより、既存のClaude Code エージェントをDroids システムで再利用できます。インポート方法
/droidsを実行してDroids メニューを開きます- I を押してインポートフローを開始します
- CLI がClaude Code エージェントディレクトリをスキャンします:
- プロジェクトスコープ:
<repo>/.claude/agents/(ワークスペース固有のエージェント) - 個人スコープ:
~/.claude/agents/(個人エージェント)
- プロジェクトスコープ:
- 利用可能なエージェントのリストを確認します:
(already exists)とマークされたエージェントはデフォルトで非選択状態- 事前選択されたエージェントは、まだDroids にインポートされていないもの
- Space で個別選択を切り替え、A ですべてを切り替えます
- Enter を押して選択されたエージェントをインポートします
インポート中に実行される処理
インポートプロセスはClaude Code エージェントをDroids に変換します:-
メタデータの抽出:
- エージェント名 → droid
name - エージェント説明(例と使用ガイダンスを含む)→ droid
description - エージェント指示 → droid システムプロンプト(本文)
- エージェント名 → droid
-
設定のマッピング:
- モデル:Claude Code モデルファミリーをFactory モデルにマッピング:
inherit→inheritsonnet→ 利用可能な最初のSonnet モデルhaiku→ 利用可能な最初のHaiku モデルopus→ 利用可能な最初のOpus モデル
- ツール:Claude Code ツール名をFactory ツールにマッピング(ツールがマッピングされない場合は検証警告を表示)
- 場所:デフォルトで Personal
~/.factory/droids/にインポート
- モデル:Claude Code モデルファミリーをFactory モデルにマッピング:
-
ツール検証:
- 一部のClaude Code ツールはFactory に相当するものがない場合があります
- 無効なツールは警告と共にリスト表示されます:「Invalid tools: [list]」
- droid を編集してツールマッピングを修正するか、ツールアクセスを調整できます
-
ファイル作成:
~/.factory/droids/(個人場所)に.mdファイルを作成- ファイル名は正規化されます(小文字、ハイフン区切り)
- ファイル形式:YAML frontmatter + システムプロンプト本文
-
インポートレポート:
- 各エージェントの成功/失敗を表示
- インポートされたエージェントはすぐにdroid リストで利用可能
- インポートされたdroid を編集してモデル、ツール、プロンプトを調整可能
インポートフローの例
選択画面(インポート前):ツール検証エラーの処理
インポート後に 「Invalid tools: [list]」 が表示される場合、一部のClaude Code ツールにFactory 相当品がないことを意味します:- droid を表示(Enter を押す)して完全なツールリストを確認
- droid を編集(E を押す)して調整:
- リストから無効なツールを削除
- 有効なFactory ツールのみを保持
- 利用可能なツールを確認 - リストに利用可能なFactory ツールが表示されます
Write、NotebookEdit、BrowseURLなどのClaude Code ツールはFactory には存在しません- 相当するFactory ツールに置き換え:
Write→Edit、CreateBrowseURL→WebSearch、FetchUrl
- または
toolsセクション全体を削除してすべてのFactory ツールを有効化
6 · カスタムdroids の効果的な使用
- Task ツール経由で呼び出し – droid は自動的にカスタムdroids を呼び出すか、直接リクエストできます(「この変更にサブエージェント
security-auditorを使って」)。 - モデルを戦略的に選択 –
inheritを使用して親セッションとマッチさせるか、専門タスクに異なるモデルを指定:- 単純な分析と要約タスクには小さい/高速なモデル(低コスト)。
- 複雑な推論、コードレビュー、多段階分析には大きい/高性能なモデル。
- 利用可能なモデルIDについては pricing page を参照してください。
- ツールアクセスを制限 – 明示的なツールリストを使用してサブエージェントができることを制限し、予期しないシェルコマンドや他の危険な操作を防止。
- ライブ更新を活用 – Task ツールはライブ進行状況をストリーミングし、サブエージェントの実行中にツール呼び出し、結果、TodoWrite 更新をリアルタイムで表示。
- 出力を構造化 –
Summary:やFindings:などのセクションを出力するようプロンプトを整理し、Task ツールUI が結果を明確に要約できるようにします。 - 共有と協力 – チームメンバーが共有droids を使用できるよう
.factory/droids/*.mdをリポジトリにチェックインし、プロンプトの更新をコードのようにバージョン管理。 - Claude Code エージェントを活用 – 既存のClaude Code エージェント(セクション5.5を参照)をインポートして、Factory でカスタムdroids として再利用。
7 · 例
コードレビュワー(プロジェクトスコープ)
code-reviewer を実行して。」
セキュリティスイーパー(個人スコープ)
タスクコーディネーター(ライブ進行状況付き)
カスタムdroids により、部族の知識をコードとして取得できます。専門的なプロンプトを一度作成し、適切なツールとモデルを割り当て、設計したサブエージェントに重い作業をプライマリアシスタントに委任させましょう。
