Skip to content
AlbertCode SWE
v1.54.1 — latest release on GitHubWindows · macOS · LinuxRuns locally

AlbertCode SWE Agent

The coding agent that proves its work.

A coding agent that runs on your machine. It plans a change, builds it in an isolated copy of your repository, runs your own tests, reviews the result, and shows you the diff. Nothing reaches your files until you accept it.

Or plan a first run in the run planner.

The AlbertCode browser workspace at approval gate 2: the change is ready to accept, with its two changed files, the steps it took, and buttons to reject it, discard it, ask for changes, view the diff or accept it into your files.The AlbertCode browser workspace at approval gate 2: the change is ready to accept, with its two changed files, the steps it took, and buttons to reject it, discard it, ask for changes, view the diff or accept it into your files.
A task in the browser workspace, waiting at the second approval gate.

Overview

What it does for you.

  • Approval built in

    Two clear decision points — the plan and the diff — so nothing reaches your repository by surprise.

  • Proven, not just written

    Runs your own toolchain (pytest, npm scripts, go test, cargo, Maven, Gradle, dotnet) and shows what passed and what didn't.

  • Three interfaces

    Terminal, browser and VS Code, all driving the same local service and the same sessions.

  • Any model

    A hosted provider, OpenRouter, Hugging Face, any compatible API, or a model on your own machine.

  • Private by default

    Runs on your machine, with no account and no telemetry. Keys live in your OS keychain.

  • A record of every change

    Each task keeps its plan, test results, reviews and diff together, in a tamper-evident ledger you can export.

In the product

Captures of the AlbertCode SWE Agent 1.54 interface from its README. The model's answers were scripted for the pictures. Each is shown in your current theme.

Approval gate 1: the proposed plan, with the files it will change, its steps, how it will be tested, its security note, how to undo it and its risk, and buttons to reject it, read the whole plan, ask for changes, or approve and build.Approval gate 1: the proposed plan, with the files it will change, its steps, how it will be tested, its security note, how to undo it and its risk, and buttons to reject it, read the whole plan, ask for changes, or approve and build.
Gate 1 — the plan: files, steps, tests, a security note, how to undo it, and the risk. Nothing is written yet.

Technical capabilities

Interfaces, modes and commands.

Interfaces

  • Terminalalbertcode

    Working where you already are: sessions, the conversation with its gates, and every list on one screen. albertcode classic opens the classic terminal.

  • Browseralbertcode web

    Plans and diffs side by side, with your files, your running app, its tests and a shell beside the conversation.

  • VS CodeThe AlbertCode panel

    Staying in your editor. Install albertcode-<version>.vsix from the latest release; it uses the installed AlbertCode.

Modes

  • GoverneddefaultChanges you care about

    You approve a plan; it works in an isolated copy, runs your tests and reviews the result; you approve the diff.

  • DirectQuick changes you are watching

    Works in your real files, asking before each write, or applying writes as they come with auto. Needs Git.

  • Ask onlyUnderstanding a codebase

    Answers questions and changes nothing; a change is offered for your go.

Everyday commands

/connect
Connect a model provider: its key, or the address of a local model
/model
Choose a model
/plan <request>
Start a governed change
/do <request>
Start a direct change
/attach <paths>
Give it files or screenshots
/tasks
Every task by where it stands; open one to answer its gate
/contract
The repository's boundary: what AlbertCode may do there
/help
Every command

From a script or CI

albertcode run "Why does the cart total round down?" --lane ask
albertcode run "Add a test for the 10% code" --approve plan,result
albertcode run "Rename getUser to fetchUser" --lane direct_auto --json
Exit codes of albertcode run
Exit codeMeaning
3A governed change stopped at its plan because --approve did not cover it. Open the session to answer it.

Source: docs/terminal.md#sessions-from-a-script

Architecture

One local service. Everything else is a view of it.

AlbertCode runs as a small service on your computer. The terminal, the browser workspace and the VS Code panel all talk to it, so a task started in one can be followed in another, and a run keeps going when you close a window. albertcode stop stops it.

