The intelligent command manager for VS Code
Save, organize, and execute commands with AI-powered suggestions, a full analytics dashboard, and a visual rule builder.
Install Β· Features Β· Shortcuts Β· Configuration Β· Changelog
DotCommand is a VS Code extension that turns your terminal commands into an organized, searchable, intelligent library. It learns from your usage patterns, detects your project's tech stack, and surfaces the right command at the right time β with a beautiful analytics dashboard and a visual rule builder to customize everything.
A full webview dashboard powered by Chart.js, connected to the analytics engine built in v1.5.0.
- Suggestion trends β line chart showing suggestions over the last 7β90 days
- Category breakdown β doughnut chart of your most-used command categories
- Response time monitoring β bar chart tracking performance trends
- Top commands β ranked list of your most accepted suggestions
- Template popularity β progress-bar rankings across all templates
- Date range filter β switch between 7, 14, 30, and 90-day views
- CSV export β download your full analytics data
Open with Ctrl+Shift+A or from the Command Palette.
Create custom context rules without touching JSON. The rule builder lets you define exactly when specific commands should be suggested.
- 4 rule types β File Pattern, Directory, Dependency, Custom
- 4 conditions β exists, not exists, contains, matches regex
- Live preview β see the rule logic update as you type
- Test against workspace β verify a rule matches your current project in one click
- Weight slider β control how strongly a rule influences suggestions (0β100)
- Import / Export β fully backward compatible with v1.5.0 JSON rules
- Sample rules β 5 ready-to-add rules for React, Vue, TypeScript, Docker, and Tests
Open with Ctrl+Shift+B or from the Command Palette.
The quick command picker β Ctrl+Shift+R β is now significantly smarter.
- Fuzzy search β finds commands even when you type partial characters
- ML-powered ranking β commands sorted by frequency, recency, category, context, and analytics scores
- 3 sections β Recent | Suggested (ML top 5) | All Commands
- Category filtering β type
#git,#npm,#docker,#pythonto filter instantly - Command preview β see the full command on hover before running
- Positive feedback loop β selecting a command improves its future ranking
A weighted scoring engine that learns your habits.
| Factor | Weight | What it measures |
|---|---|---|
| Frequency | 30% | How often you use a command |
| Recency | 30% | When you last used it |
| Category | 20% | Your preferred command categories |
| Context | 10% | Current project type match |
| Analytics | 10% | Acceptance rate from analytics data |
DotCommand parses your package.json and suggests smart companion packages:
| When you have | It suggests |
|---|---|
react |
react-dom, @types/react |
eslint |
prettier |
jest |
@types/jest |
typescript |
@types/node |
axios |
@types/axios |
Auto-detects your package manager: pnpm βΊ yarn βΊ bun βΊ npm
Define your own triggers that activate specific command suggestions based on:
- File patterns (e.g.
Dockerfile,**/*.test.ts) - Directory existence (e.g.
src/,__tests__/) - Package dependencies (e.g.
react,typescript) - Custom regex patterns
DotCommand automatically detects 20+ technologies in your workspace:
Node.js React Vue Angular TypeScript Next.js Nuxt.js Svelte Electron Docker Git Python Go Rust Flutter/Dart Terraform AWS Gradle Maven CMake pnpm Yarn
180+ prepared commands across 20 categories, ready to use:
| Category | Examples |
|---|---|
| π Git | checkout, commit, push, merge, tag |
| π¦ npm / pnpm / Yarn | install, run, audit, update |
| π³ Docker | build, run, compose, logs, prune |
| βΈοΈ Kubernetes | apply, get pods, scale, logs |
| π¦ Rust | cargo build, test, clippy, fmt |
| πΉ Go | go build, run, test, mod tidy |
| ποΈ Terraform | init, plan, apply, destroy |
| βοΈ AWS | s3 cp, ec2 ls, lambda invoke |
| π± Flutter | run, build APK/iOS/Web, pub get |
| π Python | pip, pytest, venv, black, flake8 |
| π SSH/Remote | ssh, scp, rsync, ssh-keygen |
- Auto-categorization β commands sorted into
git-workspace,npm-scripts,docker-build, etc. - Most Used β promoted after 5 executions
- Favorites β star commands for instant access
- 90-Day Trash β soft delete with full recovery window
- Terminal Learning β auto-captures and categorizes commands from your terminal sessions
From VS Code Marketplace:
- Open VS Code
- Press
Ctrl+Shift+Xto open Extensions - Search for DotCommand
- Click Install
From source:
git clone https://github.com/kareem2099/dotcommand.git
cd dotcommand
npm install
npm run compile
# Press F5 in VS Code to launch Extension Development Host1. Install the extension
2. Open any project β DotCommand detects your tech stack automatically
3. Press Ctrl+Shift+R to open the smart command picker
4. Press Ctrl+Shift+A to open the analytics dashboard
5. Press Ctrl+Shift+B to open the visual rule builder
| Shortcut | Action |
|---|---|
Ctrl+Shift+R |
Quick Command Picker (fuzzy search) |
Ctrl+Shift+A |
Analytics Dashboard |
Ctrl+Shift+B |
Rule Builder |
Ctrl+Shift+1 |
Show Favorite Commands |
Ctrl+Shift+H |
Show Recent Commands |
Ctrl+Shift+Y |
Command History |
Ctrl+Shift+T |
Template Manager |
Ctrl+Shift+M |
Task Manager |
Ctrl+Alt+Space |
Smart Quick Run (ML suggestions) |
| Shortcut | Action |
|---|---|
Ctrl+Shift+S |
Save Command from selection |
Ctrl+Shift+V |
View Commands |
| Shortcut | Action |
|---|---|
Ctrl+Shift+F |
Toggle Favorite |
Ctrl+Shift+Enter |
Run Command |
Ctrl+Shift+C |
Copy Command |
Ctrl+Shift+/ |
Search / Filter |
Ctrl+Shift+X |
Clear Filters |
src/
βββ extension.ts Main entry point
βββ commands/
β βββ handlers.ts All command handlers (incl. Quick Picker v2.0)
β βββ prepared.ts Prepared commands loader
β βββ detection.ts Auto-categorization logic
β βββ validator.ts Command validation
βββ features/
β βββ SuggestionQuickAccess.ts Status bar ML suggestions
βββ providers/
β βββ treeView.ts My Commands tree
β βββ preparedCommandsTreeDataProvider.ts
βββ services/
β βββ analyticsService.ts Analytics engine (v1.5.0)
β βββ updateService.ts Version update panels
βββ utils/
β βββ mlSuggestions.ts ML scoring engine (v1.5.0)
β βββ customContextRules.ts Rule evaluation engine (v1.5.0)
β βββ packageJsonParser.ts Package intelligence (v1.5.0)
β βββ commandHistory.ts Global command history
β βββ commandTemplates.ts Template engine
βββ webviews/
β βββ analyticsDashboard.ts π Analytics Dashboard (v2.0.0)
β βββ ruleBuilder.ts βοΈ Visual Rule Builder (v2.0.0)
β βββ templateManager.ts Template Manager UI
β βββ taskManager.ts Task Manager UI
βββ data/
βββ preparedCommands.json 180+ prepared commands (JSON)
DotCommand integrates with VS Code's built-in task system. Generate a full task suite in one click:
- Open My Commands sidebar
- Click the Create New Task Template button
- Choose your project type: NPM, Git, Docker, Python, Frontend, or Custom
- Tasks appear in
Ctrl+Shift+P β Tasks: Run Task
Supported templates:
- π¦ NPM (11 tasks) β install, dev, build, test, lint, format, audit, update
- π Git (9 tasks) β status, add, commit, push, pull, log, branch, merge
- π³ Docker (9 tasks) β build, run, images, containers, compose, prune
- π Python (8 tasks) β venv, pip, pytest, black, flake8, requirements
- βοΈ Frontend (8 tasks) β dev, build, preview, test, e2e, lint, type-check
- π οΈ Custom (6 tasks) β placeholders for any project type
See CONTRIBUTING.md for guidelines.
MIT License β see LICENSE for details.
- β Star the repository
- π Report a bug
- π‘ Request a feature
Built with β€οΈ by FreeRave



{ // Auto-save "dotcommand.autoSave.enabled": true, "dotcommand.autoSave.minLength": 2, "dotcommand.autoSave.showNotifications": false, // Storage "dotcommand.general.maxCommands": 1000, "dotcommand.mostUsedThreshold": 5, // ML suggestions "dotcommand.ml.enabled": true, "dotcommand.ml.frequencyWeight": 0.3, "dotcommand.ml.recencyWeight": 0.3, "dotcommand.ml.categoryWeight": 0.2, "dotcommand.ml.contextWeight": 0.1, "dotcommand.ml.analyticsWeight": 0.1, // Analytics "dotcommand.analytics.enabled": true, "dotcommand.analytics.retentionDays": 90, // Terminal management "dotcommand.terminal.cleanup.enabled": true, "dotcommand.terminal.cleanup.timeoutMinutes": 30, "dotcommand.terminal.category.enabled": true, // Package intelligence "dotcommand.packageIntelligence.enabled": true, "dotcommand.packageIntelligence.autoDetectPackageManager": true, // Custom rules "dotcommand.customRules.enabled": true }