boid

command module
v0.0.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 7, 2026 License: MIT Imports: 4 Imported by: 0

README

boid

A personal AI orchestrator (Linux only). Built to keep the human from becoming the bottleneck when several AI coding agents run in parallel. Agents are given room to make progress autonomously; a sandbox with a configurable write scope keeps them from doing damage; and every in-flight task is visible at a glance through a Web UI.

日本語 README

Features

  • Give agents room to run on their own. The task lifecycle — request → execute → verify → fix → done — and the data captured at each step are predefined, so you don't have to re-feed context on every revision cycle. Hand the agent your local Claude Code, Codex, git, gh, editors, and language toolchains; it uses the tools you already have.
  • Autonomy and safety, reconciled by the sandbox. Agents read your real directories directly, but writes are confined to a scope you choose (typically a git worktree). A runaway agent can't reach your home directory or other projects. Give each task its own worktree and several requests run on separate branches in separate directories without colliding.
  • See every task at a glance. Every task lives in a single list with its current state, viewable from CLI or Web UI. Expose the Web UI through Cloudflare Tunnel and you can check or steer progress from your phone.
  • Stays on your own machine. go install, then boid start. No config file, no server provisioning, no signup. Unlike cloud-side sandboxes, the agent can act on the real environment you actually work in.
  • Swappable extension packages. Pick which AI agent (Claude Code; Codex and opencode are also supported in experimental form), which CI integration, which PR / auto-merge flow — the building blocks live in separate packages such as boid-kits.

Install

go install github.com/novshi-tech/boid@latest

Quickstart

boid start              # start the daemon (auto-detached)
boid task list          # list tasks
boid task show <id>     # inspect a task
boid stop               # stop the daemon

A guided walkthrough lives in docs/en/getting-started/01-install.md.

Shell completion

cobra's built-in boid completion generates shell completion scripts. In addition to subcommand and flag completion, when the daemon is running it dynamically completes project refs (boid project show|remove|behaviors <ref>, boid exec -p <ref>) and boid exec command names.

# bash (current shell)
source <(boid completion bash)

# bash (system-wide, sudo required)
boid completion bash | sudo tee /etc/bash_completion.d/boid >/dev/null

# zsh
boid completion zsh > "${fpath[1]}/_boid"

# fish
boid completion fish | source

Documentation

The full doc index is at docs/en/. Japanese docs are at docs/ja/.

Status

Currently being evaluated within the scope the author can directly support. A wider public release will follow.

License

MIT.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
e2e
cmd/boid-e2e command
internal
adapters
Package adapters defines the HarnessAdapter interface and shared types for harness-specific agent protocol implementations.
Package adapters defines the HarnessAdapter interface and shared types for harness-specific agent protocol implementations.
adapters/claude
Package claude implements adapters.HarnessAdapter for Claude Code.
Package claude implements adapters.HarnessAdapter for Claude Code.
adapters/codex
Package codex implements adapters.HarnessAdapter for the Codex CLI.
Package codex implements adapters.HarnessAdapter for the Codex CLI.
adapters/opencode
Package opencode implements adapters.HarnessAdapter for the opencode CLI.
Package opencode implements adapters.HarnessAdapter for the opencode CLI.
adapters/registry
Package registry maps sandbox.HarnessType to a HarnessAdapter implementation.
Package registry maps sandbox.HarnessType to a HarnessAdapter implementation.
adapters/shell
Package shell implements adapters.HarnessAdapter for plain shell / exec jobs that do not embed an agent harness.
Package shell implements adapters.HarnessAdapter for plain shell / exec jobs that do not embed an agent harness.
adapters/sigutil
Package sigutil hosts the small signal-forwarding loop every harness adapter runs while its child process is alive.
Package sigutil hosts the small signal-forwarding loop every harness adapter runs while its child process is alive.
api
daemon
Package daemon provides helpers for daemonizing the boid server process.
Package daemon provides helpers for daemonizing the boid server process.
db
logrotate
Package logrotate provides a size-based rotating log writer.
Package logrotate provides a size-based rotating log writer.
notify
Package notify exec's a user-configured command for agent-driven notifications.
Package notify exec's a user-configured command for agent-driven notifications.
orchestrator/refname
Package refname generates random "adjective_noun" style names for task refs.
Package refname generates random "adjective_noun" style names for task refs.
sandbox/brokerclient
Package brokerclient holds the low-level transport for talking to the boid broker over its UNIX socket, plus a self-contained JobDone helper.
Package brokerclient holds the low-level transport for talking to the boid broker over its UNIX socket, plus a self-contained JobDone helper.
sandbox/runner
Package runner is the go-native sandbox runner.
Package runner is the go-native sandbox runner.
timeline
Package timeline builds the unified task-detail timeline consumed by both the TUI and the Web UI.
Package timeline builds the unified task-detail timeline consumed by both the TUI and the Web UI.
web
templates
templ: version: v0.3.1001
templ: version: v0.3.1001
templates/components
templ: version: v0.3.1001
templ: version: v0.3.1001

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL