AtSys · Open-source task supervision
Keep your task moving.
See what happens.
Give your coding agent an objective. AtSys watches progress, brings in a supervisor when work stalls, and checks the result before calling it done.
AtSys 0.2.1 · Apache-2.0 · Local-first
Your existing workflow
Your agent does the work.
AtSys follows the outcome.
Use Codex with its existing login, or supervise a command you already run. No AtMem, Docker or Kubernetes installation is required.
Installation command
python -m pip install --upgrade atsys==0.2.1Watch it work · 3 min 34 sec
A task stalls at 5/20.
What happens next?
Follow installation, setup, observer detection, supervisor diagnosis, authorized repair and checkpoint resume—through independent validation.
Read the walkthrough transcript
0:00 · Install
Install the locally tested wheel into a fresh environment. The recording predates the public 0.2.1 release; use the published installation command below today.
0:33 · Configure the task
Set twenty local retrieval checks, a twelve-second progress-stall window, bounded retries and an independent acceptance command.
0:42 · Check the setup
Run the setup doctor and confirm the existing watchdog. The recording reuses the healthy service rather than replacing it.
1:07 · Fault at task 5
The fixture disables its engine after the fifth result. The process remains alive and prints output, but progress stops.
1:20 · Observer detects the stall
The deterministic observer detects the progress stall. A real native Codex supervisor investigates read-only and proposes a repair.
1:49 · Authorized repair
Policy authorizes a separate native Codex repair worker to restore only the fixture configuration and save a repair receipt.
2:33 · Resume from checkpoint
AtSys runs the configured resume command. Work continues at task six; the first five results are not replayed.
3:06 · Validate 20/20
The independent validator confirms twenty unique correct local results and the required repair evidence. This is recovery evidence, not a DolphinBench accuracy result.
Clear responsibilities
Execution, observation and authority stay separate.
1. Worker
Runs the coding task or command and saves progress. A running process is not assumed to be useful progress.
2. Observer
Checks heartbeats, activity and configured progress signals. A stalled counter can open an incident even while output continues.
3. Supervisor and repair
The supervisor investigates read-only and proposes a response. Only policy-authorized, separately bounded repair can make permitted workspace changes.
4. Independent validator
Runs the acceptance check you declared. A worker’s success message does not establish completion.
Retries, calls and deadlines are bounded. When safe recovery is unavailable, AtSys reports what needs attention. It does not promise that every objective can succeed. How supervision works ↗
Get started
From install to your first task.
You need Python 3.10+, an existing Git project, and Codex CLI with its native login for model-backed work. Keep the machine awake while tasks run.
Install AtSys
Run this in your terminal. The package supplies Node and the dashboard; npm is not needed.
Install AtSys
python -m pip install --upgrade atsys==0.2.1Prefer an isolated command installation?
Isolated install
uv tool install --upgrade atsys==0.2.1Use this alternative if uv is already installed. If your system Python refuses package installation, use a virtual environment or this isolated option rather than overriding its protection.
Connect your project
Replace the path with your existing Git repository. Initialization runs the setup doctor, attaches the Codex skill and starts the local dashboard service.
Project setup
cd /path/to/your/project atsys initExisting source, instructions, Git hooks and credentials are preserved. On macOS, initialization installs watchdog restart protection. On Linux, configure your own service manager for that protection. Windows supervision is not supported.
Give Codex an objective
Open or reopen Codex inside that project. Paste this example into the conversation, then replace the feature and checks with your own.
Prompt for Codex
$atsys Implement my feature, preserve unrelated changes, and verify it with the project tests under automatic supervision.The skill prepares the plan, acceptance checks and bounded recovery configuration, submits once and reports a task ID. Model-backed work uses your existing Codex login; subscription limits still apply.
Follow progress, not a wall of logs
Open the dashboard URL printed by AtSys. It normally starts at localhost port 4310 and chooses another free port if needed.
Monitoring commands
atsys ui atsys task list atsys task status TASK_ID atsys task watch TASK_IDReplace
TASK_IDwith the reported ID. Ctrl+C closes the read-only watch—not the task. To stop the task explicitly, useatsys task stop TASK_ID.
Upgrading an existing installation? Finish or explicitly stop active tasks before replacing their environment, retain the same data directory, then reinstall the macOS service. Read the upgrade steps ↗
A few useful answers.
Do I need AtMem or an API key?
AtSys runs independently of AtMem. Codex supervision uses the existing native CLI login, not a new AtSys API key. Your task may still need its own tools, services or credentials.
What if setup is wrong or progress stops?
The setup doctor checks workspace access, a private write/read pilot and required executables. Progress monitoring detects configured stalls; the supervisor can propose permitted repair or identify a blocker. Run atsys doctor --config .atsys/tasks/my-task.json to check a task configuration directly.
Does closing the browser stop the task?
No. The watchdog and runners own execution independently of the dashboard and monitor. A sleeping or powered-off computer cannot continue work. Closing the browser is different from stopping a task.
Where is my work stored, and what may repair change?
Task history lives in ~/.local/share/atsys, or your configured ATSYS_DATA_DIR. Generic commands run as your local user. Codex diagnosis is read-only; repair requires explicit permission and remains bounded by the task scope. AtSys does not provide a generic command sandbox or an unconditional success guarantee.