mcpField
C
cli-anything

cli-anything

github.com/hkuds開発57.6k2.1k 回インストール5 週間前に更新
リポジトリ

cli-anything について

CLI-Anythingは、ソフトウェア向けコマンドラインハーネスを構築、改善、テスト、検証するCodex用スキルです。プロジェクトの手法に従い、ローカルパスまたはGitHubリポジトリを入力として扱います。

主な機能

  1. 01ソフトウェアのCLIハーネス構築
  2. 02既存ハーネスのコマンド改善
  3. 03実際のバックエンドでのテスト
  4. 04実装とパッケージの検証
  5. 05導入済みハーネスの検出

活用シーン

  1. 01ソフトウェアのソースからCLIハーネスを作成
  2. 02既存ハーネスへの機能追加
  3. 03バックエンドテストと検証の実行
  4. 04生成済みまたは導入済みツールの一覧表示

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/hkuds/cli-anything --skill cli-anything

インストール後、Claude Code で/cli-anythingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
scripts/
install.ps1
install.sh
tests/
test_install.sh

詳細

Codex 向け CLI-Anything

ユーザーが Codex に CLI-Anything ビルダーとして動作させたい場合に、このスキルを使用します。

まず完全な方法論を読む

実装の前に、方法論の正式な情報源である以下を参照してください。

  1. このスキルディレクトリを基準に references/HARNESS.md を読みます。
  2. references/commands/ 配下の該当するモード仕様を読みます。
  3. references/guides/ 配下の参照ファイルは、対象に該当する場合にのみ読みます。
  4. インストール済みのリソースが利用できず、このスキルが CLI-Anything リポジトリのチェックアウトから使用されている場合は、../cli-anything-plugin/HARNESS.md とその周辺のリソースを読みます。
  5. どちらのローカルソースも利用できない場合は、https://github.com/HKUDS/CLI-Anything をクローンまたはダウンロードし、cli-anything-plugin/HARNESS.md を使用します。
  6. すべての完全な方法論のソースが利用できない場合にのみ、以下の簡略化されたルールに従います。

インストーラーは cli-anything-plugin/ から正規のリソースをこのスキルにベンダーするため、通常の Codex インストールは自己完結型になります。

リソースマップ

パス目的
references/HARNESS.md完全な方法論と品質ルール
references/commands/cli-anything.mdビルドモード仕様
references/commands/refine.mdリファインモード仕様
references/commands/test.mdテストモード仕様
references/commands/validate.md検証チェックリスト
references/commands/list.mdインストール済み/生成済みハーネスの検出
references/guides/オンデマンドの実装ガイダンス
scripts/repl_skin.py生成されたハーネスに utils/repl_skin.py としてコピーします
scripts/preview_bundle.pyプレビュー対応のハーネスに utils/preview_bundle.py としてコピーします
scripts/skill_generator.py正規およびパッケージ化された CLI スキルを生成します
scripts/templates/SKILL.md.templateskill_generator.py が使用するスキル生成テンプレート
references/docs/PREVIEW_PROTOCOL.md共有プレビューバンドルプロトコル

ベンダーされたドキュメントを読む際は、プラグインパスを現在の作業ディレクトリに対して解決するのではなく、以下のパスの読み替えを適用してください。

ドキュメントの参照インストール済みスキルのパス
guides/...references/guides/...
cli-anything-plugin/repl_skin.pyscripts/repl_skin.py
cli-anything-plugin/preview_bundle.pyscripts/preview_bundle.py
cli-anything-plugin/skill_generator.pyscripts/skill_generator.py
templates/SKILL.md.templatescripts/templates/SKILL.md.template
docs/PREVIEW_PROTOCOL.mdreferences/docs/PREVIEW_PROTOCOL.md

入力

以下のいずれかを受け付けます。

  • ./gimp や /path/to/software のようなローカルソースパス
  • GitHub リポジトリの URL

必要に応じて、クローン後にローカルディレクトリ名からソフトウェア名を導出します。

モード

ビルド

references/commands/cli-anything.md を読みます。ソース分析、アーキテクチャ設計、実装、テスト計画、テスト実装、テストドキュメント、CLI 固有の SKILL.md 生成、およびローカルインストールを通じて、完全なハーネスをビルドします。

リファイン

references/commands/refine.md を読みます。現在のコマンドとテストを棚卸しし、それらを対象ソフトウェアと比較してから、ユーザーが破壊的変更を要求しない限り既存のコマンドを削除せずに、影響の大きい機能を段階的に追加します。

テスト

references/commands/test.md を読みます。実際のバックエンドに対してハーネステストを実行し、インストール済みコマンドのサブプロセスカバレッジを検証し、合格した結果のみで TEST.md を更新します。

検証

references/commands/validate.md を読みます。ディレクトリ、実装、テスト、ドキュメント、パッケージング、およびコード品質の完全なチェックリストに対してハーネスを検証します。

リスト

references/commands/list.md を読みます。インストール済みおよび生成済みの CLI-Anything ツールを検出し、要求に応じて人間が読める形式または JSON 出力をサポートします。

簡略化されたフォールバックルール

完全な方法論を取得できない場合にのみ、これらを使用してください。

ハーネス構造

以下を生成します。

<software>/
└── agent-harness/
    ├── <SOFTWARE>.md
    ├── setup.py
    └── cli_anything/
        └── <software>/
            ├── README.md
            ├── __init__.py
            ├── __main__.py
            ├── <software>_cli.py
            ├── core/
            ├── utils/
            └── tests/
必要な動作
  • 再実装よりも実際のソフトウェアバックエンドを優先してください。
  • ワンショットの Click サブコマンドとデフォルトの REPL モードを提供してください。
  • --json による機械可読な出力をサポートしてください。
  • 対象が対応している場合は、undo/redo を備えたセッション状態を追加してください。
  • ワンショットのセッション変更を自動保存し、--dry-run をサポートしてください。
  • 同時実行による JSON の破損を避けるため、ロックされたセッションファイル書き込みを使用してください。
  • 統一された ReplSkin をコピーして使用してください。
  • 意味のある視覚的または検査的な状態を持つソフトウェア向けに、正確なプレビューコマンドを追加してください。
  • 正規の SKILL.md ファイルと、パッケージ化された CLI 固有の SKILL.md ファイルの両方を生成してください。
テスト
  • テストコードの前に TEST.md を書いてください。
  • 単体カバレッジ用に test_core.py を維持してください。
  • 実ファイルのワークフローと実際のバックエンド検証用に test_full_e2e.py を維持してください。
  • プロセスの終了コードだけでなく、レンダリング/エクスポートされた出力をプログラムで検証してください。
  • _resolve_cli() を介して、インストールされた cli-anything-<software> コマンドをテストしてください。
  • CLI_ANYTHING_FORCE_INSTALLED=1 を使用してリリース検証を実行してください。
パッケージング
  • find_namespace_packages(include=["cli_anything.*"]) を使用してください。
  • cli_anything/ はトップレベルの __init__.py を持たない名前空間パッケージとして維持してください。
  • console_scripts を介して cli-anything-<software> を公開してください。
  • パッケージ化された CLI 固有の skills/SKILL.md を含めてください。

出力の期待事項

進捗状況や最終結果を報告する際は、以下を含めてください。

  • 対象ソフトウェアとソースパス
  • 追加または変更されたファイル
  • 実行した検証コマンド
  • 未解決のリスクまたはバックエンドの制限事項

コメント