Skip to content

lionelresnik/cursor-command-center

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

38 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Cursor Command Center

Your AI-Powered Multi-Repo Development Hub

A central hub for managing AI-assisted development across multiple repositories with Cursor.

Made for Cursor MIT License

Cursor-Command-Center.mp4


✨ What It Does

Feature Description
πŸ€– @lu AI Assistant Full-featured AI assistant with todos, standups, personalization, task tracking
πŸ” Super-fast @Codebase All your repos indexed together for instant AI search
πŸ“ Project Groups Organize repos into contexts (Backend, Frontend, etc.)
πŸ”„ Deep Scanning Finds nested repos (5 levels deep)
πŸ“Š Repo Status See git status across all repos at a glance
πŸ“ Knowledge Base Task history + docs at ~/.command-center/ β€” auto-updated as you work
πŸ”— PR Auto-Linking PRs automatically linked to task files
πŸ—ΊοΈ Dependency Graph Visualize service architecture (no tokens!)
πŸš€ Quick Re-open Jump back to your last workspace instantly
βœ… Todo List Persistent todos with priorities, workspace tagging, ticket linking (#PROJ-123)
πŸ“‹ Standups Cross-workspace daily/weekly summaries β€” always fresh, human-readable
🎭 Personalization Remembers your name, work schedule, greets you based on time of day
πŸ“¦ Export/Import Backup and transfer your full setup (including todos + standups)
πŸ“– Auto-Doc Updates Findings from investigations auto-saved to docs/ with confidence levels
πŸ”€ PR Merge Detection Detects merged PRs and offers to switch to main + pull

πŸ’‘ Why Command Center?

Command Center Overview

Real example: A typical "find and fix across repos" task went from ~15 prompts to 3.


🎬 Quick Start

πŸ“‹ Requirements

Platform Support
macOS βœ… Full support
Linux βœ… Full support
Windows ⚠️ Requires WSL or Git Bash

Note: This project uses bash scripts. Windows users should run it inside WSL (recommended) or Git Bash.

1️⃣ Clone & Setup

# Clone the repo
git clone https://github.com/lionelresnik/cursor-command-center.git

# Run setup
cd cursor-command-center
./setup.sh

Note: All @lu / @lucius AI assistant features are built-in (todos, standups, personalization, task tracking, PR linking, easter eggs).

2️⃣ The Setup Wizard

The wizard walks you through everything:

╔═══════════════════════════════════════════════════════════════╗
β•‘  πŸ“ Directory Browser                                         β•‘
╠═══════════════════════════════════════════════════════════════╣
β•‘    ls        - List directories here                          β•‘
β•‘    cd <dir>  - Go to directory                                β•‘
β•‘    select    - βœ“ Pick repos from this directory               β•‘
β•‘    done      - βœ“ Finish this project group                    β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

πŸ“ /Users/you/Projects
browse> select

Found 5 repos in /Users/you/Projects:

  1) βœ“ api-service
  2) βœ“ web-frontend
  3) βœ“ mobile-app
  4) βœ“ shared-utils
  5) βœ“ legacy-code

Commands: 1,3,5 (select) | all | none | except 1,2 | confirm | cancel

select> except 5          # Select all EXCEPT repo 5
select> confirm

πŸ“‹ Final Selection (4 repos):
  βœ“ api-service
  βœ“ web-frontend
  βœ“ mobile-app
  βœ“ shared-utils

? Confirm and create project? [Y/n]: y
βœ“ Added 4 repos

πŸ’‘ Pro tips:

  • Type just numbers: 5,10,15 to toggle specific repos
  • Use except 5,10 to select all EXCEPT those
  • Scans 5 levels deep (finds nested repos like company/projects/...)
  • Workspace names: letters, numbers, hyphens, underscores only (no spaces)

3️⃣ Open Your Workspace

./open.sh
Select a project to open:

  1) all (all projects combined)
  2) none (command center only)
  3) backend (5 repos)
  4) frontend (3 repos)
  5) βž• Add new project group...
  6) ❌ Cancel

? Enter number: 3

β–Ά Opening backend workspace...

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  πŸ’‘ Tip: Use @Codebase in your prompts to search all repos at once!    β”‚
β”‚                                                                         β”‚
β”‚  Example: "@Codebase where is the auth logic?"                          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜


πŸ”„ Upgrading & Syncing

Already have Command Center installed? Get the latest features without recreating workspaces:

cd cursor-command-center
git pull
./sync.sh

What sync.sh does:

  • βœ… Cleans up stale duplicate directories from old installs
  • βœ… Syncs assets (easter egg art, etc.)
  • βœ… Initializes new data files (profile.json, session-state.json, standups/)
  • βœ… Fixes workspace files (e.g., tilde path issues)
  • βœ… Works for existing setups β€” no need to recreate workspaces

Partial sync options:

./sync.sh --plugin      # Developer only: sync from local plugin repo into CLI's .cursor/
./sync.sh --data        # Only initialize data files
./sync.sh --workspaces  # Only fix workspace files

πŸ“– Daily Usage

Quick Command Reference

Command Description
./cc open Open workspace menu
./cc open --last Re-open last workspace
./cc status Check git status across repos
./cc graph Generate service dependency graph
./cc add Add repos to a project
./cc remove Remove repos from a project
./cc rename <old> <new> Rename a workspace
./cc todo Manage your persistent todo list
./cc todo add <desc> Add a todo (with -w workspace, -p priority)
./cc todo start [n] Move item to In Progress
./cc todo done [n] Mark item as done
./cc todo next Show what's next
./cc standup Generate today's standup
./cc standup weekly Generate weekly recap
./cc standup view View most recent standup
./cc export Backup configuration
./cc import <file> Restore from backup
./cc manage Rescan, regenerate workspaces
./cc help Show all commands

Open a workspace

./open.sh              # Show menu
./open.sh backend      # Open 'backend' directly
./open.sh --last       # Re-open last workspace (fastest!)

Check repo status

./status.sh            # All repos
./status.sh backend    # Just backend repos
πŸ“Š Repository Status

backend:

  βœ“ api-service (main)
  ⚠ auth-service (main) - 3 uncommitted
  ⚠ db-migrations (main) - ↓ 2 behind

───────────────────────────────────────────────────────────────
Total: 3 repos checked

Add repos to a workspace

./cc add               # Interactive: pick workspace, browse, select repos
Select a workspace to add repos to:
  1) backend (5 repos)
  2) frontend (3 repos)

? Enter number: 1

╔═══════════════════════════════════════════════════════════════╗
β•‘  πŸ“ Directory Browser                                        β•‘
╠═══════════════════════════════════════════════════════════════╣
β•‘    ls        - List directories here                         β•‘
β•‘    cd <dir>  - Enter a directory                             β•‘
β•‘    select    - βœ“ Pick repos from this dir                    β•‘
β•‘    done      - βœ“ Finish adding repos                         β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

πŸ“ /Users/you/Projects
browse> select

Found 8 repos:
  1) βœ“ api-service
  2) βœ“ shared-utils
  3) auth-service              (already in backend)
  ...

select> confirm
βœ“ Added 2 repos to backend

  βœ“ contexts/backend.repos (7 repos)
  βœ“ workspaces/backend.code-workspace
  βœ“ workspaces/all.code-workspace

You can also create new project groups via ./open.sh β†’ "βž• Add new project group..."

Remove repos from a project

./cc remove            # Interactive repo removal
Select a project:
  1) backend
  2) frontend

? Enter number: 1

Repos in backend (5 total):

  1) βœ“ api-service
  2) βœ“ auth-service
  3) βœ“ db-migrations
  4) βœ— old-monolith (will be removed)
  5) βœ“ shared-utils

Commands: toggle 1,3,5 | save | cancel
remove> save
βœ“ Kept 4 repos, removed 1

Rename a workspace

./cc rename mobile mobile-app    # Direct rename
./cc rename                      # Interactive (shows menu)
Available workspaces:
  1) mobile
  2) backend
  3) frontend

? Select workspace to rename (number): 1
? New name for 'mobile': mobile-app

  βœ“ contexts/mobile.repos β†’ mobile-app.repos
  βœ“ contexts/mobile.dirs β†’ mobile-app.dirs
  βœ“ workspaces/mobile.code-workspace β†’ mobile-app.code-workspace
  βœ“ task-history/mobile/ β†’ mobile-app/
  βœ“ docs/mobile/ β†’ mobile-app/

