Kiro CLI:在终端里跑 AI 开发助手
安装与登录
Kiro CLI 支持 Windows、macOS 和 Linux。Windows 用户用 PowerShell 一行命令就能装好:
irm 'https://cli.kiro.dev/install.ps1' | iexLinux 用户根据架构下载对应压缩包,解压后运行 install.sh。卸载也很直接,运行 kiro-cli uninstall 即可。
装完之后需要登录。日常开发用浏览器登录最方便,执行 kiro-cli login 会自动打开浏览器完成认证。如果是 SSH 远程环境或者没有图形界面,它会自动切到设备码模式,显示一个网址和验证码,你在本地浏览器里完成就行。也可以强制指定设备码模式:
kiro-cli login --use-device-flowCI/CD 场景没法交互,就用 API Key。设置环境变量 KIRO_API_KEY,然后加 --no-interactive 参数运行。注意 API Key 只能用于非交互模式,想聊天还是得浏览器登录。
启动会话与基本操作
最简单的启动就是 kiro-cli chat。想指定模型用 --model,指定 Agent 用 --agent,带问题直接启动就加问题字符串。上次没聊完?--resume 恢复,或者用 --resume-picker 从列表里选。
进会话后,提示符长这样:
Kiro auto 6%分别是当前 Agent 名、模型简称、上下文窗口使用率。接近上限时会自动压缩,但你也可以手动 /compact 释放空间。
几个常用快捷键:
Ctrl+R搜索历史命令Ctrl+C取消或退出Ctrl+G看子 Agent 活动监控Ctrl+X看任务进度Ctrl+O折叠/展开工具输出Shift+Enter多行输入(看终端支持)
会话自动保存在 ~/.kiro/sessions/cli/,每个目录独立,换项目不会互相干扰。文件包括 JSON 元数据、JSONL 对话日志,还有活跃会话的锁文件。
模型选择与成本
Kiro 接入了 Claude、DeepSeek、Qwen、StarCoder 等多个系列,分成几档:
Auto(默认):智能路由,综合性价比最高,日常开发推荐用这个。
Claude Opus 4.6:最强智能体,复杂系统设计、安全工程、超长任务用它,成本约 Auto 的 2.2 倍。
Claude Sonnet 4.6/4.7:智商和实用性的平衡,4.7 接近 Opus 智力但 token 效率更高,适合长会话和迭代开发。
Claude Haiku 4.0:极速,编码和推理能力接近 Sonnet 4,成本只有 1/3,适合快速补全和低延迟场景。
Qwen3 Coder Next:开源权重,编码性能匹配前沿,成本仅 0.25x,成本敏感型开发首选。
DeepSeek Coder v3:专为 Agent 工作流设计,擅长长工具调用链和有状态会话,同样 0.25x。
StarCoder2 5B/7B:多语言强,Rust/Go/C++ 和 UI 生成能力好,0.15x。
Granite Code 3B:最便宜,0.05x,专为 CLI 长会话设计,有错误恢复能力,适合实验性任务。
成本系数是估算值,实际以 Kiro 后台计费为准。Auto 模式下 10 credits 约等于 Opus 22 credits、Haiku 4 credits、Qwen3 0.5 credits。
斜杠命令速查
Kiro 的斜杠命令分几类,记几个常用的:
会话管理:/chat save 导出会话,/chat load 导入,/chat new 开新会话,/clear 清空历史(但 Session ID 不变),/compact 压缩释放空间。
Agent 与模型:/agent 切换 Agent,/agent create AI 辅助创建新 Agent,/model 切模型,/plan 切换到规划 Agent 拆解任务,/guide 问 Kiro 自身功能。
工具权限:/tools 看可用工具和权限状态,/tools trust 信任指定工具,/tools trust-all 全信任,/tools reset 恢复默认。
上下文管理:/context 看使用情况,/context show 看加载了哪些文件,/context add/remove 增删文件,/context clear 清空。
知识库:/knowledge show/add/remove/update/clear 管理知识库,/knowledge cancel 取消后台索引。
代码智能:/code init 启动 LSP,/code status/logs/overview/summary 看状态、日志、生成概览和文档。
其他:/help 看所有命令,/usage 看账户用量,/copy 复制上条回复,/editor 用系统编辑器写多行提示,/paste 粘贴剪贴板图片,/spawn 启动并行 Agent 会话,/theme 切主题。
三种上下文类型
Kiro 的上下文分三类,搞清楚区别才能用好:
Agent Resources(标配):每次对话都需要的文件,比如 README、项目规范。在 Agent 配置文件的 resources 字段里声明,用 file:// 前缀。持久化,跟着 Agent 走。
Session Context(草稿纸):当前任务的临时文件,比如正在改的代码、错误日志。用 /context add 临时加,会话结束就消失。
Knowledge Bases(外挂硬盘):大型代码库、完整文档集这种会撑爆上下文窗口的内容。先启用设置,用 /knowledge add 导入。平时不耗 Token,语义搜索命中时才引入,专门解决"大象装不进冰箱"的问题。
普通 Context Files 有硬性限制,不超过模型上下文窗口的 75%,超限会被自动丢弃,防止任务失败。Knowledge Bases 不占用这个窗口,这是它最大的区别。
文件操作与图像分析
Kiro 能直接读写项目文件,不用 cat、echo 这些 Shell 命令。读取支持按行、指定范围、批量读多个、浏览目录、读图片。写入支持创建新文件、查找替换、插入、追加,自动创建不存在的父目录。
图像分析需要模型有视觉能力,三种上传方式:
- 拖拽上传:直接把图片拖进终端窗口,最快捷
- 显式读取:在提示里写路径,如
analyze /path/to/screenshot.png - 剪贴板:
/paste命令,直接粘贴剪贴板里的图
应用场景包括 Debug 截图分析、架构图转代码、UI 设计评审、文档里的代码片段理解。
代码搜索与智能
正则搜索(grep):文本模式搜索,支持文件类型过滤。
文件查找(glob):按路径模式找文件。
代码智能(code):基于 AST 的分析,支持符号搜索、模式匹配、代码重写。比如"查找 UserService 类定义"、"搜索所有继承 BaseEntity 的类"、"把所有 public void setXxx 重命名"。
初始化代码智能后(/code init),还有 LSP 能力:跳转定义、查找引用、悬停信息、自动补全、诊断。
Shell 命令执行
其他工具搞不定的时候,Kiro 可以执行 Shell 命令。比如运行 mvn clean install、执行 git status、跑测试并分析结果。
注意输出是缓冲的,完成后才显示,不支持交互式命令如 sudo、npm init 这种会停下来等输入的。
多 Agent 协作(Subagents)
Subagents 是 Kiro 的亮点功能。它是能自主执行复杂任务的专用 Agent,有独立上下文、工具权限和决策能力,适合多步骤操作。
核心能力包括:自主执行、实时进度追踪(Ctrl+G 打开监控面板)、核心工具访问(读文件、执行命令、写文件、MCP 工具)、并行执行、任务依赖图(DAG)、细粒度权限控制、结果聚合。
内置三个默认角色:
kiro_default:默认开发 Agentkiro_planner:规划 Agent,擅长任务拆解kiro_guide:指南 Agent,回答 Kiro 自身功能问题
也可以指定自定义 Agent 配置作为 Subagent,比如 Use the backend agent to refactor the payment module。
手动启动并行会话用 /spawn:
/spawn 分析 src/auth 目录的测试覆盖率
/spawn --name security-check 检查所有 API 端点的安全性Subagent 的工作流程:任务分配 → 初始化(独立上下文和工具)→ 自主执行(特定操作可能暂停等确认)→ 进度更新 → 结果返回主 Agent。
可用工具包括 read、write、shell、grep、code、glob、MCP 工具。不可用 web_search、web_fetch、thinking、todo_list、use_aws 等,这些得主 Agent 来做。
任务依赖图支持 DAG,独立任务并行,有依赖的按序执行。比如"先分析依赖,再重构每个服务,最后跑测试",执行前一次性规划好,执行中不能改。
知识库管理
Kiro 内置持久化知识库,支持语义搜索(MiniLM)和关键词搜索(BM25),跨会话可用。
索引类型:
- Fast(BM25):日志、配置、大型代码库,快速索引,精确关键词匹配
- Best(语义):文档、研究资料,理解语义,自然语言查询
设置默认索引类型:
kiro-cli settings knowledge.indexType Best每个 Agent 有独立知识库,互不干扰。支持 Markdown、Java、Python、JavaScript、TypeScript、JSON、YAML、SQL、HTML、CSS 等主流格式。
网络能力
网络搜索:查训练数据之外的最新信息,比如"Spring Boot 4 的最新变更"。
网页抓取:获取指定 URL 内容,三种模式:
selective(默认):围绕搜索词智能提取truncated:前 8000 字符full:完整内容,最大 10MB
示例:读取 https://docs.spring.io/... 中关于 auto-configuration 的内容
项目记忆:Steering 文件
Steering 是 Kiro 的"项目记忆"功能,通过 Markdown 文件持久化存储项目规范,放在 .kiro/steering/ 目录,对所有会话生效。不用每次重复解释技术栈和代码风格,实现跨会话的上下文一致性。
核心价值:新老成员产出代码风格统一;告别每次的"技术栈自我介绍";通过 Git 版本化实现团队规范同步。
文件分两级,Workspace(项目级)优先级高于 Global(全局级):
- Workspace:
项目根目录/.kiro/steering/,项目专属,如 API 规范、测试标准 - Global:
~/.kiro/steering/,个人或团队通用,如编码习惯、安全基线
同名指令冲突时,项目级覆盖全局级。团队可以通过 MDM 或 Git 分发全局配置,同时允许项目本地自定义。
常用文件示例:
- product.md:业务背景,产品目标、用户画像、核心功能
- tech.md:技术选型,语言、框架、数据库、工具链
- structure.md:架构约束,目录结构、命名规范、导入规则
- api-standards.md:REST 规范、错误响应、认证流程
- testing-standards.md:单元测试模式、集成策略、覆盖率要求
- code-conventions.md:命名模式、文件组织、组件模式
- security-policies.md:认证要求、数据验证、输入清理
- deployment-workflow.md:构建流程、环境配置、CI/CD 管道
最佳实践:一域一文件,避免单文件臃肿;严禁写入密钥。
Agent 配置详解
Agent 是 Kiro 的核心概念,通过 JSON 配置文件定义行为、工具、上下文和集成。
配置文件位置:
- 项目级:
.kiro/agents/<name>.json(优先级高) - 全局级:
~/.kiro/agents/<name>.json
关键字段:
prompt:系统提示词,定义专业领域和行为,支持file://引用外部文件tools:可用工具列表allowedTools:自动批准的工具,免确认,支持通配符如fs_*、@git/*resources:上下文文件,file://始终加载,skill://按需加载hooks:钩子,特定时机执行命令mcpServers:MCP 服务器配置keyboardShortcut:快捷键切换到此 AgentwelcomeMessage:切换时显示的欢迎消息toolsSettings.subagent:Subagent 权限配置,包括可用 Agent 列表、信任 Agent 列表、每个 Subagent 的工具白名单和强制审批项
Hooks 触发时机:agentSpawn(初始化)、userPromptSubmit(用户提交消息)、preToolUse(工具执行前,可阻止)、postToolUse(工具执行后)、stop(回复完成时)。
MCP 服务器:支持本地(stdio)和远程(HTTP)两种模式。本地用 command 和 args,远程用 url 和 headers。
Agent Skills
Skills 是遵循开放标准的"技能包",可复用的工作流指令集,比如 PR 审查、部署流程。采用按需加载机制,大幅扩展专业能力。
核心机制:Kiro 启动时只读技能描述(Description),当你的自然语言指令匹配描述中的关键词时,自动加载完整 SKILL.md 执行。用 /context show 可查看当前可用技能列表。
作用域与优先级:
- Workspace(
.kiro/skills/):项目独有,优先级更高 - Global(
~/.kiro/skills/):个人通用 - 同名技能,项目级覆盖全局级
文件结构:
my-skill/
├── SKILL.md # 核心指令文件
├── references/ # 拆分存放的详细文档
└── scripts/ # 可执行脚本SKILL.md 编写:YAML Frontmatter + Markdown 正文。Description 是关键,必须包含用户可能用的触发短语,这是自动激活的匹配依据。大文档拆到 references/ 目录,正文通过相对路径引用。
Default Agent 自动加载全局和项目级技能。Custom Agent 需在 resources 字段显式声明 skill://.kiro/skills/**/SKILL.md。
全局设置
通过 CLI 命令管理:
# 查看所有可用设置
kiro-cli settings list --all
# 设置默认模型和 Agent
kiro-cli settings chat.defaultModel "model-id"
kiro-cli settings chat.defaultAgent aaf-dev
# 启用/禁用功能
kiro-cli settings chat.enableKnowledge true
kiro-cli settings chat.enableCodeIntelligence true
kiro-cli settings chat.enableSubagent true
kiro-cli settings chat.enableThinking true
# 删除设置
kiro-cli settings --delete chat.defaultModel
kiro-cli settings --delete "knowledge.*" # 批量删除设置优先级:Session > Workspace(.kiro/settings/cli.json)> Global(~/.kiro/settings/cli.json)
Headless 模式(自动化)
适合 CI/CD 和脚本集成,非交互运行:
# 单次查询,自动信任所有工具
kiro-cli chat --no-interactive --trust-all-tools "运行 mvn test 并分析结果"
# 信任指定工具
kiro-cli chat --no-interactive --trust-tools=fs_read,grep "查找所有 TODO"注意:必须提供初始查询,必须配置工具信任(否则会挂起),不支持交互式命令。
实用技巧总结
- 先读后写:Kiro 修改代码前会先读相关文件理解上下文,匹配项目风格
/context add加载关键文件:让 Kiro 始终了解项目规范和架构/compact释放空间:对话过长时压缩历史,保留关键信息/plan拆解复杂任务:切换到规划 Agent,先拆解再执行- 知识库索引文档:项目文档索引后,Kiro 可以跨会话检索
/chat save保存重要会话:方便后续恢复和分享- 配置专属 Agent:为项目创建专属 Agent,预设提示词、工具权限和上下文文件
/spawn并行处理:多个独立任务同时执行
日志与调试
Windows 日志位置:%TEMP%/kiro-log/logs/kiro-chat.log
自定义日志路径:
set KIRO_CHAT_LOG_FILE=D:\logs\kiro-debug.log
kiro-cli chat查看 LSP 日志:
/code logs -l ERROR -n 50