{"id":32746676,"url":"https://github.com/humanunsupervised/orchestra","last_synced_at":"2026-02-28T03:56:56.542Z","repository":{"id":311165970,"uuid":"1042669422","full_name":"humanunsupervised/orchestra","owner":"humanunsupervised","description":"Fast RUST TUI app for parallel AI coding assistants and agents directly in the terminal.","archived":false,"fork":false,"pushed_at":"2025-10-15T12:51:02.000Z","size":302,"stargazers_count":20,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-03T19:01:02.435Z","etag":null,"topics":["ai","rust","tmux","tui"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/humanunsupervised.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-22T11:38:18.000Z","updated_at":"2025-10-28T02:11:43.000Z","dependencies_parsed_at":"2025-08-23T00:36:24.425Z","dependency_job_id":"d35bdc81-e7ab-44c1-bb5f-37030c208981","html_url":"https://github.com/humanunsupervised/orchestra","commit_stats":null,"previous_names":["adeperio/orchestra","humanunsupervised/orchestra"],"tags_count":57,"template":false,"template_full_name":null,"purl":"pkg:github/humanunsupervised/orchestra","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanunsupervised%2Forchestra","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanunsupervised%2Forchestra/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanunsupervised%2Forchestra/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanunsupervised%2Forchestra/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/humanunsupervised","download_url":"https://codeload.github.com/humanunsupervised/orchestra/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanunsupervised%2Forchestra/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29196662,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T12:38:28.597Z","status":"ssl_error","status_checked_at":"2026-02-07T12:38:23.888Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","rust","tmux","tui"],"created_at":"2025-11-03T19:00:35.695Z","updated_at":"2026-02-07T14:05:17.461Z","avatar_url":"https://github.com/humanunsupervised.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎼 Orchestra\n\n**Orchestra** is a fast, terminal-first TUI application for managing your **Git worktrees** and **tmux sessions** — built for AI coders working with parallel tasks and coding agents like [Claude Code](https://claude.ai), [Opencode](https://opencode.ai), and [Codex](https://openai.com/blog/openai-codex).\n\nMultiple branches, multiple sessions, all in harmony — so you can stay focused on building.\n\n![Orchestra Screenshot](assets/orchestra-screenshot.png)\n\n## Found a bug? Suggest a feature?\n\nFeel free to create a github issue! \n\n## 🚀 Why Orchestra?\n\nModern AI development often means juggling **several branches, experiments, and agents at once**.  \nDoing this manually with `git worktree` and `tmux` is possible, but Orchestra wraps this up in a nice workflow.  \n\nOrchestra is **terminal-first** and solves this by:\n- **Terminal-native experience** — built for developers who live in the terminal.\n- **Managing Git worktrees** — spin up clean, isolated worktrees for new features, experiments, or agent tasks.  \n- **Integrating with tmux** — map worktrees to tmux sessions for true parallelism in your terminal.  \n- **Keyboard-driven, Vim-friendly interface** — every action is designed for speed and minimal keystrokes.  \n- **Easy switching between sessions** — Orchestra attaches directly into tmux, so you can use familiar shortcuts like `Ctrl-b d` to detach and move around.  \n- **AI-first workflows** — optimized for terminal coders using Claude Code, Opencode, Goose CLI, Vim, Helix, etc.  \n- **Blazing fast** — written in Rust for performance and reliability.  \n\n## ✨ Features\n\n- 🎯 Manage **Git worktrees** without memorizing complex commands  \n- 🖥️ One-key **tmux session launch** for each worktree  \n- ⌨️ **Keyboard-driven, Vim-friendly** navigation for maximum speed  \n- 🔄 Quick switching between multiple AI coding tasks in progress  \n- 📂 Automatic branch/session alignment: each branch maps to its own tmux world  \n- ⚡ **Native Performance** - Compiled Rust TUI with \u003c100ms startup\n- 🤖 **AI-Powered Sessions** - Intelligent session naming with context detection\n- 🌳 **Hierarchical Navigation** - Tree view of worktrees with expandable sessions\n- ⚡ **Real-time Updates** - Live git status, session previews, auto-refresh\n- 🛠️ Minimal setup — works with your existing Git + tmux setup  \n- 🧑‍💻 Compatible with **any terminal coder** — Claude Code, Opencode, Goose CLI, Vim, Emacs, Helix, or your favorite editor  \n- 🔀 Works seamlessly with **standard tmux shortcuts** (`Ctrl-b d` to detach, `Ctrl-b n/p` to cycle, etc.)  \n- 🤖 **Background AI workflows** — start an AI agent in one session, detach, and let it run while you switch back to coding in another\n\n## 📦 Installation\n\n### Homebrew (macOS \u0026 Linuxbrew)\nOn macOS and Linux (with [Linuxbrew](https://docs.brew.sh/Homebrew-on-Linux)):\n\n```bash\nbrew tap humanunsupervised/orchestra\nbrew install orchestra\n```\n\n### npm (Node.js)\nInstall globally via npm on any platform with Node.js installed:\n\n```bash\nnpm install -g @humanu/orchestra\n```\n\n## 🎹 Usage\n\nSimply run Orchestra inside a Git repository:\n\n```bash\norchestra\n```\n\nFrom there, the **TUI takes over**:\n- Browse existing branches and worktrees  \n- Create new worktrees with a few keystrokes  \n- Launch and attach tmux sessions automatically  \n- Switch between active sessions instantly  \n- Navigate everything with **fast, keyboard-driven controls**  \n- Use all your **normal tmux shortcuts** (`Ctrl-b d` to detach, `Ctrl-b n/p` to cycle, etc.) — Orchestra doesn't break your flow  \n\n### TUI Interface\n\nThe main interface provides:\n- **Visual Navigation**: Hierarchical tree view of worktrees and sessions\n- **AI Session Management**: Auto-rename sessions with context detection\n- **Real-time Updates**: Live git status and session previews\n- **One-key Operations**: Create, delete, switch with single keystrokes\n\n**Key Controls:**\n- `↑/↓` Navigate • `Enter` Select/Expand • `d` Delete • `c` Create • `q` Quit\n\nBecause Orchestra runs inside tmux, you can:\n- Run your **app/server** in one session  \n- Keep your **editor (Vim, Helix, Emacs, etc.)** open in another  \n- Run **AI coders** like Claude Code, Opencode, or Goose CLI — each isolated to its own worktree/session  \n- **Start an AI agent on a task, detach, and let it run in the background** while you continue working elsewhere  \n- All in parallel, sandboxed, without window/tab juggling\n\n## ⚙️ How It Works\n\nAt its core, Orchestra combines **Git worktrees** and **tmux sessions** into a single workflow:\n\n- Each **Git worktree** represents a branch, isolated environment, or experiment.  \n- Each worktree maps to its own **tmux session**, giving you a clean, sandboxed workspace.  \n- The **TUI** handles orchestration — spin up, switch, or destroy environments with just a few keys.  \n- Since Orchestra rides on top of tmux, you still have full access to all **standard tmux keybindings** you already know.  \n- You can **leave long-running processes running in the background** — for example, start an AI coding agent in one session, detach, and switch back to another without interrupting it.  \n- This means you can manage multiple parallel coding sessions, each fully isolated at the Git and tmux level, without clutter or context loss.  \n\n## 🧱 Why Git Worktrees + tmux?\n\nWe chose **Git worktrees** and **tmux** as the foundation for Orchestra because they're:\n\n- ✅ **Proven** — decades of real-world use, trusted by Linux power users everywhere  \n- ✅ **Battle-tested** — work reliably under heavy parallel workloads  \n- ✅ **Widely supported** — available on macOS, Linux, and most developer environments out-of-the-box  \n- ✅ **Composable** — play nicely with existing CLI tools, shells, and workflows  \n- ✅ **Lightweight** — no vendor lock-in, no heavy dependencies, no hidden magic  \n\nAnd since Orchestra builds on **tmux**, you can use **any terminal-based coding tool** inside your sessions:  \nClaude Code, Opencode, Goose CLI, Vim, Emacs, Helix — whatever fits your flow.  \n\n## 🔧 Requirements\n\n- **Git 2.5+** (for `git worktree` support)\n- **tmux** (for session management)\n- **bash** (shell integration)\n- **jq** (JSON processing)\n\n## 🚀 Workflow\n\n1. **Launch TUI** (`orchestra`) from any git repository\n2. **Navigate visually** through worktrees and sessions\n3. **Create sessions** - Automatically marked for AI naming\n4. **Work \u0026 detach** - Normal tmux workflow (Ctrl+B, D)\n5. **Return to TUI** - Sessions intelligently renamed with context\n\n## 📜 License\n\nProprietary License. Free for personal and commercial use. See [LICENSE](LICENSE) for details.\n\n## 🤝 Support\n\nFor issues and feature requests, please create an issue in this repository.\n\n---\n\n**Built with ❤️ using Rust + ratatui for modern terminal experiences.**\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhumanunsupervised%2Forchestra","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhumanunsupervised%2Forchestra","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhumanunsupervised%2Forchestra/lists"}