workspace-architect 2.1.17 → 2.2.0
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 +23 -0
- package/assets-manifest.json +502 -17
- package/bin/cli.js +107 -11
- package/package.json +12 -7
package/README.md
CHANGED
|
@@ -230,6 +230,29 @@ Create a JSON file in `assets/collections/`:
|
|
|
230
230
|
- `npm run sync-skills` - Sync skills from anthropics/skills
|
|
231
231
|
- `npm run validate-skills` - Validate all synced skills
|
|
232
232
|
|
|
233
|
+
#### Upstream Configuration
|
|
234
|
+
|
|
235
|
+
Sync scripts require a JSON configuration file for controlling which files are synced from upstream repositories using glob patterns. Create an `upstream.config.json` file in the project root:
|
|
236
|
+
|
|
237
|
+
```json
|
|
238
|
+
{
|
|
239
|
+
"upstreamRepos": [
|
|
240
|
+
{
|
|
241
|
+
"repo": "github/awesome-copilot",
|
|
242
|
+
"syncPatterns": ["agents/**/*.md", "collections/**/*.yml"]
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
"repo": "anthropics/skills",
|
|
246
|
+
"syncPatterns": ["skills/**/SKILL.md"]
|
|
247
|
+
}
|
|
248
|
+
]
|
|
249
|
+
}
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
**Note**: The configuration file is required. Sync scripts will fail if the file doesn't exist or doesn't contain configuration for the repository being synced.
|
|
253
|
+
|
|
254
|
+
See [Upstream Configuration Guide](docs/UPSTREAM_CONFIG.md) for detailed documentation, examples, and best practices.
|
|
255
|
+
|
|
233
256
|
### Local Testing
|
|
234
257
|
|
|
235
258
|
Use Verdaccio for end-to-end testing:
|
package/assets-manifest.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.0.0",
|
|
3
|
-
"generatedAt": "2026-01-
|
|
3
|
+
"generatedAt": "2026-01-16T00:30:47.177Z",
|
|
4
4
|
"assets": {
|
|
5
5
|
"agents": {
|
|
6
6
|
"4.1-Beast": {
|
|
@@ -2475,19 +2475,19 @@
|
|
|
2475
2475
|
},
|
|
2476
2476
|
"suggest-awesome-github-copilot-collections": {
|
|
2477
2477
|
"path": "assets/prompts/suggest-awesome-github-copilot-collections.prompt.md",
|
|
2478
|
-
"description": "Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets.",
|
|
2478
|
+
"description": "Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets, and identifying outdated collection assets that need updates.",
|
|
2479
2479
|
"title": "suggest-awesome-github-copilot-collections",
|
|
2480
2480
|
"type": "prompts"
|
|
2481
2481
|
},
|
|
2482
2482
|
"suggest-awesome-github-copilot-instructions": {
|
|
2483
2483
|
"path": "assets/prompts/suggest-awesome-github-copilot-instructions.prompt.md",
|
|
2484
|
-
"description": "Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository.",
|
|
2484
|
+
"description": "Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository, and identifying outdated instructions that need updates.",
|
|
2485
2485
|
"title": "suggest-awesome-github-copilot-instructions",
|
|
2486
2486
|
"type": "prompts"
|
|
2487
2487
|
},
|
|
2488
2488
|
"suggest-awesome-github-copilot-prompts": {
|
|
2489
2489
|
"path": "assets/prompts/suggest-awesome-github-copilot-prompts.prompt.md",
|
|
2490
|
-
"description": "Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository.",
|
|
2490
|
+
"description": "Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository, and identifying outdated prompts that need updates.",
|
|
2491
2491
|
"title": "suggest-awesome-github-copilot-prompts",
|
|
2492
2492
|
"type": "prompts"
|
|
2493
2493
|
},
|
|
@@ -2577,13 +2577,6 @@
|
|
|
2577
2577
|
}
|
|
2578
2578
|
},
|
|
2579
2579
|
"collections": {
|
|
2580
|
-
".upstream-sync": {
|
|
2581
|
-
"path": "assets/collections/.upstream-sync.json",
|
|
2582
|
-
"description": "",
|
|
2583
|
-
"title": ".upstream-sync",
|
|
2584
|
-
"type": "collections",
|
|
2585
|
-
"items": []
|
|
2586
|
-
},
|
|
2587
2580
|
"ai-prompt-engineering": {
|
|
2588
2581
|
"path": "assets/collections/ai-prompt-engineering.json",
|
|
2589
2582
|
"description": "Resources for LLM prompts, Copilot instructions, and AI agent development.",
|
|
@@ -2704,6 +2697,20 @@
|
|
|
2704
2697
|
"prompts:suggest-awesome-github-copilot-collections"
|
|
2705
2698
|
]
|
|
2706
2699
|
},
|
|
2700
|
+
"awesome-copilot": {
|
|
2701
|
+
"path": "assets/collections/awesome-copilot.collection.yml",
|
|
2702
|
+
"description": "Meta prompts that help you discover and generate curated GitHub Copilot chat modes, collections, instructions, prompts, and agents.",
|
|
2703
|
+
"title": "Awesome Copilot",
|
|
2704
|
+
"type": "collections",
|
|
2705
|
+
"items": [
|
|
2706
|
+
"prompts:suggest-awesome-github-copilot-chatmodes",
|
|
2707
|
+
"prompts:suggest-awesome-github-copilot-collections",
|
|
2708
|
+
"prompts:suggest-awesome-github-copilot-instructions",
|
|
2709
|
+
"prompts:suggest-awesome-github-copilot-prompts",
|
|
2710
|
+
"prompts:suggest-awesome-github-copilot-agents",
|
|
2711
|
+
"agents:meta-agentic-project-scaffold"
|
|
2712
|
+
]
|
|
2713
|
+
},
|
|
2707
2714
|
"azure-cloud-architect": {
|
|
2708
2715
|
"path": "assets/collections/azure-cloud-architect.json",
|
|
2709
2716
|
"description": "A comprehensive suite for Azure architecture, Bicep/Terraform implementation, and DevOps practices.",
|
|
@@ -2857,6 +2864,32 @@
|
|
|
2857
2864
|
"prompts:suggest-awesome-github-copilot-prompts"
|
|
2858
2865
|
]
|
|
2859
2866
|
},
|
|
2867
|
+
"azure-cloud-development": {
|
|
2868
|
+
"path": "assets/collections/azure-cloud-development.collection.yml",
|
|
2869
|
+
"description": "Comprehensive Azure cloud development tools including Infrastructure as Code, serverless functions, architecture patterns, and cost optimization for building scalable cloud applications.",
|
|
2870
|
+
"title": "Azure & Cloud Development",
|
|
2871
|
+
"type": "collections",
|
|
2872
|
+
"items": [
|
|
2873
|
+
"agents:azure-principal-architect",
|
|
2874
|
+
"agents:azure-saas-architect",
|
|
2875
|
+
"agents:azure-logic-apps-expert",
|
|
2876
|
+
"agents:azure-verified-modules-bicep",
|
|
2877
|
+
"agents:azure-verified-modules-terraform",
|
|
2878
|
+
"agents:terraform-azure-planning",
|
|
2879
|
+
"agents:terraform-azure-implement",
|
|
2880
|
+
"instructions:bicep-code-best-practices",
|
|
2881
|
+
"instructions:terraform",
|
|
2882
|
+
"instructions:terraform-azure",
|
|
2883
|
+
"instructions:azure-verified-modules-terraform",
|
|
2884
|
+
"instructions:azure-functions-typescript",
|
|
2885
|
+
"instructions:azure-logic-apps-power-automate",
|
|
2886
|
+
"instructions:azure-devops-pipelines",
|
|
2887
|
+
"instructions:containerization-docker-best-practices",
|
|
2888
|
+
"instructions:kubernetes-deployment-best-practices",
|
|
2889
|
+
"prompts:azure-resource-health-diagnose",
|
|
2890
|
+
"prompts:az-cost-optimize"
|
|
2891
|
+
]
|
|
2892
|
+
},
|
|
2860
2893
|
"claude-skills-starter": {
|
|
2861
2894
|
"path": "assets/collections/claude-skills-starter.json",
|
|
2862
2895
|
"description": "Essential Claude Skills for software development, planning, and automation workflows.",
|
|
@@ -2866,6 +2899,17 @@
|
|
|
2866
2899
|
"skills:example-planner"
|
|
2867
2900
|
]
|
|
2868
2901
|
},
|
|
2902
|
+
"clojure-interactive-programming": {
|
|
2903
|
+
"path": "assets/collections/clojure-interactive-programming.collection.yml",
|
|
2904
|
+
"description": "Tools for REPL-first Clojure workflows featuring Clojure instructions, the interactive programming chat mode and supporting guidance.",
|
|
2905
|
+
"title": "Clojure Interactive Programming",
|
|
2906
|
+
"type": "collections",
|
|
2907
|
+
"items": [
|
|
2908
|
+
"instructions:clojure",
|
|
2909
|
+
"agents:clojure-interactive-programming",
|
|
2910
|
+
"prompts:remember-interactive-programming"
|
|
2911
|
+
]
|
|
2912
|
+
},
|
|
2869
2913
|
"cpp-development": {
|
|
2870
2914
|
"path": "assets/collections/cpp-development.json",
|
|
2871
2915
|
"description": "C++ programming language resources.",
|
|
@@ -2873,6 +2917,33 @@
|
|
|
2873
2917
|
"type": "collections",
|
|
2874
2918
|
"items": []
|
|
2875
2919
|
},
|
|
2920
|
+
"csharp-dotnet-development": {
|
|
2921
|
+
"path": "assets/collections/csharp-dotnet-development.collection.yml",
|
|
2922
|
+
"description": "Essential prompts, instructions, and chat modes for C# and .NET development including testing, documentation, and best practices.",
|
|
2923
|
+
"title": "C# .NET Development",
|
|
2924
|
+
"type": "collections",
|
|
2925
|
+
"items": [
|
|
2926
|
+
"prompts:csharp-async",
|
|
2927
|
+
"prompts:aspnet-minimal-api-openapi",
|
|
2928
|
+
"instructions:csharp",
|
|
2929
|
+
"instructions:dotnet-architecture-good-practices",
|
|
2930
|
+
"agents:expert-dotnet-software-engineer",
|
|
2931
|
+
"prompts:csharp-xunit",
|
|
2932
|
+
"prompts:dotnet-best-practices",
|
|
2933
|
+
"prompts:dotnet-upgrade"
|
|
2934
|
+
]
|
|
2935
|
+
},
|
|
2936
|
+
"csharp-mcp-development": {
|
|
2937
|
+
"path": "assets/collections/csharp-mcp-development.collection.yml",
|
|
2938
|
+
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in C# using the official SDK. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
|
|
2939
|
+
"title": "C# MCP Server Development",
|
|
2940
|
+
"type": "collections",
|
|
2941
|
+
"items": [
|
|
2942
|
+
"instructions:csharp-mcp-server",
|
|
2943
|
+
"prompts:csharp-mcp-server-generator",
|
|
2944
|
+
"agents:csharp-mcp-expert"
|
|
2945
|
+
]
|
|
2946
|
+
},
|
|
2876
2947
|
"database-administration": {
|
|
2877
2948
|
"path": "assets/collections/database-administration.json",
|
|
2878
2949
|
"description": "Database administration and development resources for SQL and NoSQL databases.",
|
|
@@ -2889,6 +2960,60 @@
|
|
|
2889
2960
|
"instructions:sql-sp-generation"
|
|
2890
2961
|
]
|
|
2891
2962
|
},
|
|
2963
|
+
"database-data-management": {
|
|
2964
|
+
"path": "assets/collections/database-data-management.collection.yml",
|
|
2965
|
+
"description": "Database administration, SQL optimization, and data management tools for PostgreSQL, SQL Server, and general database development best practices.",
|
|
2966
|
+
"title": "Database & Data Management",
|
|
2967
|
+
"type": "collections",
|
|
2968
|
+
"items": [
|
|
2969
|
+
"agents:postgresql-dba",
|
|
2970
|
+
"agents:ms-sql-dba",
|
|
2971
|
+
"instructions:ms-sql-dba",
|
|
2972
|
+
"instructions:sql-sp-generation",
|
|
2973
|
+
"prompts:sql-optimization",
|
|
2974
|
+
"prompts:sql-code-review",
|
|
2975
|
+
"prompts:postgresql-optimization",
|
|
2976
|
+
"prompts:postgresql-code-review"
|
|
2977
|
+
]
|
|
2978
|
+
},
|
|
2979
|
+
"dataverse-sdk-for-python": {
|
|
2980
|
+
"path": "assets/collections/dataverse-sdk-for-python.collection.yml",
|
|
2981
|
+
"description": "Comprehensive collection for building production-ready Python integrations with Microsoft Dataverse. Includes official documentation, best practices, advanced features, file operations, and code generation prompts.",
|
|
2982
|
+
"title": "Dataverse SDK for Python",
|
|
2983
|
+
"type": "collections",
|
|
2984
|
+
"items": [
|
|
2985
|
+
"instructions:dataverse-python-sdk",
|
|
2986
|
+
"instructions:dataverse-python-api-reference",
|
|
2987
|
+
"instructions:dataverse-python-modules",
|
|
2988
|
+
"instructions:dataverse-python-best-practices",
|
|
2989
|
+
"instructions:dataverse-python-advanced-features",
|
|
2990
|
+
"instructions:dataverse-python-agentic-workflows",
|
|
2991
|
+
"instructions:dataverse-python-authentication-security",
|
|
2992
|
+
"instructions:dataverse-python-error-handling",
|
|
2993
|
+
"instructions:dataverse-python-file-operations",
|
|
2994
|
+
"instructions:dataverse-python-pandas-integration",
|
|
2995
|
+
"instructions:dataverse-python-performance-optimization",
|
|
2996
|
+
"instructions:dataverse-python-real-world-usecases",
|
|
2997
|
+
"instructions:dataverse-python-testing-debugging",
|
|
2998
|
+
"prompts:dataverse-python-quickstart",
|
|
2999
|
+
"prompts:dataverse-python-advanced-patterns",
|
|
3000
|
+
"prompts:dataverse-python-production-code",
|
|
3001
|
+
"prompts:dataverse-python-usecase-builder"
|
|
3002
|
+
]
|
|
3003
|
+
},
|
|
3004
|
+
"devops-oncall": {
|
|
3005
|
+
"path": "assets/collections/devops-oncall.collection.yml",
|
|
3006
|
+
"description": "A focused set of prompts, instructions, and a chat mode to help triage incidents and respond quickly with DevOps tools and Azure resources.",
|
|
3007
|
+
"title": "DevOps On-Call",
|
|
3008
|
+
"type": "collections",
|
|
3009
|
+
"items": [
|
|
3010
|
+
"prompts:azure-resource-health-diagnose",
|
|
3011
|
+
"instructions:devops-core-principles",
|
|
3012
|
+
"instructions:containerization-docker-best-practices",
|
|
3013
|
+
"agents:azure-principal-architect",
|
|
3014
|
+
"prompts:multi-stage-dockerfile"
|
|
3015
|
+
]
|
|
3016
|
+
},
|
|
2892
3017
|
"devops-sre": {
|
|
2893
3018
|
"path": "assets/collections/devops-sre.json",
|
|
2894
3019
|
"description": "DevOps and Site Reliability Engineering resources including Docker, Kubernetes, and CI/CD.",
|
|
@@ -3042,6 +3167,36 @@
|
|
|
3042
3167
|
"prompts:cosmosdb-datamodeling"
|
|
3043
3168
|
]
|
|
3044
3169
|
},
|
|
3170
|
+
"edge-ai-tasks": {
|
|
3171
|
+
"path": "assets/collections/edge-ai-tasks.collection.yml",
|
|
3172
|
+
"description": "Task Researcher and Task Planner for intermediate to expert users and large codebases - Brought to you by microsoft/edge-ai",
|
|
3173
|
+
"title": "Tasks by microsoft/edge-ai",
|
|
3174
|
+
"type": "collections",
|
|
3175
|
+
"items": [
|
|
3176
|
+
"agents:task-researcher",
|
|
3177
|
+
"agents:task-planner",
|
|
3178
|
+
"instructions:task-implementation"
|
|
3179
|
+
]
|
|
3180
|
+
},
|
|
3181
|
+
"frontend-web-dev": {
|
|
3182
|
+
"path": "assets/collections/frontend-web-dev.collection.yml",
|
|
3183
|
+
"description": "Essential prompts, instructions, and chat modes for modern frontend web development including React, Angular, Vue, TypeScript, and CSS frameworks.",
|
|
3184
|
+
"title": "Frontend Web Development",
|
|
3185
|
+
"type": "collections",
|
|
3186
|
+
"items": [
|
|
3187
|
+
"agents:expert-react-frontend-engineer",
|
|
3188
|
+
"agents:electron-angular-native",
|
|
3189
|
+
"instructions:reactjs",
|
|
3190
|
+
"instructions:angular",
|
|
3191
|
+
"instructions:vuejs3",
|
|
3192
|
+
"instructions:nextjs",
|
|
3193
|
+
"instructions:nextjs-tailwind",
|
|
3194
|
+
"instructions:tanstack-start-shadcn-tailwind",
|
|
3195
|
+
"instructions:nodejs-javascript-vitest",
|
|
3196
|
+
"prompts:playwright-explore-website",
|
|
3197
|
+
"prompts:playwright-generate-test"
|
|
3198
|
+
]
|
|
3199
|
+
},
|
|
3045
3200
|
"general-productivity": {
|
|
3046
3201
|
"path": "assets/collections/general-productivity.json",
|
|
3047
3202
|
"description": "General coding utilities, debugging, refactoring, and git resources.",
|
|
@@ -3094,6 +3249,48 @@
|
|
|
3094
3249
|
"prompts:technology-stack-blueprint-generator"
|
|
3095
3250
|
]
|
|
3096
3251
|
},
|
|
3252
|
+
"go-mcp-development": {
|
|
3253
|
+
"path": "assets/collections/go-mcp-development.collection.yml",
|
|
3254
|
+
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Go using the official github.com/modelcontextprotocol/go-sdk. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
|
|
3255
|
+
"title": "Go MCP Server Development",
|
|
3256
|
+
"type": "collections",
|
|
3257
|
+
"items": [
|
|
3258
|
+
"instructions:go-mcp-server",
|
|
3259
|
+
"prompts:go-mcp-server-generator",
|
|
3260
|
+
"agents:go-mcp-expert"
|
|
3261
|
+
]
|
|
3262
|
+
},
|
|
3263
|
+
"java-development": {
|
|
3264
|
+
"path": "assets/collections/java-development.collection.yml",
|
|
3265
|
+
"description": "Comprehensive collection of prompts and instructions for Java development including Spring Boot, Quarkus, testing, documentation, and best practices.",
|
|
3266
|
+
"title": "Java Development",
|
|
3267
|
+
"type": "collections",
|
|
3268
|
+
"items": [
|
|
3269
|
+
"instructions:java",
|
|
3270
|
+
"instructions:springboot",
|
|
3271
|
+
"instructions:quarkus",
|
|
3272
|
+
"instructions:quarkus-mcp-server-sse",
|
|
3273
|
+
"instructions:convert-jpa-to-spring-data-cosmos",
|
|
3274
|
+
"instructions:java-11-to-java-17-upgrade",
|
|
3275
|
+
"instructions:java-17-to-java-21-upgrade",
|
|
3276
|
+
"instructions:java-21-to-java-25-upgrade",
|
|
3277
|
+
"prompts:java-docs",
|
|
3278
|
+
"prompts:java-junit",
|
|
3279
|
+
"prompts:java-springboot",
|
|
3280
|
+
"prompts:create-spring-boot-java-project"
|
|
3281
|
+
]
|
|
3282
|
+
},
|
|
3283
|
+
"java-mcp-development": {
|
|
3284
|
+
"path": "assets/collections/java-mcp-development.collection.yml",
|
|
3285
|
+
"description": "Complete toolkit for building Model Context Protocol servers in Java using the official MCP Java SDK with reactive streams and Spring Boot integration.",
|
|
3286
|
+
"title": "Java MCP Server Development",
|
|
3287
|
+
"type": "collections",
|
|
3288
|
+
"items": [
|
|
3289
|
+
"instructions:java-mcp-server",
|
|
3290
|
+
"prompts:java-mcp-server-generator",
|
|
3291
|
+
"agents:java-mcp-expert"
|
|
3292
|
+
]
|
|
3293
|
+
},
|
|
3097
3294
|
"java-spring-developer": {
|
|
3098
3295
|
"path": "assets/collections/java-spring-developer.json",
|
|
3099
3296
|
"description": "Resources for modern Java development, Spring Boot projects, and migration tasks.",
|
|
@@ -3208,6 +3405,17 @@
|
|
|
3208
3405
|
"prompts:power-apps-code-app-scaffold"
|
|
3209
3406
|
]
|
|
3210
3407
|
},
|
|
3408
|
+
"kotlin-mcp-development": {
|
|
3409
|
+
"path": "assets/collections/kotlin-mcp-development.collection.yml",
|
|
3410
|
+
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Kotlin using the official io.modelcontextprotocol:kotlin-sdk library. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
|
|
3411
|
+
"title": "Kotlin MCP Server Development",
|
|
3412
|
+
"type": "collections",
|
|
3413
|
+
"items": [
|
|
3414
|
+
"instructions:kotlin-mcp-server",
|
|
3415
|
+
"prompts:kotlin-mcp-server-generator",
|
|
3416
|
+
"agents:kotlin-mcp-expert"
|
|
3417
|
+
]
|
|
3418
|
+
},
|
|
3211
3419
|
"learning-mentoring": {
|
|
3212
3420
|
"path": "assets/collections/learning-mentoring.json",
|
|
3213
3421
|
"description": "Educational resources, tutorials, and study modes.",
|
|
@@ -3229,6 +3437,19 @@
|
|
|
3229
3437
|
"prompts:generate-custom-instructions-from-codebase"
|
|
3230
3438
|
]
|
|
3231
3439
|
},
|
|
3440
|
+
"mcp-m365-copilot": {
|
|
3441
|
+
"path": "assets/collections/mcp-m365-copilot.collection.yml",
|
|
3442
|
+
"description": "Comprehensive collection for building declarative agents with Model Context Protocol integration for Microsoft 365 Copilot",
|
|
3443
|
+
"title": "MCP-based M365 Agents",
|
|
3444
|
+
"type": "collections",
|
|
3445
|
+
"items": [
|
|
3446
|
+
"prompts:mcp-create-declarative-agent",
|
|
3447
|
+
"prompts:mcp-create-adaptive-cards",
|
|
3448
|
+
"prompts:mcp-deploy-manage-agents",
|
|
3449
|
+
"instructions:mcp-m365-copilot",
|
|
3450
|
+
"agents:mcp-m365-agent-expert"
|
|
3451
|
+
]
|
|
3452
|
+
},
|
|
3232
3453
|
"mcp-specialist": {
|
|
3233
3454
|
"path": "assets/collections/mcp-specialist.json",
|
|
3234
3455
|
"description": "Resources for developing and using Model Context Protocol (MCP) servers and clients.",
|
|
@@ -3339,6 +3560,59 @@
|
|
|
3339
3560
|
"prompts:technology-stack-blueprint-generator"
|
|
3340
3561
|
]
|
|
3341
3562
|
},
|
|
3563
|
+
"partners": {
|
|
3564
|
+
"path": "assets/collections/partners.collection.yml",
|
|
3565
|
+
"description": "Custom agents that have been created by GitHub partners",
|
|
3566
|
+
"title": "Partners",
|
|
3567
|
+
"type": "collections",
|
|
3568
|
+
"items": [
|
|
3569
|
+
"agents:amplitude-experiment-implementation",
|
|
3570
|
+
"agents:apify-integration-expert",
|
|
3571
|
+
"agents:arm-migration",
|
|
3572
|
+
"agents:diffblue-cover",
|
|
3573
|
+
"agents:droid",
|
|
3574
|
+
"agents:dynatrace-expert",
|
|
3575
|
+
"agents:elasticsearch-observability",
|
|
3576
|
+
"agents:jfrog-sec",
|
|
3577
|
+
"agents:launchdarkly-flag-cleanup",
|
|
3578
|
+
"agents:lingodotdev-i18n",
|
|
3579
|
+
"agents:monday-bug-fixer",
|
|
3580
|
+
"agents:mongodb-performance-advisor",
|
|
3581
|
+
"agents:neo4j-docker-client-generator",
|
|
3582
|
+
"agents:neon-migration-specialist",
|
|
3583
|
+
"agents:neon-optimization-analyzer",
|
|
3584
|
+
"agents:octopus-deploy-release-notes-mcp",
|
|
3585
|
+
"agents:stackhawk-security-onboarding",
|
|
3586
|
+
"agents:terraform",
|
|
3587
|
+
"agents:pagerduty-incident-responder",
|
|
3588
|
+
"agents:comet-opik"
|
|
3589
|
+
]
|
|
3590
|
+
},
|
|
3591
|
+
"pcf-development": {
|
|
3592
|
+
"path": "assets/collections/pcf-development.collection.yml",
|
|
3593
|
+
"description": "Complete toolkit for developing custom code components using Power Apps Component Framework for model-driven and canvas apps",
|
|
3594
|
+
"title": "Power Apps Component Framework (PCF) Development",
|
|
3595
|
+
"type": "collections",
|
|
3596
|
+
"items": [
|
|
3597
|
+
"instructions:pcf-overview",
|
|
3598
|
+
"instructions:pcf-code-components",
|
|
3599
|
+
"instructions:pcf-model-driven-apps",
|
|
3600
|
+
"instructions:pcf-canvas-apps",
|
|
3601
|
+
"instructions:pcf-power-pages",
|
|
3602
|
+
"instructions:pcf-react-platform-libraries",
|
|
3603
|
+
"instructions:pcf-fluent-modern-theming",
|
|
3604
|
+
"instructions:pcf-dependent-libraries",
|
|
3605
|
+
"instructions:pcf-events",
|
|
3606
|
+
"instructions:pcf-tooling",
|
|
3607
|
+
"instructions:pcf-limitations",
|
|
3608
|
+
"instructions:pcf-alm",
|
|
3609
|
+
"instructions:pcf-best-practices",
|
|
3610
|
+
"instructions:pcf-sample-components",
|
|
3611
|
+
"instructions:pcf-api-reference",
|
|
3612
|
+
"instructions:pcf-manifest-schema",
|
|
3613
|
+
"instructions:pcf-community-resources"
|
|
3614
|
+
]
|
|
3615
|
+
},
|
|
3342
3616
|
"php-cms-development": {
|
|
3343
3617
|
"path": "assets/collections/php-cms-development.json",
|
|
3344
3618
|
"description": "PHP development resources including Laravel, Symfony, Drupal, WordPress, and Pimcore.",
|
|
@@ -3410,6 +3684,62 @@
|
|
|
3410
3684
|
"prompts:mcp-copilot-studio-server-generator"
|
|
3411
3685
|
]
|
|
3412
3686
|
},
|
|
3687
|
+
"php-mcp-development": {
|
|
3688
|
+
"path": "assets/collections/php-mcp-development.collection.yml",
|
|
3689
|
+
"description": "Comprehensive resources for building Model Context Protocol servers using the official PHP SDK with attribute-based discovery, including best practices, project generation, and expert assistance",
|
|
3690
|
+
"title": "PHP MCP Server Development",
|
|
3691
|
+
"type": "collections",
|
|
3692
|
+
"items": [
|
|
3693
|
+
"instructions:php-mcp-server",
|
|
3694
|
+
"prompts:php-mcp-server-generator",
|
|
3695
|
+
"agents:php-mcp-expert"
|
|
3696
|
+
]
|
|
3697
|
+
},
|
|
3698
|
+
"power-apps-code-apps": {
|
|
3699
|
+
"path": "assets/collections/power-apps-code-apps.collection.yml",
|
|
3700
|
+
"description": "Complete toolkit for Power Apps Code Apps development including project scaffolding, development standards, and expert guidance for building code-first applications with Power Platform integration.",
|
|
3701
|
+
"title": "Power Apps Code Apps Development",
|
|
3702
|
+
"type": "collections",
|
|
3703
|
+
"items": [
|
|
3704
|
+
"prompts:power-apps-code-app-scaffold",
|
|
3705
|
+
"instructions:power-apps-code-apps",
|
|
3706
|
+
"agents:power-platform-expert"
|
|
3707
|
+
]
|
|
3708
|
+
},
|
|
3709
|
+
"power-bi-development": {
|
|
3710
|
+
"path": "assets/collections/power-bi-development.collection.yml",
|
|
3711
|
+
"description": "Comprehensive Power BI development resources including data modeling, DAX optimization, performance tuning, visualization design, security best practices, and DevOps/ALM guidance for building enterprise-grade Power BI solutions.",
|
|
3712
|
+
"title": "Power BI Development",
|
|
3713
|
+
"type": "collections",
|
|
3714
|
+
"items": [
|
|
3715
|
+
"agents:power-bi-data-modeling-expert",
|
|
3716
|
+
"agents:power-bi-dax-expert",
|
|
3717
|
+
"agents:power-bi-performance-expert",
|
|
3718
|
+
"agents:power-bi-visualization-expert",
|
|
3719
|
+
"instructions:power-bi-custom-visuals-development",
|
|
3720
|
+
"instructions:power-bi-data-modeling-best-practices",
|
|
3721
|
+
"instructions:power-bi-dax-best-practices",
|
|
3722
|
+
"instructions:power-bi-devops-alm-best-practices",
|
|
3723
|
+
"instructions:power-bi-report-design-best-practices",
|
|
3724
|
+
"instructions:power-bi-security-rls-best-practices",
|
|
3725
|
+
"prompts:power-bi-dax-optimization",
|
|
3726
|
+
"prompts:power-bi-model-design-review",
|
|
3727
|
+
"prompts:power-bi-performance-troubleshooting",
|
|
3728
|
+
"prompts:power-bi-report-design-consultation"
|
|
3729
|
+
]
|
|
3730
|
+
},
|
|
3731
|
+
"power-platform-mcp-connector-development": {
|
|
3732
|
+
"path": "assets/collections/power-platform-mcp-connector-development.collection.yml",
|
|
3733
|
+
"description": "Complete toolkit for developing Power Platform custom connectors with Model Context Protocol integration for Microsoft Copilot Studio",
|
|
3734
|
+
"title": "Power Platform MCP Connector Development",
|
|
3735
|
+
"type": "collections",
|
|
3736
|
+
"items": [
|
|
3737
|
+
"instructions:power-platform-mcp-development",
|
|
3738
|
+
"prompts:power-platform-mcp-connector-suite",
|
|
3739
|
+
"prompts:mcp-copilot-studio-server-generator",
|
|
3740
|
+
"agents:power-platform-mcp-integration-expert"
|
|
3741
|
+
]
|
|
3742
|
+
},
|
|
3413
3743
|
"power-platform-specialist": {
|
|
3414
3744
|
"path": "assets/collections/power-platform-specialist.json",
|
|
3415
3745
|
"description": "Tools for Power BI data modeling, DAX optimization, and Power Apps development.",
|
|
@@ -3594,6 +3924,31 @@
|
|
|
3594
3924
|
"prompts:update-specification"
|
|
3595
3925
|
]
|
|
3596
3926
|
},
|
|
3927
|
+
"project-planning": {
|
|
3928
|
+
"path": "assets/collections/project-planning.collection.yml",
|
|
3929
|
+
"description": "Tools and guidance for software project planning, feature breakdown, epic management, implementation planning, and task organization for development teams.",
|
|
3930
|
+
"title": "Project Planning & Management",
|
|
3931
|
+
"type": "collections",
|
|
3932
|
+
"items": [
|
|
3933
|
+
"agents:task-planner",
|
|
3934
|
+
"agents:task-researcher",
|
|
3935
|
+
"agents:planner",
|
|
3936
|
+
"agents:plan",
|
|
3937
|
+
"agents:prd",
|
|
3938
|
+
"agents:implementation-plan",
|
|
3939
|
+
"agents:research-technical-spike",
|
|
3940
|
+
"instructions:task-implementation",
|
|
3941
|
+
"instructions:spec-driven-workflow-v1",
|
|
3942
|
+
"prompts:breakdown-feature-implementation",
|
|
3943
|
+
"prompts:breakdown-feature-prd",
|
|
3944
|
+
"prompts:breakdown-epic-arch",
|
|
3945
|
+
"prompts:breakdown-epic-pm",
|
|
3946
|
+
"prompts:create-implementation-plan",
|
|
3947
|
+
"prompts:update-implementation-plan",
|
|
3948
|
+
"prompts:create-github-issues-feature-from-implementation-plan",
|
|
3949
|
+
"prompts:create-technical-spike"
|
|
3950
|
+
]
|
|
3951
|
+
},
|
|
3597
3952
|
"python-development": {
|
|
3598
3953
|
"path": "assets/collections/python-development.json",
|
|
3599
3954
|
"description": "Resources for Python development including Django, Flask, FastAPI, and Data Science libraries.",
|
|
@@ -3663,6 +4018,17 @@
|
|
|
3663
4018
|
"prompts:mcp-copilot-studio-server-generator"
|
|
3664
4019
|
]
|
|
3665
4020
|
},
|
|
4021
|
+
"python-mcp-development": {
|
|
4022
|
+
"path": "assets/collections/python-mcp-development.collection.yml",
|
|
4023
|
+
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in Python using the official SDK with FastMCP. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
|
|
4024
|
+
"title": "Python MCP Server Development",
|
|
4025
|
+
"type": "collections",
|
|
4026
|
+
"items": [
|
|
4027
|
+
"instructions:python-mcp-server",
|
|
4028
|
+
"prompts:python-mcp-server-generator",
|
|
4029
|
+
"agents:python-mcp-expert"
|
|
4030
|
+
]
|
|
4031
|
+
},
|
|
3666
4032
|
"quality-assurance": {
|
|
3667
4033
|
"path": "assets/collections/quality-assurance.json",
|
|
3668
4034
|
"description": "A collection for test automation, TDD workflows, and unit testing.",
|
|
@@ -3768,6 +4134,17 @@
|
|
|
3768
4134
|
"prompts:readme-blueprint-generator"
|
|
3769
4135
|
]
|
|
3770
4136
|
},
|
|
4137
|
+
"ruby-mcp-development": {
|
|
4138
|
+
"path": "assets/collections/ruby-mcp-development.collection.yml",
|
|
4139
|
+
"description": "Complete toolkit for building Model Context Protocol servers in Ruby using the official MCP Ruby SDK gem with Rails integration support.",
|
|
4140
|
+
"title": "Ruby MCP Server Development",
|
|
4141
|
+
"type": "collections",
|
|
4142
|
+
"items": [
|
|
4143
|
+
"instructions:ruby-mcp-server",
|
|
4144
|
+
"prompts:ruby-mcp-server-generator",
|
|
4145
|
+
"agents:ruby-mcp-expert"
|
|
4146
|
+
]
|
|
4147
|
+
},
|
|
3771
4148
|
"rust-development": {
|
|
3772
4149
|
"path": "assets/collections/rust-development.json",
|
|
3773
4150
|
"description": "Rust programming language resources and crates.",
|
|
@@ -3834,6 +4211,31 @@
|
|
|
3834
4211
|
"prompts:readme-blueprint-generator"
|
|
3835
4212
|
]
|
|
3836
4213
|
},
|
|
4214
|
+
"rust-mcp-development": {
|
|
4215
|
+
"path": "assets/collections/rust-mcp-development.collection.yml",
|
|
4216
|
+
"description": "Build high-performance Model Context Protocol servers in Rust using the official rmcp SDK with async/await, procedural macros, and type-safe implementations.",
|
|
4217
|
+
"title": "Rust MCP Server Development",
|
|
4218
|
+
"type": "collections",
|
|
4219
|
+
"items": [
|
|
4220
|
+
"instructions:rust-mcp-server",
|
|
4221
|
+
"prompts:rust-mcp-server-generator",
|
|
4222
|
+
"agents:rust-mcp-expert"
|
|
4223
|
+
]
|
|
4224
|
+
},
|
|
4225
|
+
"security-best-practices": {
|
|
4226
|
+
"path": "assets/collections/security-best-practices.collection.yml",
|
|
4227
|
+
"description": "Security frameworks, accessibility guidelines, performance optimization, and code quality best practices for building secure, maintainable, and high-performance applications.",
|
|
4228
|
+
"title": "Security & Code Quality",
|
|
4229
|
+
"type": "collections",
|
|
4230
|
+
"items": [
|
|
4231
|
+
"instructions:security-and-owasp",
|
|
4232
|
+
"instructions:a11y",
|
|
4233
|
+
"instructions:performance-optimization",
|
|
4234
|
+
"instructions:object-calisthenics",
|
|
4235
|
+
"instructions:self-explanatory-code-commenting",
|
|
4236
|
+
"prompts:ai-prompt-engineering-safety-review"
|
|
4237
|
+
]
|
|
4238
|
+
},
|
|
3837
4239
|
"security-specialist": {
|
|
3838
4240
|
"path": "assets/collections/security-specialist.json",
|
|
3839
4241
|
"description": "Security auditing, threat modeling, and secure coding practices.",
|
|
@@ -3990,6 +4392,53 @@
|
|
|
3990
4392
|
"prompts:update-llms"
|
|
3991
4393
|
]
|
|
3992
4394
|
},
|
|
4395
|
+
"software-engineering-team": {
|
|
4396
|
+
"path": "assets/collections/software-engineering-team.collection.yml",
|
|
4397
|
+
"description": "7 specialized agents covering the full software development lifecycle from UX design and architecture to security and DevOps.",
|
|
4398
|
+
"title": "Software Engineering Team",
|
|
4399
|
+
"type": "collections",
|
|
4400
|
+
"items": [
|
|
4401
|
+
"agents:se-ux-ui-designer",
|
|
4402
|
+
"agents:se-technical-writer",
|
|
4403
|
+
"agents:se-gitops-ci-specialist",
|
|
4404
|
+
"agents:se-product-manager-advisor",
|
|
4405
|
+
"agents:se-responsible-ai-code",
|
|
4406
|
+
"agents:se-system-architecture-reviewer",
|
|
4407
|
+
"agents:se-security-reviewer"
|
|
4408
|
+
]
|
|
4409
|
+
},
|
|
4410
|
+
"structured-autonomy-collection": {
|
|
4411
|
+
"path": "assets/collections/structured-autonomy-collection.yml",
|
|
4412
|
+
"description": "Premium planning, thrifty implementation",
|
|
4413
|
+
"title": "Structured Autonomy",
|
|
4414
|
+
"type": "collections",
|
|
4415
|
+
"items": [
|
|
4416
|
+
"prompts:structured-autonomy-plan",
|
|
4417
|
+
"prompts:structured-autonomy-generate",
|
|
4418
|
+
"prompts:structured-autonomy-implement"
|
|
4419
|
+
]
|
|
4420
|
+
},
|
|
4421
|
+
"swift-mcp-development": {
|
|
4422
|
+
"path": "assets/collections/swift-mcp-development.collection.yml",
|
|
4423
|
+
"description": "Comprehensive collection for building Model Context Protocol servers in Swift using the official MCP Swift SDK with modern concurrency features.",
|
|
4424
|
+
"title": "Swift MCP Server Development",
|
|
4425
|
+
"type": "collections",
|
|
4426
|
+
"items": [
|
|
4427
|
+
"instructions:swift-mcp-server",
|
|
4428
|
+
"prompts:swift-mcp-server-generator",
|
|
4429
|
+
"agents:swift-mcp-expert"
|
|
4430
|
+
]
|
|
4431
|
+
},
|
|
4432
|
+
"technical-spike": {
|
|
4433
|
+
"path": "assets/collections/technical-spike.collection.yml",
|
|
4434
|
+
"description": "Tools for creation, management and research of technical spikes to reduce unknowns and assumptions before proceeding to specification and implementation of solutions.",
|
|
4435
|
+
"title": "Technical Spike",
|
|
4436
|
+
"type": "collections",
|
|
4437
|
+
"items": [
|
|
4438
|
+
"agents:research-technical-spike",
|
|
4439
|
+
"prompts:create-technical-spike"
|
|
4440
|
+
]
|
|
4441
|
+
},
|
|
3993
4442
|
"technical-writing": {
|
|
3994
4443
|
"path": "assets/collections/technical-writing.json",
|
|
3995
4444
|
"description": "Resources for technical documentation, Markdown, and diagrams.",
|
|
@@ -4016,6 +4465,48 @@
|
|
|
4016
4465
|
"prompts:javascript-typescript-jest"
|
|
4017
4466
|
]
|
|
4018
4467
|
},
|
|
4468
|
+
"testing-automation": {
|
|
4469
|
+
"path": "assets/collections/testing-automation.collection.yml",
|
|
4470
|
+
"description": "Comprehensive collection for writing tests, test automation, and test-driven development including unit tests, integration tests, and end-to-end testing strategies.",
|
|
4471
|
+
"title": "Testing & Test Automation",
|
|
4472
|
+
"type": "collections",
|
|
4473
|
+
"items": [
|
|
4474
|
+
"agents:tdd-red",
|
|
4475
|
+
"agents:tdd-green",
|
|
4476
|
+
"agents:tdd-refactor",
|
|
4477
|
+
"agents:playwright-tester",
|
|
4478
|
+
"instructions:playwright-typescript",
|
|
4479
|
+
"instructions:playwright-python",
|
|
4480
|
+
"prompts:playwright-explore-website",
|
|
4481
|
+
"prompts:playwright-generate-test",
|
|
4482
|
+
"prompts:csharp-nunit",
|
|
4483
|
+
"prompts:java-junit",
|
|
4484
|
+
"prompts:ai-prompt-engineering-safety-review"
|
|
4485
|
+
]
|
|
4486
|
+
},
|
|
4487
|
+
"typescript-mcp-development": {
|
|
4488
|
+
"path": "assets/collections/typescript-mcp-development.collection.yml",
|
|
4489
|
+
"description": "Complete toolkit for building Model Context Protocol (MCP) servers in TypeScript/Node.js using the official SDK. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance.",
|
|
4490
|
+
"title": "TypeScript MCP Server Development",
|
|
4491
|
+
"type": "collections",
|
|
4492
|
+
"items": [
|
|
4493
|
+
"instructions:typescript-mcp-server",
|
|
4494
|
+
"prompts:typescript-mcp-server-generator",
|
|
4495
|
+
"agents:typescript-mcp-expert"
|
|
4496
|
+
]
|
|
4497
|
+
},
|
|
4498
|
+
"typespec-m365-copilot": {
|
|
4499
|
+
"path": "assets/collections/typespec-m365-copilot.collection.yml",
|
|
4500
|
+
"description": "Comprehensive collection of prompts, instructions, and resources for building declarative agents and API plugins using TypeSpec for Microsoft 365 Copilot extensibility.",
|
|
4501
|
+
"title": "TypeSpec for Microsoft 365 Copilot",
|
|
4502
|
+
"type": "collections",
|
|
4503
|
+
"items": [
|
|
4504
|
+
"prompts:typespec-create-agent",
|
|
4505
|
+
"prompts:typespec-create-api-plugin",
|
|
4506
|
+
"prompts:typespec-api-operations",
|
|
4507
|
+
"instructions:typespec-m365-copilot"
|
|
4508
|
+
]
|
|
4509
|
+
},
|
|
4019
4510
|
"web-frontend-development": {
|
|
4020
4511
|
"path": "assets/collections/web-frontend-development.json",
|
|
4021
4512
|
"description": "Modern web frontend development resources covering React, Angular, Vue, Next.js, and more.",
|
|
@@ -4073,12 +4564,6 @@
|
|
|
4073
4564
|
}
|
|
4074
4565
|
},
|
|
4075
4566
|
"skills": {
|
|
4076
|
-
".upstream-sync": {
|
|
4077
|
-
"path": "assets/skills/.upstream-sync.json",
|
|
4078
|
-
"description": "",
|
|
4079
|
-
"title": "",
|
|
4080
|
-
"type": "skills"
|
|
4081
|
-
},
|
|
4082
4567
|
"algorithmic-art": {
|
|
4083
4568
|
"path": "assets/skills/algorithmic-art",
|
|
4084
4569
|
"description": "Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.",
|
package/bin/cli.js
CHANGED
|
@@ -50,6 +50,51 @@ function normalizeCollectionItems(items) {
|
|
|
50
50
|
return [];
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
/**
|
|
54
|
+
* Convert YAML collection items format to flat array format.
|
|
55
|
+
* YAML format: [{ path: "agents/foo.agent.md", kind: "agent" }, ...]
|
|
56
|
+
* Flat format: ["agents:foo", ...]
|
|
57
|
+
*
|
|
58
|
+
* @param {Array} items - YAML collection items
|
|
59
|
+
* @returns {Array} Flat array of items in "type:name" format
|
|
60
|
+
*/
|
|
61
|
+
function convertYamlItemsToFlat(items) {
|
|
62
|
+
if (!Array.isArray(items)) return [];
|
|
63
|
+
|
|
64
|
+
// Mapping of singular to plural forms for asset types
|
|
65
|
+
const pluralMap = {
|
|
66
|
+
'agent': 'agents',
|
|
67
|
+
'instruction': 'instructions',
|
|
68
|
+
'prompt': 'prompts',
|
|
69
|
+
'skill': 'skills',
|
|
70
|
+
'collection': 'collections'
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
const flatItems = [];
|
|
74
|
+
for (const item of items) {
|
|
75
|
+
if (!item.path || !item.kind) continue;
|
|
76
|
+
|
|
77
|
+
// Extract the type and name from the path
|
|
78
|
+
// Path format: "agents/foo.agent.md" or "instructions/bar.instructions.md"
|
|
79
|
+
const pathParts = item.path.split('/');
|
|
80
|
+
if (pathParts.length < 2) continue;
|
|
81
|
+
|
|
82
|
+
const fileName = pathParts[pathParts.length - 1];
|
|
83
|
+
const type = pluralMap[item.kind] || item.kind + 's'; // Use mapping or fallback to simple pluralization
|
|
84
|
+
|
|
85
|
+
// Extract name by removing extension
|
|
86
|
+
let name = fileName
|
|
87
|
+
.replace('.agent.md', '')
|
|
88
|
+
.replace('.instructions.md', '')
|
|
89
|
+
.replace('.prompt.md', '')
|
|
90
|
+
.replace('.md', '');
|
|
91
|
+
|
|
92
|
+
flatItems.push(`${type}:${name}`);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return flatItems;
|
|
96
|
+
}
|
|
97
|
+
|
|
53
98
|
program
|
|
54
99
|
.name('workspace-architect')
|
|
55
100
|
.description('CLI to download GitHub Copilot instructions, prompts, and agents (alias: wsa)')
|
|
@@ -119,6 +164,7 @@ async function listAssets(type) {
|
|
|
119
164
|
if (IS_LOCAL) {
|
|
120
165
|
// Local Development Mode
|
|
121
166
|
const matter = (await import('gray-matter')).default;
|
|
167
|
+
const YAML = (await import('yaml')).default;
|
|
122
168
|
// All types use assets/<type> directory
|
|
123
169
|
const dirPath = path.join(ASSETS_DIR, type);
|
|
124
170
|
|
|
@@ -135,6 +181,9 @@ async function listAssets(type) {
|
|
|
135
181
|
|
|
136
182
|
console.log(chalk.blue.bold(`\nAvailable ${type}:`));
|
|
137
183
|
for (const file of files) {
|
|
184
|
+
// Skip .upstream-sync.json files
|
|
185
|
+
if (file === '.upstream-sync.json') continue;
|
|
186
|
+
|
|
138
187
|
const filePath = path.join(dirPath, file);
|
|
139
188
|
const stat = await fs.stat(filePath);
|
|
140
189
|
let description = '';
|
|
@@ -149,8 +198,14 @@ async function listAssets(type) {
|
|
|
149
198
|
description = parsed.data.description || '';
|
|
150
199
|
}
|
|
151
200
|
} else if (type === 'collections') {
|
|
152
|
-
|
|
153
|
-
|
|
201
|
+
if (file.endsWith('.json')) {
|
|
202
|
+
const content = await fs.readJson(filePath);
|
|
203
|
+
description = content.description || '';
|
|
204
|
+
} else if (file.endsWith('.yml') || file.endsWith('.yaml')) {
|
|
205
|
+
const content = await fs.readFile(filePath, 'utf8');
|
|
206
|
+
const parsed = YAML.parse(content);
|
|
207
|
+
description = parsed.description || '';
|
|
208
|
+
}
|
|
154
209
|
} else if (!stat.isDirectory()) {
|
|
155
210
|
const content = await fs.readFile(filePath, 'utf8');
|
|
156
211
|
const parsed = matter(content);
|
|
@@ -160,7 +215,22 @@ async function listAssets(type) {
|
|
|
160
215
|
// Ignore errors reading metadata
|
|
161
216
|
}
|
|
162
217
|
|
|
163
|
-
|
|
218
|
+
// Extract clean name without extensions
|
|
219
|
+
let name;
|
|
220
|
+
if (type === 'skills' && stat.isDirectory()) {
|
|
221
|
+
name = file;
|
|
222
|
+
} else if (type === 'collections') {
|
|
223
|
+
name = file.replace(/\.(collection\.)?(yml|yaml|json)$/, '');
|
|
224
|
+
} else if (type === 'instructions') {
|
|
225
|
+
name = file.replace('.instructions.md', '');
|
|
226
|
+
} else if (type === 'prompts') {
|
|
227
|
+
name = file.replace('.prompt.md', '');
|
|
228
|
+
} else if (type === 'agents') {
|
|
229
|
+
name = file.replace('.agent.md', '');
|
|
230
|
+
} else {
|
|
231
|
+
name = path.parse(file).name;
|
|
232
|
+
}
|
|
233
|
+
|
|
164
234
|
console.log(` - ${name}${description ? ` - ${description}` : ''}`);
|
|
165
235
|
}
|
|
166
236
|
} else {
|
|
@@ -203,17 +273,43 @@ async function downloadAsset(id, options) {
|
|
|
203
273
|
let items = [];
|
|
204
274
|
|
|
205
275
|
if (IS_LOCAL) {
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
276
|
+
const YAML = (await import('yaml')).default;
|
|
277
|
+
|
|
278
|
+
// Try to find the collection file with various extensions
|
|
279
|
+
const possibleFileNames = [
|
|
280
|
+
`${name}.json`,
|
|
281
|
+
`${name}.collection.yml`,
|
|
282
|
+
`${name}.collection.yaml`,
|
|
283
|
+
`${name}.yml`,
|
|
284
|
+
`${name}.yaml`
|
|
285
|
+
];
|
|
209
286
|
|
|
210
|
-
|
|
211
|
-
|
|
287
|
+
let sourcePath = null;
|
|
288
|
+
let isYaml = false;
|
|
289
|
+
|
|
290
|
+
for (const fileName of possibleFileNames) {
|
|
291
|
+
const testPath = path.join(ASSETS_DIR, 'collections', fileName);
|
|
292
|
+
if (await fs.pathExists(testPath)) {
|
|
293
|
+
sourcePath = testPath;
|
|
294
|
+
isYaml = fileName.endsWith('.yml') || fileName.endsWith('.yaml');
|
|
295
|
+
break;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
if (!sourcePath) {
|
|
300
|
+
throw new Error(`Collection not found: ${type}/${name}`);
|
|
212
301
|
}
|
|
213
302
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
303
|
+
if (isYaml) {
|
|
304
|
+
const content = await fs.readFile(sourcePath, 'utf8');
|
|
305
|
+
const parsed = YAML.parse(content);
|
|
306
|
+
// Convert YAML format items to flat array
|
|
307
|
+
items = convertYamlItemsToFlat(parsed.items || []);
|
|
308
|
+
} else {
|
|
309
|
+
const collectionContent = await fs.readJson(sourcePath);
|
|
310
|
+
const rawItems = collectionContent.items || (Array.isArray(collectionContent) ? collectionContent : []);
|
|
311
|
+
items = normalizeCollectionItems(rawItems);
|
|
312
|
+
}
|
|
217
313
|
} else {
|
|
218
314
|
const manifest = await getManifest();
|
|
219
315
|
const asset = manifest.assets[type]?.[name];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "workspace-architect",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "A comprehensive library of specialized AI agents and personas 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",
|
|
@@ -13,12 +13,15 @@
|
|
|
13
13
|
"generate-manifest": "node scripts/generation/generate-manifest.js",
|
|
14
14
|
"migrate-collections": "node scripts/generation/migrate-collections-format.js",
|
|
15
15
|
"prepublishOnly": "npm run generate-manifest",
|
|
16
|
-
"sync
|
|
17
|
-
"sync-
|
|
18
|
-
"sync-
|
|
19
|
-
"sync-
|
|
20
|
-
"sync-
|
|
16
|
+
"sync": "node scripts/sync-repo.js",
|
|
17
|
+
"sync-agents": "node scripts/sync-repo.js agents",
|
|
18
|
+
"sync-instructions": "node scripts/sync-repo.js instructions",
|
|
19
|
+
"sync-prompts": "node scripts/sync-repo.js prompts",
|
|
20
|
+
"sync-collections": "node scripts/sync-repo.js collections",
|
|
21
|
+
"sync-skills": "node scripts/sync-repo.js skills",
|
|
22
|
+
"sync-all": "node scripts/sync-repo.js all",
|
|
21
23
|
"validate-skills": "node scripts/analysis/validate-skills.js",
|
|
24
|
+
"validate-assets": "node scripts/analysis/validate-assets.js",
|
|
22
25
|
"release": "release-it",
|
|
23
26
|
"publish:local": "npm run release && npm publish --registry http://localhost:4873"
|
|
24
27
|
},
|
|
@@ -70,7 +73,9 @@
|
|
|
70
73
|
"commander": "^12.0.0",
|
|
71
74
|
"fs-extra": "^11.2.0",
|
|
72
75
|
"gray-matter": "^4.0.3",
|
|
73
|
-
"inquirer": "^9.2.15"
|
|
76
|
+
"inquirer": "^9.2.15",
|
|
77
|
+
"minimatch": "^10.1.1",
|
|
78
|
+
"yaml": "^2.8.2"
|
|
74
79
|
},
|
|
75
80
|
"devDependencies": {
|
|
76
81
|
"@release-it/conventional-changelog": "^8.0.2",
|