GatomIA is a VS Code extension that brings Agentic Spec-Driven Development to your workflow, leveraging SpecKit, OpenSpec, and GitHub Copilot.
It allows you to visually manage Specs, Steering documents (Constitution/AGENTS.md), and custom prompts, seamlessly integrating with GitHub Copilot Chat to generate high-quality documentation and code.
This project is under continuous development. Some features may still exhibit unexpected behavior, contain bugs, or be only partially implemented.
Bug reports, suggestions, and general feedback are highly appreciated! They play a crucial role in helping us stabilize and improve the extension.
We are actively working on:
- Stabilizing all existing features
- Implementing the upcoming functionalities from our roadmap
- Improving overall reliability and user experience
You can follow our progress, open issues, or contribute directly through our official repository:
https://github.com/eitatech/gatomia-vscode/issues
- Agent Discovery: Automatically discover and register agents from
resources/agents/directory as Copilot Chat participants - Ask Agents: Interact with agents directly in GitHub Copilot Chat with intelligent command suggestions and autocomplete
- Tool Execution: Execute agent-defined tools with comprehensive error handling and real-time progress feedback
- Resource Management: Automatic loading and caching of agent resources (prompts, skills, instructions)
- Prompts: Template prompts available to agents for consistent responses
- Skills: Domain knowledge packages that agents can reference
- Instructions: Behavior guidelines that shape agent responses
- Hot-Reload: Real-time resource updates without extension reload (configurable, enabled by default)
- Configuration: Customize agent behavior through extension settings
- resourcesPath: Directory containing agents and resources (default:
resources) - enableHotReload: Auto-reload resources on file changes (default: true)
- logLevel: Logging verbosity for debugging (default: info)
- resourcesPath: Directory containing agents and resources (default:
- Example Implementation: Built-in example agent and tool handlers demonstrating best practices
- Comprehensive Help: Built-in
/helpcommand for all agents with full documentation
- Create Specs: Run
GatomIA: Create New Spec(gatomia.spec.create) to open the creation dialog. Define your summary, product context, and constraints. - Support for Multiple Systems: Choose between SpecKit (Recommended) or OpenSpec for your Spec-Driven Development workflow.
- Generate with Copilot: The extension compiles your input into an optimized prompt and sends it to GitHub Copilot Chat to generate the full specification.
- Manage Specs: Browse generated specs in the Specs view.
- Execute Tasks: Open
tasks.mdand use the "Start Task" CodeLens to send task context to GitHub Copilot Chat for implementation.
- Custom Prompts: Manage Markdown prompts under
.github/prompts(configurable) alongside instructions and agents to keep all project guidance in one place. - Project Instructions & Agents: The Prompts explorer shows
Project InstructionsandProject Agentsgroups, surfacing.github/instructionsand.github/agentsfiles. - Run Prompts: Execute prompts directly from the tree view, passing the context to GitHub Copilot Chat.
- Rename or Delete: Use the item context menu to rename or delete prompts.
- Instruction Rules: Create and manage instruction rules for GitHub Copilot at both project (
.github/instructions/*.instructions.md) and user ($HOME/.github/instructions/*.instructions.md) levels.- Project Rules: Standardize team guidelines within the repository
- User Rules: Define personal reusable guidance without committing to the repo
- Constitution: Request Constitution document generation via
Create Constitutionbutton with AI-assisted drafting
- Constitution / Agents: Manage your project's "Constitution" (SpecKit) or "AGENTS.md" (OpenSpec) to steer Copilot's behavior.
- Global Instructions: Configure global instructions for Copilot across all your projects.
- Migrate to SpecKit: Easily migrate existing OpenSpec projects to the modern SpecKit structure using the
GatomIA: Migrate to SpecKitcommand.
- MCP Hooks Integration: Automate workflows by creating hooks that trigger MCP (Model Context Protocol) actions when agent operations complete.
- Browse MCP Servers: Discover available MCP servers and tools configured in your GitHub Copilot setup.
- Configure Actions: Set up hooks to execute MCP tools automatically (e.g., create GitHub issues, send Slack notifications) after operations like spec generation or task completion.
- Timing Control: Choose when hooks execute - before or after agent operations complete.
- Before Execution: Run hooks before agent starts (with optional blocking to wait for completion)
- After Execution: Run hooks after agent completes (default behavior)
- Output Capture: Access agent-generated content in hook templates using special variables:
- $agentOutput: File content generated by the triggering agent
- $clipboardContent: Current clipboard content at time of execution
- $outputPath: Path to the file generated by the agent
- Template Variables: Use dynamic variables in hook actions for context-aware automation.
- Execution Tracking: View execution logs and monitor hook performance in real-time.
- Error Handling: Graceful degradation when MCP servers are unavailable, with automatic retry logic for transient failures.
- First-Time Setup: Interactive welcome screen appears on first activation to guide you through extension setup.
- Dependency Detection: Automatically checks for GitHub Copilot Chat, SpecKit CLI, and OpenSpec CLI installations.
- Quick Installation: One-click install buttons copy installation commands to your clipboard.
- Configuration Management: Edit key settings directly from the welcome screen with inline validation.
- Learning Resources: Browse documentation, examples, and tutorials organized by category.
- Feature Discovery: Explore all extension features with quick-access command buttons.
- System Health: Monitor extension status with real-time diagnostics and health indicators.
- Persistent Access: Re-open welcome screen anytime via
GatomIA: Show Welcome Screencommand.
- Visual Studio Code 1.84.0 or newer.
- GitHub Copilot Chat extension must be installed.
-
Install the Specify CLI globally:
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git
-
Initialize SpecKit in your project:
specify init --here --ai copilot
If you prefer OpenSpec:
-
Install the CLI globally:
npm install -g @fission-ai/openspec@latest
-
Initialize in your project:
openspec init
Search for "GatomIA" in the VS Code Marketplace and install the extension.
- Build the package with
npm run package(producesgatomia-<version>.vsix). - Install via
code --install-extension gatomia-<version>.vsix.
- Open the Specs view in the Activity Bar.
- Click Create New Spec.
- Fill in the details (Product Context is required).
- Click Create Spec. This will open GitHub Copilot Chat with a generated prompt.
- Follow the chat instructions to generate the spec files.
- Open a generated
tasks.mdfile. - Click Start All Tasks above a checklist item.
- GitHub Copilot Chat will open with the task context. Interact with it to implement the code.
- Open the Steering view in the Activity Bar.
- Create Project Rule:
- Click Create Project Rule button
- Enter a name (e.g., "TypeScript Rules")
- Edit the generated
.github/instructions/<name>.instructions.mdfile
- Create User Rule:
- Click Create User Rule button
- Enter a name for personal guidance
- Edit the generated
$HOME/.github/instructions/<name>.instructions.mdfile
- Create Constitution:
- Click Create Constitution button
- Enter a brief description (e.g., "Python project with FastAPI")
- Copilot Chat opens with
/speckit.constitutionprompt - The agent generates your
constitution.md
GatomIA auto-discovers agents defined in resources/agents/ and registers them with GitHub Copilot Chat. You can interact with them directly in the chat interface.
Using Agents:
- Open GitHub Copilot Chat (Ctrl+Shift+I / Cmd+Shift+I)
- Type
@to see available agents (e.g.,@example-agent,@speckit,@task-planner) - Type a command after the agent name (e.g.,
@example-agent /hello) - Press Enter to execute the agent command
- The agent executes its tool handler and returns results as markdown
Available Commands:
@agent /help- Show all available commands for the agent@agent /help <command>- Show detailed documentation for a specific command- Agent-specific commands as defined in
resources/agents/<agent>.agent.md
Creating Custom Agents:
-
Create a file at
resources/agents/my-agent.agent.md:--- id: my-agent name: My Agent fullName: My Custom Agent Implementation description: Describes what this agent does commands: - name: analyze description: Analyze project structure tool: my.analyze resources: prompts: [analysis.prompt.md] skills: [expertise.skill.md] --- # My Agent Documentation about the agent...
-
Create tool handlers in
src/features/agents/tools/(reference example-tool-handler.ts) -
Register tools in the tool registry during extension initialization
-
Agents are auto-discovered and registered when the extension activates
Configuration:
Access agent settings in VS Code: Settings → GatomIA → Agents
| Setting | Type | Default | Purpose |
|---|---|---|---|
gatomia.agents.resourcesPath |
string | resources |
Directory containing agents and resources. |
gatomia.agents.enableHotReload |
boolean | true |
Auto-reload resources when files change. |
gatomia.agents.logLevel |
string | info |
Logging verbosity (debug, info, warn, error). |
For more details, see src/features/agents/README.md.
- Open the Hooks view in the Activity Bar.
- Click Create New Hook.
- Configure the trigger (e.g., after "plan" operation in "speckit" agent).
- Select an action type (MCP, Agent, Git, GitHub, or Custom).
- For MCP actions:
- Browse available MCP servers and tools
- Map parameters using context variables or literal values
- Save and enable the hook
- Execute operations that match your trigger.
- View execution logs in the Hooks view to monitor automation.
All settings live under the gatomia namespace.
| Setting | Type | Default | Purpose |
|---|---|---|---|
gatomia.chatLanguage |
string | English |
The language GitHub Copilot should use for responses. |
gatomia.specSystem |
string | auto |
The Spec System to use (auto, speckit, openspec). |
gatomia.speckit.specsPath |
string | specs |
Path for SpecKit specs. |
gatomia.speckit.memoryPath |
string | .specify/memory |
Path for SpecKit memory. |
gatomia.speckit.templatesPath |
string | .specify/templates |
Path for SpecKit templates. |
gatomia.copilot.specsPath |
string | openspec |
Path for OpenSpec specs. |
gatomia.copilot.promptsPath |
string | .github/prompts |
Path for Markdown prompts. |
gatomia.views.specs.visible |
boolean | true |
Show or hide the Specs explorer. |
gatomia.views.prompts.visible |
boolean | true |
Toggle the Prompts explorer. |
gatomia.views.steering.visible |
boolean | true |
Toggle the Steering explorer. |
gatomia.views.settings.visible |
boolean | true |
Toggle the Settings overview. |
.specify/
├── constitution.md # Global steering rules
├── memory/ # Project memory
├── templates/ # Spec templates
specs/ # Feature specifications
├── 001-feature-name/
│ ├── spec.md
│ └── 001-task-name.md
openspec/
├── AGENTS.md # Project-specific steering rules
├── project.md # Project specification
├── specs/
│ ├── <spec>/
│ ├── requirements.md
│ ├── design.md
│ └── tasks.md
- Install dependencies:
npm run install:all
- Build:
npm run build
- Launch:
- Press
F5inside VS Code.
- Press
MIT License. See LICENSE.