auth 命令组用于 SSO 鉴权:通过浏览器登录并存储短时 STS 凭据或仅保存用户 OIDC 会话、清除会话、查看当前身份、管理登录配置,以及为组织准备 CLI SSO 登录资源。login、logout、whoami 同时提供为顶层命令(如 agentkit login)。
auth login
通过浏览器 SSO 完成鉴权。默认模式会使用 OIDC 登录结果换取短时 STS 凭据;--identity-only 只保存用户 OIDC 会话,可供 harness invoke 在匹配的 custom_jwt Runtime 上自动转发用户 id_token,但不创建 AgentKit 管理凭据。通用 invoke run 调用 custom_jwt Runtime 时仍需通过 --headers 显式传入 Authorization。
登录地址与发现文档
传入[address] 时,CLI 会从该地址读取 /.well-known/agentkit-cli 登录发现文档。地址可以省略 https://;正式远程地址必须使用 HTTPS,只有本地测试地址可以使用 http://localhost、http://127.0.0.1 或 http://[::1]。地址不能包含用户名、密码、查询参数或 fragment。使用共享登录域名时,可以在域名后追加一个租户路径,例如 https://login.example.com/team-a;该路径必须是单段小写 slug,不能包含多级路径、路径遍历或编码后的路径分隔符。远程发现文档必须直接返回 JSON 对象,不能依赖重定向,响应体大小不能超过 64 KiB。
自定义租户地址的发现文档只能使用以下字段:
身份仅登录不会提供控制面权限。需要解析 Runtime、管理资源或查询项目时,请另外配置 AK/SK,或使用普通
agentkit login 获取 STS 凭据。通过远程发现文档登录时,CLI 只会在浏览器登录和后续凭据处理成功后保存 profile。auth logout
清除已存储的 SSO 会话(刷新令牌与缓存的 STS 凭据)。auth whoami
显示当前凭据背后的身份。auth profile set
创建或更新某个配置的登录坐标(非机密信息)。~/.agentkit/auth。长效 refresh token 会优先写入操作系统密钥环;无法使用密钥环时,CLI 将会话文件以 0600 权限写入本地。身份仅会话不会保留 OAuth access token,CLI 也不会打印已存储的 token。
auth profile list
列出已保存的配置。 该命令不接受任何参数或选项。auth profile show
显示某个配置的坐标。auth admin 子命令需要能管理 Identity、IAM 和 TOS 资源的云端凭证。可以使用 AK/SK,也可以使用当前 CLI SSO profile 中仍然有效的 STS 凭据。为避免管理操作被项目或全局端点覆盖影响,auth admin 会使用内置服务端点。
auth admin doctor
以只读方式检查账号能否完成 CLI SSO 接入,包括身份资源权限与凭证托管前置条件。检查未通过时命令返回非零退出码,并输出修复建议。auth admin create-userpool
创建用于 CLI SSO 登录的用户池,并以 JSON 输出用户池 ID。auth admin provision
为已有用户池创建或复用公开 CLI 客户端、IAM OIDC provider 和 STS 角色,并输出可发布的登录发现配置。auth admin sso-setup
一次性准备用户池、公开 CLI 客户端、IAM OIDC provider、STS 角色和 TOS 登录发现文档,最后输出可分发给终端用户的agentkit login <address> 地址。交互终端会询问是否复用用户池、是否配置上游身份提供方和是否使用自定义域名;非交互环境使用默认值或显式标志。
传入
--domain 时,命令会在发布后通过该 HTTPS 域名读取发现文档并校验内容。请先完成 CNAME 和证书配置;未通过公开访问校验时,命令不会把自定义域名作为最终登录地址输出。auth admin publish
为已有用户池创建或复用 CLI 登录资源,并把/.well-known/agentkit-cli 发现文档发布到指定 TOS bucket。也可以传入已有的 OIDC 与 IAM 坐标,仅发布发现文档而不重新创建 CLI 客户端、OIDC provider 或角色。
--issuer、--client-id、--role-trn 和 --provider-trn 四个参数同时提供。--issuer 必须是 HTTPS URL,不能包含用户名、密码、查询参数或 fragment;--role-trn 与 --provider-trn 必须属于当前鉴权账号。--bucket 必须是 3 到 63 个小写字母、数字或连字符组成的 TOS bucket 名称,并以字母或数字开头和结尾。