Releases: oxgeneral/ORCH
v1.0.2
Release v1.0.2
v1.0.1
Release v1.0.1
v1.0.0
First stable release. Production-ready CLI orchestrator for AI agent teams.
Highlights
- 5 adapter ecosystem — Claude, OpenCode, Codex, Cursor, Shell — mix any AI providers in one team
- 1493 tests — comprehensive coverage across all layers
- Real-time TUI dashboard — tasks, agents, goals, activity feed, logs with filtering
- Smart prompt architecture — system/user split for caching, relevance-based context filtering
- Zero-config start —
npm i -g @oxgeneral/orch && orchauto-initializes
New in 1.0.0 (since 0.3.4)
Features
- OpenCode adapter — new
opencodeadapter for multi-provider agent support via OpenCode CLI (OpenRouter, DeepSeek, Gemini, etc.). JSONL event streaming with--format json, model pass-through asprovider/model - System/User prompt split — separate static system prompt (agent identity, rules) from dynamic user prompt (task details) for Claude API prompt caching (~40-60% fewer input tokens on repeat runs)
- Agent picker [adapter] tags — assignee lists in TUI now show
[claude],[opencode],[codex]etc. next to each agent for provider visibility - OpenCode model catalog — TUI wizard offers Default (use opencode config), Claude, Gemini, DeepSeek, and Big Pickle models when creating opencode agents
Bug Fixes
- OpenCode tool display — tool_call events from opencode now render as
⚙ grep(pattern: "...")instead of raw JSON in TUI logs - step_finish noise — intermediate
step_finishlifecycle events no longer pollute activity feed
Reverted Optimizations
- Context value truncation (500 char cap) — silently lost agent context
- Agent role truncation (80 char / first line) — agents couldn't see teammates' capabilities
- Goal task names cap (30 entries) — agents lost goal progress visibility
- Retry output tail reads (50 lines) — agents lost failure chain context
Design principle: token optimizations must not silently lose data that agents need. Filtering by relevance is OK; hard truncation is not.
Full Feature Set (cumulative)
Orchestration Engine
- Parallel agent execution with configurable concurrency (
max_concurrent_agents) - State machine:
todo → in_progress → review → donewithretryingandfailedbranches - Automatic retry with exponential backoff, stall detection, zombie process cleanup
- Priority-based dispatch (P1-first, goal-linked tasks prioritized)
- Scope-based file conflict prevention (
--scope,--depends-on) - Task dependencies with topological ordering
Adapters
- Claude — Claude Code CLI with
--system-promptfor prompt caching - OpenCode — OpenCode CLI with multi-provider support (OpenRouter, DeepSeek, Gemini)
- Codex — OpenAI Codex CLI with stdin prompt delivery
- Cursor — Cursor Agent CLI with auto-binary resolution
- Shell — arbitrary commands via
bash -lcwith env variable prompt
TUI Dashboard (Ink/React)
- 3-tab interface: Tasks, Agents, Goals with detail panels
- Real-time activity feed with type-based filtering (text, tools, errors, events)
- Logs view with agent/type multi-filter, duration-based queries
- Form wizards for agent/task/goal creation with inline validation
- Agent Shop — 15 pre-built agent templates
- Toast notifications, help overlay, keyboard shortcuts
- Clipboard image paste for task attachments
Smart Prompts
- LiquidJS template engine with conditional sections
- System/User split for Claude API prompt caching
- Relevance-based context filtering (top 15 of 340+ entries)
- Inter-agent messaging (
orch msg send/broadcast/inbox) - Goal context injection with progress tracking
- Autonomous goal mode with structured decomposition loop
CLI Commands
orch run/orch tui— start orchestrationorch task— add, list, show, edit, cancel, approve, rejectorch agent— add, list, show, edit, disable, shoporch goal— add, list, show, status, deleteorch team— create, list, show, deleteorch msg— send, broadcast, inboxorch context— set, get, list, delete (shared key-value store)orch logs— view run events with filteringorch config— view/edit orchestrator settingsorch doctor— health check for all adaptersorch update— check and install updates
Storage & Performance
- File-based storage (
.orchestry/) — YAML, JSON, JSONL, no database - Atomic writes with temp file + rename
- Parallel file reads with EMFILE batching (groups of 64)
- JSONL tail reads for OOM protection
- 3-layer event data truncation pipeline (16KB → 8KB → 4KB → 2KB)
- TUI batched message queue (80ms flush) with LRU caps
Tests
- 1493 tests across 83 test files
- Coverage: orchestrator resilience, adapter event parsing, template rendering, TUI components, wizard validation, state machine transitions, storage atomicity, process management
v0.3.4
Full Changelog: v0.3.3...v0.3.4
v0.3.3
Full Changelog: v0.3.2...v0.3.3
v0.3.2
Full Changelog: v0.3.1...v0.3.2
v0.3.1
Full Changelog: v0.3.0...v0.3.1
ORCH v0.3.0 — Attachments, Clipboard Paste, Goal Context & 3.5× Performance
What's New in 0.3.0
ORCH v0.3.0 brings major UX improvements for multi-agent workflows: task attachments, clipboard paste in TUI, goal-driven autonomous mode, and a significant performance overhaul.
✨ New Features
- Task attachments —
orch task add --attach <file>copies files into.orchestry/attachments/<taskId>/and displays them in TUI with a 📎 indicator - Clipboard image paste (Ctrl+V) — paste images directly from system clipboard in the task creation/edit TUI wizard; cross-platform (macOS/Linux/Windows)
- Goal-driven autonomous mode — agents in
[auto]tasks get a structured loop: decompose → execute → track progress → mark goal achieved; agents see full goal context (title, linked tasks, progress report) - Scrollable GoalDetailPanel — virtual scrolling with j/k navigation, section dividers, task summary counts, and progress report display
- Skills display — agent detail panel now shows configured skills list
⚡ Performance
| Metric | v0.2.0 | v0.3.0 | Improvement |
|---|---|---|---|
| Per-test speed | 52ms | 15ms | 3.5× faster |
| Task dispatch latency | 30s | <500ms | 60× faster |
| Build time | 2.7s | 1.35s | 2× faster |
| CLI startup | 75ms | 41ms | 1.8× faster |
| TUI memory | OOM after 27min | Stable | Fixed |
Key optimizations: state.claimed Array→Set, ScopeIndex pre-computation, isBlocked O(d×1) taskMap lookup, lazy chalk/process-manager imports, parallel reconcile with Promise.all, adaptive Vitest thread pool.
🐛 Bug Fixes
- Tick interval 30s→10s — faster task dispatch
- GoalDetailPanel useMemo fix — prevents stale closure
- FormWizard paste mock types — correct union type
- 22 bugs fixed from architecture audit (4 P1 critical, 10 P2 high, 8 P3 medium)
🏗️ Architecture
SectionDividerreused from DetailPanel (no duplicate GoalDivider)TASK_STATUS_COLOR / GOAL_STATUS_COLORextracted tocolors.tswithRecord<Status, string>type safetyGoalContextin template engine — agents get full goal info in Liquid templatesclipboard-service.tswith platform detection and type-safe API
🧪 Tests
987 tests (up from 851 in 0.2.0) — new coverage: clipboard paste, GoalDetailPanel, ScopeIndex, attachments, orchestrator perf benchmarks, lazy chalk init.
Quick Start
npm install -g @oxgeneral/orch --registry=https://npm.pkg.github.com
cd ~/your-project && orch init
orch # opens TUI dashboardFull changelog: v0.2.4...v0.3.0
v0.2.4
Full Changelog: v0.2.3...v0.2.4
v0.2.3
Full Changelog: v0.2.0...v0.2.3