commet について
commetは、Commet連携の実装と保守を支援するスキルです。インストール済みSDKの文書と型を契約として扱い、互換性の確認とリモート変更の保護を促します。
主な機能
- 01インストール済みSDKとバージョンの特定
- 02対応する成果物の文書と型の参照
- 03利用可能な場合のCommet CLI診断
- 04連携の実装とテストの案内
- 05リモート操作前のコンテキスト確認
活用シーン
- 01新しいCommet連携の構築
- 02既存連携の安全な更新
- 03SDKやAPIの互換性調査
- 04許可されたCommetリソース変更の準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ commet-labs/ skills --skill commetインストール後、Claude Code で/commetを入力して読み込まれたか確認します。
詳細
Commet の統合
インストール済み SDK を契約として扱います。このスキルは作業の手順を示すものであり、API サーフェスのコピーを保持するものではありません。
インストール済みのコンテキストを特定する
統合を変更する前に、次の手順を実行します。
- すべての Commet SDK、統合パッケージ、CLI、直接呼び出す REST API、および明示的に指定された API または Webhook のバージョンについて、依存関係マニフェストとロックファイルを確認します。
- 対象アプリケーションが実際にインポートしているパッケージを特定します。複数のバージョンがインストールされている場合、最新バージョンが有効だと決めつけないでください。
- インストール済みの成果物から
docs/manifest.jsonを特定し、マニフェストに記載されたエントリーポイントを読みます。続いて、マニフェストで指定された関連する生成済みリファレンスと Platform ドキュメントのみを読みます。 - タスクでリクエスト、レスポンス、エラー、Webhook の正確な形式が必要な場合は、同じインストール済みの成果物から生成済みの型を読みます。
- インストール済みの成果物にドキュメントがない場合は、そこで作業を止め、パッケージ名とバージョンを正確に報告します。古い契約を最新の Web ドキュメントで黙って置き換えないでください。
成果物の場所を特定する際は、ソースチェックアウトではなくパッケージマネージャーを使用します。
| エコシステム | インストール済みドキュメント |
|---|---|
| Node | node_modules/@commet/node/docs/ と、インストール済みの統合パッケージの README |
| Python | インストール済みの commet モジュールを特定し、その docs/ ディレクトリを使用します |
| Go | go.mod から Commet モジュールのパスを読み取り、go list -m -f '{{.Dir}}' で特定した後、docs/ を使用します |
| Java | co.commet:commet-java 依存関係を特定し、JAR リソース内の commet/docs/ を読みます |
| PHP | vendor/commet/commet-php/docs/ |
SDK がインストールされていない新しい統合で、ユーザーが実装を求めている場合は、まず指定された言語のパッケージをインストールします。その後、統合コードを書く前に、インストール済みパッケージのドキュメントを読みます。
Node の診断を使用する
commet CLI の実行ファイルがある場合は、プロジェクトルートから次のコマンドを実行します。
commet doctor --output agent
コマンドがゼロ以外の終了コードを返した場合でも、JSON を解析します。status、apiVersion、check の code、evidence、impact、action を使用します。秘密の値を調べたり、出力したりしないでください。失敗したパッケージ、ドキュメント、互換性、API バージョン、またはプロジェクトコンテキストのチェックを解決してから、統合に依存してください。
Node パッケージはインストールされているものの CLI がない場合は、doctor のエビデンスを利用できないことを報告し、インストール済みパッケージのドキュメントを使って作業を続けます。パッケージを暗黙にインストールまたは実行しないでください。ユーザーから CLI の追加を求められた場合は、インストール済みドキュメントを確認してから、互換性のあるインストール方法を特定します。
doctor がルールの古さを報告したという理由だけで、commet agents setup を実行しないでください。このコマンドはリポジトリに書き込みを行うため、ユーザーから明示的な依頼が必要です。
実装する
- 既存の統合を追跡し、その言語、フレームワーク、顧客 ID、API バージョン、冪等性の境界を維持します。
- インストール済みのマニフェスト、生成済みリファレンス、型に記載されている操作とフィールドのみを使用します。
- 認可の判断には、直接のサブスクリプションおよび機能アクセスのクエリを優先します。Webhook は非同期処理に使用し、複製した課金情報の真実のソースとして使用しないでください。
- インストール済みドキュメントで必要とされている場合は、呼び出し元が所有する論理イベント ID と、明示的な冪等性キーを維持します。
- インストール済みのエラー契約に従って処理し、サポートとの照合に使用するサーバーリクエスト ID を正確に維持します。
- リポジトリのフォーマッター、型チェックまたはコンパイル、テスト、および変更内容に応じた、対象を絞った統合チェックを実行します。
ガードの効果
リポジトリの調査、コードの編集、ビルド、ローカルテストでは、リモート組織のコンテキストは必要ありません。Commet リソースを作成、更新、削除、プッシュ、移行、転送、またはテストする操作では、リモート組織のコンテキストが必要です。
リモートに影響する操作を行う前に:
- 正確な組織名と、それが
sandboxまたはliveのどちらであるかを明示します。 - doctor が利用可能な Node プロジェクトでは、
PROJECT_CONTEXT_VALIDチェックに合格していることを必須とし、その証拠を使用します。 - それ以外の場合は、明示的なプロジェクト設定またはユーザーから組織とモードを確認します。API キーのプレフィックスからモードを推測してはいけません。
- 実行前に対象を明示します。ユーザーのリクエストで明示的に許可されていない限り、live への書き込みは行わないでください。
- ドキュメントに記載されたドライラン、または利用可能な場合は sandbox での検証を優先します。インストール済みのドキュメントに記載されていないフラグやリモート動作を捏造してはいけません。
API キー、Webhook シークレット、認証トークン、環境変数の値全体を、出力、パッチ、ログ、テストに決して含めないでください。