βœ“ Renamed 'mobile' β†’ 'mobile-app'

Generate dependency graph

./cc graph                    # Current workspace
./cc graph backend            # Specific workspace
./cc graph --open             # Generate and open in browser

Generates a visual service dependency graph by parsing:

  • *.tf files - Terraform (auto-detects AWS/GCP/Azure)
  • docker-compose.yml - Services, databases, Redis, RabbitMQ
  • serverless.yml / template.yaml - Lambda, SQS, SNS, DynamoDB
  • go.mod / package.json - Go and Node.js services

Output: ~/.command-center/docs/[workspace]/architecture.html (interactive) + .md (Mermaid)

Example output:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  🐳 Docker Services β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  api-gateway  β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
           β”‚
   β”Œβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   β–Ό       β–Ό       β–Ό          β”‚
β”Œβ”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”       β”‚
β”‚ AWS β”‚ β”‚ GCP β”‚ β”‚Azureβ”‚       β”‚
β”‚ πŸ—οΈ  β”‚ β”‚ πŸ—οΈ  β”‚ β”‚ πŸ—οΈ  β”‚       β”‚
β””β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”˜       β”‚

πŸ’‘ Zero tokens! Uses static file parsing, no AI calls.


πŸ”— PR Auto-Linking

When working on a task, PRs are automatically tracked:

  1. You ask the AI to create a PR β†’ URL captured and added to task file
  2. You mention a PR (paste link or say "opened PR #123") β†’ Added to task file

Task file gets updated:

## πŸ“¦ Pull Requests

