ABS Studio

ABS Studio · guide

Using ABS Studio

Everything here is a real capture of the editor doing the thing being described. Where the panel was empty, it is empty in the picture; where ABS refused to do something, the refusal is in the picture too. If you have not installed it yet, start with the install guide.

01

Give it a provider key

ABS routes to free tiers first, so the cheapest way to start is a free-tier key from Groq, Cerebras or Gemini. Open the Command Palette and run ABS: Add a provider key, pick the provider, and paste the key.

The key is checked with the provider before it is stored. If it is wrong you are told immediately rather than discovering it later as a failed request — and the panel will say stored, but not verified rather than green-lighting a key nobody has seen work.

The title bar is the readout: how many providers are ready, how many models they expose, and what today has cost.

The editor title bar reading admin at abs dot local, five providers ready, five models, one hundred per cent free.
Five providers configured, five models, and nothing spent — free-tier routing is the default.

02

Ask about the code in front of you

The Chat section answers questions about what you have open. Every answer is signed: which provider replied, how long it took, and what it cost.

Select the code you are asking about. ABS never uploads a whole file quietly — you should always know what you just sent — so with nothing selected the model gets your question and a filename, and it will answer anyway. When that happens the answer says so, because a confident answer written without seeing your code is the most expensive kind of wrong.

An answer in the Chat panel followed by the line: answered without seeing your code — select some and ask again · answered by cerebras · 1.1s · $0.0015.
A real answer, and a real warning: this one was asked with nothing selected, and the reply invented a function that does not exist.

03

Ask for a change, and read the grade

Describe what you want in the Composer box. What comes back is not a diff to accept on faith: a senior judge scores it, a code graph works out the blast radius, and the patch engine tries it against the file as it is on disk.

Those are independent checks and they can disagree. A proposal can score well and still be refused — that is the design working, not a fault. A good score is not permission.

A graded proposal: a green Judge 9.0 badge, a high blast-radius badge, a unified diff, the judge's note suggesting ZeroDivisionError instead of ValueError, a greyed-out Approve button beside an active Reject, and the line answered by groq free.
Judge 9.0, a useful note — and Approve greyed out, because the model invented a line of context that is not in the file.

Read the note before the diff. It is where the judge says what it would have done differently, which is usually worth more than the score.

04

Prove it before you commit

Review my changes grades everything in your working tree — your edits as well as ABS's — a score per file, what each one touches, and why.

Run checks finds your test command and runs it inside the OS's own sandbox: seatbelt on macOS, bubblewrap on Linux, a restricted token on Windows. If no sandbox is available ABS says so and does not pretend. No checks ran is never reported as checks passed.

A check result card: the command python3 -m pytest -q with a green passed badge, and beneath it the line ran in seatbelt, network off, 767 milliseconds, exit 0.
The command it chose, the sandbox it used, whether the network was off, how long it took and the exit code. A green tick with nothing behind it is not a result.

05

Commit with evidence, push on purpose

A commit contains only the files ABS wrote and git agrees have changed. It is never a blanket git add -A that sweeps up whatever else you had in progress.

The message says what was graded, what ran, and what did not. If no checks ran it says that; if they failed and you committed anyway it says that too.

Pushing always asks. And if you are standing on a shared branch — main, master, develop, release, production, stable — the change is moved to a branch of its own and your branch is left exactly where it was. Add your own protected names with the abs.protectedBranches setting; it can add to the list but never remove from it.

ABS only moves a commit it can prove is its own. If you committed something yourself after it did, it refuses and tells you why rather than rearranging history it does not understand.

06

Teach it your codebase

Index this workspace in the Context section builds a local knowledge base — embeddings stay on your machine, in your own vector store. Then search it, and you get the chunks themselves with their scores, not a summary of them.

The Context section: a knowledge search for multiply function returning three hits with scores 1.000, 0.273 and 0.260, each showing its file and the matching line of code.
A real search. The top hit scores 1.000 and the third comes from a different file — which you can see, because the filename is what survives the truncation.

An empty result says it is empty rather than pretending to be an error, and an unreachable index says that instead of quietly returning nothing.

07

Watch what it costs

The Engine section shows today's spend and the projection for the month, above the routing order — which providers will be tried, and in which sequence. Activity shows the other half: what actually ran, and how the work has been scoring lately.

The Activity section showing a seven-day quality reading of 5.4 average across 21 judged changes, marked stable, and noting there is no earlier window to compare against.
Twenty-one graded changes averaging 5.4 — and honest about having nothing earlier to compare against yet.

The two are deliberately named apart: routing order is what will be tried, delegation chain is what actually happened.

08

The work beside the code

Approvals waiting on you, meetings the server transcribed, tasks, notes and saved workflows — the things that usually live in another tab, kept next to the file you are editing.

The Work section on the meetings tab, showing a recording called standup.wav marked done, eleven seconds long, one speaker, not indexed, with the beginning of its transcript.
A transcribed recording with its length, speaker count and whether it made it into the knowledge base.

Each tab tells you plainly when it has nothing: nothing is waiting on you rather than an empty box you have to interpret.

If something does not work

The install guide has a section for it — the panel not loading, the editor not reaching the server, a provider that looks configured but does nothing, a licence key that is refused. Anything it does not cover: info@automatiabcn.com.

The usage guide · ABS Studio