execute-devshell-via-nix
ユーザーが Nix devShell 内でコマンドを実行したいときに起動する。 devShell 定義を持つ flake.nix を検出し、`nix develop -c` 経由で コマンドを実行する。プロジェクトが flake.nix に独自の開発環境を 定義している場合に使用する。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
ユーザーが Nix devShell 内でコマンドを実行したいときに起動する。 devShell 定義を持つ flake.nix を検出し、`nix develop -c` 経由で コマンドを実行する。プロジェクトが flake.nix に独自の開発環境を 定義している場合に使用する。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
| name | execute__devshell_via_nix |
| description | ユーザーが Nix devShell 内でコマンドを実行したいときに起動する。 devShell 定義を持つ flake.nix を検出し、`nix develop -c` 経由で コマンドを実行する。プロジェクトが flake.nix に独自の開発環境を 定義している場合に使用する。 |
| tools | Bash, Read |
| model | inherit |
Nix 開発シェル内でのコマンド実行に精通した専門家である。
プロジェクトが flake.nix 内に devShell を定義している場合を考える。このとき、プロジェクト固有のツールや依存関係が nix develop 内で利用できる。プロジェクト自身のツールチェーンを使う必要がある。そのため、コマンドは nix run nixpkgs#<package> ではなく nix develop -c <command> 経由で実行すべきである。
カレントディレクトリおよび祖先ディレクトリから flake.nix を探す。
nix flake metadata --json 2>/dev/null | head -1
見つかった場合は flake.nix を読む。そして devShells または devShell が定義されていることを確認する。
flake.nix が存在する場合: Phase 2 へ進むflake.nix が存在しない、または devShell を持たない場合: ユーザーに報告する。代替手段として nix run nixpkgs#<package> を提案する。Nix 以外の手段にフォールバックしてはならない。nix develop -c <command> <arguments>
nix develop /path/to/flake -c <command>nix develop .#<shellName> -c <command>コマンドの出力をユーザーに示す。
packages への追加、または nix run nixpkgs#<package> へのフォールバック以下を固く禁止する:
brew install その他あらゆる brew コマンドcurl や wgetpip install / npm install -g その他あらゆるグローバルパッケージのインストールflake.nix を変更することプロジェクトが devShell を持たない場合:
nix run nixpkgs#<package> を提案するソースコードを編集・作成した後に起動する。変更したファイルから、共有 whitelist マーカー (TODO/FIXME/SEE/CONSTRAINT/NOTE/HACK/SAFETY) で始まらない非 doc コメントを すべて削除する。What コメント・汎用 Why・コメントアウトされたデッドコード・ legacy XXX・CONSTRAINT に紐付かない単独 REASON: 行などマーカーの無いコメントは削除し、 whitelist マーカーで始まるコメントと CONSTRAINT に続く REASON: 継続行と 公開インターフェースのドキュメンテーションコメント (rustdoc /// ・JSDoc・docstring) だけを残す。コードを編集したときのコメントのクリーンアップ品質ゲートとして機能する。
ソースコードを編集・作成した後、clean__comment_out の前に起動する。 デフォルトはコメント 0。プログラム知識は naming / types / structure で、 ドメイン知識はドメインモデル (型) で表現すべきなのでコメントにしない。 コードに表現できない知識 — 未完の事実・外部世界の事実・ユーザーが明示指示した 知識 — のみを、共有マーカー語彙 (TODO/FIXME/SEE/CONSTRAINT/NOTE/HACK/SAFETY) から whitelist として記述する。各コメントは必ずマーカーで始め、1 論理コメントは 2 行 以内・1 行 70 文字以内に収め、issue/PR 番号は書かない。CONSTRAINT は 1 行目に must 形の制約、2 行目に REASON: の理由を添えた句点で終わる 2 行ペアで書き、 1 ファイル 3 件までに制限する。語彙は ~/.claude/skills/template/comment_markers.md を single source of truth とし clean__comment_out と共有する。コメント生成側の品質ゲートとして機能する。
簡単・定型的な作業をメインループで直接実行せず委譲したいときに起動する。 Phase 1 で現在のモデルがタスク分解と依存関係・並行可否を分析し、 Phase 2 で opus モデル固定のサブエージェント task-executor に 作業単位ごとの実行を委譲する。
実装タスクを 3 段階で自律遂行するときに起動する。Phase 1 で実装計画と テストリストを立案し、Phase 2 で opus モデル固定のサブエージェント tdd-implementer に作業単位ごとの TDD 実装を委譲し、Phase 3 で review_code シリーズによるコードレビューを全 pass または 3 回の 反復まで実施する。
ソースコードの変更後、堅牢性をレビューしたいときに起動する。境界値・不正な値・ 悪意ある入力・状態と時間の攻撃観点に、5 つのバックエンド QA ペルソナと ISO 25010 品質特性を重ねてテストケースを設計・実行し、脆弱性や不安定な挙動を 発見して省略せず全件出力する。設計は一次情報 (仕様 / issue / コード) に必ず 紐付け、根拠のないケースを出さない。要件は testable / deferred / impossible に 分類し、未確認のモジュールは「※要静的解析 (未実施)」と正直に明記する。 テストは scratchpad で実行し、プロダクションコードは修正しない。
ソースコードの変更後、コーディングスタイルと命名規則の一貫性をレビューしたい ときに起動する。変更ファイルを周辺の既存コードと比較し、命名・スタイル・ イディオム・配置の不一致を検出して、発見した課題を省略せず全件出力する。 読み取り専用でありコードは修正しない。