A visual marketplace for discovering, installing, and managing GitHub Copilot prompt libraries from multiple sources.
- Overview
- Terminology & Architecture
- Features
- Installation
- Quick Start
- Usage
- Supported Sources
- Architecture
- Configuration
- Troubleshooting
- Contributing
- License
Prompt Registry transforms how you discover and manage GitHub Copilot prompts. Instead of manually copying prompt files or cloning repositories, browse a visual marketplace, search by tags, and install curated prompt libraries with a single click.
- π― Discover - Browse curated prompt collections from multiple sources
- β‘ Install - One-click installation with automatic Copilot sync
- π Manage - Update, organize, and uninstall bundles easily
- π₯ Share - Create and distribute your own prompt libraries
- π Multi-Platform - Works on macOS, Linux, and Windows
Understanding how Prompt Registry organizes your Copilot enhancements:
Primitives (Bottom Layer)
- Prompts - Reusable prompt templates for specific tasks
- Instructions - System instructions and guidelines
- Chat Modes - Conversation configurations
- Agents - Autonomous task execution patterns
- MCP Servers - Model Context Protocol integrations
Collection (Organization Layer) A logical grouping of primitives around a specific role, persona, or job function. Think of it as a skill set or expertise areaβe.g., "API Documentation Expert" or "Code Review Specialist". Collections live in repositories (sources) exposed via YAML manifests.
Bundle (Deployment Unit) A deployable package representing a collection. Currently used interchangeably with "collection," but enables future support for non-collection source types.
Source (Repository Layer) A repository hosting one or more bundles/collections. Examples: GitHub repo, local directory, or Awesome Copilot registry.
Profile (Composition Layer) A logical grouping of bundles from multiple sources. Allows you to compose skills from different teams/organizations into a unified workspace setupβactivate with a single click.
Hub (Enterprise Layer) A centralized repository of versioned, certified profiles and sources. Like an OS release: pre-tested combinations of tools guaranteed to work well together. Share across your organization to simplify setup and ensure consistency.
graph TD
subgraph Primitives["π§ Primitives (Copilot Enhancements)"]
Prompt["π Prompts"]
Instruction["π Instructions"]
ChatMode["οΏ½οΏ½ Chat Modes"]
Agent["π€ Agents"]
MCP["π MCP Servers"]
end
subgraph Collection["π¦ Collection/Bundle"]
CollectionGroup["Role/Skill Set
(e.g., API Expert)"]
Manifest["YAML Manifest"]
end
subgraph Source["π Source"]
SourceDesc["Repository
(GitHub, Local, etc.)"]
MultiCollections["Multiple Collections"]
end
subgraph Profile["π₯ Profile"]
ProfileDesc["Workspace Composition"]
BundleSet["Grouped Bundles
from Multiple Sources"]
end
subgraph Hub["π’ Hub"]
HubDesc["Organizational Registry"]
Profiles["Certified Profiles"]
Sources["Managed Sources"]
end
GitHub["π Copilot"]
User["π€ User"]
Prompt --> CollectionGroup
Instruction --> CollectionGroup
ChatMode --> CollectionGroup
Agent --> CollectionGroup
MCP --> CollectionGroup
CollectionGroup --> Manifest
Manifest --> SourceDesc
MultiCollections --> SourceDesc
SourceDesc --> BundleSet
BundleSet --> ProfileDesc
ProfileDesc --> Profiles
SourceDesc --> Sources
Profiles --> HubDesc
Sources --> HubDesc
HubDesc --> User
ProfileDesc --> GitHub
User -->|"1. Add Source"| Source
User -->|"2. Create Profile"| Profile
User -->|"3. Activate"| Hub
GitHub -->|"Enriched"| User
Scenario: Your organization wants to standardize AI engineering across teams.
π’ Corporate AI Hub (Central Management)
βββ π Source: DataTeam/ml-prompts (GitHub)
β βββ π¦ Bundle: "ML Model Training"
β βββ π Prompts: Training scripts, debugging tips
β βββ π Instructions: Best practices
β βββ π MCP: Model evaluation servers
β
βββ π Source: SecurityTeam/secure-coding (GitHub)
β βββ π¦ Bundle: "Security Code Review"
β βββ π Prompts: Vulnerability patterns
β βββ π Instructions: OWASP guidelines
β βββ οΏ½οΏ½ Chat Mode: Interactive security audit
β
βββ π₯ Profile: "Junior Engineer Onboarding"
βββ β
Bundle: ML Model Training (v2.1.0)
βββ β
Bundle: Security Code Review (v1.5.0)
βββ β
Bundle: API Documentation (v3.0.0)
βββ β
Bundle: Testing Best Practices (v1.8.0)
π€ New Engineer Workflow:
1. Opens VS Code
2. Opens Prompt Registry β "Import Hub"(optional)
3. Clicks "Activate Profile: Junior Engineer Onboarding"
4. β
All skills installed in one click
5. Ready to code with Copilot enhancements from day 1!
Benefits:
- β±οΈ Onboarding: Minutes instead of days
- π― Consistency: All engineers use certified versions
- π Updates: Hub maintainers update once, everyone gets new versions
- π₯ Collaboration: Cross-team skills easily shared
Browse prompt bundles in a modern, tile-based interface inspired by VS Code's extension marketplace:
- Rich Metadata: See descriptions, tags, content breakdown, and installation status
- Search & Filter: Find prompts by keywords, tags, or content type
- Content Preview: View detailed information before installing
- One-Click Install: Install bundles instantly from the marketplace
Connect to various prompt sources:
Note: some of the flows are still experimental and may not work perfectly.
| Source Type | Description | Use Case |
|---|---|---|
| Awesome Copilot | Curated community collections | Discover popular prompts |
| Local Awesome Copilot | Local awesome-copilot collections | Develop/test collections locally |
| GitHub | Direct from GitHub repositories | Team/project-specific prompts |
| Local | File system directories | Private/offline prompts |
- Install/Uninstall: Manage bundles through UI or commands
- Version Control: Track installed versions
- Auto-Sync: Automatic synchronization with GitHub Copilot
- Conflict Resolution: Handle duplicate bundles gracefully
Organize prompts by project, team, or environment:
Work Projects Profile
βββ testing-automation (v1.0.0)
βββ code-review (v2.1.0)
βββ api-documentation (v1.5.0)
Personal Profile
βββ creative-writing (v1.0.0)
βββ learning-resources (v0.9.0)
Export and import your entire Prompt Registry configuration:
- π€ Export - Save sources, profiles, and settings to JSON/YAML
- π₯ Import - Restore configuration with merge or replace strategies
- π Backup - Keep configuration safe before changes
- π₯ Share - Distribute team configurations easily
- πΎ Version Control - Track settings in Git with YAML format
Automatically detects and uses the correct directories:
- macOS:
~/Library/Application Support/Code/User/prompts - Linux:
~/.config/Code/User/prompts - Windows:
%APPDATA%/Code/User/prompts
Supports all VS Code flavors: Stable, Insiders, and Windsurf.
- Open VS Code
- Press
Ctrl+Shift+X(orCmd+Shift+Xon macOS) - Search for "Prompt Registry"
- Click Install
# Download the latest .vsix file
code --install-extension prompt-registry-2.0.0.vsixgit clone https://github.com/AmadeusITGroup/prompt-registry.git
cd prompt-registry
npm install
npm run compile
code --install-extension .First, add a prompt source to the registry:
Ctrl+Shift+P β "Prompt Registry: Add Source"
Choose a source type:
- Awesome Copilot Collection - Pre-configured curated prompts
- GitHub Repository - Enter repository URL
- Local Directory - Select a folder
Open the Prompt Registry Marketplace:
Click "MARKETPLACE" in the Prompt Registry sidebar
Or use the command:
Ctrl+Shift+P β "Prompt Registry: Open Marketplace"
Click on any bundle tile to view details, then click Install.
Your prompts are now available in GitHub Copilot! π
The marketplace provides multiple ways to discover prompts:
Type in the search box to filter by:
- Bundle name
- Description keywords
- Tags
Click filter buttons to show only:
- Prompts
- Instructions
- Chat Modes
- Agents
Click on any bundle tile to see:
- Full description
- Content breakdown (prompts, instructions, etc.)
- Installation information
- Tags and metadata
- List of included files
- Browse - Find a bundle in the marketplace
- Review - Click the tile to view details
- Install - Click the Install button
- Verify - Check the installed badge appears
- Navigate - Go to Registry Explorer in sidebar
- Find - Locate a bundle under a source
- Install - Right-click β "Install Bundle"
Ctrl+Shift+P β "Prompt Registry: Install Bundle"
# Select source β Select bundle β ConfirmCtrl+Shift+P β "Prompt Registry: Add Source"Awesome Copilot Collection (Recommended for beginners):
- Pre-configured
- Curated community prompts
- Automatically updated
GitHub Repository:
- Repository URL:
https://github.com/owner/repo - Branch:
main(optional) - Collections Path:
collections(optional)
Local Directory:
- Select a folder containing
deployment-manifest.yml
Right-click source in tree view β "Edit Source"Quickly create a new GitHub Copilot prompt project with proper structure:
Ctrl+Shift+P β "Prompt Registry: Scaffold Awesome Copilot Project"
The scaffold will create:
- Prompts - Sample prompt files
- Instructions - Getting started guides
- Chat Modes - Conversation configurations
- Collections - Organized prompt collections
- Workflows - Validation scripts
- Documentation - README and best practices
| Type | Description | Status |
|---|---|---|
| Awesome Copilot | Full-featured template with all resource types | β Available |
| Basic | Minimal template for quick starts | π Coming Soon |
| Enterprise | Advanced template with governance | π Coming Soon |
Validate your collections against the schema:
Ctrl+Shift+P β "Prompt Registry: Validate Collections"
Features:
- β JSON Schema Validation - Ensures proper structure
- π File Reference Checking - Verifies all files exist
β οΈ Best Practice Warnings - Helpful suggestions- π Detailed Reports - Clear error messages
Right-click source in tree view β "Remove Source"Profiles help organize bundles by project, team, or environment.
Ctrl+Shift+P β "Prompt Registry: Create Profile"
# Enter profile name (e.g., "Work Projects")When installing a bundle:
1. Choose "Profile" scope
2. Select target profile
3. Bundle installs only to that profileCtrl+Shift+P β "Prompt Registry: Switch Profile"
# Select active profileSidebar β "My Profiles" β Select profile
# See all bundles in that profileHubs provide centralized configuration management for sources and profiles.
Create a hub configuration from your current sources and profiles:
Ctrl+Shift+P β "Prompt Registry: Export Hub Configuration"
# Provide hub details:
# - Hub Name
# - Description
# - Maintainer Name>
# Save as hub-config.yml
# Commit to version control or share with your teamUse Cases:
- Share team configurations across organization
- Version control your prompt setup
- Create reusable hub templates
- Backup your current configuration
Ctrl+Shift+P β "Prompt Registry: Import Hub"
# Choose source type: GitHub or Local
# Provide hub locationCtrl+Shift+P β "Prompt Registry: Browse Hub Profiles"
# View and activate profiles from imported hubsRight-click hub in Registry Explorer β "Sync Hub"
# Updates hub configuration and profilesHubs use YAML format with metadata, sources, and profiles:
version: "1.0.0"
metadata:
name: "Team Hub"
description: "Shared prompt configuration"
sources:
- id: "team-prompts"
type: "github"
repository: "org/prompts"
profiles:
- id: "backend"
name: "Backend Developer"
bundles:
- id: "api-design"
version: "latest"The Registry Explorer sidebar provides a comprehensive view of your Prompt Registry ecosystem.
Access via the sidebar icon or:
Ctrl+Shift+P β "View: Show Prompt Registry Explorer"π¦ Installed Bundles
- View all installed bundles by scope (User/Workspace)
- Right-click for actions: View Details, Update, Uninstall, Check Updates
- See installation status and version information
π₯ My Profiles
- Manage profile-based installations
- Right-click for actions: Activate, Edit, Export, Delete
- Quick profile switching
π‘ Sources
- View all configured sources with priority and status
- Right-click context menu for quick actions:
- Edit Source - Modify configuration, change priority, toggle enabled/disabled
- Sync Source - Refresh bundle listings from source
- Toggle Enabled/Disabled - Quick enable/disable without editing
- Remove Source - Delete source configuration
- Status indicators: β (enabled) or β (disabled)
βοΈ Settings Management
- Export Settings - Save complete configuration (sources, profiles, settings)
- JSON format: Pretty-printed, easy to read
- YAML format: Human-friendly, version control compatible
- Import Settings - Restore or share configuration
- Merge strategy: Add new sources/profiles, keep existing
- Replace strategy: Clear all, restore from file
- Format auto-detection from file extension
Export your entire Prompt Registry configuration for backup, sharing, or migration:
# Export
1. Click Export button in Registry Explorer toolbar
2. Choose format: JSON or YAML
3. Select save location
4. Optionally open file after export
# Import
1. Click Import button in Registry Explorer toolbar
2. Select settings file (.json, .yaml, .yml)
3. Choose strategy:
- Merge: Add new items, keep existing
- Replace: Clear all, restore from file
4. Confirm operationWhat's Included in Export:
- All sources with URLs, types, priorities, and credentials
- All profiles with their bundle associations
- Extension settings (auto-updates, logging, etc.)
- Timestamp and version information
Use Cases:
- π Backup - Save configuration before major changes
- π₯ Team Sharing - Distribute standard source configurations
- οΏ½οΏ½ Multi-Machine - Sync settings across workstations
- π§ Version Control - Track configuration changes in Git
Pre-configured curated source for community prompts.
Type: awesome-copilot
URL: https://github.com/github/awesome-copilot
Branch: main
Collections Path: collectionsFeatures:
- β Community-curated collections
- β Well-tested prompts
- β Regular updates
- β Wide variety of use cases
Local filesystem-based awesome-copilot collections for development and testing.
Type: local-awesome-copilot
URL: /path/to/collections # or file:///path/to/collections
Collections Path: collections (default)Features:
- β Develop collections locally before publishing
- β Test collection structure and content
- β No network dependencies
- β Fast iteration during development
- β Same format as awesome-copilot adapter
Directory Structure:
/path/to/collections/
βββ collections/
β βββ azure-cloud.collection.yml
β βββ python-dev.collection.yml
βββ prompts/
β βββ azure-resource-health.prompt.md
β βββ python-testing.prompt.md
βββ instructions/
βββ bicep-best-practices.instructions.md
Collection File Format (.collection.yml):
id: my-collection
name: My Collection
description: Description of your collection
tags: [tag1, tag2, tag3]
items:
- path: prompts/example.prompt.md
kind: prompt
- path: instructions/guidelines.instructions.md
kind: instruction
- path: chatmodes/mode.chatmode.md
kind: chat-modeAdd Local Collection Source:
- Open Command Palette (
Ctrl+Shift+P) - Run
Prompt Registry: Add Source - Select type:
local-awesome-copilot - Enter path:
/path/to/your/collections - Bundles appear in Registry Explorer
Use Cases:
- π§ Development - Build and test collections locally
- π§ͺ Testing - Validate structure before GitHub push
- π Prototyping - Quick experimentation with prompts
- π Documentation - Create examples for contributors
Any GitHub repository with collections.
Type: github
URL: https://github.com/owner/repo
Branch: main
Collections Path: prompts/collectionsRequirements:
- Repository must be public (or provide authentication)
- Collections directory with
.collection.ymlfiles - Each collection references prompt files
graph TB
subgraph "User Interface"
MV[Marketplace View]
TV[Tree View]
end
subgraph "Core Services"
RM[Registry Manager]
BI[Bundle Installer]
CS[Copilot Sync]
end
subgraph "Adapters"
ACA[Awesome Copilot]
GHA[GitHub]
GLA[GitLab]
HTA[HTTP]
LCA[Local]
end
MV --> RM
TV --> RM
RM --> BI
BI --> CS
RM --> ACA
RM --> GHA
RM --> GLA
RM --> HTA
RM --> LCA
style RM fill:#4CAF50
style BI fill:#2196F3
style CS fill:#FF9800
For detailed architecture, see ARCHITECTURE.md
- Registry Manager: Orchestrates sources, bundles, and installations
- Bundle Installer: Handles extraction, validation, and installation
- Copilot Sync: Syncs bundles to GitHub Copilot directories
- Adapters: Source-specific implementations (GitHub, GitLab, etc.)
- UI Providers: Marketplace and tree view interfaces
sequenceDiagram
participant User
participant Marketplace
participant Adapter
participant Installer
participant Copilot
User->>Marketplace: Click Install
Marketplace->>Adapter: Download bundle
Adapter-->>Installer: ZIP archive
Installer->>Installer: Extract & validate
Installer->>Copilot: Sync prompts
Copilot-->>User: Ready to use
Access via File β Preferences β Settings β Extensions β Prompt Registry
| Setting | Description | Default |
|---|---|---|
promptRegistry.autoSync |
Auto-sync to Copilot on install | true |
promptRegistry.cacheTimeout |
Bundle cache TTL (minutes) | 5 |
promptRegistry.defaultScope |
Default installation scope | user |
promptRegistry.showNotifications |
Show success notifications | true |
Sources are stored in ~/.vscode/extensions/.../registry.json:
{
"sources": [
{
"id": "awesome-copilot",
"name": "Awesome Copilot Collection",
"type": "awesome-copilot",
"url": "https://github.com/microsoft/prompt-bundle-spec",
"enabled": true
}
]
}Problem: Installed bundles don't appear in GitHub Copilot.
Solution:
- Check sync completed: View extension logs
- Verify directory: Check OS-specific path exists
- Restart VS Code: Reload window (
Ctrl+R) - Manual sync: Run "Prompt Registry: Sync All Bundles"
Problem: "Failed to install bundle" error.
Solutions:
- Network Error: Check internet connection
- Permission Error: Ensure write access to user directory
- Invalid Bundle: Verify bundle has valid manifest
- Disk Space: Check available storage
Problem: Cannot fetch bundles from source.
Solutions:
- GitHub: Check repository URL and visibility
- Authentication: Add access token if needed
- Network: Verify HTTPS access not blocked
- Rate Limiting: Wait before retrying
Problem: Prompts install to ~/.config/Code instead of ~/Library/Application Support/Code.
Solution: Update to latest version (2.0.0+) with proper macOS support.
Enable debug logging:
{
"promptRegistry.debug": true
}View logs in Output panel: View β Output β Prompt Registry
- π Documentation
- π Report Issues
- π¬ Discussions
- π§ Email Support
We welcome contributions! See CONTRIBUTING.md for guidelines.
# Clone repository
git clone https://github.com/AmadeusITGroup/prompt-registry.git
cd prompt-registry
# Install dependencies
npm install
# Compile
npm run compile
# Watch mode (auto-compile)
npm run watch
# Run tests
npm test
# Package extension
vsce packageSee ARCHITECTURE.md#extension-points for details on implementing custom adapters.
prompt-registry/
βββ src/
β βββ adapters/ # Source adapters
β βββ commands/ # Command implementations
β βββ services/ # Core services
β βββ ui/ # UI providers
β βββ types/ # TypeScript types
β βββ utils/ # Utilities
βββ docs/ # Documentation
βββ test/ # Test suites
βββ package.json # Extension manifest
- β Visual marketplace interface
- β Multi-source support (6 adapter types)
- β Profile management
- β Cross-platform support (macOS, Linux, Windows)
- β Auto-sync with GitHub Copilot
- β Search and filtering
- β Clickable marketplace tiles
- π Community ratings and reviews
- π Repository level installation support
- π MCP Support (experimental at the moment)
- π More package types (APM, Packmind..)
- π Bundle authoring tools
- π AI-powered recommendations
- π Collaborative prompt sharing
- π Bundle analytics
- π Proper adapters for GitLab, HTTP ..
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
- Microsoft - For GitHub Copilot and VS Code
- Awesome Copilot Community - For curated prompt collections
- Contributors - Everyone who has contributed to this project
- Supported Source Types: 4 (GitHub, Local, Awesome Copilot, Local Awesome Copilot)
- Platforms: macOS, Linux, Windows
- VS Code Flavors: Stable, Insiders, Windsurf
- Architecture: Adapter pattern with extensible design
- Bundle Format: YAML-based deployment manifests
- Homepage: https://prompt-registry.dev
- Documentation: https://docs.prompt-registry.dev
- GitHub: https://github.com/AmadeusITGroup/prompt-registry
- Issues: https://github.com/AmadeusITGroup/prompt-registry/issues
- Marketplace: VS Code Marketplace
Made with β€οΈ by the Prompt Registry Team
