Installation
- Open VS Code
- Press Ctrl+Shift+X to open Extensions
- Search for Launchpad by Nascent Poly
- Click Install
Alternatively, install from the VS Code Marketplace.
Quick Start
Press Ctrl+Shift+. (Mac: Cmd+Shift+.) to open the Launchpad input box.
Type what you want in natural language:
> run my tests
Test: Run All Tests (98%)
> commit changes
Git: Commit (95%)
> format and save
Format Document → Save File (92%, 89%)
> toggle dark mode
Change Color Theme (87%)
Launchpad understands natural phrasing, handles typos (via trigram fuzzy correction), and classifies compound commands separated by "and", "then", or "next".
You can also run Launchpad: Run Command or Launchpad: Run Command (with trace) from the VS Code Command Palette (Ctrl+Shift+P).
How It Works
Launchpad uses a deterministic classification engine — no AI APIs, no cloud, no network calls. Your input is processed entirely on your machine in under 3ms.
- Same input = same output, every time. Fully deterministic.
- Trigram fuzzy correction handles typos and misspellings.
- Synonym expansion maps informal phrases to known vocabulary.
- Compound commands split "format and save" into sequential actions.
- Confidence scoring shows how certain the classification is.
Compound Commands
Launchpad can split multi-part requests at conjunctions like
and, then, next, also,
and plus, classifying each fragment independently and executing
them in sequence.
> format and save
1. Format Document
2. Save File
> save then close
1. Save File
2. Close Editor
> stage all and commit
1. Stage All Changes
2. Git: Commit
Phrases like "find and replace" are recognized as single commands — they won't be split.
Macros
Define named macros in your VS Code settings to execute a sequence of commands with a single phrase.
Configuration
Open Settings JSON (Ctrl+, → search "launchpad") and add:
"launchpad.macros": {
"deploy": [
"editor.action.formatDocument",
"workbench.action.files.save",
"workbench.action.terminal.toggleTerminal"
],
"cleanup": [
"editor.action.trimTrailingWhitespace",
"editor.action.organizeImports",
"editor.action.formatDocument",
"workbench.action.files.save"
],
"review": [
"workbench.view.scm",
"git.openAllChanges"
]
}
Usage
Open Launchpad and type the macro name exactly:
> deploy
Macro: deploy (runs 3 commands in sequence)
> cleanup
Macro: cleanup (runs 4 commands in sequence)
Macros are checked before classification — if a macro name matches your input, it runs immediately without going through the engine.
Action Steps
Macros support 7 action types beyond simple command IDs. Each step in a macro can be a string (backward compatible) or an action object:
"launchpad.macros": {
"my app": [
{ "action": "open", "path": "C:/projects/my-app" },
{ "action": "command", "command": "workbench.action.terminal.new" },
{ "action": "delay", "ms": 300 },
{ "action": "type", "text": "npm run dev\n" }
],
"morning standup": [
{ "action": "open", "path": "C:/projects/my-app" },
{ "action": "command", "command": "git.pull" },
{ "action": "command", "command": "workbench.actions.view.problems" }
]
}
| Action | Fields | Description |
|---|---|---|
| command | command, args | Run a VS Code command |
| open | path | Open a file or folder |
| goto | line, col | Jump to line and column |
| type | text | Insert text at cursor |
| select | from {line,col}, to {line,col} | Select a text range |
| snippet | body | Insert a VS Code snippet |
| delay | ms | Wait before next step (max 10s) |
Custom Commands
Map custom phrases directly to VS Code commands. Useful for extension-specific commands that Launchpad doesn't know about by default.
"launchpad.customCommands": {
"deploy to staging": "myExtension.deployStagingCommand",
"run eslint fix": "eslint.executeAutofix",
"open database": "sqltools.openConnection"
}
Custom commands are checked before the classification engine. Type the exact phrase and Launchpad will execute the mapped command directly.
Visual Configurator Pro
Run Launchpad: Configure from the Command Palette to open the visual configurator — a built-in UI for building shortcuts and workflows without editing JSON.
Simple & Pro Modes
The configurator has two modes, toggled from the top-right corner:
- Simple mode (default) — designed for non-technical users. Categorized action dropdowns (Debug, Files, Editor, Git, etc.), visual workflow blocks with icons, friendly labels like “When I say…” and “Do this:”. No command IDs to memorize.
- Pro mode — full control with raw command ID inputs, all 7 action types exposed, and a Built-in Intents browser showing all 195 intents with their descriptions and mapped commands.
Preset Packs
Load themed presets to populate your config instantly:
- Space Command Center — 18 commands + 4 macros (“launch sequence”, “pre-flight check”)
- DevOps Mission Control — 10 commands + 3 macros (“pipeline status”, “rollback deploy”)
- Power User Essentials — 12 commands + 3 macros (“deep focus”, “save and format”)
- Git Flight Deck — 12 commands + 3 macros (“clean commit”, “quick push”)
- Script Generator Phrases — 16 commands + 1 macro (trigger script generation)
- Workspace Launcher — 4 commands + 9 macros (“my app”, “morning standup”, “new branch”)
Presets merge with existing settings — they never overwrite your custom work.
Action Runner Pro
The action runner powers macro execution. Beyond simple VS Code commands, macros can open folders, jump to lines, type text, select ranges, insert snippets, and add delays between steps.
Say “my app” and your project folder opens, a terminal spawns, waits 300ms, then Quick Open appears — all from a single phrase.
Configure action macros visually in the Configurator (Simple mode shows friendly blocks like “Open folder or file” and “Type some text”) or edit the JSON in settings directly.
Script Generator Pro
Say “create a flask server” or “write a dockerfile” and Launchpad generates a complete, ready-to-run file. 14 templates built in:
- Flask · Express · FastAPI · React Component · HTML5 Landing Page
- Dockerfile · GitHub Actions CI · Bash Deploy Script
- Python CLI · WebSocket Server · Data Pipeline
- Jest Tests · Pytest Tests · Makefile
Run Launchpad: Browse Templates from the Command Palette to pick from the full catalog organized by category.
Trace Mode
Run Launchpad: Run Command (with trace) from the Command Palette to see a ranked list of classification results. Pick the one you want.
> close everything
[1] Close All Editors 94%
[2] Close Window 81%
[3] Close All Terminals 78%
[4] Close Folder 65%
Trace mode is useful for ambiguous phrases or when you want to see what Launchpad considered before choosing.
Usage Stats Pro
Launchpad records which commands you use (intent + confidence only — no raw input stored). View your stats with the Launchpad: Show Usage Stats command from the Command Palette.
All data is stored locally and never transmitted.
License Management
Launchpad uses a freemium model. The free tier includes all 195 intents, compound commands, customs, macros, trace mode, and typo tolerance. Pro unlocks voice commands, the visual configurator, script generator, action runner, preset browser, and usage stats.
Activating a Pro License
- Purchase a license at nascentpoly.com/pro
- In VS Code, run
Launchpad: Activate Profrom the Command Palette - Paste your license key and press Enter
Managing Your License
Run Launchpad: Manage License to see your current status, deactivate a machine,
or re-enter a license key. Each key supports up to 3 machines. The status bar shows
“Launchpad Pro” when active.
Command Reference
All 195 intents Launchpad recognizes, organized by category. The Example phrases column shows what you can type — natural variations, typos, and synonyms are also accepted.
File Operations
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "create a file", "new file" | New Untitled File | workbench.action.files.newUntitledFile |
| "delete this file", "remove file" | Move File to Trash | moveFileToTrash |
| "rename file", "move file" | Rename File | workbench.files.action.showActiveFileInExplorer |
| "open file", "go to file" | Quick Open File | workbench.action.quickOpen |
| "open recent" | Open Recent | workbench.action.openRecent |
| "create folder", "new directory" | New Folder | explorer.newFolder |
| "open folder", "open workspace" | Open Folder | workbench.action.files.openFolder |
| "close folder" | Close Folder | workbench.action.closeFolder |
| "compare files", "diff two files" | Compare File With… | workbench.files.action.compareFileWith |
| "save", "save file" | Save File | workbench.action.files.save |
| "save all", "save everything" | Save All Files | workbench.action.files.saveAll |
| "save as" | Save As… | workbench.action.files.saveAs |
| "copy path", "copy file path" | Copy File Path | copyFilePath |
| "copy relative path" | Copy Relative Path | copyRelativeFilePath |
| "reveal in explorer", "show in finder" | Reveal in File Explorer | revealFileInOS |
Version Control
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "commit", "commit changes", "check in" | Git: Commit | git.commit |
| "push", "push changes" | Git: Push | git.push |
| "pull", "pull latest" | Git: Pull | git.pull |
| "create branch", "new branch" | Git: Create Branch | git.branch |
| "merge branch" | Git: Merge Branch | git.merge |
| "show diff", "review changes" | Git: View Changes | git.openChange |
| "undo commit", "rollback", "revert" | Git: Undo Last Commit | git.undoCommit |
| "git status", "check status" | Open Source Control | workbench.view.scm |
| "stash", "stash changes" | Git: Stash | git.stash |
| "cherry pick" | Git: Cherry Pick | git.cherryPick |
| "rebase" | Git: Rebase | git.rebase |
| "git log", "view history" | Git: View History | git.viewHistory |
| "resolve conflict" | Resolve Merge Conflict | merge-conflict.accept.selection |
| "create PR", "pull request" | Create Pull Request | pr.create |
| "switch branch", "checkout" | Git: Checkout | git.checkout |
| "delete branch" | Git: Delete Branch | git.deleteBranch |
| "clone", "clone repository" | Git: Clone | git.clone |
| "blame", "git blame" | Git: Blame | git.blame |
| "tag", "create tag" | Git: Create Tag | git.createTag |
| "stage all" | Git: Stage All | git.stageAll |
| "unstage all" | Git: Unstage All | git.unstageAll |
| "fetch", "git fetch" | Git: Fetch | git.fetch |
| "discard changes" | Git: Discard Changes | git.clean |
| "stage file", "stage this" | Git: Stage File | git.stage |
| "unstage file" | Git: Unstage File | git.unstage |
| "pop stash", "stash pop" | Git: Pop Stash | git.stashPop |
| "show staged", "diff staged" | Git: Show Staged Changes | git.openAllChanges |
Code Quality
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "format", "format code", "prettify" | Format Document | editor.action.formatDocument |
| "format selection" | Format Selection | editor.action.formatSelection |
| "lint", "run linter" | Run Lint Task | workbench.action.tasks.runTask |
| "refactor", "refactor code" | Refactor… | editor.action.refactor |
| "type check", "run type checker" | Run Type Checker | workbench.action.tasks.runTask |
| "sort imports", "organize imports" | Organize Imports | editor.action.organizeImports |
| "remove dead code", "remove unused" | Source Action | editor.action.sourceAction |
Testing & Debugging
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "run tests", "test everything" | Run All Tests | testing.runAll |
| "run this test", "test at cursor" | Run Test at Cursor | testing.runAtCursor |
| "debug", "start debugging" | Start Debugging | workbench.action.debug.start |
| "breakpoint", "toggle breakpoint" | Toggle Breakpoint | editor.debug.action.toggleBreakpoint |
| "remove breakpoints", "clear breakpoints" | Remove All Breakpoints | workbench.debug.viewlet.action.removeAllBreakpoints |
| "fix error", "quick fix" | Quick Fix… | editor.action.quickFix |
| "coverage", "test coverage" | Run with Coverage | testing.coverageAll |
| "add test", "new test" | Add New Test | testing.newTest |
Build & Deploy
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "build", "compile" | Run Build Task | workbench.action.tasks.build |
| "deploy" | Run Deploy Task | workbench.action.tasks.runTask |
| "install package", "add dependency" | Open Terminal | workbench.action.terminal.new |
| "start server", "dev server" | Start Dev Server | workbench.action.tasks.runTask |
| "stop server", "stop task" | Stop Running Task | workbench.action.tasks.terminate |
| "run script", "run task" | Run Script / Task | workbench.action.tasks.runTask |
| "clean build", "clean" | Clean Build | workbench.action.tasks.runTask |
Search & Generate
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "search", "find in files", "search code" | Search in Files | workbench.action.findInFiles |
| "generate code", "scaffold" | Insert Snippet | editor.action.insertSnippet |
| "find references", "all references" | Find All References | editor.action.referenceSearch.trigger |
| "find in file", "find here" | Find in File | actions.find |
| "find and replace", "search and replace" | Find and Replace | editor.action.startFindReplaceAction |
Navigation
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "go to symbol" | Go to Symbol | workbench.action.gotoSymbol |
| "go to definition" | Go to Definition | editor.action.revealDefinition |
| "go to implementation" | Go to Implementation | editor.action.goToImplementation |
| "go to file", "quick open" | Quick Open | workbench.action.quickOpen |
| "go to line" | Go to Line… | workbench.action.gotoLine |
| "go to bracket", "matching bracket" | Go to Matching Bracket | editor.action.jumpToBracket |
| "peek definition" | Peek Definition | editor.action.peekDefinition |
| "peek references" | Peek References | editor.action.referenceSearch.trigger |
| "go back", "navigate back" | Navigate Back | workbench.action.navigateBack |
| "go forward", "navigate forward" | Navigate Forward | workbench.action.navigateForward |
| "show hover", "hover info" | Show Hover | editor.action.showHover |
| "go to type definition" | Go to Type Definition | editor.action.goToTypeDefinition |
| "next error", "next problem" | Go to Next Error | editor.action.marker.next |
| "previous error" | Go to Previous Error | editor.action.marker.prev |
| "next change" | Go to Next Change | workbench.action.editor.nextChange |
| "previous change" | Go to Previous Change | workbench.action.editor.previousChange |
| "definition to the side" | Open Definition Aside | editor.action.revealDefinitionAside |
| "go to symbol in workspace" | Go to Symbol in Workspace | workbench.action.showAllSymbols |
Editor Actions
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "close file", "close editor" | Close Editor | workbench.action.closeActiveEditor |
| "close all", "close everything" | Close All Editors | workbench.action.closeAllEditors |
| "close other tabs" | Close Other Editors | workbench.action.closeOtherEditors |
| "split editor", "split right" | Split Editor Right | workbench.action.splitEditor |
| "split down" | Split Editor Down | workbench.action.splitEditorDown |
| "toggle sidebar", "show sidebar" | Toggle Sidebar | workbench.action.toggleSidebarVisibility |
| "open terminal", "toggle terminal" | Toggle Terminal | workbench.action.terminal.toggleTerminal |
| "new terminal" | New Terminal | workbench.action.terminal.new |
| "kill terminal" | Kill Terminal | workbench.action.terminal.kill |
| "split terminal" | Split Terminal | workbench.action.terminal.split |
| "clear terminal" | Clear Terminal | workbench.action.terminal.clear |
| "focus editor" | Focus Editor | workbench.action.focusActiveEditorGroup |
| "pin tab" | Pin Tab | workbench.action.pinEditor |
| "unpin tab" | Unpin Tab | workbench.action.unpinEditor |
| "markdown preview" | Markdown Preview | markdown.showPreview |
| "show output", "toggle output" | Toggle Output Panel | workbench.action.output.toggleOutput |
| "reload window" | Reload Window | workbench.action.reloadWindow |
| "close window" | Close Window | workbench.action.closeWindow |
Editing
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "comment", "toggle comment" | Toggle Line Comment | editor.action.commentLine |
| "block comment" | Toggle Block Comment | editor.action.blockComment |
| "duplicate line" | Duplicate Line Down | editor.action.copyLinesDownAction |
| "delete line" | Delete Line | editor.action.deleteLines |
| "select all occurrences" | Select All Occurrences | editor.action.selectHighlights |
| "select line" | Select Line | expandLineSelection |
| "select all" | Select All | editor.action.selectAll |
| "expand selection" | Expand Selection | editor.action.smartSelect.expand |
| "shrink selection" | Shrink Selection | editor.action.smartSelect.shrink |
| "select to bracket" | Select to Bracket | editor.action.selectToBracket |
| "undo" | Undo | undo |
| "redo" | Redo | redo |
| "fold", "collapse code" | Fold Code | editor.fold |
| "unfold", "expand code" | Unfold Code | editor.unfold |
| "move line up" | Move Line Up | editor.action.moveLinesUpAction |
| "move line down" | Move Line Down | editor.action.moveLinesDownAction |
| "indent" | Indent Line | editor.action.indentLines |
| "outdent", "unindent" | Outdent Line | editor.action.outdentLines |
| "copy" | Copy | editor.action.clipboardCopyAction |
| "cut" | Cut | editor.action.clipboardCutAction |
| "paste" | Paste | editor.action.clipboardPasteAction |
| "autocomplete", "trigger suggestions" | Trigger IntelliSense | editor.action.triggerSuggest |
| "rename", "rename symbol" | Rename Symbol | editor.action.rename |
| "uppercase", "transform case" | Transform Case | editor.action.transformToUppercase |
| "sort lines" | Sort Lines | editor.action.sortLinesAscending |
| "join lines" | Join Lines | editor.action.joinLines |
| "insert snippet" | Insert Snippet | editor.action.insertSnippet |
| "emmet expand", "expand abbreviation" | Emmet: Expand Abbreviation | editor.emmet.action.expandAbbreviation |
| "trim whitespace" | Trim Trailing Whitespace | editor.action.trimTrailingWhitespace |
| "transpose" | Transpose Characters | editor.action.transpose |
| "reindent" | Reindent Lines | editor.action.reindentLines |
| "convert to spaces" | Indentation to Spaces | editor.action.indentationToSpaces |
| "convert to tabs" | Indentation to Tabs | editor.action.indentationToTabs |
Workspace & Settings
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "settings", "open settings" | Open Settings | workbench.action.openSettings |
| "settings json" | Open Settings JSON | workbench.action.openSettingsJson |
| "change theme", "color theme" | Change Color Theme | workbench.action.selectTheme |
| "toggle minimap" | Toggle Minimap | editor.action.toggleMinimap |
| "word wrap", "toggle wrap" | Toggle Word Wrap | editor.action.toggleWordWrap |
| "show whitespace" | Toggle Render Whitespace | editor.action.toggleRenderWhitespace |
| "toggle line numbers" | Toggle Line Numbers | editor.action.toggleLineNumbers |
| "toggle breadcrumbs" | Toggle Breadcrumbs | breadcrumbs.toggle |
| "fullscreen", "full screen" | Toggle Full Screen | workbench.action.toggleFullScreen |
| "zen mode" | Toggle Zen Mode | workbench.action.toggleZenMode |
| "zoom in" | Zoom In | workbench.action.zoomIn |
| "zoom out" | Zoom Out | workbench.action.zoomOut |
| "reset zoom" | Reset Zoom | workbench.action.zoomReset |
| "command palette" | Open Command Palette | workbench.action.showCommands |
| "keyboard shortcuts", "keybindings" | Open Keyboard Shortcuts | workbench.action.openGlobalKeybindings |
| "change language", "language mode" | Change Language Mode | workbench.action.editor.changeLanguageMode |
| "new window" | New Window | workbench.action.newWindow |
| "extensions", "open extensions" | Open Extensions | workbench.view.extensions |
| "show problems", "problems panel" | Show Problems | workbench.actions.view.problems |
| "toggle autosave", "auto save" | Toggle Auto Save | workbench.action.toggleAutoSave |
| "toggle sticky scroll" | Toggle Sticky Scroll | editor.action.toggleStickyScroll |
| "toggle inlay hints" | Toggle Inlay Hints | editor.action.toggleInlayHints |
| "user snippets", "open snippets" | Open User Snippets | workbench.action.openSnippets |
| "add folder to workspace" | Add Folder to Workspace | workbench.action.addRootFolder |
| "open workspace" | Open Workspace | workbench.action.openWorkspace |
| "developer tools", "dev tools" | Toggle Developer Tools | workbench.action.toggleDevTools |
Multi-Cursor
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "cursor above", "add cursor above" | Add Cursor Above | editor.action.insertCursorAbove |
| "cursor below", "add cursor below" | Add Cursor Below | editor.action.insertCursorBelow |
| "add next occurrence" | Add Next Occurrence | editor.action.addSelectionToNextFindMatch |
Tab Management
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "next tab" | Next Tab | workbench.action.nextEditor |
| "previous tab", "prev tab" | Previous Tab | workbench.action.previousEditor |
| "reopen closed tab" | Reopen Closed Tab | workbench.action.reopenClosedEditor |
| "move tab left" | Move Tab Left | workbench.action.moveEditorLeftInGroup |
| "move tab right" | Move Tab Right | workbench.action.moveEditorRightInGroup |
| "close saved tabs" | Close Unchanged Editors | workbench.action.closeUnmodifiedEditors |
Debug Controls
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "step over" | Step Over | workbench.action.debug.stepOver |
| "step into" | Step Into | workbench.action.debug.stepInto |
| "step out" | Step Out | workbench.action.debug.stepOut |
| "continue", "resume debugging" | Continue Debugging | workbench.action.debug.continue |
| "stop debugging" | Stop Debugging | workbench.action.debug.stop |
| "restart debugger" | Restart Debugger | workbench.action.debug.restart |
Git (Extended)
Additional git commands beyond the core set above.
See the Version Control section for all 27 git commands.
Editor (Extended)
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "toggle panel" | Toggle Panel | workbench.action.togglePanel |
| "toggle activity bar" | Toggle Activity Bar | workbench.action.toggleActivityBarVisibility |
| "toggle status bar" | Toggle Status Bar | workbench.action.toggleStatusbarVisibility |
| "toggle tabs" | Toggle Tabs Visibility | workbench.action.toggleTabsVisibility |
Layout & Focus
| Example Phrases | Action | VS Code Command |
|---|---|---|
| "focus terminal" | Focus Terminal | workbench.action.terminal.focus |
| "focus search" | Focus Search | workbench.view.search |
| "focus explorer" | Focus Explorer | workbench.view.explorer |
| "focus sidebar" | Focus Sidebar | workbench.action.focusSideBar |
| "focus panel" | Focus Panel | workbench.action.focusPanel |
| "focus debug console" | Focus Debug Console | workbench.debug.action.toggleRepl |
| "focus source control" | Focus Source Control | workbench.view.scm |
| "move sidebar", "sidebar position" | Toggle Sidebar Position | workbench.action.toggleSidebarPosition |
| "centered layout" | Toggle Centered Layout | workbench.action.toggleCenteredLayout |
| "maximize editor" | Maximize Editor Group | workbench.action.toggleEditorWidths |
| "rename terminal" | Rename Terminal | workbench.action.terminal.rename |
| "close all terminals" | Close All Terminals | workbench.action.terminal.killAll |
Tips
- Be natural. "run my tests", "test everything", and "execute all tests" all work.
- Typos are OK. Trigram fuzzy correction handles "comit" → "commit", "termnial" → "terminal".
- Compound commands. Use "and" / "then" to chain: "format and save", "stage all then commit".
- Trace mode shows you the full ranked list if you're unsure what Launchpad will pick.
- Status bar shows the last classified intent and confidence in the bottom-right corner.