Ponytail VS Code Extension Commands: Complete Reference Guide
The Ponytail VS Code extension registers six core commands in pi-extension/index.js that expose mode configuration and specialized skills through the Pi-assistant API.
The Ponytail extension by DietrichGebert provides a streamlined command interface for developers working within the VS Code ecosystem. These Ponytail VS Code extension commands enable users to configure operational modes and execute domain-specific skills directly from the command palette or chat interface, with all handlers defined in the extension's main entry point.
Core Command Structure
The extension exposes one primary configuration command and five specialized skill commands. Each registration occurs at specific line numbers in pi-extension/index.js, creating a predictable API surface for automation scripts and manual invocation.
Mode Management with /ponytail
The main ponytail command (registered at line 114) handles all mode-related interactions and configuration persistence. This command accepts sub-arguments to control the extension's behavior:
- Mode switching: Set active processing levels (
lite,full, orultra) - Status checks: Display current mode and default settings
- Default configuration: Persist a specific mode as the startup default
Usage follows the pattern /ponytail <subcommand> where subcommands include the mode name directly, status, or default <mode>.
Skill Execution Commands
The remaining five commands function as lightweight wrappers that forward requests to specific skills using the sendAlias helper. Each skill command maps to a distinct analysis or assistance capability:
| Command | Registration Line | VS Code Palette Name | Purpose |
|---|---|---|---|
ponytail-review |
Line 149 | Ponytail: Review | Execute code review skill |
ponytail-audit |
Line 154 | Ponytail: Audit | Run security/quality audit |
ponytail-gain |
Line 159 | Ponytail: Gain | Access gain optimization |
ponytail-debt |
Line 164 | Ponytail: Debt | Analyze technical debt |
ponytail-help |
Line 169 | Ponytail: Help | Display help documentation |
Each registration uses the VS Code commands API to bind the slash-command syntax to the corresponding skill handler.
Invoking Commands in VS Code
Users can trigger these commands through two primary interfaces: the Pi-assistant chat input using slash commands, or the VS Code Command Palette by typing the friendly command names (e.g., Ponytail: Review).
JavaScript API Examples
When interacting programmatically with the Pi-assistant extension API, use the following patterns:
// Change Ponytail mode to "full"
pi.sendUserMessage('/ponytail full');
// Show current mode and default configuration
pi.sendUserMessage('/ponytail status');
// Set the persistent default mode to "lite"
pi.sendUserMessage('/ponytail default lite');
// Execute a specific skill directly
pi.sendUserMessage('/ponytail-audit');
pi.sendUserMessage('/ponytail-review');
These calls dispatch to the handlers defined in pi-extension/index.js, which validate the input and route to the appropriate skill execution logic.
Source Code Architecture
The command surface is centralized in two key files within the repository:
pi-extension/index.js: Contains the command registration logic and handler implementations. Lines 114 through 169 define the six command entries that VS Code exposes to users.pi-extension/package.json: Defines the extension manifest and npm metadata, marking the package as private and configuring test scripts.
The sendAlias helper function (referenced in skill command implementations) forwards standardized messages to the underlying skill engine, ensuring consistent behavior across all five specialized commands.
Summary
- The Ponytail extension provides six VS Code commands: one mode manager and five skill executors.
- All commands register in
pi-extension/index.jsbetween lines 114 and 169. - The
/ponytailcommand supportslite,full, andultramodes with subcommands forstatusanddefaultconfiguration. - Skill commands (
review,audit,gain,debt,help) wrap thesendAliashelper for consistent skill invocation. - Commands are accessible via slash syntax in chat or friendly names in the VS Code Command Palette.
Frequently Asked Questions
How do I change the Ponytail mode in VS Code?
Type /ponytail followed by the desired mode name (lite, full, or ultra) in the Pi-assistant chat input. To make the change persistent across sessions, use /ponytail default <mode> instead. You can verify the current configuration at any time by running /ponytail status.
What skills does the Ponytail extension provide?
According to the source code in pi-extension/index.js, the extension exposes five distinct skills: Review for code analysis, Audit for security and quality checks, Gain for optimization suggestions, Debt for technical debt assessment, and Help for documentation access. Each skill has a dedicated command registration between lines 149 and 169.
Where are the command handlers defined in the source code?
All command handlers reside in pi-extension/index.js within the DietrichGebert/ponytail repository. The main ponytail command handler registers at line 114, while the skill-specific handlers (ponytail-review, ponytail-audit, ponytail-gain, ponytail-debt, and ponytail-help) register at lines 149, 154, 159, 164, and 169 respectively.
Can I use these commands outside of the VS Code command palette?
Yes. While the commands appear in the VS Code Command Palette as "Ponytail: [Command Name]", they are primarily designed for the Pi-assistant API interface. You can invoke them programmatically using pi.sendUserMessage('/command-name') from any extension script or automation tool that has access to the Pi-assistant API object.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →