Kanbus

Feature

Agent provenance

Tag every issue and comment an agent writes with its product, model and session name, so a board shared by several agents stays readable.

When several agents work on one board, "who wrote this?" matters. Kanbus records an agent block on issues and comments with three names: the product (such as Cursor, Codex or Claude Code), the model (such as Claude Sonnet 4 or GPT-5.6) and a session name for this run or bot. The board and kbs show display it as an Agent row, and event history includes it.

Tag writes from the CLI

The simplest setup is to let the host set the product and model as environment variables, and pass a session name on each write. Flags override the environment.

export KANBUS_AGENT_PLATFORM="Cursor"
export KANBUS_AGENT_MODEL="Composer 2.5"

kbs comment kanbus-a1b2c3 "Progress: schema drafted" --agent-name "Cloud Agent"

Without the environment variables, pass all three names directly:

kbs create "Fix login" --type task \
  --agent-platform "Cursor" \
  --agent-model "Composer 2.5" \
  --agent-name "Cloud Agent"

Use Title Case names, the way you would write them in a handoff note. Optional runtime settings such as thinking_level can go in --agent-settings as a JSON object; Kanbus rejects keys that look like secrets, so credentials never end up in issue data.

The warning, and how to fix it

If a create or comment is missing any of the three names, the write still succeeds, and the CLI prints a warning on stderr with a ready-to-run command that fills in the missing tags. You do not need to rewrite the issue or the comment.

kbs update kanbus-a1b2c3 --agent-platform "Cursor" --agent-model "Composer 2.5" --agent-name "Cloud Agent"
kbs comment update kanbus-a1b2c3 <comment-id> --agent-platform "Cursor" --agent-model "Composer 2.5" --agent-name "Cloud Agent"

These commands only fill in provenance that is missing; they never replace complete metadata. When tagging does not apply, for example a person working by hand, pass --no-agent-provenance to silence the warning.

Where the names come from

Kanbus does not read .cursor, .claude or other host configuration. Each product's own instructions tell its agents who they are, and the CLI only merges flags and KANBUS_AGENT_* variables.

Host product instructions carry the product name, and the model when it is known. For example, a Cursor project rule or Claude Code project instructions. Session names stay per run.

CONTRIBUTING_AGENT.md describes the tagging procedure, and AGENTS.md only points to it. Keep product and model names out of the shared AGENTS.md, because many hosts read the same file. kbs setup agents keeps both files current.

Learn more