ZeroShot by BuildBetterZeroShotby BuildBetter
Evidence-based coding

Every customer signal,
in your agent’s hands.

One shared repository of everything your team and its agents know — piped back into every spec, review, and PR so the loop actually closes.

One shared repository

Stop paying twice
for the same context.

Every session — chat, file edits, tool calls — is saved and shared across your whole team. Check out an old branch and pull up the chat that produced it. Resume a teammate’s session on your machine. No agent ever pays tokens to rediscover what someone already figured out.

  • Sessions synced across repo, branch, PR, commit, and teammate
  • Resume any teammate’s session with one command
  • Switch Claude Code → Codex mid-task, same memory
resume — 6mo old branch
$ bb agent-sessions resume
? Resume which session?
auth/oauth-rewrite · spencer · 6mo ago
payments/stripe-webhook · nikhil · 4mo ago
✓ Hydrating session 1f2c8d — 312 messages, 28 file edits
Codex › This is the OAuth rewrite from June.
The blocker was the refresh-token race in the worker queue.
Same question. Different answer.

The same question.
A radically different answer.

Same agent, same PR, same teammate’s work. The difference is whether it can pull the session that produced the code — or has to burn tokens re-deriving it from scratch.

coding-assistant.ai
What was Spencer trying to accomplish with the LLM data source PR (#3308)?
$ gh pr view 3308 --json title,body $ git diff main...HEAD
It adds an exec plan to ingest LLM chats into the signal pipeline. The PR description is sparse — let me read the whole implementation.
why is he using the conversation model? was that intentional?
I don’t have visibility into Spencer’s reasoning. Want me to guess?
forget it — write a spec for the export feature. start with what customers asked for
I don’t have access to your customer signals or tickets. I can write something generic — want me to make assumptions?
forget it. just review the PR.
Reviewing for syntax and obvious bugs. I can’t compare against your team’s conventions — no prior reviews to reference.
six months later
customer ticket #4127 — agent logs aren’t showing up in reports. why did we structure agent_logs this way?
$ git log --all --oneline src/agent_logs
27 commits across 4 contributors. PR descriptions don’t mention reporting trade-offs.
who owns this if we change it?
I can’t tell from git blame alone. You’d have to track down each contributor and ask.
Starts from zero every time — and burns tokens re-deriving what someone already knew.
›_
coding-assistant + ZeroShot CLI
Context loaded
What was Spencer trying to accomplish with the LLM data source PR (#3308)?
✓ Found Spencer’s Codex session on this branch — 247 messages. Pulling context (0 tokens spent re-deriving it).
spencer’s session · PR #3308

Goal: ingest LLM chat history as a new signal source

Decision: reused conversation as a placeholder — wants to migrate to agent_logs

Open Q for Nikhil: “should agent_logs be its own model? need your call before I split it.”

draft my review with /bb-review
✓ Posted to PR #3308. Three suggestions, all citing your team’s prior conventions on the conversation table.
six months later
customer ticket #4127 — agent logs aren’t showing up in reports. pull context.
✓ Found 14 sessions across 6 months tied to agent_logs. Pulling project history.
project history · agent_logs

Mar ’26 · spencer scoped initial schema (PR #3308)

Apr ’26 · maya denormalized for streaming reports “to keep queries under 50ms” (PR #408)

Aug ’26 · daniel added session_type column (PR #1547)

✓ The structure is intentional. Ticket #4127 is missing an index on session_type from Daniel’s August change. Draft /bb-specify for the migration?
yes
✓ Spec drafted. Clustered #4127 with 7 other customers on slow exports and pulled their quotes — then /bb-plan and /bb-tasks queued the migration.
/trust-but-verify before merge
✓ Walked the export flow end-to-end. 4 customer-cited paths pass, 0 regressions on the existing reports.
ship it
✓ PR #2089 merged. The 8 customers who reported it were notified automatically.
✓ Heads up — your team re-flagged this session_type index convention 3× this quarter. Opened a weekly skill PR so your agents catch it next time.
Six months ago, six minutes ago — same context, zero tokens to rebuild it.
Same story, everywhere you work

Every job is cheaper with the context.

Onboarding, debugging, scoping, reviewing — the same question costs a fraction of the tokens when your agent can pull the work that came before. Each card shows the skills it leans on.

Onboard a new engineer
Why is the payments module built this way?
Reads the code blind and pings four people on Slack.
Pulls the original sessions and the decisions behind them.
bb agent-sessions resume/bb-analyze
Debug a production incident
Ticket #4127 — exports failing for big orgs.
git blame archaeology across 27 commits, 4 authors.
Surfaces 14 related sessions and the exact missing index.
/bb-specify/trust-but-verify
Scope from customer feedback
Spec the CSV export fix.
Writes something generic on made-up assumptions.
Clusters 8 customer tickets into a spec with real quotes.
/bb-specify/bb-clarify
Review to your conventions
Review PR #3308.
Flags syntax and obvious bugs only.
Cites your team’s prior calls on the conversation table.
/bb-review
Resume half-finished work
Pick up the OAuth rewrite from June.
Starts from zero and re-derives the whole plan.
Hydrates the 312-message session and the open blocker.
bb agent-sessions resume
Never repeat a mistake
Add a retry to the worker queue.
Invents a brand-new retry abstraction — again.
Reuses RetryablePolicy, the convention set in PR #408.
/bb-review/payments-review
Close the loop

A ticket in the morning.
A PR by end of day.

A ticket comes in. ZeroShot clusters it with the other customers who hit the same thing,/bb-specify pulls those quotes into a spec,/bb-review checks your conventions, and the PR ships.

Customer signals
CallTicketSurveySlackFeedbackCRMEvent
From your agents (via CLI)
CommitChat sessionSteering eventsProject context
BuildBetter AI
Paid platform
Signal Generation
Signals
SeverityTopicPersonaImpactKeywordsSegmentation
Triage / Projects
TopicsClustersProjectsKnowledge baseCompany context
›_
ZeroShot CLI — captures your work and runs the workflow
Free
Runs the spec workflow
/bb-specify/bb-plan/bb-tasks/bb-review/trust-but-verify
Across your coding agents
Claude CodeCodexCopilot CLIGemini CLIWindsurfAmazon Q
Then, on the platformMetered
Extracts signals from your sessions
repeated patternswasted tool callsconventionsseveritytopic
Suggests & ships skills
find patternswrite / sharpen skillweekly skill PR
Metered by tool call.You only pay for the signal extraction, skill suggestions, and skill runs you actually use — the CLI and open-source skills stay free.
← Close the loop — customer notified, feedback restarts the cycle →
Ship at the speed of insight

A customer ticket, end-to-end. Same day.

9:14am
Ticket #4127
Export CSV failing for orgs > 10k rows
9:32am
Signal clustered
+ 7 prior tickets · Enterprise · High severity
10:48am
/bb-specify
Spec drafted with 8 customer quotes
2:15pm
/bb-review
passes · PR #2089 merged
4:42pm
8 customers notified
Loop closed.
The full pipeline, end to end

Every stage of the loop — and the skills that run it.

From capturing the work to shipping the PR to learning from it — the whole thing runs inside the CLI, and feeds back on itself so the library compounds.

›_
Inside the CLI — the full workflow
  1. 1
    Capture

    Every session, commit, steering event, file edit, and tool call — synced into one shared repo across your whole team.

  2. 2
    Scope/bb-specify/bb-clarify/bb-constitution

    Turn customer signals into a spec, resolve the unknowns before you build, and encode your team’s principles.

  3. 3
    Plan/bb-plan/bb-tasks/bb-analyze

    Break the spec into a build plan and a dependency-ordered task list — checked for cross-artifact consistency.

  4. 4
    Build/bb-implement

    Execute the plan task by task — in whichever agent you’re already using, with the full context loaded.

  5. 5
    Verify/bb-review/trust-but-verify/generate-tests/bb-checklist

    Review against your conventions, walk the UI like a real user, generate tests, and run the pre-merge checklist.

  6. 6
    Ship

    The PR merges. The customers who reported it hear back — same day, not next quarter.

  7. 7
    Learnweekly skill PR

    Signals run over the sessions, identify the patterns your team keeps repeating, and open a weekly PR with new and sharper skills.

↻ Learn feeds back into Scope — the library compounds, and every loop costs fewer tokens than the last.
A new data type

Agent sessions are
the new call recording.

Every chat your team has with an agent is company knowledge — prompts, decisions, conventions — that’s lost the moment the window closes. ZeroShot captures it as a first-class data type.

Prompt library
Brand voice42 uses
Marketing copy28 uses
Image generation19 uses
PR description63 uses

The prompts your team already wrote — pulled out of chat sessions, shared, reused.

Extractions & insights
DecisionReuse RetryablePolicy
BlockerRefresh-token race in worker
Conventionagent_logs, not conversation
Open QSplit agent_logs model?

Signals run over every session — decisions, blockers, and conventions, structured.

Artifacts created for you
OAuth rewrite — design doc
updated 2h ago
Signal pipeline — runbook
updated 1d ago
agent_logs — schema notes
updated 3d ago

Knowledge docs your agents wrote — yours to view, edit, and share. Delete ZeroShot, lose it all.

Prototype, don’t rebuild

Ten variants for the
price of one build.

Spin up front-end prototypes as HTML mockups — explore ten directions before you wire a single endpoint. Pick the winner, then build it once. A quarter of the tokens, none of the throwaway backends.

  • Generate variants in ZeroShot, not your agent’s token budget
  • Compare side by side, ship the one that works
  • Build the real thing once you’ve settled the design
Dashboard — 4 variants¼ the tokens
Variant A
Variant Bshipped
Variant C
Variant D
Whether extreme spend pays off comes down to the business value of shipped code — which most companies still can’t measure.
Nicholas Arcolano
Head of Research, Jellyfish
TechCrunch

Get twice as far on the same budget.

Install once. Your agents inherit your team’s skills, your sessions stay shared, and your token spend drops. 30-day free trial — no card required.

$ curl -fsSL buildbetter.sh | sh

Or view on GitHub