Open source tools for software engineering teams using AI
Building Blocks
Tools that make our agents more capable and improve how we work with them: communication (Biff, Beadle), media (Vox for audio, Lux for visuals), and memory (Quarry), with MCP Proxy as the integration layer and Punt Kit as the scaffolding underneath. Each ships as a library, CLI, MCP server, and REST API from a single codebase. Every block works standalone; when peers are present they discover each other and compose, so Biff speaks through Vox and PR/FAQ searches through Quarry.
An MCP server that gives Claude the ability to send and receive email. Verifies PGP signatures on inbound mail against a four-level trust model — trusted, verified, untrusted, unverified — so the agent knows how much to trust what it reads. Supports Proton Bridge over STARTTLS, external SMTP hosts, and the Resend API. Written in Go.
Repo-scoped mailbox — an X-Beadle-Repo header keeps each project's mail separate, or read across all with --all-repos
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/beadle/4cc7f6b/install.sh | sh
Biff
v1.17.0
coordinationTeam communication for engineers who never leave the terminal.
Resurrects the BSD Unix communication vocabulary as MCP-native slash commands over a NATS relay. Humans and AI agents show up side by side — no separate app, no browser tab, no context switch. Self-hostable via a relay Docker image when you don't want to share the public demo relay.
Interactive REPL — biff launches a terminal client with readline, real-time notifications, and modal talk
Humans and autonomous agents appear side by side in /who
Status bar — live unread count, wall broadcasts, talk messages wrapping your existing status line
/talk for real-time conversations with ≤2s notification latency
Cross-machine messaging via NATS relay
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/biff/7f2d961/install.sh | sh
Lux
v0.31.1 alpha
visualsA visual output surface for AI agents.
A Hub process and a separate Display renderer, connected by Unix socket IPC — agents send JSON element trees via MCP tools, the Hub relays them to the Display at 60fps. Dozens of element kinds including interactive controls (sliders, checkboxes, combos, color pickers), data visualization (tables, plots, markdown), and layout nesting (windows, tabs, groups). Incremental updates patch elements by ID without replacing the scene. The visual counterpart to Vox.
Dozens of element kinds — text, buttons, images, sliders, tables, plots, markdown, draw canvases, and more
Persistent dismissable tabs — each show() opens a new tab, dismiss individually with close button
Layout nesting — windows contain tab bars contain groups contain any element, arbitrarily deep
High-level tools — show_table for filterable data explorers, show_dashboard for metrics and charts
Interaction events — clicks, slider changes, menu selections queue as events the agent reads via recv
Auto-spawn — display server starts on first connection if it isn't running
Lux applet for Beads — filterable issue board with detail panel via /beads command
Named ImGui themes, and a pub/sub topic bus separate from UI interaction events
Homebrew install (macOS arm64) alongside the curl installer and PyPI package
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/lux/e6ee040/install.sh | sh
MCP Proxy
v0.4.1 beta
isolationOne daemon, many sessions — process isolation for MCP servers.
Lightweight Go proxy bridging MCP stdio transport to a shared daemon process via WebSocket. Claude Code spawns a fresh MCP server per session — if the server loads an ML model or holds a database, each session duplicates all of it. MCP Proxy puts a process boundary between them: a ~6MB binary with <10ms startup forwards messages to a single shared daemon. The integration layer that fronts Quarry, Biff, Vox, and Lux — one shared daemon behind every session.
Process isolation — daemon crashes don't take down Claude Code sessions
Shared state — one embedding model, one audio device, one connection pool across sessions
Hook speed — relays JSON-RPC to daemon in ~15ms, within Claude Code's hook budget
Auto-reconnect — WebSocket keepalive with 5s ping, 2s pong timeout
Works with any MCP server — never inspects message content
Config profiles and bearer-token auth for remote daemons, plus a --health flag for launchd, CI, and quarry doctor
Verified against a Z spec — ProB model checking found no invariant violations across the explored state space
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/mcp-proxy/16bbb3d/install.sh | sh
Punt Kit
v0.15.0 beta
standardsInternal scaffolding and the shared standards our tools are built against.
Mostly internal plumbing: the standards for code quality, CI, and project structure that Punt Labs projects share, plus scaffolding to apply them. Its one broadly interesting idea is the engine-and-clients model — library, CLI, MCP server, and REST from a single codebase — which Punt Kit defines and `punt init` scaffolds.
Defines the engine-and-clients model: library, CLI, MCP, and REST from one codebase
punt init scaffolds new projects from templates; punt seed renders and merges managed sections into existing ones
punt audit checks compliance against all standards; punt doctor checks install health
punt release runs a multi-phase release workflow; punt pii scans staged files for personal data
A pattern library covering common architecture decisions
Beads issue tracking for per-project and org-wide work
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/punt-kit/278e9cc/install.sh | sh
Vox
v5.0.3
speech & musicVoice and music for your AI engineering assistant.
Text-to-speech and music engine with five providers — ElevenLabs, OpenAI, AWS Polly, and two offline fallbacks (macOS say, Linux espeak-ng) that need no API key. Delivers spoken notifications when tasks finish, chimes when Claude needs input, synthesizes arbitrary text, holds real-time voice conversations, and generates background music with vibe-driven instrumental tracks. Opt-in only: no audio until you enable it.
Mic API — unmute/record/vibe/who MCP tools with uniform segment input
Five providers — ElevenLabs (recommended), OpenAI, AWS Polly, macOS say, Linux espeak-ng
Voice or chime — /mute switches to audio tones with no TTS API calls
CLI product commands: unmute, record, vibe, on/off, mute, version, status
Background music — pools of vibe-driven tracks per program, zero-credit rotation and replay, saved as tagged albums
Conversation mode — live voice calls with mic input, speech-to-text, and streamed Claude replies
Lux integration — a visual music player and a Vox control panel appear in the Lux display when it's running
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/vox/d968a18/install.sh | sh
Quarry
v3.0.3 beta
recallUnlock the knowledge trapped on your hard drive.
Local semantic search across PDFs, images, spreadsheets, source code, and dozens of other formats. Finds what you mean, not just what you typed. Runs fully local by default — no API keys required — or point it at a remote GPU host when you need one.
Semantic search across dozens of file formats, including scanned documents via OCR
Fully local — embedding model downloads once, everything stays on your machine
Remote mode — point at a GPU host over TLS with token login, or run entirely local
REST API for scripting outside the CLI or MCP surface
Named databases keep work and personal content isolated
Session capture — ambient hooks record web research and preserve the free-form conversation transcript before compaction; an opt-in private repo extension keeps a capture history for agent memory
$ curl -fsSL https://raw.githubusercontent.com/punt-labs/quarry/fd274d3/install.sh | sh