mcpField
A
api2cli

api2cli

github.com/melvynx開発30131 回インストール19 週間前に更新
リポジトリ

api2cli について

api2cliは、REST APIをエージェント向けの標準化されたCLIに変換するスキルです。APIの調査からCLIの生成、実装、テスト、公開までを案内し、最初に既存CLIの登録状況を確認します。

主な機能

  1. 01CLIレジストリの検索
  2. 02API情報からCLIのひな型を作成
  3. 03リソースコマンドの実装
  4. 04CLIのビルド、リンク、テスト
  5. 05エージェント向け操作ガイドの生成
  6. 06CLIとスキルの公開

活用シーン

  1. 01REST API用のコマンドラインインターフェース作成
  2. 02生成前の既存CLIの確認
  3. 03生成したCLIのエージェント向け準備
  4. 04対応レジストリへのCLIやスキルの公開

インストール

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

$npx skills add https://github.com/melvynx/api2cli --skill api2cli

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

同梱ファイル

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

claw.json
references/
commands.md
create.md
openclaw.md
package-checklist.md
publish-to-github.md
publish-to-npm.md
publish.md
resource-patterns.md
skill-generation.md

詳細

api2cli

あらゆる REST API を、標準化されたエージェント対応の CLI に変換します。

コマンドの実行には常に npx api2cli を使用してください。生成された CLI をプログラムから呼び出す場合は、常に --json を使用してください。

前提条件

bun --version || curl -fsSL https://bun.sh/install | bash

ワークフロー

すべてのステップを順番に実行してください。いずれも省略しないでください。

1. まずレジストリを検索する

何かを生成する前に、CLI がすでに存在するかどうかを確認します。

npx api2cli search <query>

必要な CLI がレジストリにすでにある場合は、再構築せずにインストールします。

npx api2cli install <name>

--type、--category、--json などのフィルターについては、references/commands.md を参照してください。

2. API を調査する

API のドキュメントまたは OpenAPI スペックを見つけます。ベース URL、認証タイプ、認証ヘッダー、すべてのリソースとエンドポイントを特定します。

3. スキャフォールドを作成する
npx api2cli create <app> --base-url <url> --auth-type bearer

すべてのフラグと生成される内容については、references/create.md を参照してください。

4. リソースを実装する

API の各リソースに対して ~/.cli/<app>-cli/src/resources/<resource>.ts を作成します。src/index.ts に登録します。

CRUD テンプレートとライブラリ API については、references/resource-patterns.md を参照してください。

5. ビルド、リンク、テスト
npx api2cli bundle <app>
npx api2cli link <app>
<app>-cli --help
<app>-cli <resource> list --json

api2cli link は ~/.local/bin を PATH に自動的に追加します。export PATH は不要です。

また、次の 2 つのステップでスキルを接続します。

  1. 正規: ~/.agents/skills/<app>-cli → ~/.cli/<app>-cli/skills/<app>-cli
  2. エージェントごと: 既存の各エージェントフォルダー (~/.claude/skills、~/.cursor/skills、~/.openclaw/workspace/skills) の <app>-cli が正規のエントリにシンボリックリンクされます。

フラグでどちら側も上書きできます。

# Custom canonical folder
npx api2cli link <app> -f ~/.agents/skills

# Custom destinations (replaces auto-detected ones)
npx api2cli link <app> -d ~/.claude/skills ~/.cursor/skills

# Combine both
npx api2cli link <app> -f ~/.agents/skills -d ~/.claude/skills
6. スキルと README を完成させる

このステップは必須です。 スキルは単なるコマンド一覧ではなく、別のエージェントにとっての実際の操作ガイドにならなければなりません。プレースホルダーや TODO は禁止です。

  1. CLI をイントロスペクトする: <app>-cli --help を実行し、次にすべてのリソースとアクションについて <resource> --help と <resource> <action> --help を実行します
  2. 説明を更新する: すべてのリソース名を列挙し、ドメイン固有のトリガーフレーズを追加します
  3. カテゴリを設定する: {{CATEGORY}} を正しい値 (例: social-media、email、devtools) に置き換えます
  4. タスク指向のセクションを書く: {{WHEN_TO_USE_HELP}}、{{CAPABILITIES_HELP}}、{{USE_CASES_HELP}} をドメイン固有のガイダンスに置き換えます
  5. リソーステーブルを構築する: 各リソースについて、すべてのアクションとその実際のフラグ (--help の出力から) を含むコマンドテーブルを作成します
  6. クイックリファレンス + 出力形式を追加する: --help コマンドを含め、JSON エンベロープを説明します
  7. すべてのプレースホルダーを削除する: {{...}} や `` が残っていないようにします
  8. 検証する: 少なくとも 1 つのコマンドを実行して、スキルの例が正確であることを確認します

