README.md

April 16, 2026 · View on GitHub

OpenASE

OpenASE
Ticket-Driven Automated Software Engineering

OpenASE is an all-in-one platform that turns tickets into working code — AI agents automatically pick up tickets, execute workflows on your machines, and deliver results with full traceability.

Quick Start English Guide 中文指南 License

Linux macOS Windows Go PostgreSQL


🖼️ Product Screenshots

The embedded web UI covers ticket orchestration, AI-assisted planning, skill authoring, and live project tracking.

OpenASE active project board

Live execution
Monitor real project work as tickets move across backlog, todo, in-progress, and review.

OpenASE kanban board

Ticket board
Manage backlog and execution flow with a kanban-style ticket view.

OpenASE project AI assistant beside the ticket board

Project AI
Break work into tickets and inspect workspace context directly beside the board.

OpenASE skill editor

Skill editor
Edit built-in or custom skills that drive repeatable automation workflows.


🤔 What is OpenASE?

OpenASE is a single Go binary that ships an API server, workflow orchestrator, and embedded web UI together. It follows a ticket-driven model: every piece of work is a ticket, every ticket has a workflow, and AI agents automatically pick up and execute tickets based on status triggers.

You create a ticket  →  Orchestrator detects pickup status
    →  Agent claims the ticket  →  Executes workflow on a Machine
    →  Activity stream records every step  →  Ticket completes

No Node.js at runtime — the SvelteKit frontend is compiled and embedded into the Go binary via go:embed.


🧭 Why OpenASE Exists

AI coding agents are powerful — but only when humans stay in control. OpenASE is built around two complementary modes of human–agent interaction:

Asynchronous AI — Ticket Agents

When requirements are clear and a Harness (a hard-boundary document that constrains agent behavior) is in place, the Ticket Agent executes the entire task autonomously. It follows the Workflow's instructions, updates ticket statuses, and completes the work — humans don't need to babysit. Two common patterns:

  • Fullstack Coder — A single agent handles the entire lifecycle (Todo → In Progress → In Review → Merging → Done).
  • Mixed Relay — Multiple specialized agents collaborate (Design → Backend → Frontend → Testing → In Review → Merging → Done), each responsible for one stage.

Synchronous AI — Project AI

When requirements are vague or you want to explore before committing to tickets, start a conversation with Project AI — a synchronous assistant in the control plane sidebar. Each tab runs in its own isolated workspace; tabs are independent, parallel, and easy to manage. Project AI can read tickets/workflows/skills, edit harnesses and skills, operate git, and trigger agent runs. As you navigate, it switches between Workflow / Skill / Ticket / Machine focus modes automatically.

Skills — Extending What Agents Can Do

Skills are reusable instruction documents that give agents extra capabilities. Every Workflow auto-binds a built-in Ticket Skill so agents know how to drive status flow. You can bind more built-in skills, author custom ones in the Skill Editor, or import them from your repo. Bound skills are injected into the CLI agent's skill directory at runtime (.codex/skills/, .claude/skills/, .gemini/skills/).

Organization & Project Management

OpenASE supports multi-Organization management out of the box. Each Org contains its own Projects, tickets, workflows, skills, machines, and providers. Cross-Org team collaboration is WIP.

⚠️ Security Notice

To maximize unattended Workflow execution, OpenASE launches CLI agents with permissive flags by default (--dangerously-skip-permissions for Claude Code, --yolo for Codex). Agents can read, write, and execute arbitrary commands on the host without per-action confirmation. You can switch to standard interactive mode per-provider in Provider settings.

  • Only run OpenASE on machines where you trust the agent's scope of access.
  • This project is NOT designed for public-facing deployment — it targets local dev, private networks, and trusted environments.
  • Browser access is always authorization-gated. Fresh installs use local bootstrap links; networked deployments should move to HTTPS + OIDC (see OIDC & RBAC Guide).

Both async and sync AI support multiple agent CLIs. Claude Code and Codex are recommended for production use; Gemini CLI is supported but less stable.


✨ Key Features

📋 Ticket-Driven Orchestration

Kanban Board & List Views

Parent/Child & Dependency Tracking

Custom Statuses & Priorities

Repository Scope Binding

🤖 Multi-Agent Support

Claude Code / Codex / Gemini CLI

Real-time Streaming Output (SSE)

Agent Lifecycle Management

Concurrent Execution Control

⚡ Workflow Engine

Markdown Harness Documents

Skill Binding & Lifecycle Hooks

Scheduled Cron Jobs

Built-in Role Templates

🖥️ Machine Management

Local / Direct-Connect / Reverse-Connect

Websocket Execution + SSH Bootstrap

Health Probes & Resource Metrics

Connectivity Diagnostics

🔐 Auth & Security

OIDC Browser Login (Auth0, Entra ID)

Agent Platform Token Auth

Org & Project RBAC

GitHub Credential Management

📡 Observability

Live Activity Event Stream

Agent Run Step Tracking

GitHub Webhook Ingestion

Project Update Threads


🚀 From Zero to Running

Fast Path: One-Command Installer

For fresh Linux or macOS machines:

curl -fsSL https://raw.githubusercontent.com/pacificstudio/openase/main/scripts/install.sh | sh

The installer detects OS/arch/package managers, downloads and verifies the matching GitHub release, offers PostgreSQL bootstrap, and writes a runnable ~/.openase/config.yaml and ~/.openase/.env. Docker-backed PostgreSQL is only offered when Docker is already installed and the current user can reach the Docker daemon; otherwise the installer shows the system-package path when available, plus skip.

To pin a specific version:

curl -fsSL https://raw.githubusercontent.com/pacificstudio/openase/main/scripts/install.sh | sh -s -- --version <version>

Build From Source

git clone https://github.com/PacificStudio/openase.git
cd openase
make build-web              # build frontend + Go binary
./bin/openase setup         # interactive first-run setup
./bin/openase all-in-one --config ~/.openase/config.yaml

On fresh cloud VMs, budget enough memory for the frontend build. In practice make build-web is much more reliable on machines with at least 8 GB RAM, or on a 4 GB droplet after adding swap first.

The control plane is then available at http://127.0.0.1:19836.

For prerequisite installs (Go, Node, PostgreSQL, agent CLIs), full setup walkthrough, run modes (managed user service, split-process, env-only), and validation steps, see the Source Build & Startup Guide.

What's Next?

Follow the User Guide — Quick Start (EN | 中文) to configure ticket statuses, register a machine and agent, create your first workflow, and watch the agent execute.


📊 Roadmap

PriorityItemDescription
🟡 MediumRemote Runtime OperationsExpand rollout automation, dashboards, and operator tooling around the websocket-only remote runtime plane
🟡 MediumWindows SupportNative service management and shell-script support outside WSL2
🟡 MediumNotification ChannelsWebhook, Telegram, Slack, and WeCom notification delivery
🟡 MediumiOS & Android AppMobile control plane for monitoring and managing projects on the go
🟡 MediumDesktop All-in-One AppStandalone desktop application bundling the full OpenASE experience
🟡 MediumKubernetes RuntimeRun agent workloads on Kubernetes clusters for elastic scaling
🟢 FutureMulti-org CollaborationCross-organization project sharing and permissions
🟢 FuturePlugin EcosystemThird-party plugin support for custom tools and integrations
🟢 StableMetrics DashboardAgent performance metrics, ticket throughput analytics

🖥️ Control Plane

ModuleCapabilities
TicketsKanban board, list view, filtering, comments, dependencies, repository scoping
AgentsRegistration, real-time run monitoring, pause/resume/retire lifecycle
MachinesSSH/local/cloud registration, health probes, resource metrics
WorkflowsHarness editing, status binding, skill binding, version history, impact analysis
SkillsBuilt-in & custom skill management, workflow binding
Scheduled JobsCron-based ticket creation, manual trigger, enable/disable
ActivityReal-time event stream, type filtering, keyword search
UpdatesTeam progress threads, comments, revision history
SettingsStatuses, repositories, notifications, security, archived tickets

🏗️ Architecture

PrincipleDescription
All-Go MonolithAPI server, orchestrator, setup flow, and embedded UI in one binary
Binary-firstWeb UI embedded via go:embed — no Node.js at runtime
Ticket-drivenTickets, workflows, statuses, and activity are the core operating model
Multi-agentAdapter-based support for Claude Code, Codex, and Gemini CLI
Git-backedWorkflow harnesses and skills are repo-aware at runtime
flowchart LR
    U[User / Scheduled Job] --> T[Ticket]
    T --> O[Orchestrator]
    O -->|status trigger| A[Agent]
    A --> W[Workflow + Harness]
    W --> S[Skills]
    A -->|executes on| M[Machine]
    M --> R[Results]
    R --> E[Activity Stream]
    E --> UI[Web Control Plane]

For repository layout, build commands, and quality gates, see the Development Guide.


📖 Documentation

DocumentEN中文
User GuideEnglish中文
Getting StartedEnglish中文
Module ArchitectureEnglish中文
FAQEnglish中文
Source Build & StartupEnglish中文
Configuration ReferenceEnglish
CLI ReferenceEnglish
Development GuideEnglish
IAM Dual-Mode ContractEnglish中文
WebSocket Runtime ContractEnglish中文
OIDC & RBACEnglish中文
ObservabilityEnglish中文
Remote Runtime v1 RolloutEnglish中文
Gemini CLI AdaptationEnglish中文
Claude Code Stream ProtocolEnglish中文

⭐ Star History

Star History Chart for PacificStudio/openase


📄 License

See LICENSE.

linux.do


OpenASE
Create the ticket. The agent does the rest.