# NEEDLE

A headless orchestrator for coding-agent CLIs that processes a shared work queue in deterministic order, dispatching each item to an adapter such as Claude Code, OpenCode, Codex or Aider and handling every outcome through an explicit path.

NEEDLE is a wrapper for headless coding CLI agents that processes a shared queue of work items, called beads, in deterministic order. It dispatches each bead through one of its built-in adapters, Claude Code, OpenCode, Codex or Aider, and handles every outcome, including stop, resume, and safe cleanup of orphaned workers, through an explicit, predefined path rather than leaving it unhandled.

Its built-in Claude Code adapter runs the CLI with permission prompts disabled for unattended operation, so the project recommends reading its configuration reference before pointing a worker at a repository that matters. A shipped-work gate, enabled by default, only accepts a bead's closure once the dispatch has produced a commit that has actually been pushed to the branch's upstream, or a note explaining why no code was needed; a workspace with no configured upstream cannot satisfy this gate. For a workspace whose own configuration declares no explicit verification gates, NEEDLE falls through a language-default resolver and then an interim fallback gate that tries verifiers such as a project's own definition-of-done script or its Go module build, in a fixed order.

It requires git and tmux, and prebuilt binaries are published for Linux x86_64; it is written in Rust and MIT licensed.

Website: https://jedarden.com/projects/needle/
