brew tap tappunk/tap # or: cargo install tnk
brew install tappunk/tap/tnk
tnk init # populate config from tnk-specs
tnk config init # create ~/.config/tnk/tnk.toml
tnk run # boot engine + servicesThen enter a project sandbox:
cd ~/code/myproject
tnk sandbox start # auto installs default provision
tnk sandbox shellThe agent runs in an isolated sandbox that mounts only the project workspace. Host secrets and keys stay out of scope.
- Inference management: start, stop, and query the local inference engine
- Sandbox isolation: one per-project sandbox, mounting only the workspace directory
- Persistent services: MCP bridge and search tooling, managed alongside the engine
- Session audit trail: optional NDJSON logs for forensic review
- Machine-readable output:
--output json|ndjsonon status commands
tnk run # boot engine + services
tnk sandbox shell # enter project sandbox
tnk shutdown # tear down everything
tnk doctor # health checks
tnk config show # inspect effective configConfig lives at ~/.config/tnk/tnk.toml. See the full docs for all settings and options.
Agents execute package installers, shell commands, and network clients with broad filesystem access. tnk keeps that execution inside isolated sandboxes, mounts only the project workspace, and exposes inference endpoints via explicit environment variables.
See Security for the full threat model.
Full documentation: https://tappunk.com/tnk/