A repository can carry a contract — albertcode.contract.toml — that bounds what AlbertCode may do there. It is read from your repository, never from the isolated copy, so a task cannot widen its own limits.

albertcode.contract.toml
version = 1
name = "shop"

[scope]
forbidden_paths = ["src/payments/**", "infra/**", "**/migrations/**"]
max_files_changed = 15

[verification]
required = true
must_pass = [["npm", "test"]]

[approvals]
require_admin_for_risk = ["high"]

Committed, this refuses any plan touching src/payments, blocks acceptance of a change that fails npm test, and makes high-risk plans wait for an administrator. From docs/contract.md.

Your computer
TerminalFull-screen conversation, gates and lists
Browser workspacePlans, diffs, files and your running app
VS CodeThe same agent and gates, in your editor
Local service on 127.0.0.1Starts on first use and keeps running between windows. Answers only requests carrying this installation's access token.
Isolated copy of your repositoryWhere the change is built, your tests run and the reviews read it.
Your working treeChanges land only when you accept. Commit or undo them with Git.
The model you connectA hosted provider with your key, or a local model server — then nothing leaves your machine. No telemetry, no account.
Drawn from the agents' documentation (How it works, Security model). Both run only on your machine; neither is a hosted service.

Benchmark · self-reported

SWE-bench Pro, hardest split.

HARD-51 is the part of Scale AI's SWE-bench Pro that at least two of five frontier model families failed. Each task is a real issue in a professional open-source project, judged by that project's own hidden tests.

Run and graded by the AlbertCode developer, not independently verified. More than half the tasks had been seen during development, so the 22 held-out tasks are the fairest measure. One run, one unnamed frontier model at high reasoning effort set by the harness — not AlbertCode's default — so results with default settings may differ. No comparison with other systems is made.

All 51 tasks

39/51

76.5% resolved · 95% interval 63.2–86.0%

Held out from development

14/22

63.6% resolved · 95% interval 43.0–80.3%

Protocol
One attempt per task, up to 50 minutes, no web lookup, no human help
Mode
Direct mode, each task started fresh
Delivery precision
39 of the 49 changes handed over pass (80%)
Cost
US$30.63 in total at list price (an upper bound)
Run
30 September 2026, AlbertCode 1.9.0 with later changes, frozen for the run

Install

Prerequisites and installation.

The installer checks your machine, shows its plan and asks before it changes anything. It installs for your user only, in an environment of its own.

Install AlbertCode SWE Agent

for your user · asks before changing anything
Terminal
curl -fsSL https://raw.githubusercontent.com/huynvic/albertcode-swe-agent/main/installer/install.sh | sh
  • Open Terminal (⌘ Space, then type Terminal), paste the command, read the plan, then type Y.
  • Open a new Terminal window when it finishes, then run albertcode --version.

Then check it

Open a new terminal first, so it picks up the command.

albertcode --version

Prints the installed version.

albertcode doctor

Which build tools AlbertCode can find, and where.

albertcode models test

Checks the chosen model can drive AlbertCode (tool calling).

Update

Run the install command again

It shows what will change, then replaces the old version. Saved model keys are cleared the first time a new version starts: reconnect with /connect.

Uninstall

albertcode uninstall

Lists what it will remove and asks first. --all also removes settings, saved keys and task history; --check only shows the plan.

Prerequisites

Windows
Windows 10 or 11, x64 (the x64 build also runs on ARM PCs). PowerShell 5.1 or 7.
macOS
A current macOS, on Apple silicon or Intel.
Linux
x86-64 with glibc: Ubuntu 20.04+, Debian 10+, Fedora, RHEL 8+, openSUSE, Arch. Not Alpine or other musl systems, and not ARM yet.
Disk
About 1 GB free.
Network
pypi.org and github.com while installing; your model provider while working.
Git
Recommended. The installer offers to install it if it is missing. Direct mode needs it.
Python
Not needed. The installer uses your Python 3.12 if present, otherwise downloads one for AlbertCode alone.
Latest release
v1.54.1
Published
15 Oct 2026
Repository updated
15 Oct 2026
Command
albertcode