openase

module
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2026 License: Apache-2.0

README ΒΆ

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]

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.

linux.do


OpenASE
Create the ticket. The agent does the rest.

Directories ΒΆ

Path Synopsis
cmd
openase command
ent
internal
app
cli
machinesetup
Package machinesetup holds the neutral contract between the HTTP API and the CLI-side SSH bootstrap implementation.
Package machinesetup holds the neutral contract between the HTTP API and the CLI-side SSH bootstrap implementation.
tools
atlasdiff command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL