Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Terminal session manager for AI coding agents. Use when user mentions "agent-deck", "session", "sub-agent", "MCP attach", or needs to (1) create/start/stop/restart/fork sessions, (2) attach/detach MCPs, (3) manage groups/profiles, (4) get session output, (5) configure agent-deck, (6) troubleshoot issues, or (7) launch sub-agents. Covers CLI commands, TUI shortcuts, config.toml options, and automation.
.claude/skills/majiayu000-agent-deck/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 34% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 106% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 220% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -6% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 100% | 0% |
Terminal session manager for AI coding agents. Built with Go + Bubble Tea.
Version: 0.8.14 | Repo: github.com/asheshgoplani/agent-deck
bash# Launch TUI agent-deck # Create and start a session agent-deck add -t "Project" -c claude /path/to/project agent-deck session start "Project" # Send message and get output agent-deck session send "Project" "Analyze this codebase" agent-deck session output "Project"
| Command | Purpose | |---------|---------| | agent-deck | Launch interactive TUI | | agent-deck add -t "Name" -c claude /path | Create session | | agent-deck session start/stop/restart <name> | Control session | | agent-deck session send <name> "message" | Send message | | agent-deck session output <name> | Get last response | | agent-deck session current [-q\|--json] | Auto-detect current session | | agent-deck session fork <name> | Fork Claude conversation | | agent-deck mcp list | List available MCPs | | agent-deck mcp attach <name> <mcp> | Attach MCP (then restart) | | agent-deck status | Quick status summary |
Status: ● running | ◐ waiting | ○ idle | ✕ error
Use when: User says "launch sub-agent", "create sub-agent", "spawn agent"
bashscripts/launch-subagent.sh "Title" "Prompt" [--mcp name] [--wait]
The script auto-detects current session/profile and creates a child session.
| Mode | Command | Use When | |------|---------|----------| | Fire & forget | (no --wait) | Default. Tell user: "Ask me to check when ready" | | On-demand | agent-deck session output "Title" | User asks to check | | Blocking | --wait flag | Need immediate result |
| Task Type | MCPs | |-----------|------| | Web research | exa, firecrawl | | Code documentation | context7 | | Complex reasoning | sequential-thinking |
| Key | Action | |-----|--------| | j/k or ↑/↓ | Move up/down | | h/l or ←/→ | Collapse/expand groups | | Enter | Attach to session |
| Key | Action | |-----|--------| | n | New session | | r/R | Restart (reloads MCPs) | | M | MCP Manager | | f/F | Fork Claude session | | d | Delete | | m | Move to group |
| Key | Action | |-----|--------| | / | Local search | | G | Global search (all Claude conversations) | | !@#$ | Filter by status (running/waiting/idle/error) |
| Key | Action | |-----|--------| | ? | Help overlay | | Ctrl+Q | Detach (keep tmux running) | | q | Quit |
Default: Do NOT attach MCPs unless user explicitly requests.
bash# List available agent-deck mcp list # Attach and restart agent-deck mcp attach <session> <mcp-name> agent-deck session restart <session> # Or attach on create agent-deck add -t "Task" -c claude --mcp exa /path
Scopes:
.mcp.json in project, affects only that session--global) - Claude config, affects all projectsFile: ~/.agent-deck/config.toml
toml[claude] config_dir = "~/.claude-work" # Custom Claude profile dangerous_mode = true # --dangerously-skip-permissions [logs] max_size_mb = 10 # Max before truncation max_lines = 10000 # Lines to keep [mcps.exa] command = "npx" args = ["-y", "exa-mcp-server"] env = { EXA_API_KEY = "key" } description = "Web search"
See config-reference.md for all options.
| Issue | Solution | |-------|----------| | Session shows error | agent-deck session start <name> | | MCPs not loading | agent-deck session restart <name> | | Flag not working | Put flags BEFORE arguments: -m "msg" name not name -m "msg" |
If something isn't working, create a GitHub issue with context:
bash# Gather debug info agent-deck version agent-deck status --json cat ~/.agent-deck/config.toml | grep -v "KEY\|TOKEN\|SECRET" # Sanitized config # Create issue at: # https://github.com/asheshgoplani/agent-deck/issues/new
Include:
tail -100 ~/.agent-deck/logs/agentdeck_<session>_*.logSee troubleshooting.md for detailed diagnostics.
session start -m "Hello" name (not name -m "Hello")session restart after mcp attachOther measured skills in the registry, with their headline benchmark lift.