| Repo | PR | Description | Status |
|------|-----|-------------|--------|
| api-gateway | [#142](url) | Add retry logic | πŸ”„ Open |
| auth-service | [#87](url) | Update validation | βœ… Merged |

πŸ€– @Codebase vs Regular Chat

Understanding when to use @Codebase will save you time AND tokens (money!):

When to Use @Codebase πŸ”

Use Case Example Prompt
Find code location @Codebase where is authentication implemented?
Understand patterns @Codebase how do we handle errors across services?
Find all usages @Codebase find all places that call UserService
Cross-repo search @Codebase which repos import the shared utils?
Architecture questions @Codebase how do the frontend and backend communicate?

When to Skip @Codebase πŸ’¬

Use Case Why Skip
Working in one file AI already sees your open file
General questions "What's a good naming convention?" - no codebase needed
After finding code Once you've located it, chat directly about that file
Simple edits "Add a try-catch here" - context is already there

πŸ’° Token Savings Tip

❌ Expensive: "@Codebase add a new endpoint to the API"
   (Searches entire codebase unnecessarily)

βœ… Cheaper: "@Codebase where are API endpoints defined?"
   Then: "Add a new endpoint here" (in the found file)

Rule of thumb: Use @Codebase to find, then regular chat to modify.


πŸ“ Project Structure

cursor-command-center/
β”œβ”€β”€ cc                # Main command wrapper (./cc open, ./cc status, etc.)
β”œβ”€β”€ setup.sh          # First-time setup wizard
β”œβ”€β”€ sync.sh           # Sync/upgrade existing installs
β”œβ”€β”€ open.sh           # Workspace launcher
β”œβ”€β”€ status.sh         # Git status checker
β”œβ”€β”€ manage.sh         # Add/remove repos, export/import
β”œβ”€β”€ graph.sh          # Service dependency graph (legacy β€” @lu now generates natively)
β”œβ”€β”€ todo.sh           # Persistent todo manager
β”œβ”€β”€ standup.sh        # Daily/weekly standup generator
β”œβ”€β”€ help.sh           # Central help command
β”œβ”€β”€ start.sh          # Quick start (opens 'all')
β”‚
β”œβ”€β”€ workspaces/       # Generated .code-workspace files
β”œβ”€β”€ contexts/         # Project group definitions
β”‚
β”œβ”€β”€ task-history/     # Work logs (by workspace) β€” auto-created by @lu
β”‚   β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ backend/
β”‚   └── shared/
β”‚
β”œβ”€β”€ docs/             # Reference docs (by workspace) β€” auto-updated by @lu
β”‚   β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ backend/
β”‚   └── shared/
β”‚
β”œβ”€β”€ todos.md          # Persistent todo list (In Progress / Pending / Done)
β”œβ”€β”€ standups/         # Daily and weekly standup summaries
β”œβ”€β”€ assets/           # Static assets (easter egg art, etc.)
β”‚
└── .cursor/
    β”œβ”€β”€ rules/        # Always-on AI rules (@lu, task tracking, standups, etc.)
    └── skills/       # @lu capabilities (workspace, graph, todos, standups, etc.)

πŸ“ Knowledge Base (Task History + Docs)

Your local knowledge base is organized by workspace and grows automatically as you work:

task-history/                    # Work logs (what you did on specific tasks)
β”œβ”€β”€ frontend/
β”‚   └── PROJ-123-fix-auth.md
β”œβ”€β”€ backend/
β”‚   └── PROJ-456-add-api.md
└── shared/                      # Cross-workspace tasks
    └── general-refactor.md

docs/                            # Reference guides (general knowledge)
β”œβ”€β”€ frontend/
β”‚   └── api-integration.md
β”œβ”€β”€ backend/
β”‚   └── deployment-guide.md
└── shared/
    └── setup-guide.md

All content is local-only (gitignored) β€” safe for internal info.

Type Purpose Example Auto-created?
task-history/ Work logs, decisions "What I did on ticket X" βœ… Yes
docs/ Reference guides, findings "How service Y works" βœ… Yes
todos.md Persistent todo list "What's next" βœ… Yes
standups/ Standup summaries "What did I do this week" βœ… Yes

Auto-Doc Updates

When @lu investigates something by reading source code, it automatically documents the finding in docs/[workspace]/ β€” not in the task file. Findings are tagged with confidence levels:

  • (no tag) β€” βœ… Confirmed β€” verified in source code or tested
  • > ⚠️ Assumed β€” inferred, not yet verified
  • > πŸ” Investigating β€” partially known, contradictory evidence

Assumed findings are automatically upgraded to confirmed when later verified.

Backup: ./cc export includes your knowledge base, todos, and standups Reference: @task-history "What did we decide about auth?"


πŸ’‘ Tips

Tip Description
Smaller = Faster Use project-specific workspaces for faster @Codebase
First open is slow Indexing takes a few minutes, then it's instant
Install cursor CLI Cmd+Shift+P β†’ "Install cursor command"
Pretty UI Install gum for nicer menus

πŸ”Œ Also Available: Cursor Plugin

For a marketplace plugin with the same features (and more) installed directly through Cursor, check out Command Center:

The plugin provides the same capabilities as this CLI, installed through the Cursor Marketplace with no git cloning required. If both are installed, prefer the plugin β€” it integrates deeper with Cursor's tooling.

Migrating from CLI to plugin? Once you install the plugin from the Marketplace, use @lu migrate from CLI and Lucius will guide you through removing CLI files while preserving all your data (task-history/, docs/, todos.md, standups/).


🀝 Sharing

This repo is designed to be shared:

Share βœ… Local Only ❌
Scripts (*.sh) profile.json
AI rules workspaces/
README files contexts/*.repos
task-history/**/*.md
docs/**/*.md
todos.md
standups/

Each user runs ./setup.sh to configure for their system.

Transfer your setup: ./cc export β†’ ./cc import

Export/Import Details

Content Included
Configuration βœ… Always
Workspace definitions βœ… Always
Todos βœ… Always (if exists)
Standups βœ… Always (if exists)
Task history βœ… Optional (prompted)
Docs βœ… Optional (prompted)

Moving to a new machine? Import auto-detects different paths:

./cc import backup.tar.gz

⚠  Detected paths from a different machine:
   Old path: /Users/olduser/Projects

? Enter your projects directory: ~/code

Remapping paths:
  /Users/olduser/Projects β†’ /Users/newuser/code

βœ“ Remapped 15 repo paths

πŸ‘€ Author

Lionel M. Resnik

GitHub


πŸ“œ License

MIT License - Use it, share it, improve it!


Made with ❀️ for developers who juggle many repos

About

πŸš€ A central hub for managing AI-assisted development across multiple repositories

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors