Skip to content

Codename-11/ARC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

171 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARC

ARC — Agent Runtime Control

Unified agent runtime control plane for AI coding assistants.
Profiles, supervision, hooks, memory, tasks, telemetry, and a web dashboard — one tool to run them all.

npm MIT Node CI

Documentation · Install · Features · Architecture · CLI Reference


ARC Dashboard

What is ARC?

ARC started as a profile manager for agent CLIs (v0.1). It has since absorbed the Axiom-Supervisor project and implements all 25 phases of the v2.0 spec — becoming a unified control plane for the full lifecycle of AI coding agents.

One binary. One config directory (~/.arc/). Every agent runtime — Claude Code, Codex CLI, Gemini CLI, OpenClaw, or anything that speaks MCP/HTTP/stdio.

Features

Layer Capabilities
Identity Named profiles, credentials, auth (OAuth/API key/Bedrock/Vertex/Foundry), OS keyring, env isolation
Launch Tool detection, shell shims, per-profile flags, workspace-aware auto-selection (arc.json)
Adapters Claude Code (SDK bridge + hooks + plugin), Codex CLI, Gemini CLI, OpenClaw, Generic (MCP/HTTP)
Supervision Hook pipeline (4-mode enforcement), risk classification, preflight/postflight, retry loops, circuit breaker
MCP Dual-role: host (connect to tool servers) and server (expose 5 supervision tools via stdio/HTTP)
Memory Session + persistent memory, exponential decay scoring, keyword search, auto-extraction from conversation
Skills Directory-based skill loading, MCP-to-skill adapters, self-improving skillify, stuck detector
Tasks Task CRUD, cron scheduling, agent-to-agent message bus
Sessions Create/suspend/resume/complete lifecycle, resume-intent detection
Permissions Three-tier model (coordinator/interactive/worker) with deny > ask > allow precedence
Telemetry OpenTelemetry spans, JSONL + console + OTLP exporters, arc.* attribute namespace
Web Dashboard REST API (10 endpoints), WebSocket real-time push, SPA with 13 view components (+ Profiles, Diagnostics, Sync, Plugins)
Dark Factory Autonomous operation mode: spec in, software out — state machine with wave progression
Secrets Encrypted secret store (Argon2id KDF, AES-256-GCM per-entry), arc secret CLI
Sync Shared config layer, cloud sync provider interface, filesystem sync with atomic writes
Plugins JSON-backed plugin registry with semver compatibility, install/uninstall/enable/disable
Remote Agents Registry for remote agents (HTTP/SSH/MCP transports) with health checks
Shared Layer Sync MCP servers, commands, CLAUDE.md, memory, and projects across profiles
TUI Dashboard Interactive terminal UI with profiles, diagnostics, settings, guide, and workspace shell
Self-Update Built-in version check and arc update for self-updating

Architecture

┌─────────────────────────────────────────────────────────────┐
│                     ARC CLI / TUI / Web                      │
│  Profiles · Credentials · Dashboard · Doctor · Onboarding    │
│  TUI: quick ops (Ink)  ·  Web: deep observability            │
├─────────────────────────────────────────────────────────────┤
│                    Orchestration Layer                        │
│  Hook Pipeline · Risk Classifier · Retry Loop · Roundtable   │
│  Session Tracker · Alert Engine · Scope Tracker · Traces     │
│  Circuit Breaker · Dark Factory Controller                   │
├──────────┬──────────┬──────────┬──────────┬─────────────────┤
│  Claude  │  Codex   │  Gemini  │ OpenClaw │  Generic        │
│  Adapter │  Adapter  │  Adapter │  Adapter │  Adapter        │
│  SDK +   │  Process │  Process │  Plugin  │  MCP Server     │
│  Hooks + │  Wrap +  │  Wrap +  │  API +   │  or HTTP        │
│  Plugin  │  MCP +   │  MCP +   │  Hooks   │                 │
│  System  │  JSON    │  stdio   │          │                 │
├──────────┴──────────┴──────────┴──────────┴─────────────────┤
│                     Protocol Layer                           │
│  MCP Host (connect to tool servers)                          │
│  MCP Server (expose ARC supervision as tools)                │
│  A2A Agent Cards (capability discovery + task delegation)    │
├─────────────────────────────────────────────────────────────┤
│                      Storage Layer                           │
│  Profiles & Config (~/.arc/)  ·  OS Keyring (credentials)    │
│  JSON stores (tasks, sessions, memory, plugins, agents)      │
│  JSONL traces  ·  OpenTelemetry Export (OTLP)                │
└─────────────────────────────────────────────────────────────┘

Package Structure

ARC is a pnpm monorepo:

packages/
  core/              # Hook bus, risk classifier, config, types, health, lifecycle,
                     # process, workspace, adapters, secrets, circuit breaker,
                     # context manager, permissions, telemetry, memory, skills,
                     # tasks, sessions, plugins, remote agents, factory, sync
  cli/               # Commander.js commands, TUI (Ink), auth, detect, import,
                     # shared layer, swap, update, shell integration
  mcp/               # MCP server (5 supervision tools) + host manager + HTTP transport
  adapter-claude/    # Claude Code adapter (SDK bridge, auth, detect, import, shared)
  adapter-openclaw/  # OpenClaw adapter (plugin manifest, hooks, tools)
  dashboard/         # Web dashboard: REST API, WebSocket, SPA frontend
site/                # React landing site (Vite + Tailwind v4)

Installation

npm (recommended)

npm install -g @axiom-labs/arc-cli
arc setup
arc

From source

If you prefer to build from source or want to contribute:

git clone https://github.com/Codename-11/ARC.git
cd ARC && pnpm install
pnpm build
node dist/index.js setup

See Getting Started for requirements and platform notes.

Quick Start

arc                    # Open TUI — onboarding wizard on first run

The onboarding wizard auto-detects installed tools (Claude, Gemini, Codex) and offers to import their configs as profiles.

arc create work --tool claude --auth-type oauth
arc launch work
arc use personal
arc status

Screenshots

First Launch Dashboard
First launch — onboarding wizard Dashboard — light mode
Dashboard Dark Profiles
Dashboard — dark mode Profile management
Doctor
Diagnostics

Usage

Profiles

arc create <name>                  # Create a profile
arc list                           # List all profiles
arc use <name>                     # Switch active profile
arc profile show [name]            # Show profile details
arc profile delete <name>          # Delete a profile
arc profile import                 # Import existing tool config
arc which                          # Show resolved profile source

Launch

arc launch [name]                  # Launch agent tool with profile
arc launch [name] -- --model opus  # Pass flags through to the tool

Dashboard

arc                                # Open TUI dashboard
arc dashboard                      # Same — explicit command
arc web                            # Open web dashboard

Sessions & Tasks

arc sessions list                  # List all sessions
arc sessions show <id>             # Show session details
arc tasks create <title>           # Create a task
arc tasks list                     # List tasks
arc tasks update <id> --status done  # Update task status

Memory & Skills

arc memory search <query>          # Search persistent memory
arc memory list                    # List stored memories
arc skills list                    # List loaded skills
arc skills load <dir>              # Load skills from directory

MCP

arc mcp serve                      # Start ARC as an MCP server (stdio)
arc mcp serve --transport http     # Start with HTTP transport
arc mcp connect <uri>              # Connect to an external MCP server
arc mcp list                       # List connected MCP servers
arc mcp disconnect <name>          # Disconnect from an MCP server

Secrets

arc secret set <key> <value>       # Store an encrypted secret
arc secret get <key>               # Retrieve a secret
arc secret list                    # List secret keys
arc secret delete <key>            # Delete a secret

Telemetry & Logs

arc logs                           # View structured logs
arc logs --level error --limit 20  # Filter logs
arc telemetry status               # Show telemetry config

Factory & Remote

arc factory start <spec>           # Start dark factory run
arc factory status                 # Show factory state
arc remote list                    # List registered remote agents
arc remote register <url>          # Register a remote agent

Plugins & Sync

arc plugins list                   # List installed plugins
arc plugins install <name>         # Install a plugin
arc sync status                    # Show sync state
arc sync push                      # Push to sync provider
arc sync pull                      # Pull from sync provider

Shared Layer

arc shared pull [name]             # Push config to shared layer
arc shared enable [name]           # Sync shared config to a profile
arc shared sync                    # Re-apply to all enabled profiles

Lifecycle

arc setup                          # Install shims, PATH, shell integration
arc update                         # Refresh shims and self-update
arc doctor                         # Run diagnostics
arc status                         # Show all profiles and auth status

See the full command reference for all commands.

Shell Integration

After arc setup, agent tool commands automatically use the active profile:

eval "$(arc shell-init)"                                              # bash / zsh
arc shell-init --shell fish | source                                  # fish
arc shell-init --shell powershell | Out-String | Invoke-Expression    # PowerShell

Data Layout

~/.arc/
  config.json              # Profile registry, active profile, settings
  profiles/<name>/         # Isolated tool config dir per profile
  shared/                  # Shared layer (synced across profiles)
  credentials/             # [experimental] Hot-swap snapshots
  memory/                  # Persistent memory store
  tasks/tasks.json         # Task store
  sessions.json            # Session store
  plugins/installed.json   # Plugin registry
  remote-agents.json       # Remote agent registry
  logs/structured.jsonl    # Structured log
  traces/                  # OpenTelemetry JSONL traces
  skills/                  # Skill definitions

Documentation

Getting Started Install, requirements, first profile
Profiles Create, switch, import, inherit, delete
Authentication OAuth, API key, Bedrock, Vertex, Foundry
Features Hooks, tasks, memory, skills, sessions, orchestration
Architecture Adapters, hook pipeline, MCP, packages
CLI Reference Complete command reference
Configuration Data layout and config schema
Contributing Build, test, contribute

Development

git clone https://github.com/Codename-11/ARC.git
cd ARC && pnpm install

pnpm install:local         # Build + install arc command (shims + PATH)
pnpm uninstall:local       # Remove shims (keeps ~/.arc/ config)

pnpm dev:tui               # Run TUI from source
pnpm dev:tui:watch         # TUI with hot-reload
pnpm dev:dashboard         # Run web dashboard from source
pnpm web                   # Run landing site dev server
pnpm web:preview           # Preview landing site production build
pnpm typecheck             # TypeScript strict-mode check
pnpm build                 # Production bundle
pnpm test                  # Run all tests (E2E + integration)
pnpm test:watch            # Tests with hot-reload

Package-level development:

pnpm --filter @axiom-labs/arc-core build
pnpm --filter @axiom-labs/arc-mcp test
pnpm --filter @axiom-labs/arc-dashboard dev

See Contributing for the full development guide.

License

MIT — Copyright (c) 2026 Axiom-Labs


Built with the help of AI coding assistants and humans, with ❤️

ko-fi

About

Agent Runtime Control — unified CLI + TUI + web dashboard for managing AI coding agent profiles, supervision, hooks, and orchestration.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors