specweave 1.0.324 → 1.0.326

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.
Files changed (61) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CLAUDE.md +1 -1
  3. package/bin/specweave.js +2 -2
  4. package/dist/plugins/specweave-github/lib/github-feature-sync.js +2 -2
  5. package/dist/plugins/specweave-github/lib/github-feature-sync.js.map +1 -1
  6. package/dist/src/adapters/claude/README.md +3 -3
  7. package/dist/src/adapters/cursor/README.md +1 -1
  8. package/dist/src/adapters/generic/README.md +1 -1
  9. package/dist/src/cli/helpers/init/plugin-install-flags.d.ts +1 -1
  10. package/dist/src/cli/helpers/init/plugin-install-flags.js +1 -1
  11. package/dist/src/cli/helpers/init/plugin-installer.js +2 -2
  12. package/dist/src/cli/helpers/init/plugin-installer.js.map +1 -1
  13. package/dist/src/config/types.d.ts +2 -2
  14. package/dist/src/core/fabric/registry-schema.d.ts +1 -1
  15. package/dist/src/core/fabric/registry-schema.d.ts.map +1 -1
  16. package/dist/src/core/hooks/project-scope-guard.d.ts +1 -1
  17. package/dist/src/core/hooks/project-scope-guard.d.ts.map +1 -1
  18. package/dist/src/core/hooks/project-scope-guard.js +9 -4
  19. package/dist/src/core/hooks/project-scope-guard.js.map +1 -1
  20. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts +25 -23
  21. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts.map +1 -1
  22. package/dist/src/core/lazy-loading/llm-plugin-detector.js +77 -39
  23. package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
  24. package/dist/src/core/living-docs/scaffolding/scaffold.js +1 -1
  25. package/dist/src/core/session/handoff-context.d.ts +2 -2
  26. package/dist/src/core/session/handoff-context.js +28 -28
  27. package/dist/src/core/session/handoff-context.js.map +1 -1
  28. package/dist/src/core/session/plugin-install-detector.d.ts +2 -2
  29. package/dist/src/core/session/plugin-install-detector.js +3 -3
  30. package/dist/src/core/session/restart-warning.d.ts +2 -2
  31. package/dist/src/core/session/restart-warning.d.ts.map +1 -1
  32. package/dist/src/core/session/restart-warning.js +20 -21
  33. package/dist/src/core/session/restart-warning.js.map +1 -1
  34. package/dist/src/core/session/session-state.d.ts +1 -1
  35. package/dist/src/core/session/session-state.js +1 -1
  36. package/dist/src/core/types/plugin-scope.d.ts +2 -2
  37. package/dist/src/core/types/plugin-scope.js +1 -1
  38. package/dist/src/init/research/types.d.ts +1 -1
  39. package/dist/src/locales/en/cli.json +1 -1
  40. package/dist/src/locales/ru/cli.json +1 -1
  41. package/package.json +1 -1
  42. package/plugins/FINAL-AUDIT-RECOMMENDATIONS.md +3 -3
  43. package/plugins/SKILLS-VS-AGENTS.md +13 -13
  44. package/plugins/specweave/commands/team-status.md +1 -1
  45. package/plugins/specweave/hooks/user-prompt-submit.sh +22 -17
  46. package/plugins/specweave/hooks/v2/dispatchers/session-start.sh +2 -2
  47. package/plugins/specweave/skills/architect/SKILL.md +2 -2
  48. package/plugins/specweave/skills/team-build/SKILL.md +7 -7
  49. package/plugins/specweave/skills/team-lead/SKILL.md +17 -17
  50. package/plugins/specweave-docs/.claude-plugin/plugin.json +1 -1
  51. package/plugins/specweave-docs/PLUGIN.md +1 -1
  52. package/plugins/specweave-docs/commands/build.md +7 -7
  53. package/plugins/specweave-docs/commands/generate.md +21 -21
  54. package/plugins/specweave-docs/commands/health.md +9 -9
  55. package/plugins/specweave-docs/commands/init.md +8 -8
  56. package/plugins/specweave-docs/commands/organize.md +9 -9
  57. package/plugins/specweave-docs/commands/validate.md +8 -8
  58. package/plugins/specweave-docs/commands/view.md +13 -13
  59. package/plugins/specweave-github/lib/github-feature-sync.js +1 -1
  60. package/plugins/specweave-github/lib/github-feature-sync.ts +2 -2
  61. package/src/templates/CLAUDE.md.template +3 -3
@@ -49,39 +49,38 @@ const RESTART_INSTRUCTIONS = [
49
49
  */
50
50
  const PLUGIN_DESCRIPTIONS = {
51
51
  'sw': 'SpecWeave Core - Spec-driven development framework',
52
- 'sw-frontend': 'Frontend Development - React, Vue, Next.js expertise',
53
- 'sw-backend': 'Backend Development - API, database, microservices',
52
+ 'frontend': 'Frontend Development - React, Vue, Next.js expertise',
53
+ 'backend': 'Backend Development - API, database, microservices',
54
54
  'sw-github': 'GitHub Integration - Issues, PRs, sync',
55
55
  'sw-jira': 'JIRA Integration - Epics, stories, sync',
56
56
  'sw-ado': 'Azure DevOps Integration - Work items, boards',
57
- 'sw-k8s': 'Kubernetes - K8s, Helm, GitOps',
58
- 'sw-infra': 'Infrastructure - Terraform, Docker, CI/CD',
59
- 'sw-testing': 'Testing & QA - E2E, Playwright, Vitest',
60
- 'sw-mobile': 'Mobile Development - React Native, iOS, Android',
61
- 'sw-ml': 'Machine Learning - ML, PyTorch, TensorFlow',
62
- 'sw-payments': 'Payments - Stripe, PayPal, checkout flows',
57
+ 'k8s': 'Kubernetes - K8s, Helm, GitOps',
58
+ 'infra': 'Infrastructure - Terraform, Docker, CI/CD',
59
+ 'testing': 'Testing & QA - E2E, Playwright, Vitest',
60
+ 'mobile': 'Mobile Development - React Native, iOS, Android',
61
+ 'ml': 'Machine Learning - ML, PyTorch, TensorFlow',
62
+ 'payments': 'Payments - Stripe, PayPal, checkout flows',
63
63
  'sw-diagrams': 'Diagrams - Mermaid, C4, architecture diagrams',
64
64
  'sw-release': 'Release Management - Versioning, changelog',
65
- // NOTE: sw-router REMOVED v1.0.204 - detect-intent now handles routing
66
- 'sw-confluent': 'Confluent Cloud - Kafka, Schema Registry, ksqlDB',
67
- 'sw-kafka': 'Apache Kafka - Event streaming, topics',
65
+ 'confluent': 'Confluent Cloud - Kafka, Schema Registry, ksqlDB',
66
+ 'kafka': 'Apache Kafka - Event streaming, topics',
68
67
  };
69
68
  /**
70
69
  * Plugin skill summaries for continuation context
71
70
  */
72
71
  const PLUGIN_SKILLS = {
73
72
  'sw': '/sw:increment, /sw:do, /sw:done - Core workflow',
74
- 'sw-frontend': 'Frontend architecture and React expertise',
75
- 'sw-backend': 'Backend API and database expertise',
73
+ 'frontend': 'Frontend architecture and React expertise',
74
+ 'backend': 'Backend API and database expertise',
76
75
  'sw-github': '/sw-github:sync - GitHub issue sync',
77
76
  'sw-jira': '/sw-jira:sync - JIRA issue sync',
78
77
  'sw-ado': '/sw-ado:sync - Azure DevOps sync',
79
- 'sw-k8s': 'Kubernetes architecture and manifests',
80
- 'sw-infra': 'Infrastructure as Code and DevOps',
81
- 'sw-testing': 'QA strategy and E2E testing',
82
- 'sw-mobile': 'Mobile app development expertise',
83
- 'sw-ml': 'Machine learning and MLOps',
84
- 'sw-payments': 'Payment integration (Stripe, PayPal)',
78
+ 'k8s': 'Kubernetes architecture and manifests',
79
+ 'infra': 'Infrastructure as Code and DevOps',
80
+ 'testing': 'QA strategy and E2E testing',
81
+ 'mobile': 'Mobile app development expertise',
82
+ 'ml': 'Machine learning and MLOps',
83
+ 'payments': 'Payment integration (Stripe, PayPal)',
85
84
  'sw-diagrams': 'Architecture diagrams and C4 models',
86
85
  'sw-release': 'Release management and versioning',
87
86
  };
@@ -189,14 +188,14 @@ function getPluginCountPhrase(count) {
189
188
  * ```typescript
190
189
  * // Basic usage
191
190
  * const result = formatRestartWarning({
192
- * plugins: ['sw', 'sw-frontend'],
191
+ * plugins: ['sw', 'frontend'],
193
192
  * projectPath: '/path/to/project'
194
193
  * });
195
194
  * console.log(result.text);
196
195
  *
197
196
  * // With full context for handoff
198
197
  * const detailed = formatRestartWarning({
199
- * plugins: ['sw', 'sw-frontend'],
198
+ * plugins: ['sw', 'frontend'],
200
199
  * projectPath: '/path/to/project',
201
200
  * originalIntent: 'Create React dashboard with Stripe',
202
201
  * includeDescriptions: true,
@@ -1 +1 @@
1
- {"version":3,"file":"restart-warning.js","sourceRoot":"","sources":["../../../../src/core/session/restart-warning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restart-warning.js","sourceRoot":"","sources":["../../../../src/core/session/restart-warning.ts"],"names":[],"mappings":"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"}
@@ -79,7 +79,7 @@ export declare function initSessionState(projectRoot: string): SessionState;
79
79
  *
80
80
  * @example
81
81
  * ```typescript
82
- * const state = recordPluginInstallation('/path/to/project', ['sw', 'sw-frontend'], {
82
+ * const state = recordPluginInstallation('/path/to/project', ['sw', 'frontend'], {
83
83
  * trigger: 'specweave-init',
84
84
  * projectPath: '/new/project'
85
85
  * });
@@ -143,7 +143,7 @@ export function initSessionState(projectRoot) {
143
143
  *
144
144
  * @example
145
145
  * ```typescript
146
- * const state = recordPluginInstallation('/path/to/project', ['sw', 'sw-frontend'], {
146
+ * const state = recordPluginInstallation('/path/to/project', ['sw', 'frontend'], {
147
147
  * trigger: 'specweave-init',
148
148
  * projectPath: '/new/project'
149
149
  * });
@@ -39,7 +39,7 @@ export interface PluginScopeConfig {
39
39
  */
40
40
  lspScope?: PluginInstallationScope;
41
41
  /**
42
- * Scope for SpecWeave plugins (sw, sw-frontend, sw-backend, etc.)
42
+ * Scope for SpecWeave plugins (sw, sw-github, frontend, backend, etc.)
43
43
  * @default 'user'
44
44
  */
45
45
  specweaveScope?: PluginInstallationScope;
@@ -60,7 +60,7 @@ export interface PluginScopeConfig {
60
60
  * Default plugin scope configuration
61
61
  *
62
62
  * - LSP plugins: project scope (language-specific, don't pollute global)
63
- * - SpecWeave domain plugins (sw-frontend, sw-github, etc.): project scope
63
+ * - SpecWeave/vskill plugins (frontend, backend, sw-github, etc.): project scope
64
64
  * - Core SpecWeave plugin (sw): user scope (needed across all projects)
65
65
  * - Other plugins: user scope (default)
66
66
  */
@@ -14,7 +14,7 @@
14
14
  * Default plugin scope configuration
15
15
  *
16
16
  * - LSP plugins: project scope (language-specific, don't pollute global)
17
- * - SpecWeave domain plugins (sw-frontend, sw-github, etc.): project scope
17
+ * - SpecWeave/vskill plugins (frontend, backend, sw-github, etc.): project scope
18
18
  * - Core SpecWeave plugin (sw): user scope (needed across all projects)
19
19
  * - Other plugins: user scope (default)
20
20
  */
@@ -73,13 +73,13 @@ export declare const VisionInsightsSchema: z.ZodObject<{
73
73
  education: "education";
74
74
  iot: "iot";
75
75
  gaming: "gaming";
76
+ blockchain: "blockchain";
76
77
  marketplace: "marketplace";
77
78
  "productivity-saas": "productivity-saas";
78
79
  "e-commerce": "e-commerce";
79
80
  "social-network": "social-network";
80
81
  "enterprise-b2b": "enterprise-b2b";
81
82
  "consumer-b2c": "consumer-b2c";
82
- blockchain: "blockchain";
83
83
  "ai-ml": "ai-ml";
84
84
  }>;
85
85
  competitors: z.ZodArray<z.ZodObject<{
@@ -131,7 +131,7 @@
131
131
  "installCore": "Run: /plugin install specweave",
132
132
  "step3": "Optional: Install additional plugins as needed:",
133
133
  "installGitHub": "/plugin install sw-github@specweave",
134
- "installFrontend": "/plugin install sw-frontend@specweave",
134
+ "installFrontend": "/plugin install frontend@vskill",
135
135
  "step4": "Start building:",
136
136
  "example": "\"/sw:increment 'user authentication'\"",
137
137
  "autoActivate": "Skills and agents auto-activate based on context"
@@ -124,7 +124,7 @@
124
124
  "installCore": "Выполните: /plugin install specweave",
125
125
  "step3": "Опционально: Установите дополнительные плагины по необходимости:",
126
126
  "installGitHub": "/plugin install sw-github@specweave",
127
- "installFrontend": "/plugin install sw-frontend@specweave",
127
+ "installFrontend": "/plugin install frontend@vskill",
128
128
  "step4": "Начните разработку:",
129
129
  "example": "\"/sw:increment 'аутентификация пользователя'\"",
130
130
  "autoActivate": "Навыки и агенты активируются автоматически по контексту"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specweave",
3
- "version": "1.0.324",
3
+ "version": "1.0.326",
4
4
  "description": "Spec-driven development framework for AI coding agents. Works with Claude Code, Codex, Antigravity, Cursor, Copilot & more. 100+ skills, 49 CLI commands, verified skill certification, autonomous execution, and living documentation.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -67,10 +67,10 @@ These have **explicit task instructions** (e.g., "create tests", "generate code"
67
67
 
68
68
  | Skill | Has Explicit Task? | Keep `context: fork`? |
69
69
  |-------|-------------------|----------------------|
70
- | `qa-engineer` (sw-testing) | ✅ "Creates test suites ONE FILE AT A TIME" | ✅ Keep |
70
+ | `qa-engineer` (testing) | ✅ "Creates test suites ONE FILE AT A TIME" | ✅ Keep |
71
71
  | `tech-lead` | ✅ "Implements code ONE FILE AT A TIME" | ✅ Keep |
72
72
  | `docs-writer` | ✅ "Generates docs ONE SECTION AT A TIME" | ✅ Keep |
73
- | `devops` (sw-infra) | ✅ "Generates IaC ONE LAYER AT A TIME" | ✅ Keep |
73
+ | `devops` (infra) | ✅ "Generates IaC ONE LAYER AT A TIME" | ✅ Keep |
74
74
  | `increment` | ✅ Creates increment structure | ✅ Keep |
75
75
  | `test-aware-planner` | ✅ Generates tasks.md with tests | ✅ Keep |
76
76
  | `tdd-cycle` | ✅ Coordinates TDD workflow | ✅ Keep |
@@ -153,7 +153,7 @@ disable-model-invocation: true
153
153
  |---------|-------|--------------|---------|
154
154
  | `reflect.md` | `reflect/SKILL.md` | **Complementary** | Command is workflow, skill is knowledge |
155
155
  | `translate.md` | `translator/SKILL.md` | **Complementary** | Command is batch workflow, skill is expertise |
156
- | `qa.md` | `sw-testing:qa-engineer` | **Complementary** | Command runs CLI, skill creates tests |
156
+ | `qa.md` | `testing:qa` | **Complementary** | Command runs CLI, skill creates tests |
157
157
  | `plan.md` | `increment/SKILL.md` | **Complementary** | Command for existing, skill for new increments |
158
158
  | `tdd-cycle.md` | `tdd-cycle/SKILL.md` | **Complementary** | Command starts workflow, skill orchestrates |
159
159
 
@@ -82,14 +82,14 @@ All domain experts are now skills with `context: fork`:
82
82
 
83
83
  | Domain | Skill | Triggers (Auto-activate) |
84
84
  |--------|-------|--------------------------|
85
- | **Frontend** | `sw-frontend:frontend-architect` | React, Vue, Next.js, dashboard, component, UI |
86
- | **Backend** | `sw-backend:database-optimizer` | API, database, SQL, PostgreSQL, optimization |
87
- | **Payments** | `sw-payments:payment-integration` | Stripe, PayPal, checkout, billing, subscriptions |
88
- | **Testing** | `sw-testing:qa-engineer` | E2E, Playwright, Vitest, Jest, TDD, QA |
89
- | **Kubernetes** | `sw-k8s:kubernetes-architect` | K8s, pods, deployments, Helm, GitOps |
90
- | **Infrastructure** | `sw-infra:devops` | Terraform, Docker, CI/CD, AWS, Azure |
91
- | **Mobile** | `sw-mobile:react-native-expert` | React Native, iOS, Android, Expo |
92
- | **ML/AI** | `sw-ml:ml-engineer` | ML, model, training, TensorFlow, PyTorch |
85
+ | **Frontend** | `frontend:architect` | React, Vue, Next.js, dashboard, component, UI |
86
+ | **Backend** | `backend:database-optimizer` | API, database, SQL, PostgreSQL, optimization |
87
+ | **Payments** | `payments:payment-integration` | Stripe, PayPal, checkout, billing, subscriptions |
88
+ | **Testing** | `testing:qa` | E2E, Playwright, Vitest, Jest, TDD, QA |
89
+ | **Kubernetes** | `k8s:kubernetes-architect` | K8s, pods, deployments, Helm, GitOps |
90
+ | **Infrastructure** | `infra:devops` | Terraform, Docker, CI/CD, AWS, Azure |
91
+ | **Mobile** | `mobile:react-native-expert` | React Native, iOS, Android, Expo |
92
+ | **ML/AI** | `ml:ml-engineer` | ML, model, training, TensorFlow, PyTorch |
93
93
  | **Diagrams** | `sw-diagrams:diagrams` | Mermaid, C4, architecture diagram, flowchart |
94
94
  | **Release** | `sw-release:release-expert` | release, version, changelog, npm publish |
95
95
 
@@ -102,8 +102,8 @@ All run in isolated context without polluting the main conversation.
102
102
  **What happens:**
103
103
  1. Claude detects keywords: "React", "dashboard", "Stripe", "checkout"
104
104
  2. Skills auto-activate (primary mechanism):
105
- - `sw-frontend:frontend-architect` (React, dashboard)
106
- - `sw-payments:payment-integration` (Stripe, checkout)
105
+ - `frontend:architect` (React, dashboard)
106
+ - `payments:payment-integration` (Stripe, checkout)
107
107
  3. Each skill runs in isolated context (`context: fork`)
108
108
  4. Results return to main conversation
109
109
 
@@ -113,7 +113,7 @@ All run in isolated context without polluting the main conversation.
113
113
 
114
114
  ```typescript
115
115
  // If auto-activation didn't work, explicitly invoke:
116
- Skill({ skill: "sw-frontend:frontend-architect", args: "dashboard" })
116
+ Skill({ skill: "frontend:architect", args: "dashboard" })
117
117
  ```
118
118
 
119
119
  ## Migration Complete
@@ -152,8 +152,8 @@ plugins/specweave-frontend/
152
152
 
153
153
  ### Q: How do I invoke a skill explicitly?
154
154
  **A:** Two ways:
155
- 1. **User**: Type `/sw-frontend:frontend-architect` in chat
156
- 2. **Claude**: Use `Skill({ skill: "sw-frontend:frontend-architect" })` when auto-activation didn't trigger
155
+ 1. **User**: Type `/frontend:architect` in chat
156
+ 2. **Claude**: Use `Skill({ skill: "frontend:architect" })` when auto-activation didn't trigger
157
157
 
158
158
  Usually just describe what you need - skills auto-activate on keywords. Use explicit invocation as fallback.
159
159
 
@@ -42,7 +42,7 @@ Mode: Native Agent Teams
42
42
  | Agent 3 | shared | 0195-checkout-shared | 4/4 | 100% | done |
43
43
 
44
44
  Overall: 12/18 tasks (67%)
45
- Active Skills: sw-frontend:frontend-architect, sw:architect, sw:architect
45
+ Active Skills: frontend:architect, sw:architect, sw:architect
46
46
  ```
47
47
 
48
48
  ## Agent State Icons
@@ -154,7 +154,9 @@ find_specweave_config() {
154
154
  }
155
155
 
156
156
  # Check if this is a SpecWeave skill invocation
157
- if [[ "$PROMPT" =~ ^[[:space:]]*/[Ss][Ww](-[a-zA-Z0-9-]+)?:[a-zA-Z-]+ ]]; then
157
+ # Matches: /sw:*, /sw-github:*, /frontend:*, /backend:*, /testing:*, etc.
158
+ DOMAIN_PLUGIN_PATTERN="^[[:space:]]*/([Ff]rontend|[Bb]ackend|[Tt]esting|[Mm]obile|[Ii]nfra|[Kk]8s|[Mm]l|[Pp]ayments|[Kk]afka|[Cc]onfluent|[Cc]ost|[Dd]ocs|[Ss]ecurity|[Ss]kills|[Bb]lockchain):[a-zA-Z-]+"
159
+ if [[ "$PROMPT" =~ ^[[:space:]]*/[Ss][Ww](-[a-zA-Z0-9-]+)?:[a-zA-Z-]+ ]] || [[ "$PROMPT" =~ $DOMAIN_PLUGIN_PATTERN ]]; then
158
160
  # Check if guard is disabled via environment variable
159
161
  if [[ "${SPECWEAVE_DISABLE_GUARD:-0}" != "1" ]]; then
160
162
  # Check if project is initialized (walk up tree to find .specweave/config.json)
@@ -162,7 +164,7 @@ if [[ "$PROMPT" =~ ^[[:space:]]*/[Ss][Ww](-[a-zA-Z0-9-]+)?:[a-zA-Z-]+ ]]; then
162
164
  if [[ -z "$FOUND_CONFIG" ]]; then
163
165
  # Check if guard is disabled in config (would fail since no config exists yet)
164
166
  # Extract skill name for error message
165
- SKILL_NAME=$(echo "$PROMPT" | grep -oE '^[[:space:]]*/[Ss][Ww](-[a-zA-Z0-9-]+)?:[a-zA-Z-]+' | tr '[:upper:]' '[:lower:]')
167
+ SKILL_NAME=$(echo "$PROMPT" | grep -oiE '^[[:space:]]*/[a-z0-9-]+:[a-zA-Z-]+' | tr '[:upper:]' '[:lower:]' | sed 's/^[[:space:]]*//')
166
168
 
167
169
  # Generate helpful error message
168
170
  cat <<EOF
@@ -194,7 +196,7 @@ You invoked \`${SKILL_NAME}\`, but this project hasn't been initialized with Spe
194
196
  {
195
197
  \"enabledPlugins\": {
196
198
  \"sw@specweave\": false,
197
- \"sw-frontend@specweave\": false
199
+ \"frontend@vskill\": false
198
200
  }
199
201
  }
200
202
  \`\`\`
@@ -449,9 +451,9 @@ output_approve_with_context() {
449
451
  # was eliminated to save ~800 chars of context budget per turn. The skill reads
450
452
  # the user's prompt from conversation context (it's already there).
451
453
 
452
- # Helper: Check if sw-* plugin is in vskill.lock (fast-path skip) (v1.0.272)
454
+ # Helper: Check if plugin is in vskill.lock (fast-path skip) (v1.0.272)
453
455
  # vskill.lock is the SOURCE OF TRUTH for vskill-installed plugins.
454
- # Args: $1=plugin name (e.g., "sw-frontend")
456
+ # Args: $1=plugin name (e.g., "frontend")
455
457
  # Returns: 0 if in lockfile, 1 if not
456
458
  check_plugin_in_vskill_lock() {
457
459
  local plugin="$1"
@@ -478,9 +480,9 @@ check_plugin_in_vskill_lock() {
478
480
  fi
479
481
  }
480
482
 
481
- # Helper: Install sw-* plugin via vskill (v1.0.272)
483
+ # Helper: Install plugin via vskill (v1.0.272)
482
484
  # Uses npx vskill add with --plugin and --plugin-dir flags.
483
- # Args: $1=plugin name (e.g., "sw-frontend")
485
+ # Args: $1=plugin name (e.g., "frontend")
484
486
  # Returns: 0 if installed successfully, 1 if failed
485
487
  # Sets VSKILL_INSTALL_OUTPUT with stdout/stderr for scan result display
486
488
  install_plugin_via_vskill() {
@@ -519,17 +521,18 @@ install_plugin_via_vskill() {
519
521
  fi
520
522
  }
521
523
 
522
- # Plugins migrated to vskill repo (v1.0.315 - 0331)
523
- # These are installed via vskill add --repo instead of local marketplace
524
- VSKILL_REPO_PLUGINS="frontend backend testing mobile infra k8s payments ml kafka confluent kafka-streams n8n cost docs security scout"
524
+ # Domain skill plugins in vskill marketplace (per-category plugins).
525
+ # Each is a standalone plugin: frontend@vskill, backend@vskill, etc.
526
+ # Skills are invoked as plugin:skill (e.g., frontend:nextjs, backend:dotnet).
527
+ VSKILL_REPO_PLUGINS="frontend backend testing mobile infra k8s payments ml kafka confluent cost docs security skills blockchain"
525
528
 
526
- # Check if plugin is a vskill repo plugin
529
+ # Check if plugin name is a vskill marketplace plugin
527
530
  is_vskill_repo_plugin() {
528
531
  local plugin="$1"
529
532
  echo " $VSKILL_REPO_PLUGINS " | grep -q " $plugin "
530
533
  }
531
534
 
532
- # Install vskill repo plugin via --repo flag (v1.0.315 - 0331)
535
+ # Install vskill marketplace plugin via --repo flag.
533
536
  # Args: $1=plugin name (e.g., "frontend")
534
537
  install_vskill_repo_plugin() {
535
538
  local plugin="$1"
@@ -555,7 +558,7 @@ install_vskill_repo_plugin() {
555
558
 
556
559
  # Helper: Check if plugin is installed by reading installed_plugins.json (v1.0.175)
557
560
  # This is the SOURCE OF TRUTH - more reliable than `claude plugin list` which can have timing issues.
558
- # Args: $1=plugin name (e.g., "sw-frontend"), $2=marketplace (e.g., "specweave")
561
+ # Args: $1=plugin name (e.g., "frontend"), $2=marketplace (e.g., "vskill")
559
562
  # Returns: 0 if installed, 1 if not installed
560
563
  check_plugin_installed_from_json() {
561
564
  local plugin="$1"
@@ -571,7 +574,7 @@ check_plugin_installed_from_json() {
571
574
  fi
572
575
 
573
576
  # Check if plugin exists in registry
574
- # Format: {"plugins": {"sw-frontend@specweave": [...], ...}}
577
+ # Format: {"plugins": {"frontend@vskill": [...], ...}}
575
578
  local full_name="${plugin}@${marketplace}"
576
579
  local has_plugin
577
580
  has_plugin=$(jq -r --arg key "$full_name" '.plugins[$key] // null' "$registry_path" 2>/dev/null)
@@ -587,7 +590,7 @@ check_plugin_installed_from_json() {
587
590
  # KEYWORD-BASED PLUGIN DETECTION REMOVED (v1.0.159)
588
591
  # ==============================================================================
589
592
  # Keyword fallback was removed because it was too aggressive.
590
- # Example: "run tests" would install sw-testing even for simple test runs.
593
+ # Example: "run tests" would install testing even for simple test runs.
591
594
  #
592
595
  # Plugin detection now happens ONLY via LLM analysis (specweave detect-intent).
593
596
  # The LLM understands user INTENT - it only recommends plugins when user
@@ -1298,7 +1301,8 @@ if [[ "${SPECWEAVE_DISABLE_AUTO_LOAD:-0}" != "1" ]] && [[ "${SPECWEAVE_DISABLE_H
1298
1301
  fi
1299
1302
  fi
1300
1303
  elif is_vskill_repo_plugin "$plugin"; then
1301
- # ---- VSKILL REPO PLUGINS: Install via vskill --repo (v1.0.315 - 0331) ----
1304
+ # ---- VSKILL MARKETPLACE PLUGINS ----
1305
+ # Each category is a standalone plugin (frontend@vskill, backend@vskill, etc.)
1302
1306
  if check_plugin_in_vskill_lock "$plugin"; then
1303
1307
  [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1304
1308
  PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
@@ -1609,7 +1613,8 @@ After increment, chain domain skills per tech stack (see CLAUDE.md Skill Chainin
1609
1613
  PRIMARY_PLUGIN=$(echo "$JSON_OUTPUT" | jq -r '.routing.skills[] | select(.priority == "primary") | .plugin // empty' 2>/dev/null | head -1)
1610
1614
  PRIMARY_SKILL_NAME=$(echo "$JSON_OUTPUT" | jq -r '.routing.skills[] | select(.priority == "primary") | .name // empty' 2>/dev/null | head -1)
1611
1615
  BRAIN_MSG+="Primary skill: ${PRIMARY_SKILL}"
1612
- [[ -n "$PRIMARY_PLUGIN" && -n "$PRIMARY_SKILL_NAME" ]] && BRAIN_MSG+=" (agent: ${PRIMARY_PLUGIN}:${PRIMARY_SKILL_NAME}:${PRIMARY_SKILL_NAME})"
1616
+ # v2.1.0: Use plugin:skill format for agent type (e.g., frontend:nextjs)
1617
+ [[ -n "$PRIMARY_PLUGIN" && -n "$PRIMARY_SKILL_NAME" ]] && BRAIN_MSG+=" (agent: ${PRIMARY_PLUGIN}:${PRIMARY_SKILL_NAME})"
1613
1618
  BRAIN_MSG+=", invoke: ${PRIMARY_INVOKE:-after_increment}. "
1614
1619
  [[ -n "$SECONDARY_SKILLS" ]] && BRAIN_MSG+="Also: ${SECONDARY_SKILLS}. "
1615
1620
  fi
@@ -200,9 +200,9 @@ fi
200
200
  #
201
201
  # Plugin auto-loading now happens ONLY in user-prompt-submit.sh via LLM detection.
202
202
  # When user submits a prompt like "Build React dashboard", the LLM analyzes
203
- # the request and installs relevant plugins (sw-frontend, etc.)
203
+ # the request and installs relevant plugins (frontend, backend, etc.)
204
204
  #
205
- # To install plugins manually: vskill install sw-frontend@specweave
205
+ # To install plugins manually: vskill install --repo anton-abyzov/vskill --plugin frontend
206
206
 
207
207
  # === LEGACY STATE CLEANUP (v1.0.148) ===
208
208
  # Clean up old processor state files on session start
@@ -51,7 +51,7 @@ When a service exposes 50+ API endpoints to AI agents, avoid exposing each as a
51
51
  ## Delegation
52
52
 
53
53
  After architecture is ready, delegate to domain skills:
54
- - Frontend: `sw-frontend:frontend-architect`
55
- - Backend: `sw-backend:*` (dotnet, nodejs, python, go, java-spring, rust)
54
+ - Frontend: `frontend:architect`
55
+ - Backend: `backend:*` (dotnet, nodejs, python, go, java-spring, rust)
56
56
 
57
57
  Output: `plan.md` with architecture decisions and component breakdown.
@@ -43,8 +43,8 @@ Build features end-to-end with a shared-types-first contract approach. Agent 1 e
43
43
  | # | Role | Skill(s) | Owns | Responsibility |
44
44
  |---|------|----------|------|----------------|
45
45
  | 1 | Shared/Types | `sw:architect` | `src/types/`, `src/utils/`, `src/shared/` | Define TypeScript interfaces, shared validators, utility functions, and API contracts |
46
- | 2 | Backend | `sw:architect` + `sw-infra:devops` | `src/api/`, `src/services/` | Implement API endpoints, service layer, database queries, and infrastructure config |
47
- | 3 | Frontend | `sw-frontend:frontend-architect` | `src/components/`, `src/pages/` | Build UI components, pages, state management, and client-side logic |
46
+ | 2 | Backend | `sw:architect` + `infra:devops` | `src/api/`, `src/services/` | Implement API endpoints, service layer, database queries, and infrastructure config |
47
+ | 3 | Frontend | `frontend:architect` | `src/components/`, `src/pages/` | Build UI components, pages, state management, and client-side logic |
48
48
 
49
49
  #### Execution Chain
50
50
 
@@ -133,15 +133,15 @@ This spawns three parallel reviewers:
133
133
 
134
134
  Generate comprehensive test coverage across all test levels simultaneously. Each agent focuses on a different testing layer and operates independently.
135
135
 
136
- > **Note:** `sw-testing:qa-engineer` is the primary orchestration skill for testing workflows. This preset splits its responsibilities into specialized agents for parallel execution.
136
+ > **Note:** `testing:qa` is the primary orchestration skill for testing workflows. This preset splits its responsibilities into specialized agents for parallel execution.
137
137
 
138
138
  #### Agent Composition
139
139
 
140
140
  | # | Role | Skill(s) | Owns | Responsibility |
141
141
  |---|------|----------|------|----------------|
142
- | 1 | Unit | `sw-testing:unit-testing` | `tests/unit/` | Write unit tests for individual functions, classes, and modules with proper mocking |
143
- | 2 | E2E | `sw-testing:e2e-testing` | `tests/e2e/` | Write end-to-end tests for user flows, API sequences, and cross-service interactions |
144
- | 3 | Coverage | `sw-testing:qa-engineer` | `tests/` (analysis scope) | Analyze coverage gaps, generate missing test cases, ensure threshold compliance |
142
+ | 1 | Unit | `testing:unit` | `tests/unit/` | Write unit tests for individual functions, classes, and modules with proper mocking |
143
+ | 2 | E2E | `testing:e2e` | `tests/e2e/` | Write end-to-end tests for user flows, API sequences, and cross-service interactions |
144
+ | 3 | Coverage | `testing:qa` | `tests/` (analysis scope) | Analyze coverage gaps, generate missing test cases, ensure threshold compliance |
145
145
 
146
146
  #### Execution Chain
147
147
 
@@ -243,7 +243,7 @@ Migrate data schemas safely with a schema-first approach. The schema agent defin
243
243
  |---|------|----------|------|----------------|
244
244
  | 1 | Schema | `sw:architect` | `src/types/`, `migrations/`, `prisma/`, `drizzle/` | Define new schema, write migration scripts, update type definitions, ensure backward compatibility |
245
245
  | 2 | Backend | `sw:architect` | `src/api/`, `src/services/` | Update API endpoints, service logic, queries, and serializers to work with new schema |
246
- | 3 | Frontend | `sw-frontend:frontend-architect` | `src/components/`, `src/pages/` | Update UI components, forms, and state to reflect schema changes |
246
+ | 3 | Frontend | `frontend:architect` | `src/components/`, `src/pages/` | Update UI components, forms, and state to reflect schema changes |
247
247
 
248
248
  #### Execution Chain
249
249
 
@@ -39,15 +39,15 @@ Analyze the feature request and map affected domains to SpecWeave skills.
39
39
 
40
40
  | Domain | Primary Skill | Additional Skills | When to Use |
41
41
  |--------|--------------|-------------------|-------------|
42
- | **Frontend** | `sw-frontend:frontend-architect` | `sw-frontend:nextjs`, `sw-frontend:frontend-design` | UI components, pages, client-side state |
43
- | **Backend** | `sw:architect` | `sw-infra:devops` | API endpoints, services, business logic |
42
+ | **Frontend** | `frontend:architect` | `frontend:nextjs`, `frontend:design` | UI components, pages, client-side state |
43
+ | **Backend** | `sw:architect` | `infra:devops` | API endpoints, services, business logic |
44
44
  | **Database** | `sw:architect` | | Schema design, migrations, seed data |
45
45
  | **Shared/Types** | `sw:architect` | `sw:code-simplifier` | TypeScript interfaces, shared constants, API contracts |
46
- | **Testing** | `sw-testing:qa-engineer` | `sw-testing:e2e-testing`, `sw-testing:unit-testing` | Test strategy, E2E suites, integration tests |
47
- | **Security** | `sw:security` | `sw:security-patterns` | Auth, authorization, threat modeling, OWASP |
48
- | **DevOps** | `sw-infra:devops` | `sw-k8s:deployment-generate`, `sw-infra:observability` | CI/CD, Docker, K8s, monitoring |
49
- | **Mobile** | `sw-mobile:react-native-expert` | `sw-mobile:screen-generate`, `sw-mobile:expo` | Native/cross-platform mobile apps |
50
- | **ML** | `sw-ml:ml-engineer` | `sw-ml:pipeline`, `sw-ml:deploy` | Model training, inference pipelines, deployment |
46
+ | **Testing** | `testing:qa` | `testing:e2e`, `testing:unit` | Test strategy, E2E suites, integration tests |
47
+ | **Security** | `sw:security` | `security:patterns` | Auth, authorization, threat modeling, OWASP |
48
+ | **DevOps** | `infra:devops` | `k8s:deployment-generate`, `infra:observability` | CI/CD, Docker, K8s, monitoring |
49
+ | **Mobile** | `mobile:react-native` | `mobile:screen-generate`, `mobile:expo` | Native/cross-platform mobile apps |
50
+ | **ML** | `ml:engineer` | `ml:pipeline`, `ml:deploy` | Model training, inference pipelines, deployment |
51
51
 
52
52
  ### Auto-Detection Signals
53
53
 
@@ -276,9 +276,9 @@ Each agent receives a detailed prompt that includes its skill invocations, file
276
276
  You are the FRONTEND agent for increment [INCREMENT_ID].
277
277
 
278
278
  SKILLS TO INVOKE:
279
- Skill({ skill: "sw-frontend:frontend-architect" })
280
- Skill({ skill: "sw-frontend:nextjs" }) // if Next.js project
281
- Skill({ skill: "sw-frontend:frontend-design" }) // for polished, world-class UI
279
+ Skill({ skill: "frontend:architect" })
280
+ Skill({ skill: "frontend:nextjs" }) // if Next.js project
281
+ Skill({ skill: "frontend:design" }) // for polished, world-class UI
282
282
  Skill({ skill: "sw:service-connect" }) // for external service setup
283
283
 
284
284
  FILE OWNERSHIP (WRITE access):
@@ -296,7 +296,7 @@ DESIGN QUALITY:
296
296
  - Default to world-class, sleek, polished, production-ready design
297
297
  - All UI must be responsive (mobile-first) and accessible (WCAG 2.1 AA)
298
298
  - Use modern design patterns: clean spacing, typography hierarchy, subtle animations
299
- - Invoke `sw-frontend:frontend-design` for high-quality UI polish
299
+ - Invoke `frontend:design` for high-quality UI polish
300
300
 
301
301
  WORKFLOW:
302
302
  1. Set working directory to your assigned repo: cd repositories/{ORG}/{repo-name}
@@ -337,7 +337,7 @@ You are the BACKEND agent for increment [INCREMENT_ID].
337
337
 
338
338
  SKILLS TO INVOKE:
339
339
  Skill({ skill: "sw:architect" })
340
- Skill({ skill: "sw-infra:devops" }) // if deployment config needed
340
+ Skill({ skill: "infra:devops" }) // if deployment config needed
341
341
  Skill({ skill: "sw:service-connect" }) // for auth provider and external service setup
342
342
 
343
343
  FILE OWNERSHIP (WRITE access):
@@ -445,9 +445,9 @@ RULES:
445
445
  You are the TESTING agent for increment [INCREMENT_ID].
446
446
 
447
447
  SKILLS TO INVOKE:
448
- Skill({ skill: "sw-testing:qa-engineer" })
449
- Skill({ skill: "sw-testing:e2e-testing" }) // for E2E test suites
450
- Skill({ skill: "sw-testing:unit-testing" }) // for unit test coverage
448
+ Skill({ skill: "testing:qa" })
449
+ Skill({ skill: "testing:e2e" }) // for E2E test suites
450
+ Skill({ skill: "testing:unit" }) // for unit test coverage
451
451
 
452
452
  FILE OWNERSHIP (WRITE access):
453
453
  tests/**
@@ -767,8 +767,8 @@ Phase 1 (upstream):
767
767
  2. database -> sw:architect | Increment: 0201-checkout-database
768
768
 
769
769
  Phase 2 (downstream, parallel):
770
- 3. backend -> sw:architect, sw-infra:devops | Increment: 0202-checkout-backend
771
- 4. frontend -> sw-frontend:frontend-architect | Increment: 0203-checkout-frontend
770
+ 3. backend -> sw:architect, infra:devops | Increment: 0202-checkout-backend
771
+ 4. frontend -> frontend:architect | Increment: 0203-checkout-frontend
772
772
 
773
773
  Max agents: 4 (2 sequential + 2 parallel)
774
774
  To execute, run without --dry-run.
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "sw-docs",
2
+ "name": "docs",
3
3
  "version": "1.0.0",
4
4
  "description": "Documentation generation and management - Docusaurus, spec-driven docs, API documentation, living documentation",
5
5
  "author": {
@@ -19,7 +19,7 @@ Complete documentation ecosystem for technical writers, product teams, and devel
19
19
  ## Installation
20
20
 
21
21
  ```bash
22
- vskill add specweave --plugin sw-docs
22
+ vskill add vskill --plugin docs
23
23
  ```
24
24
 
25
25
  ## Requirements
@@ -51,7 +51,7 @@ if [ ! -d ".specweave/cache/docs-site/node_modules" ]; then
51
51
  fi
52
52
  ```
53
53
 
54
- If not set up, follow the same setup steps as `/sw-docs:view` (Step 3 in view.md).
54
+ If not set up, follow the same setup steps as `/docs:view` (Step 3 in view.md).
55
55
 
56
56
  ### Step 3: Run Build
57
57
 
@@ -131,9 +131,9 @@ git commit -m "docs: update documentation site"
131
131
  ### Build fails with broken links
132
132
  ```bash
133
133
  # View docs first to find errors
134
- /sw-docs:view
134
+ /docs:view
135
135
  # Fix broken links, then build
136
- /sw-docs:build
136
+ /docs:build
137
137
  ```
138
138
 
139
139
  ### Out of memory
@@ -149,11 +149,11 @@ cd .specweave/cache/docs-site && npm run clear && npm run build
149
149
  ### Reinstall from scratch
150
150
  ```bash
151
151
  rm -rf .specweave/cache/docs-site
152
- /sw-docs:build
152
+ /docs:build
153
153
  ```
154
154
 
155
155
  ## See Also
156
156
 
157
- - `/sw-docs:view` - View docs locally with hot reload
158
- - `/sw-docs:organize` - Organize large folders with themed indexes
159
- - `/sw-docs:health` - Documentation health report
157
+ - `/docs:view` - View docs locally with hot reload
158
+ - `/docs:organize` - Organize large folders with themed indexes
159
+ - `/docs:health` - Documentation health report