Skip to content

PacificStudio/openase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

474 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Priority Item Description
🟡 Medium Remote Runtime Operations Expand rollout automation, dashboards, and operator tooling around the websocket-only remote runtime plane
🟡 Medium Windows Support Native service management and shell-script support outside WSL2
🟡 Medium Notification Channels Webhook, Telegram, Slack, and WeCom notification delivery
🟡 Medium iOS & Android App Mobile control plane for monitoring and managing projects on the go
🟡 Medium Desktop All-in-One App Standalone desktop application bundling the full OpenASE experience
🟡 Medium Kubernetes Runtime Run agent workloads on Kubernetes clusters for elastic scaling
🟢 Future Multi-org Collaboration Cross-organization project sharing and permissions
🟢 Future Plugin Ecosystem Third-party plugin support for custom tools and integrations
🟢 Stable Metrics Dashboard Agent performance metrics, ticket throughput analytics

🖥️ Control Plane

Module Capabilities
Tickets Kanban board, list view, filtering, comments, dependencies, repository scoping
Agents Registration, real-time run monitoring, pause/resume/retire lifecycle
Machines SSH/local/cloud registration, health probes, resource metrics
Workflows Harness editing, status binding, skill binding, version history, impact analysis
Skills Built-in & custom skill management, workflow binding
Scheduled Jobs Cron-based ticket creation, manual trigger, enable/disable
Activity Real-time event stream, type filtering, keyword search
Updates Team progress threads, comments, revision history
Settings Statuses, repositories, notifications, security, archived tickets

🏗️ Architecture

Principle Description
All-Go Monolith API server, orchestrator, setup flow, and embedded UI in one binary
Binary-first Web UI embedded via go:embed — no Node.js at runtime
Ticket-driven Tickets, workflows, statuses, and activity are the core operating model
Multi-agent Adapter-based support for Claude Code, Codex, and Gemini CLI
Git-backed Workflow 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]
Loading

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


📖 Documentation

Document EN 中文
User Guide English 中文
Getting Started English 中文
Module Architecture English 中文
FAQ English 中文
Source Build & Startup English 中文
Configuration Reference English
CLI Reference English
Development Guide English
IAM Dual-Mode Contract English 中文
WebSocket Runtime Contract English 中文
OIDC & RBAC English 中文
Observability English 中文
Remote Runtime v1 Rollout English 中文
Gemini CLI Adaptation English 中文
Claude Code Stream Protocol English 中文

⭐ Star History

Star History Chart for PacificStudio/openase


📄 License

See LICENSE.

Friendly Link

linux.do


OpenASE
Create the ticket. The agent does the rest.

About

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.

Topics

Resources

License

Stars

Watchers

Forks

Contributors