8000 Feature Request: Kiro intregration · Issue #148 · amirlehmam/wmux · GitHub
[go: up one dir, main page]

Skip to content

Feature Request: Kiro intregration #148

Closed

Description

@clemens773

cmux has compatibility with a wide range of AI agents: Claude Code, Codex, OpenCode, Gemini CLI, Kiro, Aider, Goose, Amp, Cline and Cursor Agent.

I'd really appreciate wmux supporting Kiro CLI as this is what I use personally. The CLI might not make it as easy as Claude's but it seems to be possible - or is this perhaps a Windows limitation?

Activity

  1. amirlehmam commented on Aug 10, 2026

    @amirlehmam
    Owner

    Shipped in v0.47.0. Not a Windows limitation — Kiro CLI turned out to be the easiest of the three agents wmux supports, for a reason worth explaining, since it shapes what you get.

    What it does

    wmux now writes ~/.kiro/steering/wmux.md: the instructions block that teaches an agent to drive the browser panel, markdown views, sidebar status and the wmux CLI. Kiro CLI loads every .md in the global steering directory automatically, so it's picked up in every workspace with nothing to install and no per-project setup.

    That's a different shape from the other two integrations. Claude Code and OpenCode each read a single global context file (~/.claude/CLAUDE.md, ~/.config/opencode/AGENTS.md), which wmux doesn't own — so there it splices its section between markers and leaves your prose alone. Kiro's steering directory is designed as one-topic-per-file, so wmux writes one file that's entirely its own. No merge, and uninstalling is a delete rather than a rewrite. If you already have a wmux.md there that wmux didn't write, it's left untouched in both directions — the marker is what wmux checks before writing or deleting.

    It's behind the same consent gate as everything else wmux writes outside its own directory (#132): Settings → General → Agent integration → Agent instructions. Turning it off removes the file.

    What it deliberately does not do

    No hooks. For Claude Code, wmux registers hooks in ~/.claude/settings.json to drive the sidebar's blocked/working/idle indicator. Kiro's hooks live in .kiro/hooks/ per project, with no global equivalent — so the same feature would mean writing a JSON file into every repository you open. That's precisely the complaint in #132, and a status indicator isn't worth it.

    The sidebar isn't lost, though. wmux has a declared-state protocol (#128) built for exactly this case — an agent reports its own state, no screen-scraping and nothing to install:

    wmux report-agent --blocked "waiting on approval"
    wmux report-agent --unblocked
    wmux report-agent --run-start   # ... --run-end

    The steering file documents these, so Kiro learns them the moment it reads its context. If it turns out Kiro doesn't reach for them on its own, tell me and I'll make the instructions more explicit — that's a one-line change to the block, not an architecture question.

    Spawning works today with no extra support, since wmux is shell-agnostic:

    wmux agent spawn --cmd kiro-cli --label kiro

    One thing I'd like you to check

    I built this against Kiro's documented global-steering behaviour, but I don't have Kiro CLI here and haven't watched it read the file. So please confirm on your machine: install 0.47.0, enable agent integration, start kiro-cli in a wmux pane, and ask it something like "what terminal are you running in?" or "open example.com in the browser panel". If it knows about wmux, the integration is live.

    If it doesn't pick the file up, say so and paste ~/.kiro/steering/ contents — most likely fix would be the filename or a front-matter inclusion key, both trivial to change.

    On the wider list

    You mentioned cmux covering Codex, Gemini CLI, Aider, Goose, Amp, Cline and Cursor Agent. Any of those that read a global AGENTS.md-style file are close to free now that there are three of these paths and the shape is clear. If there's a specific one you'd also use, open an issue naming it and its global context file and I'll take it — that's a better filter on my time than me guessing which ones matter.

    Thanks for the request, and for pointing at cmux as the comparison — it made the gap concrete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0