workspace-architect 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +150 -35
- package/assets-manifest.json +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,62 +1,177 @@
|
|
|
1
1
|
# Workspace Architect
|
|
2
2
|
|
|
3
|
-
A comprehensive library of specialized AI personas and chat modes for GitHub Copilot,
|
|
3
|
+
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.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Overview
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Workspace Architect is a CLI tool and library designed to enhance your experience with GitHub Copilot. It provides a curated collection of:
|
|
8
|
+
|
|
9
|
+
* **Instructions**: Detailed guidelines to set the context for Copilot.
|
|
10
|
+
* **Prompts**: Reusable prompts for specific tasks like code review or refactoring.
|
|
11
|
+
* **Chat Modes**: Specialized personas (e.g., "Azure Architect", "React Expert") to guide the conversation.
|
|
12
|
+
* **Collections**: Grouped assets for specific domains (e.g., "Web Development", "DevOps").
|
|
13
|
+
|
|
14
|
+
## Why Workspace Architect?
|
|
15
|
+
|
|
16
|
+
* **Curated Collections**: Don't waste time hunting for individual prompts. Download a complete "Web Development" or "DevOps" suite in one command.
|
|
17
|
+
* **Zero Friction**: No installation required. Just run `npx workspace-architect` in any folder.
|
|
18
|
+
* **Universal Portability**: Works with any project structure. Assets are simple Markdown files that live in your repo.
|
|
19
|
+
* **Lightweight**: No complex MCP servers or heavy dependencies. Just pure context for Copilot.
|
|
20
|
+
* **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.
|
|
21
|
+
|
|
22
|
+
## For Consumers
|
|
23
|
+
|
|
24
|
+
### Usage
|
|
25
|
+
|
|
26
|
+
You can use this tool directly with `npx` without installing it globally:
|
|
8
27
|
|
|
9
28
|
```bash
|
|
10
|
-
npx workspace-architect
|
|
29
|
+
npx workspace-architect list
|
|
11
30
|
```
|
|
12
31
|
|
|
13
|
-
###
|
|
32
|
+
### Asset Types
|
|
33
|
+
|
|
34
|
+
* **Instructions (`instructions`)**: These are system-level instructions or "custom instructions" you can add to your `.github/copilot-instructions.md` or use to prime a session.
|
|
35
|
+
* **Prompts (`prompts`)**: Specific queries or templates to ask Copilot to perform a task.
|
|
36
|
+
* **Chat Modes (`chatmodes`)**: Specialized persona definitions that define how Copilot should behave, reason, and respond.
|
|
37
|
+
* **Collections (`collections`)**: Bundles of the above assets tailored for specific roles or workflows.
|
|
38
|
+
|
|
39
|
+
### CLI Reference
|
|
14
40
|
|
|
15
41
|
#### List Available Assets
|
|
16
42
|
|
|
43
|
+
View all available assets or filter by type:
|
|
44
|
+
|
|
17
45
|
```bash
|
|
46
|
+
# List all assets
|
|
18
47
|
npx workspace-architect list
|
|
19
|
-
|
|
48
|
+
|
|
49
|
+
# List only instructions
|
|
20
50
|
npx workspace-architect list instructions
|
|
51
|
+
|
|
52
|
+
# List only collections
|
|
53
|
+
npx workspace-architect list collections
|
|
21
54
|
```
|
|
22
55
|
|
|
23
56
|
#### Download an Asset
|
|
24
57
|
|
|
25
|
-
|
|
26
|
-
npx workspace-architect download <type>:<name>
|
|
27
|
-
```
|
|
58
|
+
Download a specific asset to your project. By default, assets are downloaded to `.github/<type>/`.
|
|
28
59
|
|
|
29
|
-
Example:
|
|
30
60
|
```bash
|
|
31
|
-
npx workspace-architect download
|
|
61
|
+
npx workspace-architect download <type>:<name>
|
|
32
62
|
```
|
|
33
63
|
|
|
34
|
-
|
|
35
|
-
- `-d, --dry-run`: Simulate the download without writing files.
|
|
36
|
-
- `-f, --force`: Overwrite existing files without asking.
|
|
37
|
-
- `-o, --output <path>`: Specify the output path (default: `.github/<type>`).
|
|
64
|
+
**Examples:**
|
|
38
65
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
1. Install dependencies:
|
|
44
|
-
```bash
|
|
45
|
-
npm install
|
|
46
|
-
```
|
|
66
|
+
```bash
|
|
67
|
+
# Download a specific instruction file
|
|
68
|
+
npx workspace-architect download instructions:reactjs
|
|
47
69
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
```
|
|
70
|
+
# Download a collection of assets
|
|
71
|
+
npx workspace-architect download collections:web-frontend-development
|
|
72
|
+
```
|
|
52
73
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
74
|
+
**Options:**
|
|
75
|
+
|
|
76
|
+
* `-d, --dry-run`: Simulate the download without writing files. Useful to see where files will be placed.
|
|
77
|
+
* `-f, --force`: Overwrite existing files without asking for confirmation.
|
|
78
|
+
* `-o, --output <path>`: Specify a custom output directory.
|
|
79
|
+
|
|
80
|
+
## For Contributors
|
|
81
|
+
|
|
82
|
+
We welcome contributions! Whether you want to add a new persona, improve existing prompts, or curate a collection, here is how you can help.
|
|
83
|
+
|
|
84
|
+
### Project Structure
|
|
85
|
+
|
|
86
|
+
* `assets/`: Contains the source markdown and JSON files for all assets.
|
|
87
|
+
* `chatmodes/`: Persona definitions.
|
|
88
|
+
* `collections/`: JSON files defining groups of assets.
|
|
89
|
+
* `instructions/`: Contextual guidelines.
|
|
90
|
+
* `prompts/`: Reusable prompt templates.
|
|
91
|
+
* `bin/`: Contains the CLI entry point (`cli.js`).
|
|
92
|
+
* `scripts/`: Utility scripts for maintenance and analysis.
|
|
93
|
+
|
|
94
|
+
### Development Setup
|
|
95
|
+
|
|
96
|
+
1. **Clone the repository**:
|
|
97
|
+
```bash
|
|
98
|
+
git clone https://github.com/archubbuck/workspace-architect.git
|
|
99
|
+
cd workspace-architect
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
2. **Install dependencies**:
|
|
103
|
+
```bash
|
|
104
|
+
npm install
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
3. **Run the CLI locally**:
|
|
108
|
+
You can test your changes by running the CLI script directly:
|
|
109
|
+
```bash
|
|
110
|
+
node bin/cli.js list
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
4. **Test with Local Registry (Verdaccio)**:
|
|
114
|
+
For a more accurate simulation of the end-user experience, we use Verdaccio as a local npm registry.
|
|
115
|
+
|
|
116
|
+
* **Start the registry**:
|
|
117
|
+
```bash
|
|
118
|
+
npm run start:registry
|
|
119
|
+
```
|
|
120
|
+
* **Publish to local registry**:
|
|
121
|
+
In a new terminal:
|
|
122
|
+
```bash
|
|
123
|
+
npm run publish:local
|
|
124
|
+
```
|
|
125
|
+
* **Run with `npx`**:
|
|
126
|
+
```bash
|
|
127
|
+
npx --registry http://localhost:4873 workspace-architect list
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
5. **Quick Local Link (Alternative)**:
|
|
131
|
+
For rapid iteration without publishing, you can link the package:
|
|
132
|
+
```bash
|
|
133
|
+
npm link
|
|
134
|
+
npx workspace-architect list
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Adding New Assets
|
|
138
|
+
|
|
139
|
+
1. Create a new markdown file in the appropriate folder (`assets/instructions`, `assets/prompts`, or `assets/chatmodes`).
|
|
140
|
+
2. **Naming Convention**: The filename becomes the ID.
|
|
141
|
+
* Example: `assets/instructions/my-guide.md` becomes `instructions:my-guide`.
|
|
142
|
+
* Extensions like `.chatmode.md` or `.prompt.md` are stripped from the ID but help with organization.
|
|
143
|
+
3. **Metadata**: You can optionally add YAML frontmatter to your markdown files to provide a description and title.
|
|
144
|
+
|
|
145
|
+
```markdown
|
|
146
|
+
---
|
|
147
|
+
title: My Custom Guide
|
|
148
|
+
description: A guide for setting up X.
|
|
149
|
+
---
|
|
150
|
+
# Content starts here...
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Creating Collections
|
|
154
|
+
|
|
155
|
+
Collections are JSON files located in `assets/collections/`. They group multiple assets together.
|
|
156
|
+
|
|
157
|
+
**Format:**
|
|
158
|
+
|
|
159
|
+
```json
|
|
160
|
+
{
|
|
161
|
+
"name": "My Collection",
|
|
162
|
+
"description": "A collection for X development.",
|
|
163
|
+
"items": [
|
|
164
|
+
"instructions:reactjs",
|
|
165
|
+
"prompts:code-review",
|
|
166
|
+
"chatmodes:expert-architect"
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
```
|
|
58
170
|
|
|
59
|
-
|
|
171
|
+
### Scripts
|
|
60
172
|
|
|
61
|
-
|
|
62
|
-
|
|
173
|
+
* **`npm run generate-manifest`**: Generates `assets-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.**
|
|
174
|
+
* **`npm run analyze`**: Runs `scripts/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.
|
|
175
|
+
* Use `npm run analyze -- --add` to automatically add high-confidence matches.
|
|
176
|
+
* Use `npm run analyze -- --remove` to remove low-confidence items.
|
|
177
|
+
* **`npm run fetch-upstream`**: Syncs assets from the upstream `github/awesome-copilot` repository (requires configuration).
|
package/assets-manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "workspace-architect",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.2",
|
|
4
4
|
"description": "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.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"workspace-architect": "./bin/cli.js"
|