ops-sso

SKILL.md

ops-sso

多云 SSO 工作流。默认路径是:确认账号存在 -> ensure -> 用返回的 profileName 执行云 CLI。

何时使用

  • 用户提到 ops-sso~/.ops-sso、SSO 登录、凭证刷新、云账号切换。
  • 用户要在某个 AWS / 阿里云 / 腾讯云账号下执行 CLI 命令。
  • 用户要在两个或多个账号之间搬迁、复制、对比、同步资源。
  • 用户需要 loginrefreshensureliststatusswitchcredssetup

前置条件

  • 默认假设 ops-sso CLI 已安装。
  • 需要对应云 CLI:awsaliyuntccli
  • 用户需要企业 SSO 权限,并能完成浏览器、device code 或 MFA 授权。
  • 若当前任务是安装或初始化,先阅读 quickstart.md

默认执行流程

  1. 账号类操作要求用户明确给出目标 accountName。不要自行推断或替换。
  2. 先确认账号存在:
ops-sso list --json
  1. 确保目标账号凭证有效:
ops-sso ensure <accountName> --json
  1. ensure 失败,先补救,再重试:
ops-sso refresh <portalId>
ops-sso login -p <portalId>
ops-sso ensure <accountName> --json
  1. 触发登录后,必须明确提示用户:

    • 浏览器可能自动打开
    • 若未自动打开,按终端里的 URL 或 device code 完成授权
    • 若需要 MFA,等待用户完成后再继续
  2. 拿到 profileName 后直接执行云 CLI,不依赖环境变量:

aws <cmd> --profile <profileName>
aliyun <cmd> --profile <profileName>
tccli <cmd> --profile <profileName>
  1. 若任务同时涉及多个账号,不要来回 switch。分别对每个账号执行 ensure,保存各自的 profileName,后续命令显式使用对应 profile:
ops-sso ensure <sourceAccount> --json
ops-sso ensure <targetAccount> --json

aws <source-read-cmd> --profile <sourceProfileName>
aws <target-write-cmd> --profile <targetProfileName>

场景分流

  • 首次设置:ops-sso creds set -> ops-sso login
  • 仅查看账号或状态:ops-sso listops-sso status
  • 手动刷新 token:ops-sso refresh [portalId]
  • 仅为 shell 导出环境变量:ops-sso switch <account> [--role <role>]

强约束

  • Agent 默认用 ensure + --profile,不要把 switch 当成默认路径。
  • switch 只用于用户明确要求修改当前 shell 环境。
  • 多账号任务默认同时保留多个 profileName,不要靠反复切换 shell 环境串行执行。
  • 若登录或刷新失败,必须把错误返回给用户,不得静默切到其他账号。
  • 每次跨账号执行写操作前,都要重新确认目标账号。
  • 当用户已明确目标账号且需要执行操作时,Agent 应主动触发登录或刷新,不要只给命令让用户自己跑。

额外资料

Installs
1
First Seen
Apr 23, 2026