Kacper Noniewicz
← Projects

Private / Go / Active development

Bober

A small coding agent in one Go process. Your editor or terminal is the interface, through the Agent Client Protocol. The core stays minimal and everything else is a Lua extension.

What it does

  • Runs a model loop over the OpenAI Responses API, with OpenAI-compatible and local providers supported
  • Ships two basic tools, shell_command and apply_patch, and a Lua extension host
  • Works with any ACP client, such as Zed or a terminal client
  • Provides subagents, sessions, skills, MCP and a code mode as extensions, not core features
  • Builds reproducibly with Nix

Why I built it

I wanted an agent I fully understand and can shape: a core small enough to read, with features I can switch on or off per project. Keeping Go for what must always work and Lua for everything else makes it easy to prune instead of pile on.

Stack

GoLuaACPNixLLM tool use

Status

Private and used daily. It is also the starting point for internal AI tooling I build at work.