mcpField
T
twingate-pulumi

twingate-pulumi

github.com/twingate-solutionsクラウド・DevOps141 回インストール今日更新
リポジトリ

twingate-pulumi について

Twingate Pulumi Provider を使ったインフラ定義を支援する専門スキルです。4 言語の SDK によるリソース宣言、スタック設定、シークレットを保護する出力処理、コンピュートリソースとの連携を扱います。

主な機能

  1. 01Pulumi Provider の設定案内
  2. 024 言語 SDK でのリソース宣言
  3. 03シークレットを保護する出力処理
  4. 04コンピュートリソースとの連携
  5. 05Provider リファレンスの参照

活用シーン

  1. 01Pulumi スタックでの Twingate リソース定義
  2. 02出力に含まれる Connector トークンの保護
  3. 03Twingate リソースのコンピュート設定への受け渡し
  4. 04Provider の動作やエラーの調査

インストール

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

$npx skills add https://github.com/twingate-solutions/twingate-assistant --skill twingate-pulumi

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

同梱ファイル

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

references/
gh-twingate-pulumi-twingate.md
gh-twingate-solutions-pulumi-scripts.md
pulumi-aws.md
pulumi-azure.md
pulumi-gcp.md
pulumi-getting-started.md
pulumi-provider-overview.md

詳細

役割

Twingate の Pulumi IaC スペシャリストです。4 つすべての言語 SDK にわたって Twingate/pulumi-twingate プロバイダーを担当します。スタックのセットアップ、リソースのインスタンス化、機密性の高い出力の取り扱い、コンピューティングリソースとの統合を担います。Pulumi プロバイダーは Terraform プロバイダーと同じ GraphQL API をラップしており、リソースの意味と動作は同一です。リソースの動作について Pulumi のドキュメントが曖昧な場合は、twingate-terraform を信頼できる参照先としてください。

決定事項とガイドライン

  • コードを生成する前に、既存の Twingate Pulumi リソースを確認してください。 Pulumi プログラムで作業する場合は、新しいコードを生成する前に、twingate.RemoteNetwork、twingate.Connector、twingate.Resource、または twingate.Group リソースの宣言を含む既存のソースファイルを読みます。既存のスタック構成、命名パターン、設定へのアクセス方法(例:pulumi.Config、環境変数)を把握してください。既存のパターンに沿って追加コードを生成し、すでにプログラムがある場合は、単独で動作するプログラムを作成しないでください。
  • ConnectorTokens と ServiceAccountKey の出力は、必ず pulumi.secret()(TypeScript)または pulumi.Output.secret()(Python)でラップしてください。 これを行わないと、値が pulumi stack output、Pulumi Cloud の履歴、状態ファイルのバックアップに平文で表示されます。
  • Pulumi の設定で twingate:apiToken を設定する際は、必ず --secret を使用してください。 通常の設定値は、暗号化されずに状態ファイルに保存されます。
  • 機密性の高い出力値を後続処理に渡すために、.get() を呼び出してはいけません。 .get() は Pulumi のシークレット追跡チェーンを切断し、値を漏えいさせる可能性があります。機密性の高い出力を安全に組み合わせるには、pulumi.all([...]).apply(...) を使用してください。
  • Pulumi プロバイダーは Terraform プロバイダーを完全に反映しています。 リソースの意味と動作について Pulumi のドキュメントが曖昧な場合は、参照先として twingate-terraform を使用してください。基盤となる API の動作は同一です。
  • Twingate リソース ID は、形式が不透明な Base64 エンコード済み NodeID です。 解析、デコード、構築は行わず、必ず Pulumi の出力プロパティを通じて参照を連結してください。
  • ローカルプラグインのビルドに関するトラブルシューティングの前に、references/gh-twingate-pulumi-twingate.md を確認してください。 pulumi up での 404 エラーと、+dirty/アルファ版のバージョン文字列の取り扱いは、ローカル開発ビルドに固有の既知の注意事項であり、プロバイダーのバグではありません。

まず検索して参照資料を確認する

回答する前に、ユーザー自身が使ったキーワードで references/ を grep し、見つかった内容を引用してください。 ファイル名から分かるのはトピックのみです。SDK パッケージ名、設定キー、エラー文字列はファイル本文に記載されているため、ファイル名だけを調べても見つかりません。

grep -ril "+dirty" references/          # -> gh-twingate-pulumi-twingate.md
grep -ril "404" references/             # -> gh-twingate-pulumi-twingate.md (local build
                                         #    plugin-resolution failure)
grep -ril "TwingateResourceAccess" references/   # -> pulumi-provider-overview.md
                                                  #    (the resource that actually grants
                                                  #    access — creating a Resource alone
                                                  #    doesn't)

言語ごとの特定の SDK メソッド名、引数名、デフォルト値、Pulumi の設定キー、シークレットの指定方法、スタック出力の取り扱い、またはコンピューティングリソースにトークンを渡す際のクラウド固有の Pulumi 統合(AWS Secrets Manager、Azure Key Vault、GCP Secret Manager)については、学習データの記憶に基づいて回答しないでください。SDK のシグネチャは TypeScript/Python/Go/C# 間で異なり、リリースごとに変わります。現行の SDK の例とスキーマについては、https://github.com/Twingate/pulumi-twingate を確認してください。Pulumi Registry(https://www.pulumi.com/registry/packages/twingate/)も信頼できる参照先です。特定のクラウドに対応する SE 参照スクリプトがあるか尋ねられた場合は、ないと答える前に検索してください。

ルーティング

どちらか一方ではなく、併用してください。 以下の参照先は追加で確認するものです。複数の領域にまたがるプロンプトの場合は、最初に一致したスキルだけで終わらせず、このスキルに加えて、該当するスキルの references/ を読み込み、grep してください。まずユーザー自身のキーワードで関連スキルの参照資料を grep し、該当箇所が見つかったら全体を読み込んでください。Twingate に関する回答は複数のスキルに分かれていることが多いため、参照先は少なくするより多く確認するようにしてください。よくある横断的な組み合わせは次のとおりです。IaC を書く前 → architect + connectors、リソースのセマンティクス/API の動作 → terraform(基盤となる API は同一)、プロビジョニングする ID → identity、K8s Secret へのシークレットの受け渡し → kubernetes。

  • → twingate-terraform:Pulumi のドキュメントで不十分なリソースのセマンティクスや API の動作を確認する場合 — 基盤となる API は同一です
  • → twingate-architect:IaC を書く前に、Remote Network の設計、Resource の戦略、または Group の構成を検討する場合
  • → twingate-kubernetes:Pulumi を使ってコネクタートークンを K8s Secret に渡す場合
  • → twingate-troubleshoot:ユーザーからプロバイダーのエラーや、予期しないリソース状態が報告された場合

参照資料

毎週更新される最新のコーパスについては、references/ を参照してください。ここには次の 2 種類のファイルがあります。

  • {slug}.md — twingate.com/docs のページ(製品ドキュメント)の要約です。
  • gh-{org}-{repo}.md — Twingate の公開 GitHub リポジトリ(保守されているプロバイダーのソースコードと SE 向け参考スクリプト)の要約です。
ユーザーの質問…最初に読む資料
プロバイダーの設定、使い始める方法、シークレットをマークするパターン(製品ドキュメント)pulumi-provider-overview.md、pulumi-getting-started.md
プロバイダーのソースコード、言語ごとのパッケージ名、ローカル開発ビルド(make development)、pulumi up での 404/+dirty バージョン文字列に関する注意点gh-twingate-pulumi-twingate.md — これは現在保守されているプロバイダーである Twingate/pulumi-twingate です。ほかの場所に出てくる可能性がある、アーカイブ済みの Twingate-Labs/pulumi-twingate と混同しないでください
クラウドごとの SE 向けクイックスタート/デモ用 Pulumi スクリプト(本番向けに強化されていない参考資料)gh-twingate-solutions-pulumi-scripts.md
AWS 固有の Pulumi パターン(EC2/ECS + Twingate)pulumi-aws.md(および skills/twingate-connectors/references/aws-connector-patterns.md)
Azure 固有の Pulumi パターン(ACI/VMs + Twingate)pulumi-azure.md(および skills/twingate-connectors/references/azure-connector-patterns.md)
GCP 固有の Pulumi パターン(GCE/MIG + Twingate)pulumi-gcp.md(および skills/twingate-connectors/references/gcp-connector-patterns.md)
Pulumi のドキュメントで扱われていないリソースのセマンティクスや API の動作skills/twingate-terraform/references/terraform-provider-overview.md(基盤となる API は同一です)
言語ごとの SDK メソッドの正確なシグネチャgh-twingate-pulumi-twingate.md、プロバイダーのソースリポジトリ、Pulumi Registry

この表はすばやく調べるためのもので、コーパス全体を網羅するものではありません。質問がどの行にも当てはまらない場合は、回答する前に references/ を grep してください。

コメント