mcpField
I
iii-http-invoked-functions

iii-http-invoked-functions

github.com/iii-hq開発219 回インストール
リポジトリ

iii-http-invoked-functions について

iii エンジンで外向き HTTP 呼び出しを関数として登録するスキルです。`trigger` による実行、リクエスト本文の扱い、非 2xx 応答やネットワークエラーの処理を説明します。

主な機能

  1. 01外向き HTTP 関数の登録
  2. 02`trigger` による関数の実行
  3. 03JSON ペイロードのリクエスト本文への割り当て
  4. 04HTTP エラーとネットワークエラーの失敗扱い

活用シーン

  1. 01iii から外部 HTTP エンドポイントを呼び出す
  2. 02変更できない外部システムへの適用
  3. 03複数のエンドポイント関数の登録

インストール

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

$npx skills add https://github.com/iii-hq/skills --skill iii-http-invoked-functions

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

詳細

HTTP 呼び出し関数

iii に外部 HTTP エンドポイントを関数として呼び出させる場合は、このパターンを使用します。

パターンの選択ルール

  • 「HTTP エンドポイントを registerFunction に登録する」と記載されている場合は、このパターンを使用します。
  • エンドポイントのリスト/マップ(例:{ path, id })と、registerFunction を実行するループが求められている場合は、このパターンを使用します。
  • 適応対象のシステムを変更できない場合は、このパターンを使用します。
  • iii が所有するインバウンドルートを公開することが目的の場合は、代わりに registerTrigger({ type: 'http' }) を使用します。

基本モデル

  • registerFunction(meta, HttpInvocationConfig) は、アウトバウンド HTTP 呼び出し関数を登録します。
  • trigger({ function_id, payload }) は、他の関数と同様に呼び出します。
  • JSON ベースの呼び出しでは、トリガーのペイロードがリクエストボディになります。
  • 2xx 以外の応答とネットワーク障害は、呼び出しの失敗として扱われます。

一般的な形式

  • registerWorker(url, { workerName })
  • 小規模なエンドポイント記述子リストを用意し、その後に登録ループを実行します。
    • [{ path, id }]
    • registerFunction({ id }, { url: base + path, method: 'POST' })
  • 環境変数キー(token_key、secret_key、value_key)を指定した任意の認証設定

ガードレール

  • アウトバウンド HTTP エンドポイントの適応を registerTrigger({ type: 'http' }) としてモデル化しないでください。
  • 認証フィールドにシークレットを直接渡さず、環境変数名を渡してください。
  • 関数 ID は安定したものにし、ドメインのプレフィックスを付けてください(例:legacy::orders)。

リファレンス

../references/http-invoked-functions.js を参照してください。

Python 版もあります:../references/http-invoked-functions.py

Rust 版もあります:../references/http-invoked-functions.rs

使用する場面

  • iii エンジンの iii-http-invoked-functions が主な対象となるタスクでは、このスキルを使用します。
  • リクエストでこのパターンまたは同等の実装が直接求められている場合に使用します。

適用範囲

  • 無関係なタスクに対する汎用的な代替手段として、このスキルを使用しないでください。
  • より具体的な iii スキルが適している場合は、このスキルを適用してはいけません。
  • このスキルの例を適用する前に、環境と安全性の制約を必ず確認してください。

コメント