イントロスペクションのワークフロー全体、フォーマット、品質チェックリスト、シンボリックリンクの手順については、references/skill-generation.md を参照してください。

OpenClaw は ~/.openclaw/ が存在する場合に自動検出されます。関係なく強制的に含める (または他の任意のフォルダーを含める) には、次のようにします。

npx api2cli link <app> -d ~/.openclaw/workspace/skills

ワンプロンプトでのセットアップ、ClawHub への公開、API キーの自動検出については、references/openclaw.md を参照してください。

ClawHub でも利用可能です: npx clawhub install api2cli

7. 公開する (ユーザーが依頼した場合)

公開先にかかわらず、事前に次のチェックを実行します。

  1. gh CLI が認証されていることを確認する: gh auth status を実行します。ログインしていない場合は、まず gh auth login を実行するようユーザーに依頼します。停止して待機します。
  2. CLI がすでに GitHub にあるかどうかを確認する: CLI ディレクトリで git remote get-url origin を実行します。
    • リモートが存在しない場合 → CLI はまだ GitHub にありません。npm やレジストリへの公開に進む前に、先に GitHub 公開フロー (以下を参照) を自動的に実行します。
    • リモートが存在する場合 → すでに GitHub にあるため、続行します。
GitHub へ

CLI を公開 GitHub リポジトリにプッシュします。

事前チェック、リポジトリの作成、プッシュのワークフローについては、references/publish-to-github.md を参照してください。

npm へ

CLI が先に GitHub 上にある必要があります(package.json の repository フィールドのため)。GitHub 上にない場合は、先に上記の GitHub 公開フローを実行してください。

CLI を npm レジストリに公開すると、ユーザーが npm i -g <name> または npx <name> を実行できるようになります。

認証、package.json の検証、ビルド、確認、公開のワークフローについては、references/publish-to-npm.md を参照してください。package.json のフィールドごとのリファレンスについては、references/package-checklist.md も参照してください。

ClawHub へ

生成されたスキルを ClawHub に公開すると、OpenClaw ユーザーが発見してインストールできるようになります。

  1. 認証: npx clawhub login を実行します。認証されていない場合は、ユーザーに先にログインを完了するよう依頼してください。停止して待機します。
  2. スキルをプッシュ: npx clawhub publish <cli-dir>/skills/<app>-cli --slug <app>-cli を実行します。
  3. 公開後、ユーザーは次のコマンドでインストールできます。
    npx clawhub install <app>-cli
    

OpenClaw のセットアップワークフロー全体については、references/openclaw.md を参照してください。

Sundial Hub へ

生成されたスキルを Sundial Hub に公開すると、あらゆるエージェント(Claude Code、Cursor、Codex など)がインストールできるようになります。

  1. 認証: npx sundial-hub auth status を実行します。認証されていない場合は、ユーザーに先に npx sundial-hub auth login を実行するよう依頼してください。停止して待機します。
  2. スキルをプッシュ: npx sundial-hub push <cli-dir>/skills/<app>-cli --visibility public --categories coding を実行します。
  3. 公開後、ユーザーは次のコマンドでインストールできます。
    npx sundial-hub add <sundial-username>/<app>-cli
    
api2cli.dev レジストリへ

CLI が先に GitHub 上にある必要があります。GitHub 上にない場合は、先に上記の GitHub 公開フローを実行してください。

api2cli.dev に登録すると、他のユーザーが npx api2cli install <name> でインストールできるようになります。

レジストリへの公開ワークフローについては、references/publish.md を参照してください。

規約

<app>-cli <resource> <action> [flags]
<app>-cli auth set|show|remove|test

--json は次を返します: { "ok": true, "data": [...], "meta": { "total": 42 } }

その他のフラグ: --format <text|json|csv|yaml>、--verbose、--no-color、--no-header

終了コード: 0 = 成功、1 = API エラー、2 = 使用エラー

トークン: ~/.config/tokens/<app>-cli.txt(chmod 600)

コメント