自动化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"
相关推荐
Elastic 中国社区官方博客9 小时前
Elasticsearch:使用 AI Agent 来创建 workflow
大数据·运维·人工智能·elasticsearch·搜索引擎·自动化·全文检索
YH行业报告分析13 小时前
销售拨号软件升级:智能销售场景下云端自动化如何提升企业获客效率?
运维·自动化
沪上企服通16 小时前
当 RPA 遇见企服:合规链路自动化的技术演进与五类市场样本观察
运维·自动化·rpa
Yang961118 小时前
API驱动自动化:鼎讯信通TM-150进测试系统
运维·自动化
具身智能进化论19 小时前
具身智能率先进入汽车工厂,产业价值将从哪些场景显现?
大数据·人工智能·机器人·自动化·工厂方法模式
qq_2676128919 小时前
Gitee DevOps的度量驱动持续改进:从构建数据到交付效率的量化管理与优化路径
前端·gitee·自动化
VIP_CQCRE19 小时前
用 Ace Data Cloud Studio,把内容营销变成自动运行的 AI 工作流
ai·自动化·内容营销·mcp·acedatacloud
中才实用20 小时前
Jenkins自动化部署
运维·自动化·jenkins
zcmodeltech20 小时前
工业生产线沙盘模型多系统协同控制系统设计:基于STM32与Modbus RTU的自动化产线-智能车间-流水线全场景联动方案
数据库·stm32·嵌入式硬件·自动化·制造