Installation
Run the CLI from your project directory:~/.config/amp/plugins/bitfab), confirms Amp loaded it, opens your browser to log in, and starts Amp with the bitfab:setup invocation to type.
Pass an initial setup request with --prompt (or -p) and the CLI includes it in that invocation:
For the experimental terminal-native flow, run
npx bitfab-cli init --v2 instead. It does not launch Amp: setup choices and tool permissions stay in the CLI while the Claude Agent SDK performs repository analysis and approved edits. Set ANTHROPIC_API_KEY or configure a supported Agent SDK cloud provider first. Use npx bitfab-cli setup --v2 instrument to run one setup mode, or add --diagram to print its declarative state graph without starting the agent.Manual installation (without the CLI)
Manual installation (without the CLI)
Clone the plugin into Amp’s system plugin directory:Then run Ask Amp for
plugins: reload from the command palette (Ctrl-O in the Amp CLI, Cmd/Alt-Shift-A in the editor extensions), or restart Amp. Confirm it loaded:bitfab:setup login to sign in.Requirements
- Node 18 or newer. The plugin’s local commands (login, Bitfab, replay progress) run under node.
- A Bitfab account. The setup skill opens a browser to sign in when it needs to.
What the Plugin Does
Automatic Setup
Thebitfab:setup skill runs a multi-phase workflow:
- Login: opens your browser for OAuth authentication and saves credentials securely
- Explain: walks through opt-out
withTrace/trace,withNode/node, supportedwithSpanfallbacks, and replay, including the five ways replay can change a method’s execution. Everything after this asks you to make per-method decisions, so it comes first - Approach: asks whether the agent should walk you through instrumenting or hand you the docs so you can do it yourself
- Instrument + Replay (in parallel, per workflow): reads your codebase, finds all AI workflows (LLM calls, agents, AI-driven decisions), and presents them as a numbered list. You choose which to instrument, or name a file, function, or directory yourself and it reads only that instead of scanning. Either way it adds tracing with minimal diffs and creates a registry module for the replay command shipped with the SDK
Assistant
Thebitfab:assistant skill turns production traces into code improvements, whether the goal is correctness (improving pass rates) or efficiency (cutting token usage and cost). Amp does the mechanical work and collaborates with you on three steps:
- Build a dataset from production traces: search for failures, label them with expected outcomes
- Experiment against that dataset: make isolated code changes, replay, compare results
- Hill climb: repeat until the best change is found, then present results
Building the Dataset
Amp does the data wrangling: it searches production traces for failures, reads full inputs and outputs, and identifies edge cases. It then presents edge cases for your judgment: is this a failure (and what should the output be), correct, or irrelevant? This labeled dataset becomes the benchmark for all experiments. The plugin opens a rich UI for navigating and labeling the dataset, then brings you back to Amp so you stay in flow. You can label every trace yourself, or label a few and let the agent classify the rest based on the patterns you’ve established.Running Experiments
The skill reads your code, diagnoses failure patterns, and categorizes proposed changes:- Code fixes: deterministic bugs, bundled into one experiment as a foundation
- Judgment-based fixes: prompt changes, search tuning, output formatting, each gets its own experiment
- Infrastructure proposals: larger changes noted for future work, not experimented on
Results
After each round, you see which traces now match expected outcomes, which still diverge, and whether any regressions occurred. The assistant works through the planned experiments in turn without pausing to ask whether to keep going, then wraps up once the plan is complete. The final summary shows pass rate improvement and all files changed, uncommitted in your working tree for review.Tools
The plugin registers these tools directly with Amp under the names below, so Amp can call them in any conversation. There is no MCP server in the path: the plugin’s tool bridge talks to Bitfab for you. Ask Amp to search your traces and it can, without invoking a skill.Core
Trace Inspection
Labeling and Datasets
Experiments
Templates
Instrumentation
Skills
Amp lists every skill for the model by name and description and loads one when it becomes relevant. Ask for one by name, or invoke it from the command palette withskill: invoke.
Example Workflows
Instrument a new project
Analyze the repo headlessly
amp -x) with the setup skill in analyze-repo mode. It ranks the AI workflows in the repository, reports source recommendations for each, and prints a report. It edits no code. bitfab:setup instrument picks those drafts up later and reconciles each against current code.
Diagnose and fix a failing function
Ask Amp naturally:search_traces and get_traces to inspect failing traces and suggests code fixes directly.
For a specific failing trace, run bitfab:assistant fix <trace-id>. The agent diagnoses the failure, confirms why the original trace is wrong before editing when the trace or conversation does not already make that clear, makes the focused code fix, and replays only that trace first. Once the fix passes, it adds that trace to a dataset with a validated failing label, then branches: inspect the before/after in Bitfab, re-run the full dataset (in Bitfab or terminal-only), keep iterating, or stop. If that full-dataset re-run reveals real regressions (previously-passing traces the fix broke), it reports them and keeps the target trace saved as a red test to revisit. If the replay still fails, it offers to keep iterating or save the trace as a failing test instead.
Iterate on a trace function
Replay after a code change
After updating a function, pass your registry module to the replay command installed by the SDK:.bitfab/replays/<run-id>/items/ folder and referenced from .bitfab/replays/<run-id>/events.jsonl. If the replay command succeeds but its local result cannot be captured, the plugin reports the outcome as unverified instead of failed, then checks the server test run to recover the final result.
Configuration
Credentials
Credentials are stored in.bitfab/credentials.local.json when that project-local file exists, otherwise in ~/.config/bitfab/credentials.json (created by bitfab:setup login with owner-readable permissions).
Environment Variables
Updating
~/.config/amp/plugins/bitfab. Run plugins: reload in Amp afterward. npx bitfab-cli update --editor amp sdk starts Amp with bitfab:update sdk to type, which walks each workspace’s SDK upgrade in Amp. Asking Amp for bitfab:update does both.
What differs from the other hosts
Session log capture and the session-start banner ship in a follow-up release through Amp’s
agent.start and agent.end events.
Troubleshooting
Not authenticated
If a skill reports “Not authenticated”:- Ask Amp for
bitfab:setup loginto authenticate via browser - Check that
~/.config/bitfab/credentials.jsonexists and contains your API key - If using an environment variable, verify
BITFAB_API_KEYis set
Bitfab tools not available
If Amp cannot see tools likesearch_traces, the plugin did not load:
- Run
amp plugins list. The Bitfab entry shows whether it loaded and, if not, why - Run
plugins: reloadfrom the command palette, or restart Amp - Check that the plugin directory is
~/.config/amp/plugins/bitfab(or.amp/plugins/bitfabin the project) and containsindex.js - Make sure
nodeis on your PATH. The skills’ local commands run under node even though the plugin itself runs under Amp’s runtime
Plugin updates
Ask Amp forbitfab:update, or run npx bitfab-cli update --editor amp plugin and then plugins: reload.