Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (workspace-architect) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Workspace Architect
A comprehensive library of specialized AI personas and chat modes for GitHub Copilot, ranging from architectural planning and specific tech stacks to advanced cognitive reasoning models.
Overview
Workspace Architect is a CLI tool and library designed to enhance your experience with GitHub Copilot. It provides a curated collection of:
- Instructions: Detailed guidelines to set the context for Copilot.
- Prompts: Reusable prompts for specific tasks like code review or refactoring.
- Chat Modes: Specialized personas (e.g., "Azure Architect", "React Expert") to guide the conversation.
- Collections: Grouped assets for specific domains (e.g., "Web Development", "DevOps").
Why Workspace Architect?
- Curated Collections: Don't waste time hunting for individual prompts. Download a complete "Web Development" or "DevOps" suite in one command.
- Zero Friction: No installation required. Just run
npx workspace-architectin any folder. - Universal Portability: Works with any project structure. Assets are simple Markdown files that live in your repo.
- Lightweight: No complex MCP servers or heavy dependencies. Just pure context for Copilot.
- Algorithmic Curation: Our collections are continuously monitored by an intelligent TF-IDF/Cosine Similarity engine to ensure they always include the most relevant assets and exclude outdated ones with zero regression.
For Consumers
Usage
You can use this tool directly with npx without installing it globally:
npx workspace-architect listAsset Types
- Instructions (
instructions): These are system-level instructions or "custom instructions" you can add to your.github/copilot-instructions.mdor use to prime a session. - Prompts (
prompts): Specific queries or templates to ask Copilot to perform a task. - Chat Modes (
chatmodes): Specialized persona definitions that define how Copilot should behave, reason, and respond. - Collections (
collections): Bundles of the above assets tailored for specific roles or workflows.
CLI Reference
List Available Assets
View all available assets or filter by type:
# List all assets
npx workspace-architect list
# List only instructions
npx workspace-architect list instructions
# List only collections
npx workspace-architect list collectionsDownload an Asset
Download a specific asset to your project. By default, assets are downloaded to .github/<type>/.
npx workspace-architect download <type>:<name>Examples:
# Download a specific instruction file
npx workspace-architect download instructions:reactjs
# Download a collection of assets
npx workspace-architect download collections:web-frontend-developmentOptions:
-d, --dry-run: Simulate the download without writing files. Useful to see where files will be placed.-f, --force: Overwrite existing files without asking for confirmation.-o, --output <path>: Specify a custom output directory.
For Contributors
We welcome contributions! Whether you want to add a new persona, improve existing prompts, or curate a collection, here is how you can help.
Project Structure
assets/: Contains the source markdown and JSON files for all assets.chatmodes/: Persona definitions.collections/: JSON files defining groups of assets.instructions/: Contextual guidelines.prompts/: Reusable prompt templates.
bin/: Contains the CLI entry point (cli.js).scripts/: Utility scripts for maintenance and analysis.
Development Setup
Clone the repository:
git clone https://github.com/archubbuck/workspace-architect.git cd workspace-architect
Install dependencies:
npm install
Run the CLI locally: You can test your changes by running the CLI script directly:
node bin/cli.js listTest with Local Registry (Verdaccio): For a more accurate simulation of the end-user experience, we use Verdaccio as a local npm registry.
- Start the registry:
npm run start:registry - Publish to local registry:
In a new terminal:
npm run publish:local - Run with
npx:npx --registry http://localhost:4873 workspace-architect list
- Start the registry:
Quick Local Link (Alternative): For rapid iteration without publishing, you can link the package:
npm link npx workspace-architect list
Adding New Assets
Create a new markdown file in the appropriate folder (
assets/instructions,assets/prompts, orassets/chatmodes).Naming Convention: The filename becomes the ID.
- Example:
assets/instructions/my-guide.mdbecomesinstructions:my-guide. - Extensions like
.chatmode.mdor.prompt.mdare stripped from the ID but help with organization.
- Example:
Metadata: You can optionally add YAML frontmatter to your markdown files to provide a description and title.
--- title: My Custom Guide description: A guide for setting up X. --- # Content starts here...
Creating Collections
Collections are JSON files located in assets/collections/. They group multiple assets together.
Format:
{
"name": "My Collection",
"description": "A collection for X development.",
"items": [
"instructions:reactjs",
"prompts:code-review",
"chatmodes:expert-architect"
]
}Scripts
npm run generate-manifest: Generatesassets-manifest.json. This file is used by the CLI in production to know what assets are available without scanning the file system. Run this before submitting a PR.npm run analyze: Runsscripts/analyze-collections.js. This is an intelligent analysis tool that uses TF-IDF and Cosine Similarity to continuously monitor and regenerate collection profiles. It ensures collections always point to the most relevant assets with zero regression.- Use
npm run analyze -- --addto automatically add high-confidence matches. - Use
npm run analyze -- --removeto remove low-confidence items.
- Use
npm run fetch-upstream: Syncs assets from the upstreamgithub/awesome-copilotrepository (requires configuration).