Skip to content

icholy/xagent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,577 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XAGENT

Runs coding agents (Claude Code, Codex, Cursor, GitHub Copilot) inside remote sandboxes.

Features

  • Self-hosted runners - Run agents on your own infrastructure inside Docker containers
  • Third-party integrations - Interact with agents via GitHub and Jira events
  • MCP server - Create and manage tasks from Claude Code, Cursor, or any MCP client

Web UI

Web UI

Quick Start

Install xagent cli:

mise run install

Download the pre-built binaries (if needed):

xagent download

Create an API key in the Web UI (https://xagent.choly.ca/ui/keys/new) and copy the returned xat_… value into ~/.config/xagent/config.yaml:

token: xat_...

Create a workspaces.yaml file (see examples below):

vim ~/.config/xagent/workspaces.yaml

Start the local runner:

xagent runner

Create and monitor tasks via the Web UI.

Open: https://xagent.choly.ca/

Workspace Examples

See examples/workspaces/ for workspace configuration examples:

Docker Compose Runner

See examples/runner/ for running the runner as a Docker Compose service with a pull-through registry cache.

Debugging

View container logs:

xagent logs -f <taskid>

Set verbose: true on a workspace's agent to bypass the CLI output parser and log every raw line. Useful when the parser is hiding details (errors, intermediate output, tool-use payloads) you want to inspect via xagent logs.

agent:
  type: claude
  verbose: true

Get a shell to a task container:

xagent shell <taskid>

List task containers:

xagent containers

Local Development

# Start server and postgres locally
docker compose up -d

# Run the FE
cd webui
pnpm install
pnpm run dev

The local server runs with --no-auth, but the runner still requires an API key. Create one in the local Web UI at http://localhost:5173/ui/keys/new, then start the runner:

xagent runner --server http://localhost:6464 -key <api-key>

Build

mise run build      # Build main + prebuilt binaries (linux amd64/arm64)
mise run generate   # Generate protobuf code
go build            # Build main binary only

Events

Agents can attach links to their tasks for external resources they create (PRs, Jira issues, etc.). Links created with subscribe=true act as subscriptions. When a new event occurs on the resource, the agent is automatically restarted to respond.

Events

Architecture

Architecture

Schema

Schema

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors