Communityコーディング&開発github.com

コーディングエージェント

Codex、Claude Code、OpenCodeにコーディング作業をバックグラウンドワーカーとして委任します。単純な編集や読み取り専用のコード検索には使用しません。

コーディングエージェント とは?

このスキルは、Codex、Claude Code、OpenCodeといったAIコーディングエージェントをバックグラウンドワーカーとして起動し、機能追加、PRレビュー、大規模リファクタリング、IssueからPRへのワークフローなどの複雑なタスクを処理します。単純な編集や読み取り専用のコード検索には適しておらず、バックグラウンドジョブとして完全自律的に動作するように設計されています。 主な特徴として、CodexとOpenCodeはPTYモードで起動され、Claude Codeは権限バイパスモードで使用されます。すべてのワーカーは、Gitブランチの分離と安全性を確保するための厳格なGit準備ワークフローを経て起動されます。このプロセスには、信頼された参照と信頼されていない参照の分類、隔離されたワークツリーでの作業、完了時の確実な通知が含まれます。 このスキルは、OpenClawフレームワーク内で使用するために設計されており、`background:true`フラグでワーカーを起動し、`process`アクションで監視します。ジョブの一覧表示、ステータスの確認、ログ出力の取得、標準入力の送信、強制終了などの処理操作をサポートしています。GitHubのIssueを永続的な仕様として利用することで、長いIssueからPRへのサイクルを効率的に管理できます。

対応✓Claude Code✓Codex CLI~Cursor✓OpenCode
npx skills add https://github.com/clawdbot/clawdbot/tree/main/skills/coding-agent

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

コーディングエージェント は何をしますか?

バックグラウンドでの機能構築、PRレビュー、大規模リファクタリング、Issue-to-PRループに使用します。単純な編集、読み取り専用の参照、ACPスレッドに拘束された作業、または~/.openclaw、$OPENCLAW_STATE_DIR、アクティブなOpenClaw状態ディレクトリ内での実行には使用しないでください。

ハードルール

  • 常にbackground:trueで起動する。
  • CodexとOpenCode:pty:trueを使用する。
  • Codex:環境のCODEX_HOMEやデフォルトの~/.codexを継承しない。個別に認証されたコーディングエージェントホームを使用し、各Codexコマンドにスコープを設定する。
  • Claude Code:PTYは使用しない。claude --permission-mode bypassPermissions --printを使用する。
  • 起動前に、実際の通知ルートを取得する。
  • ワーカーは、openclaw message sendで完了/失敗を送信する必要がある。
  • ハートビート、システムイベント、またはnotify-on-exitに依存しない。
  • processで監視する。理由なく遅いワーカーを強制終了しない。
  • ユーザーが特定のエージェントを要求した場合は、そのエージェントを使用する。
  • ワーカーが失敗/ハングした場合は、再生成するか確認する。黙って手動でコーディングしない。
  • ~/Projects/openclawでブランチをチェックアウトしたり、バックグラウンドコーディングエージェントを実行したりしない。隔離されたチェックアウトを使用する。
  • チェックアウトまたはワークツリー作成の前に、ソース参照を信頼済みまたは非信頼として分類する。コントリビューターが管理する参照を、リポジトリの承認された非信頼PRサンドボックス/レビューワークフローの外部で具体化しない。また、その中で権限バイパスワーカーを起動しない。
  • Gitで管理されたプロジェクトを変更するタスクの場合は、起動前にGitワークツリーを準備して検証し、ワーカープロンプトに以下の正確なGit準備ブロックを含める。

必須のGit準備

Codex、Claude Code、またはOpenCodeを、Gitで管理されたプロジェクトを変更する作業のために起動する前:

  1. 対象のリポジトリを特定し、その正規リモートを選択する。それが存在しターゲットと一致する場合はupstreamを優先する。それ以外の場合はoriginを確認する。選択したリモートのデフォルトブランチを動的に解決する。明示的なタスクブランチまたは信頼できる既存のPRメタデータからターゲットベースを決定する。他の共有ブランチの場合は、設定/追跡されたベースを証明するか、ユーザーに確認する。指定されたベースがない新しい作業には、正規のデフォルトのみを使用する。リポジトリ、リモート、またはターゲットベースを証明できない場合は停止する。
  2. チェックアウトまたはワークツリー作成の前に、ソース参照を信頼済みまたは非信頼として分類する。コントリビューターが管理する参照の場合は、リポジトリの承認された非信頼PRサンドボックス/レビューワークフローを使用する。このワークフローはサンドボックス内での参照の具体化を所有するか、停止する。残りの手順と起動形式は、信頼済み参照のみを対象とする。
  3. 信頼済みの新しい作業の場合、<canonical>/<targetBaseBranch>から新しい隔離されたワークツリーとブランチを作成する直前に、git fetch --prune <canonical>を実行する。
  4. 信頼済みの新しい作業の場合、ワークツリーの初期HEADが取得したターゲットベースのSHAと等しいことを確認する。正規リモート、正規デフォルトブランチ、ターゲットベースブランチ、ベースSHA、ワークツリーパス、ブランチを記録する。
  5. 信頼済みの既存のPRまたは共有ブランチの場合、取得したソースブランチから隔離されたワークツリーを作成する直前に、正規のターゲットベースとソースブランチをフェッチする。そのソース参照と開始SHAを記録し、更新されたターゲットベースからの分岐を報告する。共有履歴を自動的にリベース、マージ、リセット、force-push、またはその他の方法で書き換えない。
  6. プライマリチェックアウトではなく、隔離されたワークツリーでワーカーを起動する。OpenClawの場合、~/Projects/openclaw下のプライマリチェックアウトは禁止されたままである。

Gitで管理されたプロジェクトを変更するタスクの場合は、実際の値を使用してこのブロックをワーカープロンプトに追加する:

Git準備(編集前に必須):
- 正規リモート:<canonicalRemote>
- 正規デフォルトブランチ:<canonicalDefaultBranch>
- ターゲットベースブランチ:<targetBaseBranch>
- 取得したターゲットベースSHA:<targetBaseSha>
- 準備モード:<new work | existing PR/shared branch>
- チェックアウトの信頼性:trusted
- 準備されたソース参照:<canonicalRemote/targetBaseBranch | fetched trusted source ref>
- 準備された開始SHA:<preparedStartSha>
- 隔離されたワークツリー:<worktreePath>
- 作業ブランチ:<branch>
- 準備証明書:<new work:`git fetch --prune <canonicalRemote>`を`<canonicalRemote>/<targetBaseBranch>`からの作成直前に実行 | existing branch:正規のターゲットベースと信頼済みソース参照が、`<preparedSourceRef>`にある`<preparedStartSha>`からワークツリーが作成される直前にフェッチされました>

編集前に、現在のディレクトリが隔離されたワークツリーであり、その初期HEADが<preparedStartSha>と等しいことを確認してください。新しい作業の場合、そのSHAは<targetBaseSha>と等しくなければなりません。プライマリチェックアウトを編集しないでください。既存のPR/共有ブランチの作業の場合は、分岐を報告し、明示的に要求されない限り、リベース、マージ、リセット、force-push、またはその他の方法で共有履歴を書き換えないでください。
新しく作成された作業の最終プッシュまたはPRの直前に、`git fetch --prune <canonicalRemote>`と`git merge-base --is-ancestor <canonicalRemote>/<targetBaseBranch> HEAD`を実行してください。祖先チェックが失敗した場合は、新しいブランチを最新のターゲットベースに更新し、関連する証明を再実行し、その後にforceせずにプッシュしてください。既存のPR/共有ブランチの作業の場合は、祖先チェックの失敗を報告し、リポジトリのワークフローに従ってブランチを書き換えないでください。

信頼済み参照の場合、ランチャーは編集ワーカーを起動する前にワークツリーを作成して検証する必要があります。ワークツリーの作成をそのワーカーに委任しないでください。承認された非信頼PRワークフローは、代わりにサンドボックス内でチェックアウトとワークツリーの具体化を所有する必要があります。~/Projects/openclawでワーカーを起動しないでください。読み取り専用タスクと非プロジェクトのスクラッチ作業には、Git準備ブロックは必要ありません。

通知ブロック

実際の値を使用して、この形をすべてのワーカープロンプトに追加する:

通知ルート:
- チャンネル:<notifyChannel>
- ターゲット:<notifyTarget>
- アカウント:<notifyAccount or omit>
- 返信先:<notifyReplyTo or omit>
- スレッドID:<notifyThreadId or omit>

終了したら、以下のコマンドを使用して完了メッセージまたは失敗メッセージを1つだけ送信します:
openclaw message send --channel <channel> --target '<target>' --message '<簡潔な結果>'
上記に存在する場合のみ、--account、--reply-to、または--thread-idを追加します。
openclaw system eventまたはheartbeatは使用しないでください。

信頼できるルートが存在しない場合は、完了の自動通知は利用できないと伝えてください。

起動形式

まずワーカープロンプトを一時ファイルに書き込みます。これにより、必要な通知ブロックに引用符や改行が含まれている場合のシェルの引用バグを回避できます。

PROMPT=$(mktemp -t openclaw-worker-prompt.XXXXXX)
cat >"$PROMPT" <<'EOF'
タスク。
<必須のGit準備ブロック>
<通知ブロック>
EOF
printf 'プロンプトファイル: %s\n' "$PROMPT"

同じシェル/セッションから起動する場合は$PROMPTを使用します。別のツールコールを使用する場合は、出力されたパスを代用します。以下の起動形式は信頼済みチェックアウト専用です。信頼されていないコントリビューター参照には、リポジトリの承認されたサンドボックス/レビューワークフローが必要です。

ホスト上の最初のCodexワーカーの前に、フォアグラウンドで専用の認証ホームを準備します。環境の~/.codexからauth.jsonやその他の認証情報をコピーしないでください。このホームを個別に認証してください。Codexは、ファイルとキーリングの両方の認証情報をCODEX_HOMEでスコープします。

CODEX_WORKER_HOME="$HOME/.codex-coding-agent"
mkdir -p "$CODEX_WORKER_HOME"
if ! env -u CODEX_API_KEY -u CODEX_ACCESS_TOKEN -u OPENAI_API_KEY \
  CODEX_HOME="$CODEX_WORKER_HOME" codex login status >/dev/null 2>&1; then
  printf 'Codexコーディングエージェントのログインが必要です: %s\n' "$CODEX_WORKER_HOME"
  env -u CODEX_API_KEY -u CODEX_ACCESS_TOKEN -u OPENAI_API_KEY \
    CODEX_HOME="$CODEX_WORKER_HOME" codex login --device-auth
fi
printf 'Codexワーカーホーム: %s\n' "$CODEX_WORKER_HOME"

ログインはインタラクティブなフォアグラウンド設定手順であり、バックグラウンドワーカーではありません。起動コマンドは、固定された引用符で囲まれたホームを繰り返し、環境のCodexおよびOpenAI認証オーバーライドを削除します。ワーカーホームをOpenClaw Gateway環境にエクスポートしないでください。

Codex:

bash pty:true background:true workdir:/path/to/isolated-worktree command:"env -u CODEX_API_KEY -u CODEX_ACCESS_TOKEN -u OPENAI_API_KEY CODEX_HOME=\"$HOME/.codex-coding-agent\" codex exec - < \"$PROMPT\""

Claude Code:

bash background:true workdir:/path/to/isolated-worktree command:"claude --permission-mode bypassPermissions --print < \"$PROMPT\""

OpenCode:

bash pty:true background:true workdir:/path/to/isolated-worktree command:"opencode run < \"$PROMPT\""

長いIssue-to-PR作業

  1. GitHub Issueを作成/再利用し、永続的な仕様とする。
  2. Issue URL、リポジトリ、正規リモート/デフォルトブランチ、ターゲットベースブランチ/SHA、隔離されたワークツリー、作業ブランチ、予想されるPR、証明、通知ルートを含める。
  3. 必須のGit準備ブロックを含め、ワーカーに実装、テスト、受け入れ可能なアクション可能な所見がなくなるまでレビューを実行、PRを開くように指示する。
  4. すぐにIssue URLとsessionIdを返す。
  5. processで監視する。タスクレジストリにミラーリングされている場合は、そこからキャンセルする。

スクラッチCodex

Codexには信頼できるgitリポジトリが必要です。この使い捨てスキャフォールドはプロジェクト作業ではなく、正規リモートもないため、Git準備ブロックは適用されません:

SCRATCH=$(mktemp -d)
git -C "$SCRATCH" init
PROMPT=$(mktemp -t openclaw-worker-prompt.XXXXXX)
cat >"$PROMPT" <<'EOF'
Xを構築する。
<通知ブロック>
EOF
printf 'プロンプトファイル: %s\n' "$PROMPT"
bash pty:true background:true workdir:$SCRATCH command:"env -u CODEX_API_KEY -u CODEX_ACCESS_TOKEN -u OPENAI_API_KEY CODEX_HOME=\"$HOME/.codex-coding-agent\" codex exec - < \"$PROMPT\""

プロセスアクション

  • list:実行中/最近のセッション。
  • poll:ステータス。
  • log:出力。
  • submit:入力を送信してEnter。
  • write:生のstdin。
  • paste:テキストを貼り付け。
  • kill:終了。

ユーザーへのステータス

  • 何がどこで開始されたか、およびsessionIdを伝える。
  • マイルストーン、ワーカーからの質問、エラー、ユーザーのアクションが必要な場合、または終了時にのみ更新する。
  • 強制終了された場合は、理由を伝える。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

acp-router

Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Grok Build, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either OpenClaw ACP runtime sessions or direct acpx-driven sessions ("telephone game" flow). For coding-agent thread requests, read this skill first, then use only `sessions_spawn` for thread creation. Codex chat binding defaults to the native Codex app-server plugin unless ACP is explicit or background spawn needs ACP.

add-model-provider

Add and live-prove a model provider with non-interactive config one-liners, without exposing credentials.

agent-transcript

Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely.

apple-notes

Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.

apple-reminders

List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.

auto-qa

Run OpenClaw-wide autonomous QA and live/stress campaigns across independent subsystem lanes, with verified fixes and a resumable evidence report.

autoreview

Structured code review through the shared OpenClaw agent-skills installation.

bear-notes

Create, search, and manage Bear notes via grizzly CLI.

blacksmith-testbox

Run Blacksmith Testbox for CI-parity checks, secrets, hosted services, migrations, or builds local cannot reproduce.

block-kit

Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.

blogwatcher

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

blucli

BluOS CLI (blu) for discovery, playback, grouping, and volume.

bluebubbles

Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups.

browser-automation

Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows, login checks, tab management, or recovery from stale refs/timeouts.

camsnap

Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.

canvas

Present HTML on connected OpenClaw node canvases, navigate/eval/snapshot, and debug canvas host URLs.

channel-message-flows

Use when running QA Lab channel message flow evidence.

clawdtributor

Clawtributor PRs here, last week or another window: discover conversation refs, recheck GitHub, rank by impact.

clawhub

Search ClawHub for plugins by default, or skills when explicitly requested; install, verify, update, uninstall, publish, or sync skills.

関連スキル