用途
本技能用于为当前编码智能体设置、认证并验证 Spotify Portal。当用户要求安装或连接 Portal、认证 Portal CLI 时使用。
关键规则
- 绝不要求用户在对话中粘贴访问令牌、授权码或其他凭据。
- 在依赖任何 Portal CLI 或宿主命令、参数之前,先运行 --help。
- 当智能体消费命令输出时,优先使用 --json。
- 当列出多个实例时,绝不假设使用默认的已认证 Portal 实例,应询问用户使用哪个实例。
CLI 调用方式
先验证 Node.js 与 npm:
node --version
npm --version
通过上游包运行 Portal CLI 命令:
npx @spotify/portal-cli <command>
在 Portal 源码检出目录内,npx 会解析工作区本地构建;在其他位置则拉取已发布的 npm 包。
设置流程
按顺序完成以下步骤。
1. 验证命令发现
npx @spotify/portal-cli --help
npx @spotify/portal-cli auth --help
第一条命令应列出 auth、actions、owner、search 和 service。如果这些缺失,说明解析到的 CLI 构建对此工作流而言过旧。停止并报告需要更新的 Portal CLI 版本。
2. 检查现有实例
npx @spotify/portal-cli auth list
复用后端 URL 与用户目标匹配的实例。
- 如果只存在一个实例且用户未指定目标,继续前先确认。
- 如果存在多个实例,展示其名称与 URL,并请用户选择。
- 如果不存在匹配实例,向用户获取 Portal 后端 URL 和一个简短的实例名称。
3. 按需认证
仅当所选实例尚未认证时运行登录:
npx @spotify/portal-cli auth login --instance <instance-name> --backend-url <backend-url>
该命令可能打开浏览器。让用户在那里完成认证。如果环境无法打开浏览器,查看登录帮助并使用其无浏览器流程。绝不在对话中请求凭据。
4. 选择并验证实例
npx @spotify/portal-cli auth select --instance <instance-name>
npx @spotify/portal-cli auth show --instance <instance-name>
除非所选实例的 auth show 成功,否则不要继续。
5. 验证智能体安全的 CLI 访问
npx @spotify/portal-cli actions list --json
成功即证明 CLI 能够认证、访问所选 Portal 实例并读取用户可用的操作。
完成报告
报告以下内容:
- CLI 构建来源:工作区本地或已发布包
- 所选实例名称与后端 URL
- CLI 认证:已确认或受阻
- actions list --json:已确认或受阻