CLI-Manager
Health Gecti
- License — License: AGPL-3.0
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 560 GitHub stars
Code Uyari
- process.env — Environment variable access in .github/scripts/build-ssh-agent-release.mjs
- process.env — Environment variable access in .github/scripts/r2-release-config.mjs
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
A multi-project AI CLI workspace for local terminals, SSH hosts, and mobile-assisted workflows
CLI-Manager
Language: English | 简体中文
🚀 Cross-platform AI CLI workspace
A multi-project AI CLI workspace for local terminals, SSH hosts, and mobile-assisted workflows
Features • Comparison • Preview • Quick Start • Tech Stack • Community
💡 Overview
CLI-Manager is a desktop app focused on AI CLI workflow enhancement. It combines local and SSH terminals, multi-project management, deep Claude Code / Codex integration, multi-source history, Git Worktree isolation, and mobile-assisted conversations.
Platform support: Windows (fully tested) | macOS / Linux (experimental, feedback welcome)
🎯 Why CLI-Manager?
When developing across multiple projects, you may run into these problems:
- ❌ You must keep watching the terminal while Claude / Codex runs, and one missed approval request can block the task
- ❌ You want to review what code changed in a previous session, but Claude history has no Diff view
- ❌ You do not know how many tokens you used this month or which project costs the most
- ❌ You switch terminals across many projects and repeatedly type the same commands
- ❌ You want different Claude backends for different projects (official / proxy / self-hosted), but have to edit environment variables manually
CLI-Manager provides:
✅ Real-time hook notifications - desktop alerts when Claude needs approval, click to jump back
✅ Live session statistics - token usage, cost, and tool calls for each terminal session
✅ Historical Diff review - review code changes across sessions and jump back to the triggering message
✅ Usage analytics dashboard - heatmaps, trends, efficiency scatter charts, and more
✅ SSH remote development - launch and manage remote AI CLI terminals without leaving the workspace
✅ cc-connect phone conversations - continue Claude Code / Codex sessions from Telegram or Feishu
✅ Multi-source session history - parse and search histories from 11 AI CLI / coding-agent sources
✅ Mature Worktree isolation - isolate, commit, merge, and clean up parallel tasks through a guided workflow
✅ Durable background tasks - keep terminal jobs running and attach again after reopening the app
✅ Desktop pets - visualize session status and jump back to active tasks from a floating companion
✅ Project-level provider switching - switch Claude backend per project without editing config manually
✅ Flexible split layout - free terminal splits plus tab dragging across panes
✅ Command palette and templates - launch projects or run common commands quickly with Ctrl+P
✨ Core Features
🔥 Deep Claude Code / Codex CLI Integration
🔔 Real-time Hook Notifications
|
📊 Live Session Statistics
|
Hook notification popup + live tab status sync |
Live terminal statistics: tokens / cost / Git branch |
📜 Unified Session History
🗂️ Session Browsing
|
🔍 Diff Review
|
Session history list + in-session search and Diff review
Session Source Capability Matrix
✅ Full support · 👁️ Read-only support · — Not supported · DB Database-backed source without a standalone raw session file
| Source | Browse | Search | Statistics | Raw source | Diff / changes | Resume | Edit / delete | Convert | Live stats |
|---|---|---|---|---|---|---|---|---|---|
| Claude Code | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Codex CLI | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Gemini CLI | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| GitHub Copilot CLI | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| Antigravity | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| Grok Build | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| Pi | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| OpenCode | 👁️ | 👁️ | 👁️ | DB | — | — | — | — | — |
| Kiro | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| Cursor | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
| Cline | 👁️ | 👁️ | 👁️ | 👁️ | — | — | — | — | — |
Statistics depend on the fields exposed by each source. Claude Code and Codex CLI provide the deepest integration, including Hook-driven live status, file-change Diff, message editing with audit / rollback, resume, and two-way session conversion.
📈 Multi-dimensional Usage Analytics
Data Insights
- Token composition analysis - input / output / cache creation / cache read breakdown
- Cost estimation - automatic pricing for Claude, GPT, and o-series models
- Project ranking - click a project name to filter by project
- Activity heatmap - 7 / 30 / 90 day ranges, click a date to inspect sessions from that day
- Token trend chart - session / message / token trends with hover details
- Efficiency scatter chart - project efficiency analysis (token usage vs session count)
- 24-hour activity distribution - understand your most active hours
Analytics dashboard: heatmap / token trend / efficiency scatter / project ranking |
Token composition pie chart / model share / active hour distribution |
🔄 cc-switch Provider Integration
Project-level Backend Switching
- Provider management - read-only parsing of the cc-switch database, grouped by
app_type - Project-level switching - right-click project -> switch provider -> automatically writes
.claude/settings.json - Global default / project override - choose either global default or project-level override
- Provider badges - projects with overridden providers display dedicated badges in the project tree
Use cases:
- Use the official API for project A
- Use a proxy backend for project B
- Use a self-hosted backend for project C
- Switch with one click instead of editing environment variables manually
Provider list and details |
Project context menu: switch provider with one click |
🌐 SSH Remote Development
- SSH host management - SSH Config, Agent, private key, password / keyboard-interactive authentication, jump hosts, and ProxyCommand
- Proxy and diagnostics - built-in HTTP CONNECT / SOCKS5 proxy helper, connection tests, host-key confirmation, and detailed diagnostic logs
- Remote project workflow - browse remote directories, configure remote startup commands and environment variables, and launch AI CLI sessions directly in the target path
- Workspace integration - remote terminals support tabs, splits, Workspan, background execution, and daemon-backed recovery
- Remote Agent and Hook - explicitly install or upgrade the signed
cli-manager-ssh-agent, configure Claude/Codex roots per host or project, preview Hook changes, and install or remove only CLI-Manager-owned entries - Reliable live status - SSH sessions with a validated installed Hook reuse daemon-owned protocol 1.7 Agent bridges with bounded handshake/response timeouts, heartbeat, reconnect gates, and a streaming Host/client-isolated spool
- Remote history - browse scoped Claude Code and Codex sessions from the existing history workspace, with incremental list/search, on-demand detail and Diff, usage summaries, pagination, and explicit stale/offline cache state
- Remote resume - preflight the original session, Host identity, config root, and cwd through the Agent, then continue it in a new interactive SSH terminal or jump to the existing Tab
- Remote files and Git - browse a confined read-only file tree, search names or text, preview text and images, and use the full Git panel through the SSH Agent without passing remote paths to local filesystem or Git APIs
- Credential safety - passwords use the operating system credential store; sync and export never include passwords, credentials, or private-key paths
Remote Hook status, read-only remote history/resume, file and Git panels, realtime Tab stats, and catalog-backed usage analytics are available for Claude Code and Codex. Remote file/Git writes, local Explorer/Finder actions, Worktree tools, external terminal launch, and remote resource monitoring are not available. SSH projects never scan or switch remote providers.
SSH host management, authentication, proxy, and connection diagnostics
📱 Mobile Conversations with cc-connect
- Chat from your phone - use Telegram or Feishu to start independent Claude Code / Codex conversations on the desktop host
- Project-scoped access - explicitly select the project exposed to remote conversations and restrict access with a fail-closed user-ID allowlist
- Managed runtime - CLI-Manager verifies the supported cc-connect binary checksum, generates an isolated configuration, supervises the process, and can start it with the app
- Secure credentials - bot tokens and app secrets are stored in Windows Credential Manager instead of generated config files
- Claude and Codex support - Claude uses its permission modes; Codex uses the app-server stdio approval channel, with YOLO mode available only through an explicit warning and confirmation
- History convergence - remote conversations create native CLI histories and flow back into CLI-Manager's unified session workspace
The current cc-connect integration runs on a Windows desktop host and supervises one project plus one messaging platform at a time. Telegram and Feishu are supported.
![]() Project / Agent selection, allowlist, credentials, and process status |
![]() Claude Code / Codex conversation from Telegram or Feishu |
💻 Terminal and Splits
🖥️ Built-in Terminal
|
📐 Flexible Splits
|
Flexible split layout + dragging tabs across panes
Durable Workspaces and Background Tasks
- Workspan workspaces - group multiple terminals and nested panes into a persistent top-level workspace
- Daemon-backed sessions - keep CLI tasks running after the main window exits, then attach without restarting the command
- Ordered replay and recovery - restore terminal output, tab metadata, split layout, and live output in order after reconnecting
- Background task center - inspect, restore, discard, or clean up tasks that continue outside the main window
⚡ Command Reuse and Shortcuts
🎯 Command Palette
- Global
Ctrl+Ppalette - fuzzy search and keyboard navigation - Quick project launch - start a project terminal directly from the palette
- Run command templates - execute common commands with one click
📝 Command Templates
- Three scopes - global / project / session-level templates
- Variable substitution -
${projectPath}/${projectName} - Command suggestions - combine templates, existing local history, built-in AI CLI commands, and path completion without automatically executing the candidate
Command palette: fuzzy search + quick launch |
Command templates: three scopes + variable substitution |
🗂️ Project Management
- Project groups - nested groups / drag sorting / collapse and expand
- Project config - dedicated path / shell / startup command / environment variables
- Health checks - automatically detects invalid paths
- Context menu - open directory / switch provider / launch terminal
- Git integration - automatically detects project Git branch
- Built-in file and Git tools - file browsing / editing, Git status and Diff, hunk rollback, and sub-repository visibility
- Mature Worktree isolation - prompt, auto-isolate parallel tasks, or always isolate into dedicated directories and
wt/<task-name>branches - Finish-task workflow - review and commit changes, merge into the main workspace, abort safely on conflicts, then clean up the Worktree and branch
☁️ WebDAV Cloud Sync
- Versioned backups - immutable snapshots instead of a single overwrite-only backup
- Selective restore - restore individual data domains, create a safety snapshot first, and undo the most recent restore
- Multi-device retention - independent device snapshots with automatic retention of recent versions
- Offline retry - failed uploads stay in an outbox and retry on a later launch
- Local import and export - ZIP backup support with the same restore workflow
🎨 Personalization and Themes
- App themes - multiple built-in themes and customization
- Terminal themes - Tokyo Night / Dracula / Monokai / Nord / Solarized, etc.
- Font customization - UI font / terminal font / size / font color
- Shortcut configuration - all shortcuts are customizable
- Compact mode - compact UI plus external terminal by default
- Desktop pets - floating status companion, task list and session jump-back, size / position / always-on-top controls,
.clipetpackages, and Codex Pets compatibility
Desktop pet, task list, pet gallery, and `.clipet` package management
🧭 Product Positioning and Comparison
CLI-Manager is positioned as a durable AI CLI workspace: it connects local and SSH terminals, multi-agent execution, long-term session history, Git Worktree isolation, analytics, provider configuration, background tasks, and phone conversations into one product.
The comparison below is based on the public positioning of Orca and cmux as of 2026-07-05. Planned CLI-Manager capabilities are explicitly marked as planned.
| Area | CLI-Manager | Orca | cmux |
|---|---|---|---|
| Primary focus | Long-running AI CLI workspace across projects, local / SSH terminals, history, analytics, and configuration | Multi-agent orchestration and result comparison in isolated worktrees | Native macOS terminal workspace for agent panes, notifications, and programmable surfaces |
| Desktop platforms | Windows fully tested; macOS / Linux experimental | macOS / Windows / Linux | macOS |
| Remote workflows | Built-in SSH projects / terminals plus cc-connect phone conversations through Telegram or Feishu | SSH-oriented worktree workflows and remote orchestration | SSH / tmux through a composable terminal workflow |
| Session history | 11 parsed sources with unified browse, search, filtering, tags, favorites, and statistics | Usage, account, notification, and AI Diff-oriented features | Session restore, notification panel, and workspace metadata |
| Deep history operations | Claude / Codex Diff, file changes, message edit / delete, audit rollback, resume, and two-way conversion | Not the primary focus of its public positioning | Not the primary focus of its public positioning |
| Git Worktree lifecycle | Mature project-level isolation: prompt / automatic strategies, dedicated branches, dependency setup, history, commit, merge, conflict abort, and cleanup | Core parallel-agent orchestration model | External / composable Git workflow rather than a guided task lifecycle |
| Agent visualization | Automatic sub-agent splits with session association and live status | Parallel agents, isolated attempts, comparison, and merge workflow | Native panes / splits for agents and related tools |
| Analytics and configuration | Token / cost / model / project analytics, cc-switch provider integration, versioned WebDAV backups | Usage and rate-limit tracking plus account switching | Ghostty configuration, CLI / socket APIs, hooks, and OSC integration |
| Mobile and web | cc-connect phone conversations available now; dedicated Web and mobile clients are in planning | Includes a mobile companion in its public product positioning | macOS desktop focus |
| Personalization | App / terminal themes, custom backgrounds, status-line tools, and desktop pets | Product-specific UI and orchestration views | Native terminal theming and Ghostty compatibility |
How to choose:
- Choose CLI-Manager for a persistent daily workspace around Claude Code, Codex, and other AI CLI histories, especially when you need SSH, Worktree task isolation, deep history operations, analytics, provider management, and phone access.
- Choose Orca when the central workflow is dispatching the same task to multiple isolated agents, comparing their results, and merging the preferred output.
- Choose cmux when the priority is a native high-performance macOS terminal with programmable panes, notifications, and terminal / browser surfaces.
🌍 Multi-surface Roadmap
| Surface | Status | Role |
|---|---|---|
| Desktop app | ✅ Available | Full terminal, project, history, Git, analytics, SSH, and background-task workspace |
| Phone conversations | ✅ Available through cc-connect | Talk to Claude Code / Codex from Telegram or Feishu while the desktop host supervises the session |
| Web client | 🧭 Planning | Browser-based access to CLI-Manager workflows; scope and release schedule are not yet committed |
| Dedicated mobile client | 🧭 Planning | A first-party mobile companion beyond messaging-platform conversations; scope and release schedule are not yet committed |
🤖 Agent Parallelism
CLI-Manager provides two mature parallel-work paths: automatic sub-agent visualization inside the terminal workspace, and project-level Git Worktree isolation for independent tasks.
🤖 Automatic Sub-agent Splitting
- Smart splits - automatically creates split terminals when Claude Code dispatches sub-agents
- Session association - each sub-agent gets an independent terminal with live status sync
- Layout optimization - automatically adjusts split layout based on agent count
🌿 Mature Git Worktree Task Isolation
- Flexible isolation strategies - keep normal opening as the default, prompt when a parallel CLI task exists, auto-isolate parallel sessions, or always create a Worktree
- Dedicated directory and branch - each task uses an independent Worktree directory and
wt/<task-name>branch - Integrated project context - file browsing, Git status, history, live statistics, provider overrides, and terminal focus follow the active Worktree
- Dependency setup - optionally detect missing dependencies and open a dedicated installation terminal
- Finish-task wizard - review and commit changes, merge into the main workspace, abort safely on conflicts, and clean up the Worktree / branch
- Safety guards - block merges into a dirty main workspace, skip no-diff merges, handle stale / damaged Worktrees, and retry cleanup around Windows file locks
📸 Preview
Main interface - terminal workspace
🛠️ Tech Stack
Frontend
- Framework: React 19 + TypeScript 5.8
- Build tool: Vite 7
- State management: Zustand
- Styling: Tailwind CSS 4
- Terminal: xterm.js + FitAddon + WebglAddon
- UI components: Radix UI, Mantine Core
- Charts: ECharts
- Drag and drop: @dnd-kit
- Diff rendering: react-diff-view
Backend
- Runtime: Tauri 2.x
- Language: Rust
- Database: SQLite (tauri-plugin-sql)
- Storage: tauri-plugin-store
- PTY: Rust PTY session management
- Cloud sync: WebDAV adapter layer
Core Capabilities
- Cross-platform desktop app (Windows / macOS / Linux, based on Tauri 2)
- Multi-shell support (Windows: PowerShell / CMD / Pwsh / WSL / Git Bash; macOS / Linux: Bash / Zsh, etc.)
- PTY session management and status broadcasting
- Daemon-backed background tasks, ordered replay, attach, and workspace recovery
- Claude Code / Codex Hook Bridge (127.0.0.1 loopback + bearer token validation)
- Automatic sub-agent splitting (cmux-like, creates split terminals when Claude Code dispatches sub-agents)
- Mature Git Worktree task isolation and commit / merge / cleanup workflow
- Multi-source history parsing (Claude Code, Codex CLI, Gemini CLI, GitHub Copilot CLI, Antigravity, Grok Build, Pi, OpenCode, Kiro, Cursor, and Cline)
- Deep Claude / Codex history workflows (Diff, edit, resume, conversion, and analytics)
- SSH remote projects and terminals (OpenSSH launch plans, proxy support, diagnostics, remote directory browsing, and signed Linux Agent lifecycle management)
- cc-connect mobile conversations (Telegram / Feishu with Claude Code or Codex)
- Desktop pets (
.clipetpackages and Codex Pets compatibility) - Read-only cc-switch provider database parsing
- WebDAV cloud sync and conflict handling
- Git integration (branch detection / project path health checks)
🚀 Quick Start
Option 1: Download a Release
Go to the Releases page and download the latest version.
Windows builds are the primary release artifact at the moment. macOS / Linux users are recommended to build from source.
SSH Remote Agent
For a configured SSH Host, open Settings -> SSH Hosts -> CLI Integration to explicitly preview and install, upgrade, roll back, or uninstall cli-manager-ssh-agent. The first supported remote targets are Linux x86_64 and aarch64. Opening the page never connects automatically, and Agent lifecycle operations never install or modify Claude/Codex Hooks.
After the Agent is installed and detected, use the Claude or Codex card on the same page to inspect the configured root, preview the exact files and fingerprints, and explicitly confirm Hook installation or removal. Each SSH Host and project override keeps its own config-root identity; the default roots are $HOME/.claude and $HOME/.codex.
The reusable bridge requires Agent protocol 1.1 or newer. An older healthy Agent remains available for explicit upgrade, but is shown as incompatible until it provides heartbeat, cancellation, and bounded-backpressure capabilities.
The same signed release artifacts can be installed from a reviewed POSIX script:
curl -fL -o install-ssh-agent.sh https://github.com/dark-hxx/CLI-Manager/releases/latest/download/install-ssh-agent.sh
less install-ssh-agent.sh
sh install-ssh-agent.sh
The script requires curl, minisign, and either jq or python3. It verifies the signed manifest, target, artifact size, and SHA-256 before execution. Use --install-dir for a custom root; HTTP mirrors require the explicit --allow-http option and still must pass the built-in public-key verification.
Option 2: Run from Source
Prerequisites
- Node.js >= 20
- Rust >= 1.70
- Operating system: Windows 10/11 | macOS | Linux
Install Dependencies
npm install
Start Development Mode
npm run tauri dev
Build a Release
npm run tauri build
Other Useful Commands
# TypeScript type check
npx tsc --noEmit
# Rust check
cd src-tauri && cargo check
# Rust tests
cd src-tauri && cargo test
🎯 Use Cases
- ✅ Developers who use Claude Code / Codex CLI heavily
- ✅ Users who need real-time token usage and cost monitoring
- ✅ Users who want to review historical session code changes
- ✅ Users who need one searchable history workspace across multiple AI CLI tools
- ✅ Developers who run AI CLI tasks on remote SSH hosts
- ✅ Developers who want to continue Claude Code / Codex conversations from a phone
- ✅ Teams running parallel tasks that need mature Git Worktree isolation and merge cleanup
- ✅ Users who need long-running CLI tasks to survive window or app restarts
- ✅ Users who want a lightweight visual companion for task and session status
- ✅ Multi-project development workflows with frequent terminal switching
- ✅ Users who manage multiple Claude backends with cc-switch
- ✅ Users who need to sync development configuration across devices
📋 Feature Quick Reference
Project Management- Project groups / search / drag sorting
- Project configuration (path / shell / startup command / environment variables)
- Path health checks
- Automatic Git branch detection
- Context menu (open directory / switch provider)
- Built-in file browser / editor and Git Diff tools
- Git Worktree isolation strategies and finish-task workflow
- Built-in PTY terminal (xterm.js)
- Tab management (drag sorting / overflow scrolling / duplicate configuration)
- Flexible splits (Split Right / Split Down / mixed nested splits)
- Drag tabs across panes
- Persistent Workspan workspaces
- Daemon-backed background tasks and session recovery
- Terminal search (
Ctrl+F) - Custom background (image / opacity / blur)
- Chinese IME support
- Real-time hook notifications (approval / completed / failed)
- Tab status dots (running / waiting approval / completed / failed)
- Live session statistics (tokens / cost / tool calls / Git branch)
- Multi-source history parsing (11 supported sources)
- Unified filtering / search / tags / favorites
- Diff review (Unified Diff / Codex Patch)
- Claude / Codex message editing, resume, and conversion
- Prompt Library
- SSH host groups and host management
- SSH Config / Agent / private key / password authentication
- Jump hosts / ProxyCommand / HTTP CONNECT / SOCKS5
- Connection diagnostics and host-key confirmation
- Remote directory browsing and startup commands
- Remote tabs / splits / Workspan / background recovery
- Signed
cli-manager-ssh-agentinstall / upgrade / rollback / uninstall - Per-host and per-project Claude/Codex config roots plus previewed remote Hook lifecycle
- Bound Hook events, live tab status, offline spool replay, and gap warnings
- Telegram / Feishu phone conversations
- Claude Code / Codex Agent selection
- Project-scoped access and user-ID allowlist
- Verified cc-connect binary and managed process lifecycle
- Windows Credential Manager for platform credentials
- Native history convergence into CLI-Manager
- Multi-dimensional analytics dashboard
- Token composition analysis (input / output / cache)
- Cost estimation
- Interactive project ranking
- Activity heatmap (7 / 30 / 90 days)
- Token trend chart
- Efficiency scatter chart
- 24-hour activity distribution
- Read-only provider database parsing
- Grouped by
app_type - Project-level provider switching
- Automatically writes
.claude/settings.json - Global default / project override
- Command palette (
Ctrl+P) - Command templates (global / project / session-level)
- Inline command suggestions (templates / existing local history / AI CLI commands / paths)
- Variable substitution (
${projectPath}/${projectName})
- Versioned WebDAV snapshots
- Selective data-domain restore
- Safety snapshot and one-step undo
- Per-device retention and offline outbox retry
- Local import and export (ZIP)
- App themes / terminal themes
- Font customization (UI / terminal / size / color)
- Shortcut configuration
- Compact mode
- Desktop pets /
.clipetpackages / Codex Pets - Custom terminal background
🔑 Default Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+P |
Open command palette |
Ctrl+K |
Open session history |
Ctrl+Shift+T |
New terminal |
Ctrl+W |
Close current terminal |
Alt+ArrowRight |
Next tab |
Alt+ArrowLeft |
Previous tab |
F11 |
Terminal fullscreen |
Ctrl+F |
Terminal search / in-session search |
💡 All shortcuts can be customized in Settings - Shortcuts.
💬 Community
Author's personal WeChat QR code. Please add the note cli-manager when adding the author.
🎉 Acknowledgements
This project was promoted in the LINUX DO community. Thanks to the LINUX DO community for supporting and recognizing open-source projects.
📄 License
CLI-Manager is dual-licensed:
- Open source: AGPL-3.0-or-later. Companies and individuals may use, study, modify, distribute, and provide network access to CLI-Manager under the AGPL terms.
- Commercial: Proprietary integration, closed-source modifications, internal productization where AGPL obligations are not acceptable, commercial redistribution, or hosted/managed offerings under proprietary terms require a separate commercial license. See COMMERCIAL-LICENSE.md.
Copyright (c) 2026 Chenyme. See NOTICE.
Ordinary use of the unmodified application does not require a commercial license. Open-source use that complies with AGPL-3.0-or-later does not require a commercial license.
⭐ Star History
⭐ If this project helps you, a Star is appreciated.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi

