GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Augment home page
  • Status
  • Blog
  • Support
  • Introduction
  • Getting Started
  • Configuring Cosmos
  • Sessions
  • Keyboard shortcuts
  • Overview
  • What's new in 1.x
  • Settings
  • Subagents
  • Rules & Guidelines

This view

  • Original page
  • New address

GeezerVison is showing docs.augmentcode.com — Plugins and Marketplaces - Augment

​
About Plugins

Auggie supports a plugin system that allows you to extend its functionality with custom commands, subagents, hooks, skills, and MCP server integrations. Plugins are distributed through marketplaces - Git repositories that contain collections of plugins.

​
Interactive Plugin Browser

The easiest way to manage plugins is through the interactive plugin browser in Auggie’s TUI (Terminal User Interface).

​
Opening the Plugin Browser

In interactive mode, use the /plugins slash command to open the plugin browser:
# Start Auggie in interactive mode
auggie

# Then type:
/plugins

​
Plugin Browser Features

The plugin browser has three tabs. Press Tab or the left and right arrow keys to switch tabs, and type to filter. Plugins Tab
  • View available plugins from your installed marketplaces
  • Press Space to enable or disable a plugin
  • Press Enter to see plugin details, including whether it’s enabled and any problems loading it
Marketplace Tab
  • View installed plugin marketplaces
  • Add new marketplaces from GitHub repositories
  • Browse plugins within each marketplace
Errors Tab
  • View problems found while loading marketplaces and plugins

​
Plugin Settings Reference

​
enabledPlugins

Controls which plugins are enabled. This setting is a record mapping plugin IDs to boolean values.
  • Type: Record<string, boolean>
  • Default: {}
  • File: Any settings file (user, project, or local)
Example:
{
  "enabledPlugins": {
    "my-plugin@my-marketplace": true,
    "another-plugin@my-marketplace": false
  }
}

​
CLI Commands

# Add a marketplace
auggie plugin marketplace add owner/repo

# Load plugins from a local marketplace directory for one run
auggie --plugin-dir /path/to/marketplace
Use /plugins in interactive mode to enable, disable, and inspect plugins.

​
The .augment-plugin Folder

The .augment-plugin folder is the core configuration directory for Auggie plugins and marketplaces. This folder contains manifest files that define the plugin or marketplace metadata and structure.
.claude-plugin is also supported for backwards compatibility with Claude Code plugins. See the Compatibility with .claude-plugin section for more details.

​
Marketplace Manifest (marketplace.json)

The marketplace.json file defines your marketplace and lists all available plugins for discovery:
{
  "name": "my-marketplace",
  "description": "A collection of useful Auggie plugins",
  "version": "1.0.0",
  "plugins": [
    {
      "name": "hello-commands",
      "description": "Example slash commands",
      "version": "1.0.0",
      "source": "./plugins/hello-commands",
      "category": "productivity",
      "tags": ["commands", "example"]
    },
    {
      "name": "code-guard",
      "description": "Security-focused hooks",
      "version": "1.0.0",
      "source": "./plugins/code-guard",
      "category": "security",
      "tags": ["hooks", "security"]
    }
  ]
}

​
Plugin Components

Plugins can provide multiple types of components:

​
Custom Commands

Slash commands are Markdown files in the commands/ directory. The command name combines the plugin name, marketplace name, and filename. For example, hello.md in the hello-commands plugin from my-marketplace creates /hello-commands--my-marketplace:hello:
---
description: Greet the user
---

Say hello to the user in a friendly way. Ask them how their day is going.

​
Subagents

Specialized agents in the agents/ directory that Auggie can invoke for specific tasks:
---
description: A refactoring specialist
color: yellow
---

# Refactor Agent

You are an expert at code refactoring. When invoked, analyze the code
and suggest improvements for readability, maintainability, and performance.

​
Hooks

Event handlers that respond to Auggie events. Configure in hooks/hooks.json:
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "${AUGMENT_PLUGIN_ROOT}/hooks/format.sh $FILE"
          }
        ]
      }
    ]
  }
}

​
MCP Servers

Model Context Protocol integrations defined in .mcp.json or within plugin.json:
{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

​
Skills

Agent Skills in the skills/ directory that extend Auggie’s capabilities:
skills/
└── pdf-processor/
    ├── SKILL.md
    └── scripts/
        └── process.py

​
Compatibility with .claude-plugin

Auggie’s plugin system is designed to be backwards compatible with Claude Code’s .claude-plugin format. This means:
  1. Directory Recognition: Auggie recognizes both .augment-plugin and .claude-plugin directories
  2. Manifest Format: The plugin.json schema is compatible between both systems
  3. Component Structure: Commands, agents, hooks, MCP servers, and skills use the same directory layout
  4. Easy Migration: Existing Claude Code plugins work with Auggie with minimal or no changes

​
Using Claude Code Plugins

If you have an existing Claude Code plugin with a .claude-plugin folder, Auggie can use it directly:
# Install from a marketplace containing Claude Code plugins
auggie plugin marketplace add anthropics/skills

# Then enable the plugin from /plugins in interactive mode

​
Creating Compatible Plugins

To create plugins that work with both Auggie and Claude Code:
  1. Use .augment-plugin as the primary configuration folder (Auggie will also check for .claude-plugin)
  2. Follow the same manifest schema for plugin.json
  3. Use the same directory structure for commands, agents, hooks, etc.

​
Creating a Marketplace

A marketplace is a GitHub repository that hosts one or more plugins. Anyone can create and share their own marketplace.

​
Marketplace Structure

my-marketplace/
├── .augment-plugin/
│   └── marketplace.json
├── plugins/
│   ├── hello-commands/
│   │   ├── .augment-plugin/
│   │   │   └── plugin.json
│   │   └── commands/
│   │       └── hello.md
│   ├── code-guard/
│   │   ├── .augment-plugin/
│   │   │   └── plugin.json
│   │   └── hooks/
│   │       ├── hooks.json
│   │       └── check.py
│   └── full-example/
│       ├── .augment-plugin/
│       │   └── plugin.json
│       ├── commands/
│       ├── agents/
│       ├── skills/
│       ├── hooks/
│       └── .mcp.json
└── README.md

​
Hosting a Marketplace on GitHub

To share your marketplace publicly, host it on GitHub:

​
Step 1: Create the Repository

  1. Create a new public GitHub repository
  2. Add your marketplace structure with .augment-plugin/marketplace.json
  3. Add your plugins in the plugins/ directory

​
Step 2: Add Plugin Manifests

Each plugin needs its own .augment-plugin/plugin.json:
{
  "name": "my-plugin",
  "description": "What this plugin does",
  "version": "1.0.0",
  "author": {
    "name": "Your Name"
  },
  "keywords": ["productivity", "tools"]
}

​
Step 3: Add a README

Create a README.md to help users discover and understand your plugins:
# My Plugin Marketplace

A collection of plugins for Auggie.

## Installation

\`\`\`sh
auggie plugin marketplace add yourusername/your-repo
\`\`\`

## Available Plugins

- **hello-commands**: Simple greeting commands
- **code-guard**: Security validation hooks

​
Step 4: Publish and Share

  1. Push your code to GitHub
  2. Share the repository path with users
  3. Users can add your marketplace with:
auggie plugin marketplace add yourusername/your-repo

​
Example: Complete Marketplace Repository

See justinxu421/auggie-plugin for a complete example marketplace with:
  • Multiple plugins demonstrating different capabilities
  • Commands, hooks, agents, and MCP server configurations
  • Proper manifest files and documentation
To try this example:
# Add the example marketplace
auggie plugin marketplace add justinxu421/auggie-plugin

# Then run /plugins in interactive mode to enable full-example

​
Environment Variables

Plugins can use these environment variables in their configurations:
VariableDescription
${AUGMENT_PLUGIN_ROOT}Path to the plugin’s root directory
${AUGGIE_PLUGIN_ROOT}Alias for AUGMENT_PLUGIN_ROOT
${CLAUDE_PLUGIN_ROOT}Alias for AUGMENT_PLUGIN_ROOT (for Claude Code compatibility)
These variables are supported in:
  • Hook commands (hooks/hooks.json)
Example usage in hooks/hooks.json:
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "${AUGMENT_PLUGIN_ROOT}/hooks/format.sh $FILE"
          }
        ]
      }
    ]
  }
}

​
Best Practices

​
For Plugin Authors

  1. Use semantic versioning for your plugin versions
  2. Add descriptive metadata in your manifest files
  3. Include a README with installation and usage instructions
  4. Test locally before publishing using --plugin-dir:
    auggie --plugin-dir ./my-plugin
    

​
For Marketplace Maintainers

  1. Organize plugins by category in your marketplace
  2. Use tags to help users discover plugins
  3. Keep the marketplace updated by pulling the latest changes
  4. Document each plugin with clear descriptions

​
See Also

  • Custom Commands - Create reusable command templates
  • Subagents - Create specialized agents
  • Hooks - Automate actions with event hooks
  • Integrations - Connect external tools and services
  • Interactive Mode - Learn about Auggie’s TUI features
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.