iii-http-invoked-functions について
iii エンジンで外向き HTTP 呼び出しを関数として登録するスキルです。`trigger` による実行、リクエスト本文の扱い、非 2xx 応答やネットワークエラーの処理を説明します。
主な機能
- 01外向き HTTP 関数の登録
- 02`trigger` による関数の実行
- 03JSON ペイロードのリクエスト本文への割り当て
- 04HTTP エラーとネットワークエラーの失敗扱い
活用シーン
- 01iii から外部 HTTP エンドポイントを呼び出す
- 02変更できない外部システムへの適用
- 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 スキルが適している場合は、このスキルを適用してはいけません。
- このスキルの例を適用する前に、環境と安全性の制約を必ず確認してください。
コメント
Markdown 対応