diff --git a/.gitignore b/.gitignore index c3bcec77..451d8e4b 100644 --- a/.gitignore +++ b/.gitignore @@ -76,3 +76,4 @@ integrations/windsurf/.windsurfrules integrations/openclaw/* integrations/qwen/agents/ !integrations/openclaw/README.md +integrations/kiro/skills/ diff --git a/README.md b/README.md index c2fa2a8f..aa1551c7 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ Each agent file contains: Browse the agents below and copy/adapt the ones you need! -### Option 3: Use with Other Tools (Cursor, Aider, Windsurf, Gemini CLI, OpenCode) +### Option 3: Use with Other Tools (Cursor, Aider, Windsurf, Gemini CLI, OpenCode, Kiro CLI) ```bash # Step 1 -- generate integration files for all supported tools @@ -514,6 +514,7 @@ The Agency works natively with Claude Code, and ships conversion + install scrip - **[Windsurf](https://codeium.com/windsurf)** — single `.windsurfrules` → `./.windsurfrules` - **[OpenClaw](https://github.com/openclaw/openclaw)** — `SOUL.md` + `AGENTS.md` + `IDENTITY.md` per agent - **[Qwen Code](https://github.com/QwenLM/qwen-code)** — `.md` SubAgent files → `~/.qwen/agents/` +- **[Kiro CLI](https://kiro.dev/cli/)** — `SKILL.md` per agent → `~/.kiro/skills/` --- @@ -761,6 +762,23 @@ cd /your/project +
+Kiro CLI + +Each agent becomes a skill in `~/.kiro/skills/agency-/`. + +```bash +./scripts/install.sh --tool kiro +``` + +Activate in Kiro CLI: +``` +Use the agency-frontend-developer skill to review this component. +``` + +See [integrations/kiro/README.md](integrations/kiro/README.md) for details. +
+ --- ### Regenerating After Changes diff --git a/integrations/README.md b/integrations/README.md index c909700f..78950eac 100644 --- a/integrations/README.md +++ b/integrations/README.md @@ -14,6 +14,7 @@ supported agentic coding tools. - **[Cursor](#cursor)** — `.mdc` rule files in `cursor/` - **[Aider](#aider)** — `CONVENTIONS.md` in `aider/` - **[Windsurf](#windsurf)** — `.windsurfrules` in `windsurf/` +- **[Kiro CLI](#kiro-cli)** — `SKILL.md` per agent in `kiro/` ## Quick Install @@ -26,6 +27,7 @@ supported agentic coding tools. ./scripts/install.sh --tool copilot ./scripts/install.sh --tool openclaw ./scripts/install.sh --tool claude-code +./scripts/install.sh --tool kiro # Gemini CLI needs generated integration files on a fresh clone ./scripts/convert.sh --tool gemini-cli @@ -172,3 +174,16 @@ cd /your/project && /path/to/agency-agents/scripts/install.sh --tool windsurf ``` See [windsurf/README.md](windsurf/README.md) for details. + +--- + +## Kiro CLI + +Each agent becomes a `SKILL.md` skill file installed to `~/.kiro/skills/`. +Skills are prefixed with `agency-` to avoid naming conflicts. + +```bash +./scripts/install.sh --tool kiro +``` + +See [kiro/README.md](kiro/README.md) for details. diff --git a/integrations/kiro/README.md b/integrations/kiro/README.md new file mode 100644 index 00000000..cdbfe64d --- /dev/null +++ b/integrations/kiro/README.md @@ -0,0 +1,46 @@ +# Kiro CLI Integration + +Installs all Agency agents as Kiro CLI skills. Each agent is prefixed +with `agency-` to avoid conflicts with existing skills. + +## Install + +```bash +./scripts/install.sh --tool kiro +``` + +This copies files from `integrations/kiro/skills/` to +`~/.kiro/skills/`. + +## Activate a Skill + +In Kiro CLI, skills are automatically available. Reference an agent by name: + +``` +Use the agency-frontend-developer skill to review this component. +``` + +Available slugs follow the pattern `agency-`, e.g.: +- `agency-frontend-developer` +- `agency-backend-architect` +- `agency-reality-checker` +- `agency-growth-hacker` + +## Regenerate + +After modifying agents, regenerate the skill files: + +```bash +./scripts/convert.sh --tool kiro +``` + +## File Format + +Each skill is a `SKILL.md` file in `~/.kiro/skills//`: + +```yaml +--- +name: agency-frontend-developer +description: Expert frontend developer specializing in... +--- +``` diff --git a/scripts/convert.sh b/scripts/convert.sh index 27d2f66e..c61fc531 100755 --- a/scripts/convert.sh +++ b/scripts/convert.sh @@ -18,6 +18,7 @@ # windsurf — Single .windsurfrules for Windsurf # openclaw — OpenClaw SOUL.md files (openclaw_workspace//SOUL.md) # qwen — Qwen Code SubAgent files (~/.qwen/agents/*.md) +# kiro — Kiro CLI skill files (~/.kiro/skills/) # all — All tools (default) # # Output is written to integrations// relative to the repo root. @@ -373,6 +374,29 @@ HEREDOC fi } +convert_kiro() { + local file="$1" + local name description slug outdir outfile body + + name="$(get_field "name" "$file")" + description="$(get_field "description" "$file")" + slug="agency-$(slugify "$name")" + body="$(get_body "$file")" + + outdir="$OUT_DIR/kiro/skills/$slug" + outfile="$outdir/SKILL.md" + mkdir -p "$outdir" + + # Kiro CLI SKILL.md format: ~/.kiro/skills//SKILL.md + cat > "$outfile" </dev/null 2>&1; } detect_openclaw() { command -v openclaw >/dev/null 2>&1 || [[ -d "${HOME}/.openclaw" ]]; } detect_windsurf() { command -v windsurf >/dev/null 2>&1 || [[ -d "${HOME}/.codeium" ]]; } detect_qwen() { command -v qwen >/dev/null 2>&1 || [[ -d "${HOME}/.qwen" ]]; } +detect_kiro() { command -v kiro-cli >/dev/null 2>&1 || [[ -d "${HOME}/.kiro" ]]; } is_detected() { case "$1" in @@ -155,6 +157,7 @@ is_detected() { aider) detect_aider ;; windsurf) detect_windsurf ;; qwen) detect_qwen ;; + kiro) detect_kiro ;; *) return 1 ;; esac } @@ -172,6 +175,7 @@ tool_label() { aider) printf "%-14s %s" "Aider" "(CONVENTIONS.md)" ;; windsurf) printf "%-14s %s" "Windsurf" "(.windsurfrules)" ;; qwen) printf "%-14s %s" "Qwen Code" "(~/.qwen/agents)" ;; + kiro) printf "%-14s %s" "Kiro CLI" "(~/.kiro/skills)" ;; esac } @@ -468,6 +472,22 @@ install_qwen() { warn "Tip: Run '/agents manage' in Qwen Code to refresh, or restart session" } +install_kiro() { + local src="$INTEGRATIONS/kiro/skills" + local dest="${HOME}/.kiro/skills" + local count=0 + [[ -d "$src" ]] || { err "integrations/kiro missing. Run convert.sh first."; return 1; } + mkdir -p "$dest" + local d + while IFS= read -r -d '' d; do + local name; name="$(basename "$d")" + mkdir -p "$dest/$name" + cp "$d/SKILL.md" "$dest/$name/SKILL.md" + (( count++ )) || true + done < <(find "$src" -mindepth 1 -maxdepth 1 -type d -print0) + ok "Kiro CLI: $count skills -> $dest" +} + install_tool() { case "$1" in claude-code) install_claude_code ;; @@ -480,6 +500,7 @@ install_tool() { aider) install_aider ;; windsurf) install_windsurf ;; qwen) install_qwen ;; + kiro) install_kiro ;; esac }