Skip to content

Installation

ka agent is pre-release software: it is not on crates.io yet, and the Ka crates it builds against are pinned to unreleased 0.3.0 revisions. Until then, you build from source.

  • Rust (stable toolchain; the workspace targets edition 2024).
  • Linux. The admin socket, process-group kill semantics and the sandbox model are Linux-first.
  • A Ka engine pin. The workspace pins ka-protocol, ka-engine and ka-dialect to an exact revision of ka-harness.
  • Telegram (optional). A bot token from @BotFather if you want the channel; see quickstart.

The workspace’s default pin points at a local file:// mirror of ka-harness. Rewrite it to the public repository (the same rewrite CI performs), then install:

Terminal window
git clone https://github.com/jaltez/ka-agent.git
cd ka-agent
sed -i 's|git = "file:///home/javier/projects/ka-harness"|git = "https://github.com/jaltez/ka-harness"|g' \
Cargo.toml crates/*/Cargo.toml apps/*/Cargo.toml
cargo install --path apps/ka-agent

cargo install puts the ka-agent binary on your $PATH (usually ~/.cargo/bin).

Terminal window
ka-agent doctor

doctor prints an instance health report: config validity, data directories, and the state of the pieces the daemon needs.

To check the full workspace before installing:

Terminal window
cargo build --workspace
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings

The workspace denies unwrap/expect/todo/unimplemented/dbg and forbids unsafe_code; CI runs fmt, clippy, tests and a dependency gate that keeps every ka-* import inside ka-agent-port.

The ka-agent name on crates.io currently holds Ka’s own binary package (releases up to 0.2.11, before the rename to ka-harness). Until that legacy question is settled, ka agent ships from git only. When Ka 0.3.0 is released, the git pins become version = "=0.3.0" dependencies and a crates.io release becomes possible.