Skip to content

Gambalf Code

Hand it the project
Keep control

It works in the folder you opened — your real files, your terminal, your browser. It plans before it changes anything, stops for the decisions that matter, and checks its own work before it calls the job done.

Open a real project

Not a paste of the file you think is the problem. The directory, as it is on disk, with everything else that's in it.

The whole folder
Point it at a directory and that's its world. It goes and reads what it needs instead of asking you for it.
Your terminal and your browser
It runs the commands and opens the app the way you would, on the machine the project actually lives on.
Or somewhere else entirely
Clone a repository, or let it work in a sandbox in the cloud, and watch either one from the tab in front of you.

invoicing — workspace

  • invoicing/
  • src/
  • tax.ts
  • invoice.tsx
  • tests/
  • package.json

Opened from your own machine, with your terminal and a browser attached to it — not a copy of the file you thought was the problem.

Nothing changes until you agree

The expensive failure isn't a bad edit. It's twenty good edits solving the wrong problem.

A plan you can argue with
It says what it means to do, in plain words, and waits. Change it, cut it, or send it back.
Read-only means read-only
While it's planning, the tools that write aren't merely discouraged — they're not offered to the model at all.
A checkpoint before the risk
Your files are saved before a turn that writes, and again before anything destructive. Undoing a bad idea is one action.

invoicing — plan

Move billing onto the new tax rules.

Plan

  1. 01 Read where the current rates are applied — four files.
  2. 02 Move the rate table behind one function and update the callers.
  3. 03 Add cases for the two dates the rules change on.
Approve Change the plan nothing written yet

Then it edits, runs and looks

The change goes everywhere it has to go, the tests run, and the app gets opened and inspected.

Edits across files
Not one file at a time with you carrying the context between them. The change lands everywhere it belongs.
Runs your commands
Your tests, your build, your scripts — and it reads the output rather than assuming the exit code was zero.
Opens the app and checks
It drives a browser at what you're building, looks at the page, and tells you what it saw there.

invoicing — run

  • tax.ts +18 −6
  • invoice.tsx +4 −4
  • tax.test.ts +31 −0

$ npm test

42 passed, 0 failed

Then it opened the invoice page in a browser and read the total off it: 121.00, on both of the dates the rules change.

You approve what matters — from wherever you are

Delegating the work isn't the same as handing over the keys. The decisions stay yours, and they wait for you.

One card, one decision
A shell command, or anything destructive, stops and asks — with the exact command in front of you before it runs.
It waits
A question you didn't see doesn't time out into a guess. The work parks until you've answered it.
Answer from your phone
Get a notification when it needs you, decide on the way home, and it carries on without you at the desk.

Needs your decision

Run a command in invoicing

npm run db:migrate

Allow Deny

Asked 14 minutes ago. It is still waiting.

And where it isn't allowed

Some of this isn't a setting. It's what the thing can reach at all.

  • Only the folder you opened

    A path that climbs out of the project is refused — and so is the symlink that would have made it look like it hadn't.

  • Your keys stay yours

    Credentials live in your system keychain, and a command it runs doesn't inherit them just because it's running.

  • Some things it won't do at all

    A command that destroys what the project can't rebuild is blocked outright, not put in front of you as one more thing to approve.

The rest is the same product

One account, one set of conversations, one place these are explained properly.

  • The cast

    The planner reads the repository, the worker makes the edits and runs the tests, the checker reads the diff before any of it counts as done — each on a model you chose.

    See the cast at work
  • Every device

    The work happens on the machine the project is on, while a browser tab or the phone in your pocket watches it and answers what it asks.

    See where it runs
  • Your providers

    A subscription you already pay for, a key of your own, or a model running on your own machine. Gambalf never sits between you and whoever you pay.

    See every provider

Open a real project

Point it at a folder, agree on the plan, and read what it changed. Free while the preview lasts.

The same assistant without a project: questions, documents, the web, pictures and your voice, in one conversation on every device.

Explore Chat