Safe execution + Argus Capsules

Autonomous testing,
without surrendering your desktop

Argus uses multimodal LLMs to test desktop apps, web UIs, and CLI tools with natural-language actions and deterministic assertions. Run lightweight tests locally, or move production testing into disposable isolated Capsules and distribute those Capsules through Fleet.

Latest release
Download ArgusInstall optionsView on GitHub
argus run checkout.test.yaml
Running checkout.test.yaml
  ✓ Type 'hello from argus' into the editor
  ✓ text_visible: 'hello from argus'
  ✓ Open the File menu
  ✓ element_exists: Save

4 passed · 0 failed · production isolation available with Capsules

Choose where Argus is allowed to act

Adapters describe how Argus interacts with an application. Execution environments decide where that interaction is allowed to happen. Keeping those concerns separate is now part of Argus's core architecture.

Local Lightweight

Fast shared-host execution for development, quick checks, and systems without virtualization.

  • Compatibility default remains local
  • Shared and non-isolated by design
  • Windows desktop mode defaults to semantic UI Automation
  • Legacy unrestricted physical input requires explicit opt-in
  • Use a Capsule when production containment matters
Compatibility note: Capsules are the recommended production architecture, but Argus does not silently change existing configurations. Local execution remains the current default.

AI-driven interaction with deterministic guardrails

Natural language controls the exploratory parts; structured assertions and execution policy keep critical checks and boundaries explicit.

🗣️

Natural-language actions

Describe what a user should do instead of maintaining brittle selectors for every UI interaction.

🔍

Deterministic assertions

Assertions such as visible text, process state, exit code, URL, and page title are evaluated without asking the model to decide whether they passed.

🛡️

Central execution policy

Actions are normalized and checked against capabilities and host-safety policy before platform execution.

🖥️

Safe Windows local mode

Supported desktop actions default to semantic UI Automation rather than intentional host-wide physical mouse/keyboard injection.

📦

Disposable Capsules

Run invasive tests inside dedicated VMs with secure guest control and explicit lifecycle ownership.

🧪

Failure Capsules

For supported scripted argus run failure paths, optionally retain disk/config evidence for forensic investigation without persisting live recovery credentials. Roam-triggered retention is not yet guaranteed.

📤

Explicit file transfer

Stage inputs and collect outputs through declared, bounded, hashed transfer authority rather than shared folders or clipboard shortcuts.

🤖

Free-roam testing

argus roam explores applications autonomously, records findings, and can build cross-session exploration memory.

🌐

Multiple interaction surfaces

Desktop GUI, browser, and CLI adapters share the same testing model while remaining distinct from execution placement.

A clear boundary from intent to execution

Argus now treats placement, interaction, policy, and verification as separate concerns.

1

Select execution environment

Use local mode for lightweight shared-host work or a Capsule for production isolation.

2

Prepare and launch the target

The selected execution environment allocates resources, stages authorized files where applicable, and creates the adapter inside that boundary.

3

Observe → propose → validate → act

The model receives supported observations, proposes an action, and Argus applies normalization/capability/policy checks before execution.

4

Evaluate assertions

Structured assertions are evaluated deterministically against the current observation or adapter state.

5

Collect, retain, or destroy

Authorized artifacts are collected; supported scripted argus run failures may retain a forensic Capsule when configured; normal disposable sessions are torn down.

One test style, multiple interaction surfaces

Adapters are not execution environments: they define how the target is controlled once an execution environment has been selected.

🖥️ Desktop GUI Implemented

Windows UI Automation and Linux GUI support with screenshots/structured observations where available.

🌐 Browser Implemented

Playwright-powered browser testing with page observations and deterministic URL/title checks.

⌨️ CLI Implemented

Execute commands and validate stdout, stderr, process state, and exit codes.

Evidence and distributed execution are now part of Argus

Argus keeps execution authority, evidence authority, and future read-only operations/monitoring as distinct trust boundaries.

ATES v0.1 Implemented

Canonical ordered evidence, durable action dispatch, privacy controls, protected artifacts, transactional finalization, manifests/verification, derived reports, traceability, and approval/audit records.

Read ATES →

Argus Fleet execution plane Implemented

Node identity/enrollment, authenticated heartbeats and capabilities, durable placement/fencing, remote Capsule execution, and canonical ATES transport above the existing ExecutionEnvironment → Capsule → Adapter boundary.

Read Fleet →

Fleet operations + Observer Next layer

Scheduler/queue operations, matrix execution, timelines/indexes, and the separately authorized read-only Observer experience remain follow-on work; the site does not present them as shipped.

Cross-platform releases Automated

CI builds Windows x64/ARM64, macOS universal2, and Linux x86_64/ARM64 packages with checksums and GitHub build provenance.

Download the latest release →

Design principle: test specification says what to test, execution specification says where/how Argus may run it, and ATES says what Argus must prove happened.

Desktop packages or Python — choose what fits your workflow

Release binaries come from the same tagged source tree. Capsule execution still requires a configured virtualization host and prepared golden image.

🪟 Windows

x64 + ARM64

Portable ZIP
Setup EXE
MSI

🍎 macOS

Universal2 — Intel + Apple Silicon

Argus.app ZIP
DMG

Currently ad-hoc signed; Developer ID signing/notarization is not configured yet.

🐧 Linux

x86_64 + ARM64

AppImage
DEB
RPM
Arch .pkg.tar.zst

🐍 Python package

pip install argus-app-testing

Browser support

pip install "argus-app-testing[browser]"
playwright install chromium

All Python extras

pip install "argus-app-testing[all]"
# Local model example
ollama pull gemma3:9b

# Initialize and run
argus init
argus providers
argus run

For production Capsule setup, start with the documentation hub.

Test autonomously. Keep execution boundaries explicit.

Use Argus locally for fast development, isolate invasive work in Capsules, and distribute Capsule execution through Fleet while ATES preserves the canonical evidence trail.

Download ArgusRead the docs