PluginWorld
Ti

tide-commander

Claude Code✓ SPEC VERIFIED

Visual multi-agent orchestrator and manager for Claude Code with 3D/2D interface

@deivid11 · v1.209.1 · MIT · updated today

SECURITY

A

SCORE

82

INSTALLS

13.9K

PLUG IN

/plugin marketplace add deivid11/tide-commander
/plugin install tide-commander

README

Tide Commander

Tide Commander

The visual AI build suite for a new generation of creators.

Turn ideas into software, automations, workflows, documents, data tools, and 3D projects—without living inside an IDE.

Claude Code  ·  Codex  ·  OpenCode  ·  Grok  ·  Pi

npm version GitHub stars MIT license Node.js 18+

Try the live demo Watch the demo

Tide Commander visual multi-agent command center

More than an agent manager. More than an IDE. Tide Commander is a complete build environment designed around teams of AI agents. Every character is a real process working on real project files with native tools, credentials, context, and session history.

Traditional creation tools split the work across an IDE, terminal multiplexer, Git client, file browser, automation canvas, infrastructure dashboard, and a growing pile of AI chats. Tide Commander brings those surfaces together so you can move from intent to finished output in one place.

You do not have to live in code to use it. Start with natural language and visual controls; open the exact files, commands, diffs, data, or infrastructure only when you want deeper control.

⚡ Run it in 30 seconds

npx tide-commander@latest

Open http://localhost:6200. If Claude Code, Codex, OpenCode, Grok, or Pi is already installed and authenticated, you are ready to spawn your first agent.

Prefer Bun? Use bunx tide-commander@latest.

Why creators use Tide Commander

Traditional IDEs were designed for one person editing one file at a time. AI-native creation is different: multiple agents can research, plan, build, test, document, automate, and operate in parallel. Tide Commander is a workspace for that shift—a visual build suite where you direct the outcome while the team handles the execution.

For solo creators, founders, researchers, operators, engineers, product teams, and anyone who builds with AI.

✨ Create from intent

Start with the outcome you want. Spawn specialists, give them context, and let boss agents coordinate the work.

👀 See the work happen

Follow tool calls, PTY output, background jobs, queues, context usage, and blockers live instead of watching silent spinners.

🛠️ Replace tool switching

Work with files, source, Git, tests, documents, data, terminals, services, and rich previews in the same build suite.

🔀 Use the right harness

Mix Claude, Codex, OpenCode, Grok, and Pi in one team—and migrate a conversation when another runtime fits better.

⚙️ Automate the repeatable

Build workflows and triggers, connect your services, or add local plugins and slash commands that bypass the LLM.

📱 Pick up anywhere

Reconnect to the same server-side sessions from desktop, mobile, Android, or the browser extension.

Everything you need to create

🎯 Orchestration
Boss/subordinate teams, delegation reports, project areas, task labels, tracking boards, agent memory, prompt stacking, skills, and runtime migration.
📡 Observability
Structured tool cards, streamed PTY commands, a live background-task rail, server-side message queues, interrupts, context gauges, account limits, and reconnect recovery.
📁 Unified build workspace
Multi-root file explorer, source editing, Git status/diffs/history, branch comparison, project-wide filename/content search, tests, and @file / @folder / @agent context.
🧩 Extensibility
Trusted plugins, slash commands, shell scripts, workflows, webhooks, integrations, custom skills/classes/models, REST API, WebSocket API, and browser automation.
🖼️ Rich previews
Markdown, Mermaid, PlantUML, Office documents, spreadsheets, archives, images, PDF, audio/video, STL, GLB, FreeCAD, and G-code.
🌐 Flexible UI
3D, 2D, Flat, Dashboard, Commander, and Guake views; Android support; custom themes, shortcuts, sounds, haptics, and 10 UI languages.

🤖 Bring your favorite AI harness

Use different harnesses side by side—even inside the same project. Tide Commander normalizes their event streams into one conversation, tool, status, context, and file-diff experience without hiding each provider's native sessions or strengths.

Harness Required command Default runtime Optional persistent/streaming mode
Claude Code claude Headless stream-json process with stdin follow-ups Interactive Claude TUI in tmux; general tmux mode can preserve processes across Commander restarts
Codex codex codex exec --experimental-json with native session resume Persistent codex app-server for token streaming, detached turns, reconnect, and native thread forking
OpenCode opencode opencode run --format json with session resume Persistent opencode serve daemon with streaming and restart recovery
Grok grok Headless streaming-json with native resume Model/effort selection, account profiles, context tracking, and usage gauges
Pi pi pi --mode json NDJSON sessions Persistent pi --mode rpc with mid-turn steering, native /compact, live model/provider switching, and tmux reconnect

Persistent modes are opt-in under Settings → General. Pi can use any model provider loaded by Pi—for example Anthropic, OpenAI Codex, xAI, Gemini, Copilot, OpenCode Go, or a local provider—and Tide displays the active model provider separately from the Pi harness.

Switch harness without throwing the conversation away

The agent editor can change any agent to any supported harness:

  • Smart Context — a compact hand-off fitted to the target context window
  • Visible Transcript — a budgeted readable copy of the conversation
  • Fresh Start — change the runtime without importing conversation content

Claude, Codex, Grok, and Pi have writable native session stores and support imported context. OpenCode can be selected with Fresh Start. Every provider can be the source of a migration. Tide validates the new session, reports imported/dropped content, archives the original, and provides rollback through session history.

📦 Installation and CLI

Requirements

  • Node.js 18+ (Node.js 22 is used in CI), or Bun for bunx
  • At least one supported AI agent CLI installed and authenticated: claude, codex, opencode, grok, or pi
  • Optional: tmux for process persistence, Pi RPC restart recovery, and Claude interactive TUI mode

Run without installing

# Bun
bunx tide-commander@latest

# Or npm
npx tide-commander@latest

Open http://localhost:6200.

Install globally

npm install -g tide-commander@latest
tide-commander start

The server starts in the background by default:

tide-commander start                 # Start in background
tide-commander start --foreground    # Keep attached to this terminal
tide-commander stop
tide-commander status
tide-commander logs
tide-commander logs --follow
tide-commander version

Common server options:

tide-commander start --port 8080 --host 127.0.0.1
tide-commander start --listen-all --port 8080
tide-commander start --restart
tide-commander start --https --tls-key ./certs/key.pem --tls-cert ./certs/cert.pem
tide-commander start --install-local-cert --https
tide-commander start --https --generate-auth-token

Run tide-commander --help for the complete CLI reference.

🔒 Remote Access and HTTPS

Tide Commander executes local tools and exposes project files, so use HTTPS/WSS and an auth token whenever it is reachable beyond localhost.

tide-commander start \
  --listen-all \
  --https \
  --install-local-cert \
  --generate-auth-token

You can also serve HTTP and HTTPS from the same process. PORT keeps the plain listener and HTTPS_PORT adds TLS; both listeners share the same agents and WebSocket clients.

PORT=6200 \
HTTPS_PORT=6201 \
TLS_KEY_PATH=~/.tide-commander/certs/localhost-key.pem \
TLS_CERT_PATH=~/.tide-commander/certs/localhost.pem \
tide-commander start

This is useful when localhost can stay on HTTP while a phone or another computer needs a secure context. If HTTPS=1 is used without HTTPS_PORT, HTTPS replaces the plain listener.

Notes:

  • --install-local-cert uses mkcert and stores certificates in ~/.tide-commander/certs/.
  • Add LAN or VPN addresses to the certificate SAN list when remote clients use those addresses.
  • Keep generated auth tokens in a password manager.
  • HTTPS protects transport; AUTH_TOKEN controls access. Use both remotely.

🎖️ Core Concepts

Agents, bosses, and delegation

Every character is a real AI harness process with its own working directory, provider, model, session, prompt stack, memory, permissions, skills, context usage, and task state. A boss can own subordinate agents, choose specialists, send tasks through the Tide Commander API, wait for reports, and summarize the team's progress.

Task labels and tracking states make the work visible outside the chat. Agents can report that they are thinking, working, blocked, waiting for subordinates, ready for review, or safe to clear from context.

Areas

Rectangle or circular areas organize agents by project or responsibility. Areas can own multiple project folders, add area-specific instructions to agents inside them, expose an instant tmux terminal rooted in the project, and group agents in Commander and Flat views. Finished areas can be archived and restored without deleting their agents.

Agent classes and custom models

Classes bundle a role, model, instructions, and default skills. Tide includes Scout, Builder, Debugger, Architect, Warrior, Support, and Boss classes. Custom classes can use uploaded GLB character models with scale, offsets, and idle/walk/working animation mappings.

Create Agent Class

Prompt stacking and memory

Instructions are composed in layers:

  1. Tide Commander base rules
  2. Global system prompt
  3. Area prompt
  4. Agent-class instructions
  5. Individual agent instructions
  6. Assigned skills, identity, and persistent agent memory

This lets you define organization-wide conventions once, specialize them by project/class, and keep durable notes per agent without copying the same prompt everywhere.

Skills

Skills are reusable instruction sets with tool permissions and optional model/context behavior. They can be assigned directly or inherited from a class. Built-ins cover notifications, inter-agent messaging, delegation reports, tracking, persistent memory, streaming execution, Git/release workflows, server/PM2 logs, tests, databases, browser/computer control, HTTP requests, workflows, triggers, Mermaid, Bitbucket review, and backup/restore.

Custom skills are Markdown-based and can be managed from the UI. Changes hot-reload into assigned agents while preserving their sessions.

Plugins

Trusted local plugins can add:

  • slash commands that bypass the LLM
  • structured Guake/Spotlight result cards
  • right-sidebar views and modals
  • interactive actions and WebSocket patches
  • browser-side UI bundles and styles
  • server handlers and integration-backed settings
  • configurable global shortcuts

Recent built-ins expose Gmail inbox cards, Jira ticket search/details, account usage across every harness, task boards, and managed shell commands. Plugins run with Tide Commander's local privileges, so only install code you trust.

Workflows and triggers

The workflow editor builds state machines from action, wait, decision, and end states. Actions can assign agent tasks, wait for events, set variables, and transition on agent completion, variable conditions, timeouts, cron schedules, triggers, or manual decisions. Running instances support pause, resume, cancel, timelines, variables, reasoning traces, and scoped workflow chat.

Triggers can react to webhooks, cron/one-shot schedules, Gmail, Slack, Jira, WhatsApp, and Bitbucket. Matching can be structural, LLM-based, or hybrid, with optional variable extraction, signature validation, delivery deduplication, and fire/matcher history.

Buildings

Buildings are functional objects, not decoration:

Type What it does
Server Custom or PM2 start/stop/restart, logs, health, CPU/memory, and port detection
Docker Create/adopt containers or control Compose projects, logs, health, and ports
Database MySQL, PostgreSQL, and Oracle connections, schema browser, SQL editor, and history
Terminal Persistent browser terminal through ttyd
Tests Scan and run Maven/JUnit, Cucumber, Vitest, and PHPUnit suites down to a method
HTTP Requests Browse and run IntelliJ-style .http/.rest requests with environments
Monitor System metrics and monitoring
Folder Open a project path in the file explorer
Link Open a dashboard, admin panel, or other URL
Boss Building Aggregate subordinate buildings and control them together

🖥️ Views and Navigation

3D battlefield

The default Three.js view provides RTS-style selection, movement, camera controls, buildings, project areas, custom characters, and animated work/status effects.

3D View

2D view

A lightweight top-down canvas with the same agents, areas, and buildings for lower-power devices or very large teams.

2D View

Flat view

An IDE-style, low-overhead project layout with area status bars, buildings, agent lists, and embedded conversations. It keeps the operational controls without rendering a battlefield.

Dashboard

Metrics and cards for agent state, current work, errors, context, and infrastructure.

Dashboard View

Commander view

A live multi-terminal grid grouped by area. See every conversation at once, switch area tabs, and expand an agent without losing the overview.

Commander View

Guake terminal

The main agent conversation surface supports multiple rendering levels, Markdown, syntax highlighting, structured tool cards, permission prompts, Git/building/workflow/tracking side panels, message search, pinned/recent agents, file attachments, screenshots, interrupts, and queued follow-ups.

Spotlight

Press Ctrl+K (or Alt+P) to search and act across Tide Commander. Spotlight finds:

  • agents by name, class, area, provider, status, current task, or recent activity
  • current and archived conversations, with ranked matching extracts
  • filenames and file contents across every area project
  • modified files and Git changes
  • buildings, areas, folders, settings, sessions, and commands
  • plugin slash commands and their structured results

Search is accent-insensitive, supports multi-word matches across different fields, and can open a file directly at the matching line.

🧰 The build workspace that can replace your IDE

For many projects, the whole creation loop—from brief and research to files, commands, diffs, tests, previews, and operations—can stay inside Tide Commander. The file explorer supports multiple project roots, project-scoped tabs and expanded folders, source editing, Git status, working-tree diffs, binary/image/PDF diffs, branch comparison, file history, and test results. Files changed by an agent are clickable directly from its tool card or message.

File Explorer with Git Diffs

Inline File Inspection

Specialized viewers include:

  • rendered Markdown, Mermaid, PlantUML, SVG, images, and PDF
  • .docx, .docm, .odt, .fodt, .doc, and .rtf documents
  • .xlsx, .xlsm, .xls, .ods, .csv, and .tsv spreadsheets with virtualized grids, filter/sort, selections, and statistics
  • zip/tar/7z/rar and many package/archive formats as browsable trees
  • audio waveforms and video playback
  • interactive STL, GLB, FreeCAD (.FCStd), and layer-aware G-code previews

You can browse from inside a viewer, drag files out to the desktop, download folders as streaming zip files, and export rendered Markdown to PDF.

🔌 Integrations and External Control

Built-in integrations provide settings, secure secrets, API routes, agent skills, and trigger handlers for:

  • Slack (including multiple instances, messages, threads, files, reactions, and inbound events)
  • Gmail
  • Google Calendar
  • Google Drive
  • Jira Cloud / Service Desk
  • WhatsApp through the local bridge
  • DOCX document generation

Tide Commander also ships an optional Chromium browser extension that captures console/network failures, opens an agent chat side panel, sends requests or selected DOM/React components as context, and supports multiple Commander servers. macOS Alfred and KDE KRunner launch/search integrations are included in the repository.

📡 Live Execution and Session Control

Long commands can run through Tide Commander's exec API in a PTY-backed card. Output streams with ANSI color and terminal redraw handling, survives UI reconnects, can be stopped with its whole process tree, and returns a bounded tail to the agent without hiding the full live output from the user. Active ordinary CLI Bash/Task jobs also appear in the background-task rail.

Prompts sent while an agent is busy are kept in a server-side queue. Message bursts are merged into one follow-up, queued items can be interrupted or removed, and supported persistent runtimes reconnect to in-flight turns after a Commander restart. Ctrl+C in an open terminal interrupts the active run when no text selection is being copied.

Session history can restore a past conversation onto the same or a new agent, pre-filling its original harness/model/reasoning configuration. Spotlight searches both active and archived sessions.

📲 Resume Anywhere

Agent sessions live on the server rather than in one browser tab. Start on desktop and reconnect from a phone, tablet, browser extension, or another computer. The Android app adds local notifications, haptics, optional background connectivity, and in-app APK/UI updates.

Mobile Remote Session Resume

🎮 What a real workflow looks like

  1. Create a project area and attach one or more project folders.
  2. Spawn a small team—for example a boss, a researcher, a builder, and a test/review specialist—using whichever harness fits each role.
  3. Give the boss the outcome, not a list of terminal commands. It can delegate focused tasks and collect reports from its subordinates.
  4. Watch execution live in Commander view: tool cards, streamed commands, background jobs, current prompts, blockers, and context pressure stay visible.
  5. Review the result in place through rendered documents, data grids, 3D previews, file viewers, Git diffs, and test output.
  6. Keep the useful context by sending follow-ups, restoring an older session, or moving the conversation to another harness.
  7. Walk away without losing visibility—notifications and the mobile clients keep you connected to the same running team.

⌨️ Default Keyboard Shortcuts

Key Action
Ctrl+K / Alt+P Open Spotlight
Tab Toggle Commander view
Alt+N Spawn an agent
Ctrl+1Ctrl+9 Select agent by index
Space Open the selected agent terminal
Alt+2 Cycle 3D / 2D / Flat / Dashboard
Alt+E Toggle file explorer
Ctrl+L Open recent agents and buildings
Ctrl+Shift+F Open the global session finder
Ctrl+T Toggle test results
Alt+J / Alt+K Cycle pinned agents in the terminal
Alt+H / Alt+L Previous / next agent
Escape Deselect or close the active surface

Shortcuts can be rebound or disabled in Settings. Plugin commands can also define global shortcuts.

🔐 Permission Modes and Secrets

  • Bypass mode lets a trusted autonomous CLI execute without approval prompts.
  • Interactive mode asks for approval on protected operations and supports remembered file/command patterns. Claude uses Tide's hook-based approval bridge; other harness behavior follows the capabilities of their CLI runtime.
  • Plugin command sudo always requires a short-lived user authorization flow. Passwords are not persisted, logged, put in command arguments/environment variables, or exposed to agents.
  • Secrets are encrypted in the server store and referenced as {{SECRET_NAME}}; the real value is injected server-side instead of being saved in agent prompts.

⚙️ Configuration

The most common environment variables are:

Variable Default Description
PORT 6200 Backend and production web-app port
HOST 127.0.0.1 Backend bind host
VITE_PORT 5173 Development frontend port
LISTEN_ALL_INTERFACES unset Set to 1 to bind 0.0.0.0
AUTH_TOKEN unset HTTP and WebSocket authentication token
HTTPS unset Set to 1 to replace HTTP with HTTPS/WSS
HTTPS_PORT unset Add an HTTPS/WSS listener alongside PORT
TLS_KEY_PATH ~/.tide-commander/certs/localhost-key.pem Backend TLS private key
TLS_CERT_PATH ~/.tide-commander/certs/localhost.pem Backend TLS certificate
DEV_HTTPS unset Enable HTTPS for Vite development
DEV_TLS_KEY_PATH unset Vite TLS private key
DEV_TLS_CERT_PATH unset Vite TLS certificate
CODEX_BINARY auto Override the Codex executable path

See .env.example for the maintained template.

Data storage

Tide Commander stores application state under the XDG data directory, normally ~/.local/share/tide-commander/. This includes agents, areas, buildings, skills, classes, secrets, session history, workflows, triggers, plugin state, command definitions, and the SQLite integration/monitoring event store. Runtime-only process state is also persisted there for recovery.

Provider conversations remain in each CLI's native session store. Tide references and reads those sessions rather than replacing the provider's own history format. Custom 3D models are stored under ~/.tide-commander/custom-models/.

🧑‍💻 Development

# Install dependencies
bun install

# Start Vite (5173) and the API server (6200)
bun run dev

# Individual processes
bun run dev:client
bun run dev:server

# Quality checks
bun run lint:types
bun run lint
bun run test

# Production build
bun run build

🐳 Docker

docker build -t tide-commander .
docker run -p 6200:6200 \
  -v ~/.local/share/tide-commander:/root/.local/share/tide-commander \
  tide-commander

At least one supported AI agent CLI and its credentials must also be available inside the container for agents to run. See the Docker guide for host CLI mounts and deployment details.

📱 Android APK

Prerequisites: Android SDK and Java 17+.

make apk
make apk-release
make dev-apk CAP_SERVER_URL=http://192.168.1.100:5173

The debug APK is written to android/app/build/outputs/apk/debug/app-debug.apk. For a normal APK, leave CAP_SERVER_URL unset and configure the Commander server URL in the app. Remote Android connections require the server to listen beyond localhost; HTTPS is strongly recommended.

📚 Documentation

Topic Guide
Architecture Runtime and server architecture
Buildings Servers, Docker, databases, tests, HTTP requests, and more
Views 3D, 2D, Dashboard, Commander, Guake, and UI navigation
Custom classes Custom classes, GLB models, and animation mapping
Skills Built-in/custom skills, permissions, assignment, and hot reload
Plugins Trusted local plugins, slash commands, renderers, sidebars, and actions
Secrets Encrypted values and prompt placeholders
Browser bridge Browser control and integration
Headless CAD FreeCAD jobs and generated previews
Bitbucket review Automated pull-request review triggers
Android Build and configure the Android app
Docker Container deployment
REST API OpenAPI 3.1 specification
WebSocket API AsyncAPI 2.6 specification
Releases Full changelog
Contributing Contributor guide
Security Security policy

🐛 Troubleshooting

A harness is not detected

  • Run which claude, which codex, which opencode, which grok, or which pi as appropriate.
  • Authenticate the CLI outside Tide Commander once before spawning an agent.
  • Pi validates that pi is the coding agent rather than the unrelated Anaconda utility with the same command name.

An agent is stuck in “working”

  • Open its background-task rail and server logs to check for a live child process.
  • Use the terminal interrupt/stop action before killing the agent.
  • Persistent Codex, OpenCode, and Pi modes may reconnect to a still-running detached turn after a server restart.

The web app cannot connect

  • The production default is http://localhost:6200; development uses http://localhost:5173 for Vite and proxies to port 6200.
  • Verify tide-commander status, then inspect tide-commander logs.
  • For remote clients, verify bind host, firewall, URL scheme, certificate, and auth token.

Ready to command the team?

npx tide-commander@latest

Try the live demo  ·  Watch it in action  ·  Star the project

💬 Community

Discord

Found a bug or have a feature idea? Open a GitHub issue or join the Discord community. If Tide Commander improves your workflow, a GitHub star helps more creators find it.

📄 License

MIT

SIMILAR PLUGINS