Experimental LLM agent environments configured via Nix flakes.
nix develop github:cbarber/llm-tools#claude-codenix develop github:cbarber/llm-tools#opencodeBoth agents include:
- Sandboxed execution (bubblewrap on Linux, sandbox-exec on macOS)
- Auto-detected language servers (Nix via nil)
- Beads task management with git integration
- Shared tooling (notify)
Agents run in a deny-by-default sandbox (bubblewrap on Linux, sandbox-exec on macOS). Access is explicitly granted per category:
- Read-write: Project directory, temp workspace, agent config/cache dirs
- Read-only: OS directories,
/nix, git identity files (~/.gitconfig,~/.ssh/known_hosts) - Denied:
~/.sshkeys,~/.gnupg, rest of home directory, other projects
See tools/SANDBOX.md for platform details and environment variables.
Beads provides git-backed issue tracking:
bd ready # Show available work
bd create "task" -p 2 # Create issue (P0-P4)
bd close <id> # Complete work
bd sync # Sync with gitAuto-initializes in agent shells.
Auto-generates on first run if missing:
opencode.json- MCP server configuration
Set ANTHROPIC_API_KEY in .env for API auth. Set AUTO_LAUNCH=false to skip auto-launch.
agents/- Agent environments (claude-code, opencode)tools/- Shared MCP servers, scripts, and sandboxflake.nix- Root configuration