Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

sidekick-agent-hub

Package Overview
Dependencies
Maintainers
1
Versions
40
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sidekick-agent-hub

Terminal dashboard for monitoring AI coding agent sessions

latest
Source
npmnpm
Version
0.18.4
Version published
Maintainers
1
Created
Source

Sidekick CLI

Full-screen terminal dashboard for monitoring AI agent sessions — standalone, no VS Code required.

Sidekick CLI Dashboard

Sidekick CLI reads from ~/.config/sidekick/ — the same data files the VS Code extension writes. Browse sessions, tasks, decisions, knowledge notes, mind maps, and more in an interactive terminal UI.

Installation

Note: The npm package is sidekick-agent-hub, but the binary it installs is called sidekick.

npm install -g sidekick-agent-hub

Requires Node.js 20+.

Quick Start

  • cd into your project directory
  • Run sidekick dashboard
  • The dashboard auto-detects your project and session provider
  • Press ? to see all keybindings

OpenCode note: OpenCode session monitoring reads opencode.db and currently expects an executable sqlite3 runtime in the host environment.

OpenCode session data lives in OpenCode's platform-specific data directory:

  • Linux: ~/.local/share/opencode/
  • macOS: ~/Library/Application Support/opencode/
  • Windows: %APPDATA%\\opencode\\

If sqlite3 is missing or not executable in the current shell environment, Sidekick prints an actionable OpenCode-specific notice instead of silently failing session detection.

Usage

sidekick dashboard [options]
sidekick tasks|decisions|notes|stats|quota|status|account|handoff|search|context [options]

The standalone commands open the dashboard directly to a specific panel or run a one-shot query. All accept --project and --provider flags.

FlagDescription
--project <path>Override project path (default: current working directory)
--provider <id>Session provider: claude-code, opencode, codex, or auto (default)
--session <id>Follow a specific session by ID
--replayReplay existing events from the beginning before streaming live

Session Dump

sidekick dump [options]

Export session data as text, markdown, or JSON.

FlagDescription
--format <fmt>Output format: text (default), json, or markdown
--width <cols>Terminal width for text output (default: auto-detect)
--expandShow all events including noise
--session <id>Target a specific session (default: most recent)
--listList available sessions and exit

Global flags --project and --provider also apply.

HTML Report

sidekick report [options]

Generate a self-contained HTML session report and open it in the default browser. Includes full transcript, token/cost stats, model breakdown, and tool-use summary.

FlagDescription
--session <id>Target a specific session (default: most recent)
--output <path>Write to a specific file (default: temp file)
--theme <theme>Color theme: dark (default) or light
--no-openWrite the file without opening the browser
--no-thinkingOmit thinking blocks from the transcript

Global flags --project and --provider also apply.

You can also press r in the TUI dashboard to generate a report for the current session.

API Status

sidekick status

Check API health for both Claude (status.claude.com) and OpenAI (status.openai.com). Shows indicators with color coding (green/yellow/red), affected components, and active incident details. Use --json for machine-readable output. In the dashboard, provider-status surfaces are scoped to the monitored provider: Claude for Claude Code sessions, OpenAI for Codex sessions, and hidden for OpenCode.

When the active provider is claude-code, the output also includes a Claude Peak Hours block (see below).

Peak Hours

sidekick peak

Show whether Claude is currently in peak hours (weekdays 13:00–19:00 UTC — when session limits drain faster on Free/Pro/Max/Team subscriptions). Data comes from the public promoclock.co/api/status endpoint (third-party, unaffiliated with Anthropic). Use --json for machine-readable output. The peak-hours summary also appears under the bars in sidekick quota for Claude subscriptions.

Quota & Rate Limits

sidekick quota

Provider-aware quota and rate-limit display. The command auto-detects the active provider:

  • Claude Code: Shows Claude Max subscription quota — 5-hour and 7-day windows with color-coded progress bars, projections, and reset countdowns. Includes a peak-hours summary line.
  • Codex: Shows rate limits from Codex token_count.rate_limits events — primary and secondary windows with progress bars and reset countdowns. The default path is local-only: current workspace rollout, recent account-level rollouts, then the active account's cached snapshot. Add --refresh to explicitly refresh from Codex's usage API before falling back to local data.
  • OpenCode: Prints an informational message (no rate-limit data available).
Subscription Quota
──────────────────────────────────────────────────
  5-Hour   ████████████░░░░░░░░░░░░░░░░░░ 40%   resets in 2h 15m
  7-Day    ██████████████████████░░░░░░░░ 72%   resets in 4d 6h

When quota data is unavailable, sidekick quota shows structured auth, rate-limit, network, server, or unexpected-failure messaging instead of a generic raw error. The dashboard Sessions panel also keeps a compact inline quota/rate-limit state visible instead of hiding the section entirely.

Use --json for machine-readable output. Use --provider codex to explicitly check Codex rate limits, and --refresh to opt in to a Codex usage API refresh. Claude Code requires active credentials (read from the system Keychain on macOS, or ~/.claude/.credentials.json on Linux/Windows). JSON output includes failureKind, httpStatus, and retryAfterMs on unavailable responses.

When multi-account is enabled, sidekick quota shows the active account email above the quota bars.

Quota History

sidekick quota history

Renders a 13-week, GitHub-contributions-style heatmap of quota utilization for the current workspace. Each cell is one day; brightness encodes the peak utilization observed (· ░ ▒ ▓ █ → ≤0% / <25% / <50% / <75% / ≥75%). Days that hit available: false render as a red ×.

Claude  ·  13 weeks  ·  41 day(s) with samples
Sun ·░▒▒▓█░░░ ·░░·· ·▒▒
Mon ··▒▒▓█▒░· ·░░·· ·▒▓
…
Peak 92%  ·  Avg 38%  ·  Samples 612

Flags: --weeks <n> (1-26, default 13), --provider claude|codex (default both, stacked), --workspace <path> (default cwd). --json emits a { workspaceId, weeks, providers: { claude?, codex? }, generatedAt } payload — the same shape consumed by the VS Code dashboard's Quota History panel.

History is stored at ~/.config/sidekick/quota-history/<workspaceId>/<provider>.jsonl (mode 0600, 60-second debounce, 91-day retention). The workspace id is sha256(realpath)[0..16], so the same folder yields the same store whether sampled from the CLI or VS Code.

Account Management

sidekick account [options]

Manage accounts across providers — save, list, switch, and remove without manual login/logout cycles. Supports Claude Code and Codex profiles. Account data is stored in ~/.config/sidekick/accounts/ with strict file permissions and atomic writes with rollback on failure.

On first CLI startup, Sidekick auto-registers the active system Claude Code and Codex credentials as a "Default" account (when no saved account exists for that provider yet). Existing manually saved accounts are never overwritten — the flags below are only needed to add additional accounts or switch between them.

FlagDescription
--provider <id>Provider: claude-code (default) or codex
--addSave the currently signed-in account
--label <name>Label for the account (use with --add; required for Codex)
--switchSwitch to the next saved account
--switch-to <id>Switch to a specific account by email, label, or ID
--remove <id>Remove a saved account by email, label, or ID

With no flags, lists all saved accounts and marks the active one. Use --json for machine-readable output.

Dashboard Panels

The dashboard is a two-pane terminal UI. The left side shows a navigable list, the right side shows details for the selected item.

#PanelDescription
1SessionsBrowse recent sessions with detail tabs: Summary, Timeline, Mind Map, Tools, Files, Agents, AI Summary
2TasksView persisted tasks filtered by status
3KanbanTask board with status columns
4NotesKnowledge notes attached to files
5DecisionsArchitectural decisions from sessions
6PlansDiscovered agent plans from ~/.claude/plans/
7EventsLive event stream with type badges, timestamps, and keyword-highlighted summaries
8ChartsTool frequency bars, event distribution, activity heatmap, and pattern analysis

Layout Modes

Press z to cycle through layout modes:

ModeDescription
NormalDefault two-pane split
ExpandedSide list hidden, detail pane fills the screen
Wide SideWider side list for longer item labels

Keybindings

Navigation

KeyAction
18Switch panel
TabToggle focus between side list and detail pane
j / Next item (side) or scroll down (detail)
k / Previous item (side) or scroll up (detail)
gJump to first item / scroll to top
GJump to last item / scroll to bottom
h / Return focus to side list (from detail)
EnterMove focus to detail pane (from side list)

Detail Tabs

KeyAction
[Previous detail tab
]Next detail tab

Session Management

KeyAction
pPin session (prevent auto-switching to newest)
sSwitch to pending session
fToggle session filter

Session Panel — Mind Map Tab

KeyAction
vCycle mind map view: tree → boxed → flow
fCycle node filter: all → file → tool → task → subagent → command → plan → knowledge-note

Session Panel — AI Summary Tab

KeyAction
nGenerate / retry AI narrative

General

KeyAction
zCycle layout mode
/Open filter overlay (supports substring, fuzzy, regex, and date modes — Tab cycles modes)
xOpen context menu for selected item
?Show help
rGenerate HTML report for the current session
VShow version / changelog
q / Ctrl+CQuit

Mouse Support

The dashboard supports mouse input in terminals with SGR 1006 extended mouse encoding:

  • Click side list items to select them
  • Click panel tabs or detail tabs to switch
  • Scroll wheel in either pane to navigate
  • Click anywhere to dismiss overlays

Multi-Provider Support

Auto-detects the most recently active session provider:

  • Claude Code~/.claude/projects/
  • OpenCode — OpenCode's data directory: Linux ~/.local/share/opencode/, macOS ~/Library/Application Support/opencode/, Windows %APPDATA%\\opencode\\
  • Codex~/.codex/

Override with --provider claude-code, --provider opencode, or --provider codex.

See Also

sidekick-shared — the shared data access library used by this CLI. Published as a standalone npm package for building custom tools on Sidekick session data — types, parsers, providers, event aggregation, model pricing, and more. Install with npm install sidekick-shared.

Sidekick Docker — the same TUI dashboard experience for Docker management. Monitor containers, Compose projects, images, and volumes from a keyboard-driven terminal. Install with npm install -g sidekick-docker.

Documentation

Full documentation at cesarandreslopez.github.io/sidekick-agent-hub.

License

MIT

Keywords

cli

FAQs

Package last updated on 27 May 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts