From 5c8f892f172bc4674004d9ba479a212a51c08f83 Mon Sep 17 00:00:00 2001 From: Fred Lackey Date: Tue, 28 Jul 2026 04:25:44 -0400 Subject: [PATCH 1/2] feat(agents): add Kiro CLI as a preset ACP harness Register kiro-cli acp in PRESET_HARNESSES so Kiro appears as a one-click option in the Agents gallery. Users with Kiro CLI on PATH can select it from Settings without creating a custom harness JSON file. Refs: https://github.com/block/buzz/pull/2914#issuecomment-5097069118 Signed-off-by: Fred Lackey --- desktop/src-tauri/src/managed_agents/discovery.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/desktop/src-tauri/src/managed_agents/discovery.rs b/desktop/src-tauri/src/managed_agents/discovery.rs index 71e689330f..926d009589 100644 --- a/desktop/src-tauri/src/managed_agents/discovery.rs +++ b/desktop/src-tauri/src/managed_agents/discovery.rs @@ -1598,6 +1598,16 @@ const PRESET_HARNESSES: &[PresetHarness] = &[ Gateway's own environment separately.", underlying_cli: None, }, + PresetHarness { + id: "kiro", + label: "Kiro", + command: "kiro-cli", + args: &["acp"], + install_instructions_url: "https://kiro.dev/docs/getting-started/", + install_hint: "Buzz talks to Kiro through the Kiro CLI's ACP mode (kiro-cli acp). \ + Install the Kiro CLI and run `kiro-cli auth login` to authenticate.", + underlying_cli: None, + }, ]; /// Return the static preset harness definitions as `HarnessDefinition` values. From e098cd6f92eb55793fc5a94bb86dbaea8f54d952 Mon Sep 17 00:00:00 2001 From: Fred Lackey Date: Tue, 28 Jul 2026 04:46:19 -0400 Subject: [PATCH 2/2] feat(desktop): add Kiro logo to preset harness gallery Bundle the Kiro mark as desktop/public/harness-logos/kiro.svg and register it in PRESET_LOGOS so the Agents gallery and Settings panel render the Kiro logo instead of the generic TerminalSquare fallback. Ratchet check-file-sizes.mjs for the +10 lines in discovery.rs. Signed-off-by: Fred Lackey --- desktop/public/harness-logos/CREDITS.md | 1 + desktop/public/harness-logos/kiro.svg | 11 +++++++++++ desktop/scripts/check-file-sizes.mjs | 3 ++- desktop/src/features/onboarding/ui/RuntimeIcon.tsx | 1 + 4 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 desktop/public/harness-logos/kiro.svg diff --git a/desktop/public/harness-logos/CREDITS.md b/desktop/public/harness-logos/CREDITS.md index de4e003c3f..b5d4b09d38 100644 --- a/desktop/public/harness-logos/CREDITS.md +++ b/desktop/public/harness-logos/CREDITS.md @@ -14,6 +14,7 @@ license permits redistribution. | `omp.svg` | [can1357/oh-my-pi](https://github.com/can1357/oh-my-pi) | `667111575ebba136dadfd6989379e7f67e0d40d9` | MIT © 2025 Mario Zechner; © 2025–2026 Can Bölük | `assets/icon.svg` | None | | `kimi.png` | [MoonshotAI/kimi-cli](https://github.com/MoonshotAI/kimi-cli) | `4a550effdfcb29a25a5d325bf935296cc50cd417` | Apache-2.0; NOTICE: Kimi Code CLI © 2025 Moonshot AI | `web/public/logo.png` | None | | `grok.svg` | [SpaceXAI brand guidelines](https://x.ai/legal/brand-guidelines) | Retrieved 2026-07-25 | xAI Brand Guidelines: marks may be used to accurately refer to xAI or its services; logos must be used exactly as provided | `SpaceXAI_Grok_Assets.zip` → `Grok_Logomark_Dark.svg` | None | +| `kiro.svg` | [AWS Kiro](https://kiro.dev) | Retrieved 2026-07-28 | Nominative use: mark identifies Kiro's harness in the runtime gallery | Kiro CLI brand asset | None | ## Inline SVG marks (`RUNTIME_MARKS`) diff --git a/desktop/public/harness-logos/kiro.svg b/desktop/public/harness-logos/kiro.svg new file mode 100644 index 0000000000..811b8d8335 --- /dev/null +++ b/desktop/public/harness-logos/kiro.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/desktop/scripts/check-file-sizes.mjs b/desktop/scripts/check-file-sizes.mjs index 6e44481d57..579c16ced4 100644 --- a/desktop/scripts/check-file-sizes.mjs +++ b/desktop/scripts/check-file-sizes.mjs @@ -346,7 +346,8 @@ const overrides = new Map([ // entries.push block collapsed into the helper. // +6: legacy Goose Windows install dir (%USERPROFILE%\goose) probed in // common_binary_paths so pre-#2680 standalone installs are discoverable. - ["src-tauri/src/managed_agents/discovery.rs", 1841], + // +10: Kiro CLI preset harness entry (kiro-cli acp). + ["src-tauri/src/managed_agents/discovery.rs", 1851], // BYOH — save_custom_harness_to_dir (backup-swap atomic write) + save_and_warm / // delete_and_warm (persist-mutex serialization for concurrent-safe registry // refresh, B-6). Also: id/collision/load/registry tests (from the file base) + diff --git a/desktop/src/features/onboarding/ui/RuntimeIcon.tsx b/desktop/src/features/onboarding/ui/RuntimeIcon.tsx index f9c201d115..f408f8c423 100644 --- a/desktop/src/features/onboarding/ui/RuntimeIcon.tsx +++ b/desktop/src/features/onboarding/ui/RuntimeIcon.tsx @@ -24,6 +24,7 @@ export const PRESET_LOGOS: Record = { amp: "/harness-logos/amp.png", hermes: "/harness-logos/hermes.png", openclaw: "/harness-logos/openclaw.svg", + kiro: "/harness-logos/kiro.svg", }; function isBuzzRuntime(runtime: AcpRuntimeCatalogEntry): boolean {