AlchemyLab

The agentic workbench

Every request is reviewed, tested and kept on the record.

Runs on your machine Works with Claude, ChatGPT, Gemini or your own model

“Let me delete it for now and focus on the summary of fixes.” It straight up removed my main test file like it was an annoying comment in a doc.
Reddit · r/ClaudeAI
The gates

Tests and a separate review check the work before it is delivered.

tests
passed
review
passed
It ran rm -rf tests/ patches/ plan/ ~/ … That’s my entire home directory.
Reddit · r/ClaudeAI
The sandbox

Commands run in a disposable sandbox, away from your files.

filesystem
read-only
network
off
It literally proposed deleting my environment configuration as the solution to a bug.
Reddit · r/cursor
Approval

Risky commands wait for your approval.

rm .env
waiting for you
runs
after you approve
  • “Let me delete it for now and focus on the summary of fixes.” It straight up removed my main test file like it was an annoying comment in a doc.
    Reddit · r/ClaudeAI
  • It ran rm -rf tests/ patches/ plan/ ~/ … That’s my entire home directory.
    Reddit · r/ClaudeAI
  • It literally proposed deleting my environment configuration as the solution to a bug.
    Reddit · r/cursor
What stops each one
  • The gates

    Tests and a separate review check the work before it is delivered.

  • The sandbox

    Commands run in a disposable sandbox, away from your files.

  • Approval

    Risky commands wait for your approval.

Set the bar. Stay in the loop.

Each job becomes a request with its own workspace and its own gates, the checks it has to pass before delivery. While it runs, you talk to it from one place, next to everything else that is running.

You say what you want; the request records the criteria agreed up front; it runs in its own workspace; the gates test, review and sign it off; it is delivered once with a receipt. Underneath every step, Steer keeps you in contact with the running request. you in plain words request the request criteria agreed up front box its own workspace kept apart from other work test review sign-off the gates checked before delivery receipt the result with a receipt of the checks Steertalk to the request at any step, and answer its questions, without stopping it You say what you want; the request records the criteria agreed up front; it runs in its own workspace; the gates test, review and sign it off; it is delivered once with a receipt. At every step, Steer keeps you in contact with the running request. you in plain words request the request criteria agreed up front box its own workspace kept apart from other work the gates test, review, sign-off receipt the result with a receipt of the checks Steer talk to it at any step
  1. 1 · The request

    Each job is a request. It stays apart from your project until it passes.

    Write it the way you would brief a colleague.

    You can have five requests running while you write the sixth. When two touch the same thing, each is told about the other.

    Related requests form a thread, which can have a budget and a target: numbers a command prints that say when the work is done, checked again each time a request in it is completed.

    req 4817 · writing
    requests/004817
    Rewrite the onboarding guide for the new setup flow
    Acceptance criteria
    • Every step matches what the installer actually does now
    • No screenshot older than the 3.0 interface
    • Links from the old guide still resolve
    Build Test Review Sign-off

    A failed gate sends the work back with the feedback, and a delivered request can be undone in one step.

  2. 2 · Steer

    One place where every running request talks to you.

    Every running request reports to Steer, so you don't watch one agent's session at a time. A comment reaches a working agent in about a tenth of a second, or as soon as a running command ends. Questions come with one-tap answers, and an agent can show you an exhibit, a small page such as a chart, that you can answer from.

    Sign-offs, disputed rules and requests that do not add up wait for you, with no default and no timeout. Two settings, autonomy and strictness, decide how much the agents settle alone and how thorough the gates are.

    you · on req 4821
    Use the client IP, not the account, for the lockout key.
    agent · while working
    Switching the key to the client IP. Rewriting the second criterion to match.
    reviewer asks · decides in 2h on the starred option
    Should the lockout also apply to the password reset route?
    ★ Yes, same limits No, login only Ask me later
    Sign-off held for you. No default. Waits until you decide.
    autonomy · assisted strictness · standard

You answer once. The project remembers.

Answers, decisions and sign-offs are saved with the work they came from. When a later agent runs into the same question, it gets your earlier answer instead of asking again.

  1. Settled questions stay settled.

    Each decision keeps a record of who made it, which later questions it answered, and whether it was revised or disputed. Decisions that keep getting reused move up, routine approvals stay out of the way, and one that is reused often enough is offered to you as a standing rule, for this project or for every project you own.

    product decision
    area · auth
    Q: Should rate limits apply per account or per client IP?
    Per client IP. Decided by you, on req 4821.
    Trail
    • day 1answered req 4821
    • day 4answered a question on req 4863 without asking you
    • day 9confirmed by an agent that used it
    • day 9suggested as a standing rule for auth
    shaping decision · reused on 2 requests
  2. Rules show up where they apply.

    Rules can cover a single file, an area like auth or billing, a whole project, or every project you own. An agent sees an area's rules when it starts work there and a file's rules the moment it opens that file, with who set them and when. If it disagrees with a rule it says so, and only you can retire one.

    Busy areas keep an agent assigned and already briefed, so the next request there starts with what the last one learned.

    Areas · this project
    auth
    3 rules · agent assigned
    billing
    2 rules
    ui
    4 rules
    api
    1 rule
    infra
    quiet
    docs
    1 rule
    read_file api/limiter.ts
    standing rule · pinned to api/limiter.ts
    Rate limits key on client IP, never on account. you · 9 days ago

Code is one kind of work.
So is a simulation, a report, a nightly check.

Software got reliable through specs, tests, review and version history. AlchemyLab uses the same for simulations, reports and checks.

Changes that arrive ready to merge.

Give it whole features and fixes, several at once, and check what comes back.

  1. Tests run in a sealed container on the exact result that will be merged.
  2. A reviewer on a different model checks the change against its criteria, and interface changes can be compared with screenshots you approved.
  3. Any criterion can become a permanent check, so what you asked for keeps working after later changes.
You ask

Add live delay feed to the departure board

  • A delay reaches the board within a second
  • The board shows the new time and the delay in minutes
  • Timetable tests stay green
You get
criteria
3 of 3 met
tests on the merge result
passed
review, second model
passed
delivered
one merge, undoable
Example from the demo project TrainSim 3D

Every number traces back to the run that produced it.

Set up cases, run the solver and write up the study, with a trail an engineer can check.

  1. Your solver is set up once as a sealed environment, OpenFOAM or your own toolchain, and tested before any agent uses it.
  2. Results are stored with a summary and the exact inputs that produced them, and the reviewer opens the actual output before accepting a claimed figure.
  3. A run that does not converge is reported as not converged, and no figure is taken from it.
You ask

Lift and drag from 0 to 18 degrees

  • One case per angle from the same template
  • Cl and Cd against angle, settled runs only
  • Runs with residuals above 1e-4 reported as not settled
You get
0°6°12°18° Cl not settled

Cl 1.618 at 8°, each point linked to its run. Above 10° the residuals stayed high, so no number is claimed.

Example from the demo project Foil section CFD

Answers you can check line by line.

Regulations, standards, market reports or your own project history, answered with sources and the working.

  1. It reads the sources themselves: PDFs page by page, tables, figures and scanned pages included, along with spreadsheets and slide decks.
  2. Every finding carries its source and a confidence, and a second agent on another model tries to disprove it.
  3. The answer keeps what was verified apart from what was inferred, and lists the open questions on their own.
You ask

Which grid connection queue rules apply to the Zone 4 lease?

  • Every rule cited to its clause and document version
  • What the 2026 reform changed, and when
  • Open questions listed apart from findings
You get
Read: connection-code-v7.2.pdf, reform-note-2026-03.pdf
Findings verified
  • Connection Code v7.2, clause 4.3: readiness-gated queue for Zone 4 from 1 October 2026.
  • Reform note 2026-03, section 2: applications lodged before 1 October keep the old order.
Open question
  • Whether the seabed lease counts as consent under clause 4.5.
Example from the demo project North Sea siting

Documents that are checked before they reach you.

Board papers, reports, proposals, letters and release notes, written against a brief and held to it.

  1. Agents work from the files you already have: figures from your spreadsheets, facts from PDFs, structure from last quarter's deck.
  2. A reviewer reads the draft against the brief and those sources: the decision it asks for, every figure, the length.
  3. Each document is drafted in its own workspace and reaches the shared folder only after review and your sign-off, with every version kept.
You ask

Board paper on the east quay dredging

  • Ends with one decision for the board
  • Every cost matches the engineer's estimate
  • Two pages, board template, no jargon
You get
  • docxboard-paper-east-quay-dredging.docxreviewed against the brief, signed off
  • pdfengineers-estimate-2026-05-12.pdfread by the agent; every cost figure is checked against it
Example from the demo project Harbour operations

Routines that run by themselves and report what they found.

Backup restores, dependency audits, deploy and site checks, on a cadence you choose.

  1. A schedule is a plan with a standing instruction and a cadence, from hourly to weekly, and every run goes through your usual approval.
  2. Checks test claims against the live system, a page, an endpoint, a restored backup, and record a verdict for each one.
  3. A failed check becomes a one-tap fix request, and any command that would act on a running system waits for a person.
You ask

Restore last night's backup and count the orders

  • The backup restores without error
  • The order count matches the shop within the backup window
You get

Daily, restored in a sealed box. Run 5 came back 212 orders short; one tap filed the fix, which traced it to a server clock 41 minutes out.

Example from the demo project Bakery platform

Your way of working. Written down once.

A workflow is how a project works: how each kind of work is done, the checks it passes before it lands, and how much the agents decide alone. Its processes name the work you repeat and what every piece of it must show.

Processes

Name the work you repeat, and what it must always show.

A process is a kind of work your workflow defines, like a CFD case, a board paper or a release note, with the criteria every request that follows it must meet. The Alchemist puts a new request on the right process, or you pick one. Its criteria sit on the request beside the request's own, and the same tests and reviewers check them.

Agents cannot reword or drop them. When one does not fit, you waive it for that request and say why. If the same one is waived twice, you are asked whether the process should keep it.

req 4907 · CFD case
engineering
Lift and drag from 0 to 18 degrees
CFD case process · Aerodynamics
  • Every field's final residual is below 1e-5
  • Lift changes less than 2% between the two finest meshes
  • The validation case is within 3% of the reference data Waived for this request: no reference data for this foil
  • The report states each idealisation and what it costs
This request
  • One case per angle from the same template
  • Cl and Cd against angle, settled runs only
4 from the process · 2 added 1 waived by you

The process's criteria come first and cannot be edited on the request. A waiver keeps its reason on the record.

Each kind of work

Your instructions, your reviewers

Say how code, engineering and writing work is done here, which model each kind runs on, and which reviewers and rules apply to it.

Proposals

Agents suggest, you adopt

When the same kind of work keeps coming back with the same demands, an agent proposes a process, or a criterion one is missing. You decide whether to adopt it. Work already running is not affected.

Sharing

One file to hand on

Export a workflow with its processes, rules, reviewers, instructions and hooks. Whoever imports it works the same way, and the import lists anything that only made sense in your account.

Local-first. Remote whenever.

Your code, your files and the words of your work are kept on your computer. AlchemyLab's server keeps the structure of the work and the settings you chose, so any device can follow it while your computer is on.

Your machine runs the work with the models you choose and keeps your code, your files and the words of the work. AlchemyLab keeps the structure of the work, and your devices reach it from anywhere. your devices AlchemyLab structure your machine box files Anthropic OpenAI local model Your devices reach AlchemyLab, which keeps the structure of the work. Your machine runs the work, keeps your code, your files and the words, and calls the models you choose. your devices check in from anywhere structure AlchemyLab keeps the structure of the work box your machine the work, your files and words models your models any provider, or a local one
On your machine

Your files stay put

One AlchemyLab runs in the background on your computer, built on OpenCode, and keeps working when you close the terminal. Your files, your git history and every agent worktree live on your own disk.

Your models

Any provider, or your own model

Anthropic, OpenAI, Google and the other providers OpenCode supports, any OpenAI-compatible endpoint, or a model running on your own machine. It can run on the Claude, ChatGPT or Copilot plan you already pay for.

From anywhere

Use it from any device

Log in from your phone, a tablet or another computer and you are looking at the same project and the same running work, read from your computer while it is on.

A sealed box
for every agent you run.

Agents run inside a hardened box with controlled network access, whatever model they use. What they reached, what they were refused and what they changed is logged on the request.

A confined box with a read-only root, no network and dropped capabilities. A catalogued command goes in, a dangerous command waits at the wall for a person, an outbound call is refused at the wall, and the record keeps all three. the box /work read-only · no network · no caps npm test in the command catalog drop index waits for a person vendor-cdn.net refused at the wall the record keeps all three A confined box with a read-only root and no network. A catalogued command goes in, a dangerous command waits at the wall for a person, an outbound call is refused at the wall, and the record keeps all three. /work the box read-only, no network outside inside npm test in the command catalog drop index waits for a person vendor-cdn.net refused at the wall the record keeps all three

Anything beyond editing tracked files runs in a disposable container with a read-only root filesystem, dropped capabilities and no network unless you allow it. Without Docker, commands run in the operating system's own sandbox or wait for your approval. Agents never get an open shell, and they never commit, branch or merge. AlchemyLab does that, and it refuses any git command that would change the repository.

You decide what agents can reach and run. An unapproved connection is refused, an unapproved command waits for a person, and a few dangerous commands never run.

How AlchemyLab handles your data and security →

Your tracker is the front door.

Connect Linear once and label the issues AlchemyLab should take. Each one arrives as a draft request for you to start, and what happened to it comes back to the issue, so you can follow it in Linear.

PIT-8 Add a pipeline check marker to the README alchemylab
A

AlchemyLab 07:11

AlchemyLab filed this issue as draft request req000182. Work starts when it is started in AlchemyLab. Its receipt will be posted here when it is completed.

A

AlchemyLab 07:24

AlchemyLab receipt · req000182

✓completed 84f4538 ✓criteria 3/3 met ✓tests passed ✓nothing blocked

Reviewed against the criteria by a separate reviewer, and tested on the merge candidate.

Recreated from a real run in Linear.

  • Label an issue to start

    Use the alchemylab label or your own, for one team or all of them. With auto-import on, labeled issues become draft requests about once a minute, a few at a time, and never twice.

  • Updates go back to the issue

    A comment saying which request the issue became, and the receipt when the request is completed, if you turn them on for the project.

  • Other tools connect too

    Other trackers, error reporting, databases and documentation servers connect as MCP servers that agents can use while they work. Finished work can also go out as a GitHub pull request.