自动化Pipeline中的Kiro CLI详解

Kiro chat提供了一种称为"Headless mode"的运行模式。这是一种无交互方式运行Kiro CLI,可以在自动化Pipeline和脚本中运行Kiro CLI以实现自动化的code review,troubleshoot等。

API Key认证

我们通常先需要Login才能运行Kiro CLI,这个过程需要在弹出的浏览器窗口进行交互。为了实现无交互地运行Kiro CLI,必须提供环境变量KIRO_API_KEY给Kiro CLI。

要生成API Key,需要登录https://app.kiro.dev,找到API Keys,手工生成即可。

复制生成的API Key,设置为环境变量KIRO_API_KEY,后续运行Kiro CLI就无需登录交互。

复制代码
$env:KIRO_API_KEY = "ksk_xxxxxxxx"

运行"Headless mode"的Kiro CLI

所谓"Headless mode",就是在启动Kiro Chat时提供**--no-interactive**选项。这样的Kiro Chat不需要任何人机交互。最简单的命令如下:

复制代码
kiro-cli chat --no-interactive "your prompt here"

我们知道,在Kiro Chat中最常见的交互是对调用tools的控制,这可以通过**--trust-all-tools** 和**--trust-tools**两个选项,在启动Kiro Chat时预先控制,在被调用时就无需再问。

  • --trust-all-tools,顾名思义就是信任所有可能被调用的tools。

  • --trust-tools=read,grep,这里只给出信任的tools

    kiro-cli chat --no-interactive --trust-all-tools "your prompt here"
    kiro-cli chat --no-interactive --trust-tools=read,grep,@git/git_status,@git/git_log "your prompt here"

Kiro还提供了**--require-mcp-startup**选项,在被调用的MCP servers无法连接时,失败并尽快结束。

复制代码
kiro-cli chat --no-interactive --trust-all-tools --require-mcp-startup "Your prompt here"

集成"Headless mode"的Kiro CLI到Pipeline

  1. 在脚本中执行Kiro CLI

    #!/bin/bash
    kiro-cli chat --require-mcp-startup --no-interactive --trust-all-tools "Run code analysis"
    exit_code=$?

    case exit_code in 0) echo "Success" ;; 3) echo "MCP servers failed to start"; exit 1 ;; *) echo "Failed with code exit_code"; exit $exit_code ;;
    esac

  2. 在Pipeline中执行Kiro CLI

    • name: Run Kiro task
      run: |
      kiro-cli chat --require-mcp-startup --no-interactive --trust-all-tools "Analyze code"
      continue-on-error: false
  3. 在Github workflow中以指定的Agent执行Kiro CLI

这里,对tools的控制在Agent的配置中。

复制代码
name: Kiro Code Review

on:
    push:
        branches: [ main ]

jobs:
    code-review:
        runs-on: ubuntu-latest
        steps:
          - name: Checkout code
            uses: actions/checkout@v5
            with:
                fetch-depth: 0

          - name: Run Kiro code reviewer agent
            env:
                KIRO_API_KEY: ${{ secrets.KIRO_API_KEY }}
            run: |
                kiro-cli chat \
                    --agent my-code-reviewer \
                    --no-interactive \
                    "Review the files in this repository and provide a summary"
相关推荐
用AI来创业吧9 分钟前
企业官网搭建一般多久能上线:把工期拆成 7 段,算清哪段会拖
性能优化·自动化·安全威胁分析
Wokoo719 分钟前
Selenium:元素定位、动态适配与性能优化(二)
前端·selenium·自动化
技术人生00119 分钟前
Selenium4 Python 完整教程(适合网页自动化、页面数据采集、UI自动化测试)
python·ui·自动化
新新学长搞科研22 分钟前
【IET出版 | 连续五届稳定检索】第六届机械自动化与电子信息工程国际学术会议(MAEIE 2026)
机器人·自动化·电子信息
Dovis(誓平步青云)39 分钟前
一年1956亿行:智能电表场景下的时序数据存储实践
运维·前端·自动化·音视频·prometheus
虎鲸不是鱼1 小时前
AI 自动化逆向(五)控制组:区分「没有」和「没取到」
人工智能·自动化·大模型·ai逆向·ai反编译
迪康Defender1 小时前
终端安全行为分析:审计日志如何转化为业务报表?落地实践与避坑指南
运维·经验分享·安全·信息可视化·自动化·安全威胁分析·运维开发
专注API从业者1 小时前
告别手工盯盘:用 Open‑Claw 搭建电商商品自动化监控与数据分析实战
运维·数据结构·数据挖掘·数据分析·自动化
Rebecca_aLi1 小时前
码匠教育:从手工表格到脚本自动化,Python 改造工作流的思路
运维·python·自动化
qq_284274052 小时前
电气控制与PLC·HMI触摸屏组态与自动伸缩门控制系统 CSDN发布稿
笔记·学习·自动化