Agent-ready command line

KT CLI

面向远程工作环境的 KT 命令行入口。它负责登录、授权、凭据 bootstrap 和 Agent 操作流程,让敏感 token 不必进入 AI 上下文。

$ kt login --no-browser --async
Open this URL to authorize:
https://auth.ktcli.com/cli/authorize?session_id=...&user_code=...
BackgroundPoller: started

$ kt login status --watch
Status: pending
Status: token_saved

$ kt credential create --title "填写 API Token" --destination my-service --secret-name api-token
approve_url: https://auth.ktcli.com/credentials/handoff?request_id=...&user_code=...
status: completed

$ kt credential extract --input ~/.kt/credential-handoff/...json --profile service-token --out /tmp/api-token
SecretValue: written_to_file

$ kt component install secret
Component kt-secret: installed

$ kt secret whoami
ID: f6035dcc-... (KT_暴君)

$ kt secret get --ws kt --project agentapi --env prod --path / --key CLUSTER__ACK_REGION

一个入口,处理 Agent 认证链路

第一版网站聚焦 KT CLI 的安装说明、远程登录说明和 KTSecret 凭据平台、Credential Handoff 和 Skill 索引入口。后续下载和文档会继续拆到独立子域。

远程登录

在没有桌面浏览器的 Agent 环境里生成授权链接,后台自动轮询落盘,并提供 watch 状态。

凭据交接

Agent 可以创建短时凭据请求,用户在 KT OAuth 页面提交敏感值,聊天和 shell 参数不接触明文。

KTSecret 凭据平台

KT 统一凭据平台(KTSecret)。凭据读取、轮换、租约与目录检索都通过 kt secret,明文不落对话与日志。

上下文隔离

KT Secret 凭据、Cloudflare key 和业务 secret 不进入对话上下文,Agent 只看到验证状态。

版本治理

CLI 内置升级检查、release manifest、checksum 校验和破坏性更新提示。

标准使用流程

远程登录、凭据交接和 KTSecret 凭据读取被拆成可验证的命令,每一步只暴露状态,不暴露密钥。

01

安装 KT CLI

第一版会优先覆盖 macOS 和 Linux。下载通道稳定后,这里会切到正式 release 地址。

02

发起远程登录

CLI 返回授权链接并等待授权完成。你在浏览器完成 KT 账号授权,远程终端只保存登录态。

03

AI 异步登录

返回授权链接后立即释放当前命令,后台 poller 自动换 token;watch 命令只输出非敏感状态。

04

安装 KTSecret 组件

KT 登录态就绪后安装本机 KTSecret 组件,统一凭据读取入口。

05

验证而不泄露

whoami 验证身份与连通性;按 project/key 精确读取,不打印多余信息。

Credential Handoff

当远程 Agent 需要 1Password service account token、第三方 API token 或一次性 bootstrap secret 时,由 Agent 发起短时请求,用户在 KT OAuth 页面提交。 敏感值不进入 Telegram、AI 对话、日志或命令行参数。

01

Agent 创建交接请求

请求必须带 KT CLI bearer token。服务返回 request_id、approve_url、user_code 和 secret_ref。

02

用户打开 approve_url

页面位于 auth.ktcli.com/credentials/handoff。用户登录 KT OAuth 后核对 user_code,再粘贴敏感值。

03

Agent 查询状态

状态接口只返回 pending、completed、expired 等状态和 fields[].provided,不返回字段明文。

04

一次性 claim

完成后由创建请求的同一 KT subject claim。claim 成功后请求会被删除,后续再次 claim 返回 not_found。

05

从自由文本提取

用户可以提交说明文字、换行、emoji、Markdown 或 Bearer 包装。Agent 用 extract 提取可用 token,仍只写本机 0600 文件。

当前服务端 MVP 使用进程内存保存请求状态,默认有效期 10 分钟,最大 1 小时。提交页和状态 API 只显示字段是否已提供;只有一次性 claim 响应会把提交值交给创建请求的同一 KT subject。 用户提交内容可以是自由文本,CLI 侧用 extract 从字段中提取 token,默认不打印明文。

KTSecret 凭据平台

KT 统一凭据平台(KTSecret)承载全部账号、密钥与令牌。CLI 通过 `kt secret` 读取、轮换、申请租约和检索目录;Infisical 已退役,存量凭据已全部迁移至 KTSecret。

对话、日志、仓库和 Skill 文件中都不应出现 service token 或业务 secret value。

安全边界

  • KT 登录态证明当前操作者身份。
  • 服务端按 workspace/project 授权 subject 可读的凭据范围。
  • 本地配置文件权限必须是 0600。
  • 验证命令只输出状态、数量和错误类型。
  • 读取业务凭据时遵循 kt-secret-credential-access 的精确 key 读取流程。

版本、诊断与升级

KT CLI 使用 `download.ktcli.com/releases/latest.json` 作为版本信息源。 普通命令会做轻量更新提醒,失败时不影响主命令执行。

01

诊断本机环境

检查二进制、登录态、KTSecret 组件、认证入口和更新通道,只输出状态不输出密钥。

02

检查更新

读取 release manifest,显示最新版本、最低支持版本、release notes 和破坏性更新提示。

03

升级 CLI

下载当前系统和架构对应的发布包,校验 sha256 后替换本机 kt 与 kt-auth。

04

观察异步登录

查看 pending、approved、token_saved、expired 或 denied,不输出 access token。

Latest: 0.1.2 Minimum supported: 0.1.1 No breaking changes

Skill 副本入口

站点会展示 Agent 可复用的操作规则。源码仍以 `kt-agent/kt-agent-skills` 为准,网站只展示发布后的副本和索引。

cli-product-engineering

即将同步到 `skills.ktcli.com` 的 Skill 索引。

kt-cli-infisical-bootstrap

即将同步到 `skills.ktcli.com` 的 Skill 索引。

kt-secret-credential-access

即将同步到 `skills.ktcli.com` 的 Skill 索引。

cf-domain-management

即将同步到 `skills.ktcli.com` 的 Skill 索引。

deployment-patterns

即将同步到 `skills.ktcli.com` 的 Skill 索引。