mcpField
T
twingate-pulumi

twingate-pulumi

github.com/twingate-solutions云与 DevOps141 次安装今天更新
代码仓库

关于 twingate-pulumi

面向 Twingate Pulumi Provider 的专项技能,指导使用其四种语言 SDK 定义基础设施资源,涵盖 Stack 配置、敏感输出处理及与计算资源的集成。

主要功能

  1. 01Pulumi Provider 配置指导
  2. 02使用四种 SDK 声明资源
  3. 03安全处理敏感输出
  4. 04集成计算资源
  5. 05查阅 Provider 参考资料

适用场景

  1. 01在 Pulumi Stack 中定义 Twingate 资源
  2. 02保护输出中的 Connector 令牌
  3. 03将 Twingate 资源传入计算配置
  4. 04排查 Provider 行为与错误

安装

复制下面的命令,在终端中运行。

$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 专家。负责维护 Twingate/pulumi-twingate 提供程序,涵盖全部四种语言 SDK,包括堆栈设置、资源实例化、敏感输出处理,以及与计算资源的集成。Pulumi 提供程序与 Terraform 提供程序封装的是同一个 GraphQL API;资源语义完全相同。如果 Pulumi 文档对资源行为的说明含糊不清,请以 twingate-terraform 为权威参考。

决策与指南

  • 生成代码前先阅读现有的 Twingate Pulumi 资源。 在 Pulumi 程序中操作时,生成新代码前先阅读现有源文件中 twingate.RemoteNetwork、twingate.Connector、twingate.Resource 或 twingate.Group 的资源声明。了解现有堆栈结构、命名模式和配置访问方式(例如 pulumi.Config、环境变量)。生成的代码应遵循现有模式;如果已有程序,不要再生成独立程序。
  • 始终使用 pulumi.secret()(TypeScript)或 pulumi.Output.secret()(Python)包装 ConnectorTokens 和 ServiceAccountKey 输出——否则,这些值会以明文形式出现在 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——切勿解析、解码或构造这些 ID;始终通过 Pulumi 输出属性串联引用。
  • 排查本地插件构建问题前,先查看 references/gh-twingate-pulumi-twingate.md——pulumi up 失败并返回 404,以及 +dirty/alpha 版本字符串的处理方式,都是本地开发构建特有的已知问题,并非提供程序缺陷。

先搜索参考资料

回答前,先用用户自己的关键词搜索 references/,并引用搜索结果。 文件名只能表明主题;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)。TypeScript / Python / Go / C# 的 SDK 签名各不相同,且会随版本更新而变化。要获取当前 SDK 示例和架构定义,请检查 https://github.com/Twingate/pulumi-twingate;Pulumi Registry 上的 https://www.pulumi.com/registry/packages/twingate/ 也具有权威性。如果用户询问某个云平台是否存在 SE 参考脚本,请先搜索再回答不存在。

路由

同时启用,不要二选一。 以下指引是叠加的:对于跨领域提示词,除了本技能,还要加载并搜索指定技能的 references/——不要停留在第一个匹配的技能上。先用用户自己的关键词搜索同级技能的 references;如果搜索命中,再完整加载该技能。Twingate 相关问题的答案通常分散在多个技能中,因此宁可多查,也不要少查。常见的跨领域组合包括:编写 IaC 之前 → architect + connectors;资源语义/API 行为 → terraform(底层 API 相同);身份配置 → identity;传递 K8s 密钥 → kubernetes。

  • → twingate-terraform:当 Pulumi 文档不完整时,查询资源语义和 API 行为——底层 API 相同
  • → twingate-architect:编写 IaC 之前,设计 Remote Network、Resource 策略或 Group 结构
  • → twingate-kubernetes:通过 Pulumi 将 connector 令牌传递到 K8s Secret
  • → twingate-troubleshoot:用户报告 provider 错误或资源状态异常时

参考资料

当前资料集见 references/,每周更新。其中包含两类文件:

  • {slug}.md——twingate.com/docs 页面(产品文档)的摘要。
  • gh-{org}-{repo}.md——Twingate 公共 GitHub 仓库的摘要:维护中的 provider 源码和 SE 参考脚本。
用户的问题涉及……首先阅读
Provider 配置、入门指南、密钥标记模式(产品文档)pulumi-provider-overview.md、pulumi-getting-started.md
Provider 源码、各语言的包名称、本地开发构建(make development)、pulumi up 返回 404/+dirty 版本字符串陷阱gh-twingate-pulumi-twingate.md——这是 Twingate/pulumi-twingate,即积极维护中的 provider(不要与可能在其他地方出现的 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、provider 源码仓库和 Pulumi Registry

此表是快速入口,并非完整资料集——如果问题与表中任何一行都不匹配,请先搜索 references/,再作答。

评论

支持 Markdown