by covibes
Your autonomous engineering team in a CLI. Point Zeroshot at an issue, walk away, and return to production-grade code. Supports Claude Code, OpenAI Codex, OpenCode, and Gemini CLI.
# Add to your Claude Code skills
git clone https://github.com/covibes/zeroshot🎉 New in v5.4: Now supports OpenCode CLI! Use Claude, Codex, Gemini, or OpenCode as your AI provider. Also supports GitHub, GitLab, Jira, and Azure DevOps as issue backends. See Providers and Multi-Platform Issue Support.
Zeroshot is an open-source AI coding agent orchestration CLI that runs multi-agent workflows to autonomously implement, review, test, and verify code changes.
It runs a planner, an implementer, and independent validators in isolated environments, looping until changes are verified or rejected with actionable, reproducible failures.
Built for tasks where correctness matters more than speed.
No comments yet. Be the first to share your thoughts!
zeroshot run 123 # GitHub issue number
zeroshot run feature.md # Markdown file
zeroshot run "Add dark mode" # Inline text
Or describe a complex task inline:
zeroshot run "Add optimistic locking with automatic retry: when updating a user,
retry with exponential backoff up to 3 times, merge non-conflicting field changes,
and surface conflicts with details. Handle the ABA problem where version goes A->B->A."
| Approach | Writes Code | Runs Tests | Blind Validation | Iterates Until Verified | | -------------------------- | ----------- | ---------- | ---------------- | ----------------------- | | Chat-based assistant | ✅ | ⚠️ | ❌ | ❌ | | Single coding agent | ✅ | ⚠️ | ❌ | ⚠️ | | Zeroshot (multi-agent) | ✅ | ✅ | ✅ | ✅ |
Platforms: Linux, macOS. Windows (native/WSL) is deferred while we harden reliability and multi-provider correctness.
npm install -g @covibes/zeroshot
Requires: Node 18+, at least one provider CLI (Claude Code, Codex, Gemini, Opencode).
# Install one or more providers
npm i -g @anthropic-ai/claude-code
npm i -g @openai/codex
npm i -g @google/gemini-cli
# Opencode: see https://opencode.ai
# Authenticate with the provider CLI
claude login # Claude
codex login # Codex
gemini auth login # Gemini
opencode auth login # Opencode
# GitHub auth (for issue numbers)
gh auth login
Zeroshot shells out to provider CLIs. Pick a default and override per run:
zeroshot providers
zeroshot providers set-default codex
zeroshot run 123 --provider gemini
See docs/providers.md for setup, model levels, and Docker mounts.
Single-agent sessions degrade. Context gets buried under thousands of tokens. The model optimizes for "done" over "correct."
Zeroshot fixes this with isolated agents that check each other's work. Validators can't lie about code they didn't write. Fail the check? Fix and retry until it actually works.
Zeroshot performs best when tasks have clear acceptance criteria.
| Scenario | Use | Why | | ----------------------------------------------- | --- | ------------------------- | | Add rate limiting (sliding window, per-IP, 429) | Yes | Clear requirements | | Refactor auth to JWT | Yes | Defined end state | | Fix login bug | Yes | Success is measurable | | Fix 2410 lint violations | Yes | Clear completion criteria | | Make the app faster | No | Needs exploration first | | Improve the codebase | No | No acceptance criteria | | Figure out flaky tests | No | Exploratory |
Rule of thumb: if you cannot describe what "done" means, validators cannot verify it.
# Run
zeroshot run 123 # GitHub issue
zeroshot run feature.md # Markdown file
zeroshot run "Add dark mode" # Inline text
# Isolation
zeroshot run 123 --worktree # git worktree
zeroshot run 123 --docker # container
# Automation (--ship implies --pr implies --worktree)
zeroshot run 123 --pr # worktree + create PR
zeroshot run 123 --ship # PR + auto-merge on approval
# Background mode
zeroshot run 123 -d
zeroshot run 123 --ship -d
# Control
zeroshot list
zeroshot status <id>
zeroshot logs <id> -f
zeroshot resume <id>
zeroshot stop <id>
zeroshot kill <id>
zeroshot watch
# Providers
zeroshot providers
zeroshot providers set-default codex
# Agent library
zeroshot agents list
zeroshot agents show <name>
# Maintenance
zeroshot clean
zeroshot purge
Zeroshot works with GitHub, GitLab, Jira, and Azure DevOps. Just paste the issue URL or key. When working in a git repository, zeroshot automatically detects the issue provider from your git remote URL. No configuration needed!
# GitHub
zeroshot run 123
zeroshot run https://github.com/org/repo/issues/123
# GitLab (cloud and self-hosted)
zeroshot run https://gitlab.com/org/repo/-/issues/456
zeroshot run https://gitlab.mycompany.com/org/repo/-/issues/789
# Jira
zeroshot run PROJ-789
zeroshot run https://company.atlassian.net/browse/PROJ-789
# Azure DevOps
zeroshot run https://dev.azure.com/org/project/_workitems/edit/999
Requires: CLI tools (gh, glab, jira, or az) for the platform you use. See issue-providers README for setup and self-hosted instances.
Important for --pr mode: Run zeroshot from the target repository directory. PRs are created on the git remote of your current directory. If you run from a different repo, zeroshot will warn you and skip the "Closes #X" reference (the PR is still created, but won't auto-close the issue).
Zeroshot is a message-driven coordination layer with smart defaults.
┌─────────────────┐
│ TASK │
└────────┬────────┘
│
▼
┌────────────────────────────────────────────┐
│ CONDUCTOR │
│ Complexity × TaskType → Workflow │
└────────────────────────┬───────────────────┘
│
┌─────────────────────────────┼─────────────────────────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ TRIVIAL │ │ SIMPLE │ │ STANDARD+ │
│ 1 agent │──────────▶ │ worker │ │ planner │
│ (level1) │ COMPLETE │ + 1 valid.│ │ + worker │
│ no valid. │ └─────┬─────┘ │ + 3-5 val.│
└───────────┘ │ └─────┬─────┘