Open-source · local-first · almost zero dependencies

caretz

A small coding agent you can understand and make your own.

Give caretz a task and it can inspect a codebase, run sandboxed commands, edit files, and keep working through long sessions. Use local or hosted models, customize its skills and tools, or embed the Go library in your own application.

  • Local models first
  • Single Go binary
  • Only Go stdlib + golang.org/x
  • Sandboxed by default
Pixel-art Caretz mascot flying forward with a wrench
01

Sandboxed by default

Read, edit, search, and run commands with workspace and network guardrails.

02

Local or hosted

Run local models as a first-class path or connect the same agent to an OpenAI-compatible provider.

03

Almost dependency-free

Just the Go standard library and three golang.org/x modules. No npm tree, a tiny supply-chain surface, and a build you can audit and compile offline.

More than a model wrapper

Small core.
Serious workflow.

Caretz combines the pieces needed for sustained coding work without turning them into a large runtime stack. It is built local-first: it grew from real use with 27B Qwen models on a home RTX 3090, and you can copy the source to an offline machine, build it, and run it against your own GPU. Hosted providers work too, but they never run by accident: model rules keep private directories on local models, and Caretz asks before a cloud model touches a directory no rule covers.

Long-running sessions

Persist, resume, inspect, and repair sessions while repeated compaction keeps limited context useful.

Durable task state

Carry the current goal and next action through compactions so smaller models are less likely to lose the thread.

Skills and subagents

Load project instructions, reusable skills, and focused sequential subagents from plain Markdown.

Tools with guardrails

Choose the file, search, shell, web, image, and integration tools a job needs under the sandbox policy.

Terminal and ACP

Work from the compact terminal UI or connect caretz to editors such as Zed through ACP.

Extensible by design

Strip down the prompt and tools, add custom capabilities, extend the CLI, or embed caretz as a Go library.

Getting started

One binary.
Your model.

Install caretz, save a provider with guided setup, and give it a task. Hosted providers are quick to connect, with the local llama.cpp path immediately alongside them.

  1. 1

    Install caretz

    Install the latest release to ~/bin/caretz, or build it from source if you'd rather not run a script from the internet.

    curl -fsSL https://raw.githubusercontent.com/makkalot/caretz/main/install.sh | sh

    Detects your OS and architecture, verifies the checksum, and installs to ~/bin/caretz.

    git clone https://github.com/makkalot/caretz.git
    cd caretz
    make install

    Needs Go 1.25.8+, Git, and Make. Installs to ~/bin/caretz; nothing beyond the Go standard library and golang.org/x.

  2. 2

    Connect your model

    Connect llama.cpp, Ollama, LM Studio, your own server, or a hosted provider.

    guided setup
    caretz setup
    # choose a local or hosted provider
  3. 3

    Give it a task

    Start an interactive session or run one prompt.

    terminal
    caretz
    
    # or run one prompt
    caretz -p "explain this repository"

Documentation

Go deeper.

View all docs →