v0.9.9 · stable
Elyra Conductor · The Cockpit

One window for
every local
project you build .

Conductor is your local project cockpit. Pick a project, get a terminal rooted at that folder, split panes endlessly, browse and quick-edit files — all in one cross-platform window. It orchestrates your work; it never reasons about it.

PTYs
API keys
0
Price
Free
Elyra Conductor — ~/Code
Pinned
elyra-web
conductor
Projects
api-gateway
design-kit
infra
shell build test ●
~/Code/elyra-web
git status
On branch main
2 ahead · clean
npm run dev
VITE ready in 412 ms
~/Code/elyra-web
php artisan test
PASS Feature\Conductor
PASS Feature\Routes
OK 24 passed
Fig. 01 — Split panes ⌘K · ⌘B · ⌘F
— 01
1 window
Every project, terminal, and file in a single cockpit.
— 02
panes
Split horizontally or vertically, nest freely, drag to resize.
— 03
0 AI
A host and launcher — never calls a model, never stores keys.
— 04
OSS
Cross-platform Rust + web. No subscription, no telemetry.
S.01 — What it does

A multiplexer that
knows your projects.

The heavy lifting — PTYs, the filesystem, launching processes — lives in Rust. The UI uses battle-tested web components like xterm.js and Monaco. The result is fast, native-feeling, and yours to keep.

Project switcher

Scans your code folder and shows each repo's branch, dirty state, and ahead/behind counts with instant fuzzy search. Pin your favourites to a sticky section up top.

Split panes & real terminals

One PTY per pane (portable-pty + xterm.js). Split horizontally or vertically, nest freely, drag to resize — panes never lose their session. Clickable links, ⌘+ / ⌘− font zoom across all panes, and correct emoji / CJK glyph width. Dragging to copy shows what you selected, which through 0.9.7 it did not: the selection measured 1.4:1 against the background — a difference the eye cannot resolve — so selecting terminal or agent output looked like nothing happening. Now 3.2:1, with the selected glyphs repainted, because terminal output carries arbitrary ANSI colours and a dark-blue run would otherwise vanish into the selection.

Command palette

Jump between projects, tabs, tasks, and every action from one fuzzy-searchable list with ⌘K.

File sidebar & quick-edit

A lazy-loaded recursive file tree (⌘B). Open a file in an inline Monaco editor and save with ⌘S, or launch the project in e, Zed, VS Code or Cursor. If you are on 0.9.5–0.9.8, selecting text here showed nothing and grey blobs drifted over the editor: inline style attributes were dead in every release build, so Monaco's selection rectangles measured 0×0 and its whitespace dots stretched to the full pane. Tauri injects a nonce into the splash screen's style tag, and a nonce in style-src makes the unsafe-inline beside it inert. Four releases treated it as a colour problem, because every verification ran in dev mode — where the nonce is never added and the bug cannot occur.

Universal project runner

Start any stack with ⌘R — npm, pnpm, composer, make, just. Detects tasks from package.json, composer.json, Makefile, and justfile and runs them in a fresh tab.

Database browser

Connect to MySQL, PostgreSQL, ClickHouse, and SQLite — several at once. Browse, sort, filter, edit cells, run SQL, and export to Excel. Credentials live in the OS keychain.

Schema compare & data transfer

Diff two saved connections table-by-table with Tools ▸ Compare Schemas, then copy data across with Data Transfer — with per-column data masking (🔒) so sensitive values never leave the source.

Port dashboard

See which local ports are listening with process and PID — click to open localhost or stop the process. Projects show a ⚡port badge when a server is up.

Runbooks

Runnable, project-scoped markdown notes in .conductor/notes. ▶ Run shell blocks, link files and tasks — or hit ⏺ Record to turn a terminal session into a runbook draft.

Shell integration

Opt-in zsh integration captures real command lines and exit codes via OSC 133/633. The command timeline shows ✓ / ✗ badges and a per-project test health strip.

Workspaces

Save the whole layout — projects, tabs, panes, open file, theme — as a named workspace and reopen it later from the palette.

Notifications & broadcast

Background tabs pulse green on output; long commands fire a native alert when they finish. Toggle ⌁ Sync to mirror keystrokes to every pane in a tab.

Elyra agent panel

If the Elyra CLI is installed, open a native agent tab driven over JSON-RPC — stream replies, see tool activity, answer prompts. All AI stays in Elyra; Conductor is only the host.

Agent dashboard

A cockpit for parallel agents across every project and worktree — presence, live status and last activity, with agents waiting on you floated to the top. A “Ready to merge” queue lists green PRs; Squash & merge runs gh pr merge, closes the agent tab and removes the worktree in one click.

Garden — work stranded on this machine

One view (\u2318K \u2192 Garden) reads git state across every project you have open and answers a single question: is there work here that exists nowhere else? Unpushed commits, branches never pushed, branches whose remote is gone, and branches untouched for 60+ days. The kind of thing that is invisible until the laptop dies.

A failure you cannot miss

The Fix it toast expires after 18 seconds so it never nags — which meant a command that failed while you were looking at another tab was simply lost. The tab now pulses red and keeps a clickable dot until you deal with it: clicking hands the command, exit code, output tail and branch to an Elyra agent, long after the toast has gone. A failure outranks the green new-output ring and does not clear just because you looked — only acting on it, or a later command succeeding, clears it. Interrupts you caused yourself never raise it.

Ask about this terminal (⌘↵)

An inline bar in any pane — local zsh, SSH, docker exec, a REPL — because the context that matters is the scrollback, which Conductor holds locally no matter where the shell runs. It sends the cwd, git branch, the last five commands with exit codes and the last 120 output lines, with credential-shaped text masked first. It answers; it does not act: tools are off, and a suggested command gets an Insert button that puts it on the prompt line without pressing Enter, because an LLM suggestion is not consent. Only fenced shell blocks are offered — a command mentioned in prose is ignored. Open in Elyra escalates to a real agent when you want files changed.

Still no API key in Conductor

The terminal ask added no provider, model or key setting anywhere: Conductor pipes the prompt to elyra --print over stdin — never argv, which would leak the context through ps and hit ARG_MAX. Two things settled it. Preferences live in localStorage, inside the webview hardened on the premise that nothing there is worth stealing. And for an SSH session a key here buys nothing, since a local API call and a local elyra have identical access to the remote context. The new Settings window (⌘,) says so where you would go looking for the key field, rather than leaving an unexplained gap.

Herd strip

Every open agent as its own glyph chip in the tab strip — ⏸ blocked, ▶ working, ✓ done, ○ idle — with its title, always visible and sorted so agents that need you come first. Click a chip to jump straight to it; past six they collapse into a +N chip that opens the Agent dashboard. The same blocked / working / done / idle vocabulary runs across tab dots and the dashboard.

Orchestrates, never reasons

Conductor is a host.
Not an agent.

AI lives entirely in external tools like the Elyra CLI, which Conductor treats like any other process — Zed, iTerm, git. If a feature needs an API key or a model call, it belongs in Elyra, not in Conductor.

  • Never calls an LLM or bundles an AI SDK
  • Never stores or manages API keys
  • No prompts, system prompts, tools, or models
  • No agent or reasoning logic of any kind
Read the architecture
boundary.txt
# Conductor launches processes
conductor → spawn  elyra "refactor auth"
conductor → spawn  zed .
conductor → spawn  npm run dev

# It never interprets them
 PTYs, filesystem, git    (Rust)
 tabs, panes, palette     (web)
 model calls              (→ Elyra)
 API keys                 (→ Elyra)
Colophon — Get the app

Your projects,
one window away.

Download Conductor, point it at your code folder, and start orchestrating. Free, open source, and entirely on your machine.

Elyra Conductor · v0.9.9 Built in Norway · MMXXVI