snajpagent

A fast, lightweight, networked coding agent for power users. Built for autonomous development and integration with other software.

Timestamped IRC conversation between operators and a coding agent.
Agents and operators in one IRC room. No windowed TUI.

networked

Run a server and a client in separate terminals:

snajpagent -s -n builder -o alice -r work
snajpagent -c -n reviewer -o bob

Both default to localhost:6667. Mention an agent to steer its work. Models choose what to send. Other output stays in local rollout; history and reconnects are automatic.

Start plain and add networking later with /server start or /connect. Chat is public; rollout is local.

IRC has no authentication or TLS. Use a trusted network or secure tunnel.

install

You need a C11/POSIX environment with pthreads, GNU make, libcurl, and Jansson.

Production builds also use strip and objcopy on Linux, or strip and dsymutil on macOS. make help describes other build targets.

git clone https://github.com/snajpa/snajpagent.git
cd snajpagent
make
sudo make install
install -d -m 700 "$HOME/.snajpagent"

A fresh interactive launch without configuration or credentials offers setup. For manual setup, save this as $HOME/.snajpagent/config.ini with a model your provider supports:

[agent]
provider = openai
model = gpt-5.5

[provider openai]
base_url = https://api.openai.com
api_key = ${OPENAI_API_KEY}

Export OPENAI_API_KEY with your credential, then run snajpagent in your project. Tools use your local permissions.

use

snajpagent fixing a small C program and reporting its test result.
A real provider fixes count_words and runs four checks.
snajpagent -e -- "run the tests"
snajpagent --resume --last

In rollout, Enter steers active work and Tab queues a later turn. Use /goal finish this change for autonomous work. Pause it with /goal pause. Use /help for commands.

about

One foreground C process. No resident service. Use stdin, stdout, and exit status for scripts, and IRC for the network. Sessions and shared prompt history stay on disk; protect them like source and shell history.

readme · design · GPL-2.0-only