Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,40 @@ jobs:
--generate-notes \
release-assets/*

- name: Generate checksums.yml
run: |
OP_MACOS=$(sha256sum release-assets/operator-macos-arm64 | cut -d' ' -f1)
OP_LINUX_ARM=$(sha256sum release-assets/operator-linux-arm64 | cut -d' ' -f1)
OP_LINUX_X86=$(sha256sum release-assets/operator-linux-x86_64 | cut -d' ' -f1)
OP_WIN=$(sha256sum release-assets/operator-windows-x86_64.exe | cut -d' ' -f1)
BS_DARWIN=$(sha256sum release-assets/backstage-server-bun-darwin-arm64 | cut -d' ' -f1)
BS_LINUX_ARM=$(sha256sum release-assets/backstage-server-bun-linux-arm64 | cut -d' ' -f1)
BS_LINUX_X64=$(sha256sum release-assets/backstage-server-bun-linux-x64 | cut -d' ' -f1)
BS_WIN=$(sha256sum release-assets/backstage-server-bun-windows-x64 | cut -d' ' -f1)

cat > docs/_data/checksums.yml << EOF
# SHA256 checksums - AUTO-GENERATED BY CI
# Do not edit manually - regenerated on each release

operator:
macos_arm64: "${OP_MACOS}"
linux_arm64: "${OP_LINUX_ARM}"
linux_x86_64: "${OP_LINUX_X86}"
windows_x86_64: "${OP_WIN}"

backstage:
darwin_arm64: "${BS_DARWIN}"
linux_arm64: "${BS_LINUX_ARM}"
linux_x64: "${BS_LINUX_X64}"
windows_x64: "${BS_WIN}"
EOF

- name: Commit checksums
run: |
git add docs/_data/checksums.yml
git commit -m "chore: update checksums for v${{ steps.version.outputs.version }} [skip ci]" || true
git push

deploy-docs:
needs: release
runs-on: ubuntu-latest
Expand Down
53 changes: 53 additions & 0 deletions .github/workflows/zed-extension.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Zed Extension

on:
push:
branches: [main]
paths:
- 'zed-extension/**'
- '.github/workflows/zed-extension.yaml'
pull_request:
paths:
- 'zed-extension/**'
- '.github/workflows/zed-extension.yaml'

jobs:
lint-build:
name: Lint and Build
runs-on: ubuntu-latest
defaults:
run:
working-directory: zed-extension

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
targets: wasm32-wasip1
components: clippy, rustfmt

- name: Cache cargo
uses: Swatinem/rust-cache@v2
with:
workspaces: zed-extension -> target

- name: Check formatting
run: cargo fmt -- --check

- name: Lint
run: cargo clippy --target wasm32-wasip1 -- -D warnings

- name: Build
run: cargo build --release --target wasm32-wasip1

- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: operator-zed-extension
path: |
zed-extension/extension.toml
zed-extension/target/wasm32-wasip1/release/operator_zed.wasm
if-no-files-found: error
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Rust build artifacts
/target/
opr8r/target/
zed-extension/target/

# Rust backup files
*.rs.bk
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,15 @@

A multi-agent orchestration dashboard for [**AI-assisted**](https://operator.untra.io/getting-started/agents/) [_kanban-shaped_](https://operator.untra.io/getting-started/kanban/) [git-versioned](https://operator.untra.io/getting-started/git/) software development.

<a href="https://marketplace.visualstudio.com/items?itemName=untra.operator-terminals" target="_blank" class="button">Install <b>Operator! Terminals</b> extension from Visual Studio Code Marketplace</a>

Operator is for you if:

- you do work assigned from tickets on a kanban board , such as [_Jira Cloud_](https://operator.untra.io/getting-started/kanban/jira/) or [_Linear_](https://operator.untra.io/getting-started/kanban/linear/)
- you use llm assisted coding agent tools to accomplish work, such as [_Claude Code_](https://operator.untra.io/getting-started/agents/claude/), [_OpenAI Codex_](https://operator.untra.io/getting-started/agents/codex/)
- your work is version controlled with git repository provider (like [_Github_](https://operator.untra.io/getting-started/git/github/))

- you are drowning in the soup
- you are drowning in the AI software development soup.

and you're ready to start seriously automating your work.

Expand Down
14 changes: 14 additions & 0 deletions docs/_data/checksums.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# SHA256 checksums - AUTO-GENERATED BY CI
# Do not edit manually - regenerated on each release

operator:
macos_arm64: "da6ed97227e3388810386657a654b12c221754567ddf52119393a64d2cdd6de1"
linux_arm64: "285908fd637e6461bfd03ea73c2c8c8e5cc6e80d1e30ecbfbcc0827a85c674a4"
linux_x86_64: "4aac345f7380615d72a5ccf1fa223194660e20f28e8764ed7540a1c44e63dcc9"
windows_x86_64: "184cf45c0bfa7fefeef8e553a08c90e5b82234d4262fd4b055de58531f0b8493"

backstage:
darwin_arm64: "3f5dd85cf2db4a9e431d1869e4a12c782f0ab414100791f3d8c760d2d123c419"
linux_arm64: "ae653fdca149be960294843e3e127c2d2a41d18be942904b2bc8550cc08b47fd"
linux_x64: "bd51046f067c818b7c84a622460dec93b34252c54bb66162234c52a755140eea"
windows_x64: "0019dfc4b32d63c1392aa264aed2253c1e0c2fb09216f8e2cc269bbfb8bb49b5"
36 changes: 23 additions & 13 deletions docs/downloads/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,31 +8,43 @@ layout: doc

Download <span class="operator-brand">Operator!</span> for your platform. Current version: **v{{ site.version }}**

> **Note:** Windows builds run in **limited mode** - queue management, REST API, and backstage-server work normally, but agent launching requires tmux (available via WSL).
## VS Code Extension (Recommended)

The **VS Code Extension** is the recommended way to get started with Operator. It provides integrated terminal management, ticket tracking, and a streamlined workflow directly in your editor.

<a href="https://marketplace.visualstudio.com/items?itemName=untra.operator-terminals" target="_blank" class="button">Install from VS Code Marketplace</a>

Works on **macOS**, **Linux**, and **Windows** - no additional setup required.

---

## CLI Downloads

For headless servers, CI/CD pipelines, or advanced workflows, download the CLI binary for your platform.

<div id="recommended-download">
<noscript>See the download tables below for all available platforms.</noscript>
</div>

## All <span class="operator-brand">Operator!</span> Downloads
### All <span class="operator-brand">Operator!</span> Downloads

| Platform | Architecture | Download |
|----------|--------------|----------|
| macOS | ARM64 (Apple Silicon) | [operator-macos-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-macos-arm64) |
| Linux | ARM64 | [operator-linux-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-linux-arm64) |
| Linux | x86_64 | [operator-linux-x86_64]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-linux-x86_64) |
| Windows | x86_64 | [operator-windows-x86_64.exe]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-windows-x86_64.exe) |
| macOS | ARM64 (Apple Silicon) | [operator-macos-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-macos-arm64)<br><small>sha256:<code>{{ site.data.checksums.operator.macos_arm64 }}</code></small> |
| Linux | ARM64 | [operator-linux-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-linux-arm64)<br><small>sha256:<code>{{ site.data.checksums.operator.linux_arm64 }}</code></small> |
| Linux | x86_64 | [operator-linux-x86_64]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-linux-x86_64)<br><small>sha256:<code>{{ site.data.checksums.operator.linux_x86_64 }}</code></small> |
| Windows | x86_64 | [operator-windows-x86_64.exe]({{ site.github.repo }}/releases/download/v{{ site.version }}/operator-windows-x86_64.exe)<br><small>sha256:<code>{{ site.data.checksums.operator.windows_x86_64 }}</code></small> |

## Backstage Server

Optional companion server for web-based project monitoring dashboard.

| Platform | Architecture | Download |
|----------|--------------|----------|
| macOS | ARM64 | [backstage-server-bun-darwin-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-darwin-arm64) |
| Linux | ARM64 | [backstage-server-bun-linux-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-linux-arm64) |
| Linux | x64 | [backstage-server-bun-linux-x64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-linux-x64) |
| Windows | x64 | [backstage-server-bun-windows-x64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-windows-x64) |
| macOS | ARM64 | [backstage-server-bun-darwin-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-darwin-arm64)<br><small>sha256:<code>{{ site.data.checksums.backstage.darwin_arm64 }}</code></small> |
| Linux | ARM64 | [backstage-server-bun-linux-arm64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-linux-arm64)<br><small>sha256:<code>{{ site.data.checksums.backstage.linux_arm64 }}</code></small> |
| Linux | x64 | [backstage-server-bun-linux-x64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-linux-x64)<br><small>sha256:<code>{{ site.data.checksums.backstage.linux_x64 }}</code></small> |
| Windows | x64 | [backstage-server-bun-windows-x64]({{ site.github.repo }}/releases/download/v{{ site.version }}/backstage-server-bun-windows-x64)<br><small>sha256:<code>{{ site.data.checksums.backstage.windows_x64 }}</code></small> |

## All Releases

Expand All @@ -59,14 +71,13 @@ Optional companion server for web-based project monitoring dashboard.

// Render the download recommendation
function render(os, arch) {
var artifactName, url, label, archLabel, limitedModeNote = '';
var artifactName, url, label, archLabel;

if (os === 'windows') {
artifactName = 'operator-windows-' + arch + '.exe';
url = '{{ site.github.repo }}/releases/download/v{{ site.version }}/' + artifactName;
label = 'Windows';
archLabel = arch === 'arm64' ? 'ARM64' : 'x86_64';
limitedModeNote = '<p class="limited-mode-note" style="font-size: 0.9em; color: #666; margin-top: 0.5em;">Windows builds run in limited mode (no tmux agent launching)</p>';
} else {
artifactName = 'operator-' + os + '-' + arch;
url = '{{ site.github.repo }}/releases/download/v{{ site.version }}/' + artifactName;
Expand All @@ -76,7 +87,6 @@ Optional companion server for web-based project monitoring dashboard.

container.innerHTML = '<div class="recommended-box">' +
'<p><strong>Recommended for your system:</strong> ' + label + ' ' + archLabel + '</p>' +
limitedModeNote +
'<a href="' + url + '" class="download-button">Download ' + artifactName + '</a>' +
'</div>';
}
Expand Down
8 changes: 4 additions & 4 deletions docs/getting-started/sessions/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ Operator supports multiple session management backends for running AI coding age

| Option | Status | Notes |
|--------|--------|-------|
| [tmux](/getting-started/sessions/tmux/) | Recommended | Terminal multiplexer, works headless |
| [VS Code Extension](/getting-started/sessions/vscode/) | Supported | Integrated terminals in VS Code |
| [VS Code Extension](/getting-started/sessions/vscode/) | Recommended (Preferred) | Integrated terminals in VS Code, works on all platforms |
| [tmux](/getting-started/sessions/tmux/) | Supported | Terminal multiplexer, ideal for headless/server environments |

## How It Works

Expand All @@ -26,9 +26,9 @@ Session managers provide:

## Choosing a Session Manager

**tmux** is recommended for most users, especially those running agents on remote servers or headless environments. It works anywhere with a terminal.
**VS Code Extension** is the recommended choice for most users. It provides an integrated experience with ticket management, color-coded terminals, and works seamlessly on macOS, Linux, and Windows without additional setup.

**VS Code Extension** is ideal for developers who prefer working within VS Code and want integrated ticket management alongside their editor.
**tmux** remains an excellent choice for headless/server environments, SSH sessions, and users who prefer terminal-based workflows. It's particularly useful for remote servers where VS Code may not be available.

## Feature Parity: Core Operations

Expand Down
2 changes: 2 additions & 0 deletions docs/getting-started/sessions/tmux/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ layout: doc

Operator uses [**tmux**](https://github.com/tmux/tmux/wiki){:target="_blank"} for terminal session management, providing a customized experience for managing multiple LLM tool agent sessions from a single terminal.

> **Note:** For most users, the [VS Code Extension](/getting-started/sessions/vscode/) is now the recommended session manager. It provides an integrated experience that works on all platforms including Windows. The `tmux` interface remains ideal for headless/server environments, SSH sessions, and for use from containerized terminal-centric workflows.

## What is `tmux`?

tmux is a program which runs in a terminal and allows multiple other terminal programs to be run inside it. Each program inside tmux gets its own terminal managed by tmux, which can be accessed from the single terminal where tmux is running - this called multiplexing and tmux is a terminal multiplexer.
Expand Down
4 changes: 3 additions & 1 deletion docs/getting-started/sessions/vscode.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@ layout: doc

# VS Code Extension

<span class="badge recommended">Recommended</span>

<a href="https://marketplace.visualstudio.com/items?itemName=untra.operator-terminals" target="_blank" class="button">Install from VS Code Marketplace</a>

Operator Terminals brings the Operator multi-agent orchestration experience directly into VS Code with integrated terminal management and ticket tracking.
Operator Terminals brings the Operator multi-agent orchestration experience directly into VS Code with integrated terminal management and ticket tracking. This is the **recommended session manager** for most users, with full support for **macOS**, **Linux**, and **Windows** (no WSL required).

## Features

Expand Down
30 changes: 18 additions & 12 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,41 @@
---
title: Operator!
description: "Operator! is a Rust TUI for orchestrating Claude Code agents across multi-project codebases with kanban-style ticket management."
description: "Operator! is an application for orchestrating LLM coding assist agents across multi-project codebases with kanban-style ticket management."
layout: doc
---

Welcome friend! **Operator!** is a Rust TUI application for orchestrating Claude Code (and other llms) agents across multi-project codebases. It combines kanban-style ticket management with LLM tools and tmux terminals to create a powerful workflow for managing AI-assisted development.
Welcome friend! **Operator!** is an application for orchestrating Claude Code (and other LLM coding assist) agents across multi-project codebases. It combines kanban-style ticket management with LLM tools and tmux terminals to create a powerful workflow for managing AI-assisted development.

## What is <span class="operator-brand">Operator!</span>?

<span class="operator-brand">Operator!</span> helps you:

- **Manage ticket queues** - Organize work items by priority (INV, FIX, FEAT, SPIKE)
- **Launch LLM agents** - Start Claude Code sessions with context from tickets
- **Track progress** - Monitor agent status and completion in real-time
- **Coordinate work** - Handle parallelism rules and project dependencies
- **Enforce Standards** - Define how work gets done, across your many software services
- **Catalog your Code** - Get the overview of your codebase, composed from project files
- **Manage ticket queues** - Organize and prioritize ticket shaped work into reproducible workflows.
- **Launch LLM agents** - Start Claude Code sessions with context from tickets and established software development standards.
- **Track progress** - Monitor agent status and work completion in real-time, keeping you in focus of what needs to get done.
- **Parallelize Work** - Work multiple tickets at once, across many code repositories, to get the most of your credits.
- **Enforce Standards** - Define how work gets done by AI tools, across many defined software services.
- **Catalog your Code** - Get the overview of your codebase, composed from project files, organized and maintained implicitly.

## Getting Started

1. Install <span class="operator-brand">Operator!</span> (downloads page)
2. Configure your projects (J - project tasks)
3. Create issuetypes to make new work (w - ui from portal)
2. Configure your project management kanban workspaces
3. Define your work shape issuetypes, and how AI combines them together
3. Create tickets in `.tickets/queue/` (kanban connectors)
4. Launch agents and watch them work (measuring success)

## Quick Links

- [Kanban](/kanban/) - Understand the kanban workflow
- [Issue Types](/issue-types/) - Learn about INV, FIX, FEAT, and SPIKE
- [LLM Tools](/llm-tools/) - Configure LLM integration
- [Tickets](/tickets/) - Create and manage tickets
- [Tickets](/tickets/) - Create and manage work tickets
- [Agents](/agents/) - Agent lifecycle and modes
- [Tmux](/tmux/) - Terminal session management

## Similar, but Worse:

These are tools that are almost as good as Operator, and have inspired this project:

- [Ralph Code](https://github.com/frankbria/ralph-claude-code)
- [Vibe Kanban](https://www.vibekanban.com/)
Loading