Kanbus

Git-backed project management for people and AI agents.

IPC Protocol

This document defines the client-daemon protocol for Kanbus just-in-time indexing. It is the shared contract that both Python and Rust implementations must enforce.

Transport

Versioning

Protocol versions are MAJOR.MINOR (for example, 1.0).

Compatibility rules:

Request Envelope

{
  "protocol_version": "1.0",
  "request_id": "req-01",
  "action": "index.build",
  "payload": {
    "project_root": "/path/to/repo",
    "force_rebuild": false
  }
}

Fields:

Response Envelope

{
  "protocol_version": "1.0",
  "request_id": "req-01",
  "status": "ok",
  "result": {
    "index_version": "2026-02-11T00:00:00Z"
  }
}

Fields:

Error Contract

{
  "protocol_version": "1.0",
  "request_id": "req-01",
  "status": "error",
  "error": {
    "code": "protocol_version_mismatch",
    "message": "Client version 2.0 is not supported by daemon 1.0",
    "details": {
      "client_version": "2.0",
      "daemon_version": "1.0"
    }
  }
}

Required error fields:

Standard error codes:

Validation Rules

Both implementations must: