myaidev-method 0.3.4 → 0.3.5

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 (94) hide show
  1. package/.claude-plugin/plugin.json +0 -1
  2. package/.env.example +5 -4
  3. package/CHANGELOG.md +2 -2
  4. package/CONTENT_CREATION_GUIDE.md +489 -3211
  5. package/DEVELOPER_USE_CASES.md +1 -1
  6. package/MODULAR_INSTALLATION.md +2 -2
  7. package/README.md +39 -33
  8. package/TECHNICAL_ARCHITECTURE.md +1 -1
  9. package/USER_GUIDE.md +242 -190
  10. package/agents/content-editor-agent.md +90 -0
  11. package/agents/content-planner-agent.md +97 -0
  12. package/agents/content-research-agent.md +62 -0
  13. package/agents/content-seo-agent.md +101 -0
  14. package/agents/content-writer-agent.md +69 -0
  15. package/agents/infographic-analyzer-agent.md +63 -0
  16. package/agents/infographic-designer-agent.md +72 -0
  17. package/bin/cli.js +776 -422
  18. package/{content-rules.example.md → content-rules-example.md} +2 -2
  19. package/dist/mcp/health-check.js +82 -68
  20. package/dist/mcp/mcp-config.json +8 -0
  21. package/dist/mcp/openstack-server.js +1746 -1262
  22. package/dist/server/.tsbuildinfo +1 -1
  23. package/extension.json +21 -4
  24. package/package.json +181 -184
  25. package/skills/company-config/SKILL.md +133 -0
  26. package/skills/configure/SKILL.md +1 -1
  27. package/skills/myai-configurator/SKILL.md +77 -0
  28. package/skills/myai-configurator/content-creation-configurator/SKILL.md +516 -0
  29. package/skills/myai-configurator/content-maintenance-configurator/SKILL.md +397 -0
  30. package/skills/myai-content-enrichment/SKILL.md +114 -0
  31. package/skills/myai-content-ideation/SKILL.md +288 -0
  32. package/skills/myai-content-ideation/evals/evals.json +182 -0
  33. package/skills/myai-content-production-coordinator/SKILL.md +946 -0
  34. package/skills/{content-rules-setup → myai-content-rules-setup}/SKILL.md +1 -1
  35. package/skills/{content-verifier → myai-content-verifier}/SKILL.md +1 -1
  36. package/skills/myai-content-writer/SKILL.md +333 -0
  37. package/skills/{infographic → myai-infographic}/SKILL.md +1 -1
  38. package/skills/myai-proprietary-content-verifier/SKILL.md +175 -0
  39. package/skills/myai-proprietary-content-verifier/evals/evals.json +36 -0
  40. package/skills/myai-skill-builder/SKILL.md +699 -0
  41. package/skills/myai-skill-builder/agents/analyzer-agent.md +137 -0
  42. package/skills/myai-skill-builder/agents/comparator-agent.md +77 -0
  43. package/skills/myai-skill-builder/agents/grader-agent.md +103 -0
  44. package/skills/myai-skill-builder/assets/eval_review.html +131 -0
  45. package/skills/myai-skill-builder/references/schemas.md +211 -0
  46. package/skills/myai-skill-builder/scripts/aggregate_benchmark.py +190 -0
  47. package/skills/myai-skill-builder/scripts/generate_review.py +381 -0
  48. package/skills/myai-skill-builder/scripts/package_skill.py +91 -0
  49. package/skills/myai-skill-builder/scripts/run_eval.py +105 -0
  50. package/skills/myai-skill-builder/scripts/run_loop.py +211 -0
  51. package/skills/myai-skill-builder/scripts/utils.py +123 -0
  52. package/skills/myai-visual-generator/SKILL.md +125 -0
  53. package/skills/myai-visual-generator/evals/evals.json +155 -0
  54. package/skills/myai-visual-generator/references/infographic-pipeline.md +73 -0
  55. package/skills/myai-visual-generator/references/research-visuals.md +57 -0
  56. package/skills/myai-visual-generator/references/services.md +89 -0
  57. package/skills/myai-visual-generator/scripts/visual-generation-utils.js +1272 -0
  58. package/skills/myaidev-figma/SKILL.md +212 -0
  59. package/skills/myaidev-figma/capture.js +133 -0
  60. package/skills/myaidev-figma/crawl.js +130 -0
  61. package/skills/myaidev-figma-configure/SKILL.md +130 -0
  62. package/skills/openstack-manager/SKILL.md +1 -1
  63. package/skills/payloadcms-publisher/SKILL.md +141 -77
  64. package/skills/payloadcms-publisher/references/field-mapping.md +142 -0
  65. package/skills/payloadcms-publisher/references/lexical-format.md +97 -0
  66. package/skills/security-auditor/SKILL.md +1 -1
  67. package/src/cli/commands/addon.js +105 -7
  68. package/src/config/workflows.js +172 -228
  69. package/src/lib/ascii-banner.js +197 -182
  70. package/src/lib/{content-coordinator.js → content-production-coordinator.js} +649 -459
  71. package/src/lib/installation-detector.js +93 -59
  72. package/src/lib/payloadcms-utils.js +285 -510
  73. package/src/lib/workflow-installer.js +55 -0
  74. package/src/mcp/health-check.js +82 -68
  75. package/src/mcp/openstack-server.js +1746 -1262
  76. package/src/scripts/configure-visual-apis.js +224 -173
  77. package/src/scripts/configure-wordpress-mcp.js +96 -66
  78. package/src/scripts/init/install.js +109 -85
  79. package/src/scripts/init-project.js +138 -67
  80. package/src/scripts/utils/write-content.js +67 -52
  81. package/src/scripts/wordpress/publish-to-wordpress.js +128 -128
  82. package/src/templates/claude/CLAUDE.md +19 -12
  83. package/hooks/hooks.json +0 -26
  84. package/skills/content-coordinator/SKILL.md +0 -130
  85. package/skills/content-enrichment/SKILL.md +0 -80
  86. package/skills/content-writer/SKILL.md +0 -285
  87. package/skills/skill-builder/SKILL.md +0 -417
  88. package/skills/visual-generator/SKILL.md +0 -140
  89. /package/skills/{content-writer → myai-content-writer}/agents/editor-agent.md +0 -0
  90. /package/skills/{content-writer → myai-content-writer}/agents/planner-agent.md +0 -0
  91. /package/skills/{content-writer → myai-content-writer}/agents/research-agent.md +0 -0
  92. /package/skills/{content-writer → myai-content-writer}/agents/seo-agent.md +0 -0
  93. /package/skills/{content-writer → myai-content-writer}/agents/visual-planner-agent.md +0 -0
  94. /package/skills/{content-writer → myai-content-writer}/agents/writer-agent.md +0 -0
@@ -8,316 +8,258 @@
8
8
  const WORKFLOWS = {
9
9
  // Content Creation Workflow (includes WordPress publishing)
10
10
  content: {
11
- name: 'Content Creation',
12
- description: 'Professional content writing with SEO optimization and WordPress publishing',
11
+ name: "Content Creation",
12
+ description:
13
+ "Professional content writing with SEO optimization and WordPress publishing",
13
14
  skills: [
14
- 'content-writer',
15
- 'content-rules-setup',
16
- 'content-verifier',
17
- 'content-coordinator',
18
- 'content-enrichment',
19
- 'wordpress-publisher'
15
+ "myai-content-writer",
16
+ "myai-content-rules-setup",
17
+ "myai-content-verifier",
18
+ "myai-proprietary-content-verifier",
19
+ "myai-content-production-coordinator",
20
+ "myai-content-enrichment",
21
+ "myai-content-ideation",
22
+ "myai-infographic",
23
+ "company-config",
24
+ "wordpress-publisher",
20
25
  ],
21
26
  scripts: [
22
- 'utils/write-content.js',
23
- 'wordpress/publish-to-wordpress.js',
24
- 'wordpress/wordpress-health-check.js'
27
+ "utils/write-content.js",
28
+ "wordpress/publish-to-wordpress.js",
29
+ "wordpress/wordpress-health-check.js",
25
30
  ],
26
- libs: [
27
- 'content-generator.js',
28
- 'seo-optimizer.js',
29
- 'wordpress-client.js'
30
- ],
31
- docs: [
32
- 'content-creation-guide.md',
33
- 'wordpress-publishing-guide.md'
34
- ],
35
- mcpServers: ['myaidev'],
36
- dependencies: ['core'],
37
- envVars: [
38
- 'WORDPRESS_URL',
39
- 'WORDPRESS_USERNAME',
40
- 'WORDPRESS_APP_PASSWORD'
41
- ]
31
+ libs: ["content-generator.js", "seo-optimizer.js", "wordpress-client.js"],
32
+ docs: ["content-creation-guide.md", "wordpress-publishing-guide.md"],
33
+ mcpServers: ["myaidev"],
34
+ dependencies: ["core"],
35
+ envVars: ["WORDPRESS_URL", "WORDPRESS_USERNAME", "WORDPRESS_APP_PASSWORD"],
42
36
  },
43
37
 
44
38
  // Visual Content Generation Workflow
45
39
  visual: {
46
- name: 'Visual Content Generation',
47
- description: 'AI-powered image and video generation using Gemini, Imagen, DALL-E, Veo',
48
- skills: [
49
- 'visual-generator'
50
- ],
51
- scripts: [
52
- 'generate-visual-cli.js',
53
- 'configure-visual-apis.js'
54
- ],
40
+ name: "Visual Content Generation",
41
+ description:
42
+ "AI-powered image and video generation using Gemini, Imagen, DALL-E, FLUX, Veo with fal.ai MCP model discovery",
43
+ skills: ["myai-visual-generator", "myai-infographic"],
44
+ scripts: ["generate-visual-cli.js", "configure-visual-apis.js"],
55
45
  libs: [
56
- 'visual-generation-utils.js',
57
- 'visual-config-utils.js',
58
- 'asset-management.js'
46
+ "visual-generation-utils.js",
47
+ "visual-config-utils.js",
48
+ "asset-management.js",
59
49
  ],
60
- docs: [
61
- 'visual-generation-guide.md'
62
- ],
63
- mcpServers: [],
64
- dependencies: ['core'],
65
- envVars: [
66
- 'GOOGLE_AI_API_KEY',
67
- 'OPENAI_API_KEY',
68
- 'FAL_AI_API_KEY'
69
- ]
50
+ docs: ["visual-generation-guide.md"],
51
+ mcpServers: ["fal-ai"],
52
+ dependencies: ["core"],
53
+ envVars: ["GOOGLE_AI_API_KEY", "OPENAI_API_KEY", "FAL_KEY"],
70
54
  },
71
55
 
72
56
  // Development Workflow (SPARC)
73
57
  development: {
74
- name: 'Development Workflow',
75
- description: 'SPARC methodology for systematic software development',
58
+ name: "Development Workflow",
59
+ description: "SPARC methodology for systematic software development",
76
60
  skills: [
77
- 'myaidev-workflow',
78
- 'myaidev-architect',
79
- 'myaidev-coder',
80
- 'myaidev-tester',
81
- 'myaidev-reviewer',
82
- 'myaidev-documenter',
83
- 'myaidev-analyze',
84
- 'myaidev-debug',
85
- 'myaidev-refactor',
86
- 'myaidev-performance',
87
- 'myaidev-migrate'
61
+ "myaidev-workflow",
62
+ "myaidev-architect",
63
+ "myaidev-coder",
64
+ "myaidev-tester",
65
+ "myaidev-reviewer",
66
+ "myaidev-documenter",
67
+ "myaidev-analyze",
68
+ "myaidev-debug",
69
+ "myaidev-refactor",
70
+ "myaidev-performance",
71
+ "myaidev-migrate",
88
72
  ],
89
73
  scripts: [],
90
74
  libs: [],
91
75
  docs: [],
92
76
  mcpServers: [],
93
- dependencies: ['core'],
94
- envVars: []
77
+ dependencies: ["core"],
78
+ envVars: [],
95
79
  },
96
80
 
97
81
  // Git & CI Workflow
98
- 'git-ci': {
99
- name: 'Git & Continuous Integration',
100
- description: 'Git operations and CI/CD pipeline management',
101
- skills: [
102
- 'git-workflow'
103
- ],
82
+ "git-ci": {
83
+ name: "Git & Continuous Integration",
84
+ description: "Git operations and CI/CD pipeline management",
85
+ skills: ["git-workflow"],
104
86
  scripts: [],
105
87
  libs: [],
106
88
  docs: [],
107
89
  mcpServers: [],
108
- dependencies: ['core'],
109
- envVars: []
90
+ dependencies: ["core"],
91
+ envVars: [],
110
92
  },
111
93
 
112
94
  // Deployment Workflow
113
95
  deployment: {
114
- name: 'Deployment',
115
- description: 'Application deployment and infrastructure management',
116
- skills: [
117
- 'deployer',
118
- 'coolify-deployer'
119
- ],
96
+ name: "Deployment",
97
+ description: "Application deployment and infrastructure management",
98
+ skills: ["deployer", "coolify-deployer"],
120
99
  scripts: [],
121
100
  libs: [],
122
- docs: [
123
- 'deployment-guide.md'
124
- ],
101
+ docs: ["deployment-guide.md"],
125
102
  mcpServers: [],
126
- dependencies: ['core'],
127
- envVars: []
103
+ dependencies: ["core"],
104
+ envVars: [],
128
105
  },
129
106
 
130
107
  // WordPress Publishing Workflow
131
- 'publish-wordpress': {
132
- name: 'WordPress Publishing',
133
- description: 'Publish content to WordPress sites with enhanced MCP integration',
134
- skills: [
135
- 'wordpress-publisher'
136
- ],
108
+ "publish-wordpress": {
109
+ name: "WordPress Publishing",
110
+ description:
111
+ "Publish content to WordPress sites with enhanced MCP integration",
112
+ skills: ["wordpress-publisher"],
137
113
  scripts: [
138
- 'wordpress/publish-to-wordpress.js',
139
- 'wordpress/wordpress-health-check.js'
140
- ],
141
- libs: [
142
- 'wordpress-client.js'
114
+ "wordpress/publish-to-wordpress.js",
115
+ "wordpress/wordpress-health-check.js",
143
116
  ],
144
- docs: [
145
- 'wordpress-publishing-guide.md'
146
- ],
147
- mcpServers: ['myaidev'],
148
- dependencies: ['core', 'content'],
149
- envVars: [
150
- 'WORDPRESS_URL',
151
- 'WORDPRESS_USERNAME',
152
- 'WORDPRESS_APP_PASSWORD'
153
- ]
117
+ libs: ["wordpress-client.js"],
118
+ docs: ["wordpress-publishing-guide.md"],
119
+ mcpServers: ["myaidev"],
120
+ dependencies: ["core", "content"],
121
+ envVars: ["WORDPRESS_URL", "WORDPRESS_USERNAME", "WORDPRESS_APP_PASSWORD"],
154
122
  },
155
123
 
156
124
  // PayloadCMS Publishing Workflow
157
- 'publish-payloadcms': {
158
- name: 'PayloadCMS Publishing',
159
- description: 'Publish content to PayloadCMS with Lexical rich text format',
160
- skills: [
161
- 'payloadcms-publisher'
162
- ],
163
- scripts: [
164
- 'payloadcms-publish.js'
165
- ],
166
- libs: [
167
- 'payloadcms-utils.js'
168
- ],
125
+
126
+ "publish-payloadcms": {
127
+ name: "PayloadCMS Publishing",
128
+ description: "Publish content to PayloadCMS with Lexical rich text format",
129
+ skills: ["payloadcms-publisher"],
130
+ scripts: ["payloadcms-publish.js"],
131
+ libs: ["payloadcms-utils.js"],
169
132
  docs: [],
170
133
  mcpServers: [],
171
- dependencies: ['core', 'content'],
172
- envVars: [
173
- 'PAYLOADCMS_URL',
174
- 'PAYLOADCMS_API_KEY'
175
- ]
134
+ dependencies: ["core", "content"],
135
+ envVars: ["PAYLOADCMS_URL", "PAYLOADCMS_API_KEY"],
176
136
  },
177
137
 
178
138
  // Static Site Publishing Workflow
179
- 'publish-static': {
180
- name: 'Static Site Publishing',
181
- description: 'Publish to static site generators (Astro, Docusaurus, Mintlify)',
182
- skills: [
183
- 'astro-publisher',
184
- 'docusaurus-publisher',
185
- 'mintlify-publisher'
186
- ],
139
+ "publish-static": {
140
+ name: "Static Site Publishing",
141
+ description:
142
+ "Publish to static site generators (Astro, Docusaurus, Mintlify)",
143
+ skills: ["astro-publisher", "docusaurus-publisher", "mintlify-publisher"],
187
144
  scripts: [],
188
145
  libs: [],
189
146
  docs: [],
190
147
  mcpServers: [],
191
- dependencies: ['core', 'content'],
192
- envVars: []
148
+ dependencies: ["core", "content"],
149
+ envVars: [],
193
150
  },
194
151
 
195
152
  // Coolify Deployment Workflow
196
153
  coolify: {
197
- name: 'Coolify Deployment',
198
- description: 'Deploy applications using Coolify self-hosted PaaS',
199
- skills: [
200
- 'coolify-deployer'
201
- ],
154
+ name: "Coolify Deployment",
155
+ description: "Deploy applications using Coolify self-hosted PaaS",
156
+ skills: ["coolify-deployer"],
202
157
  scripts: [
203
- 'coolify-deploy-app.js',
204
- 'coolify-list-resources.js',
205
- 'coolify-status.js'
206
- ],
207
- libs: [
208
- 'coolify-utils.js'
158
+ "coolify-deploy-app.js",
159
+ "coolify-list-resources.js",
160
+ "coolify-status.js",
209
161
  ],
162
+ libs: ["coolify-utils.js"],
210
163
  docs: [],
211
164
  mcpServers: [],
212
- dependencies: ['core', 'deployment'],
213
- envVars: [
214
- 'COOLIFY_URL',
215
- 'COOLIFY_API_KEY'
216
- ]
165
+ dependencies: ["core", "deployment"],
166
+ envVars: ["COOLIFY_URL", "COOLIFY_API_KEY"],
217
167
  },
218
168
 
219
169
  // OpenStack Management Workflow
220
170
  openstack: {
221
- name: 'OpenStack Management',
222
- description: 'OpenStack VM lifecycle management - create, list, start, stop, delete VMs',
223
- skills: [
224
- 'openstack-manager'
225
- ],
171
+ name: "OpenStack Management",
172
+ description:
173
+ "OpenStack VM lifecycle management - create, list, start, stop, delete VMs",
174
+ skills: ["openstack-manager"],
226
175
  scripts: [],
227
176
  libs: [],
228
177
  docs: [],
229
- mcpServers: ['myaidev-openstack'],
230
- dependencies: ['core'],
231
- envVars: [
232
- 'OS_AUTH_URL',
233
- 'OS_USERNAME',
234
- 'OS_PASSWORD',
235
- 'OS_PROJECT_NAME'
236
- ]
178
+ mcpServers: ["myaidev-openstack"],
179
+ dependencies: ["core"],
180
+ envVars: ["OS_AUTH_URL", "OS_USERNAME", "OS_PASSWORD", "OS_PROJECT_NAME"],
237
181
  },
238
182
 
239
183
  // Core Framework (Required by all workflows)
240
184
  core: {
241
- name: 'Core Framework',
242
- description: 'Essential MyAIDev Method framework components',
243
- skills: [
244
- 'configure',
245
- 'content-coordinator'
246
- ],
185
+ name: "Core Framework",
186
+ description: "Essential MyAIDev Method framework components",
187
+ skills: ["configure", "myai-configurator"],
247
188
  scripts: [
248
- 'init/install.js',
249
- 'init/configure.js',
250
- 'utils/file-utils.js',
251
- 'utils/logger.js'
252
- ],
253
- libs: [
254
- 'config-manager.js'
189
+ "init/install.js",
190
+ "init/configure.js",
191
+ "utils/file-utils.js",
192
+ "utils/logger.js",
255
193
  ],
194
+ libs: ["config-manager.js"],
256
195
  docs: [],
257
196
  mcpServers: [],
258
197
  dependencies: [],
259
- envVars: []
198
+ envVars: [],
260
199
  },
261
200
 
262
201
  // Security Testing Workflows (v0.2.21)
263
202
 
264
203
  // Penetration Testing Workflow
265
- 'security-pentest': {
266
- name: 'Penetration Testing',
267
- description: 'Full-scope security assessment following PTES methodology with reconnaissance, scanning, exploitation, and professional reporting',
268
- skills: [
269
- 'security-tester'
270
- ],
271
- scripts: [
272
- 'security/environment-detect.js'
273
- ],
204
+ "security-pentest": {
205
+ name: "Penetration Testing",
206
+ description:
207
+ "Full-scope security assessment following PTES methodology with reconnaissance, scanning, exploitation, and professional reporting",
208
+ skills: ["security-tester"],
209
+ scripts: ["security/environment-detect.js"],
274
210
  libs: [],
275
211
  docs: [],
276
212
  mcpServers: [],
277
- dependencies: ['core', 'development'],
213
+ dependencies: ["core", "development"],
278
214
  envVars: [
279
- 'SECURITY_AUTHORIZATION_REQUIRED=true',
280
- 'SECURITY_ENVIRONMENT=native',
281
- 'KALI_DOCKER_IMAGE=kalilinux/kali-rolling',
282
- 'SECURITY_TOOLS_PATH=/usr/local/bin'
283
- ]
215
+ "SECURITY_AUTHORIZATION_REQUIRED=true",
216
+ "SECURITY_ENVIRONMENT=native",
217
+ "KALI_DOCKER_IMAGE=kalilinux/kali-rolling",
218
+ "SECURITY_TOOLS_PATH=/usr/local/bin",
219
+ ],
284
220
  },
285
221
 
286
222
  // Security Audit & Compliance Workflow
287
- 'security-audit': {
288
- name: 'Security Audit & Compliance',
289
- description: 'Infrastructure security auditing, system hardening, and compliance validation for PCI-DSS, GDPR, HIPAA, SOC 2',
290
- skills: [
291
- 'security-auditor'
292
- ],
223
+ "security-audit": {
224
+ name: "Security Audit & Compliance",
225
+ description:
226
+ "Infrastructure security auditing, system hardening, and compliance validation for PCI-DSS, GDPR, HIPAA, SOC 2",
227
+ skills: ["security-auditor"],
293
228
  scripts: [],
294
229
  libs: [],
295
230
  docs: [],
296
231
  mcpServers: [],
297
- dependencies: ['core'],
298
- envVars: [
299
- 'COMPLIANCE_FRAMEWORK=PCI-DSS',
300
- 'AUDIT_ENVIRONMENT=native'
301
- ]
232
+ dependencies: ["core"],
233
+ envVars: ["COMPLIANCE_FRAMEWORK=PCI-DSS", "AUDIT_ENVIRONMENT=native"],
234
+ },
235
+
236
+ // Figma Design Workflow
237
+ figma: {
238
+ name: "Figma Design Capture",
239
+ description:
240
+ "Capture websites and push designs directly into Figma files",
241
+ skills: ["myaidev-figma", "myaidev-figma-configure"],
242
+ scripts: [],
243
+ libs: [],
244
+ docs: [],
245
+ mcpServers: ["figma-remote-mcp"],
246
+ dependencies: ["core"],
247
+ envVars: ["FIGMA_ACCESS_TOKEN"],
302
248
  },
303
249
 
304
250
  // Web Application Security Workflow
305
- 'security-webapp': {
306
- name: 'Web Application Security',
307
- description: 'OWASP Top 10 testing and web application penetration testing with automated scanning and manual exploitation',
308
- skills: [
309
- 'security-tester'
310
- ],
251
+ "security-webapp": {
252
+ name: "Web Application Security",
253
+ description:
254
+ "OWASP Top 10 testing and web application penetration testing with automated scanning and manual exploitation",
255
+ skills: ["security-tester"],
311
256
  scripts: [],
312
257
  libs: [],
313
258
  docs: [],
314
259
  mcpServers: [],
315
- dependencies: ['core', 'development', 'security-pentest'],
316
- envVars: [
317
- 'BURP_SUITE_PATH=/opt/burpsuite',
318
- 'ZAP_PATH=/usr/share/zaproxy'
319
- ]
320
- }
260
+ dependencies: ["core", "development", "security-pentest"],
261
+ envVars: ["BURP_SUITE_PATH=/opt/burpsuite", "ZAP_PATH=/usr/share/zaproxy"],
262
+ },
321
263
  };
322
264
 
323
265
  /**
@@ -344,14 +286,14 @@ function getWorkflowNames() {
344
286
  */
345
287
  function getWorkflowsByCategory(category) {
346
288
  const categories = {
347
- content: ['content', 'visual'],
348
- development: ['development', 'git-ci'],
349
- publishing: ['publish-wordpress', 'publish-payloadcms', 'publish-static'],
350
- deployment: ['deployment', 'coolify']
289
+ content: ["content", "visual"],
290
+ development: ["development", "git-ci"],
291
+ publishing: ["publish-wordpress", "publish-payloadcms", "publish-static"],
292
+ deployment: ["deployment", "coolify"],
351
293
  };
352
294
 
353
295
  const workflowNames = categories[category] || [];
354
- return workflowNames.map(name => ({ name, ...WORKFLOWS[name] }));
296
+ return workflowNames.map((name) => ({ name, ...WORKFLOWS[name] }));
355
297
  }
356
298
 
357
299
  /**
@@ -395,19 +337,21 @@ function resolveWorkflowDependencies(workflowName, resolved = new Set()) {
395
337
  function validateWorkflow(workflow) {
396
338
  const errors = [];
397
339
 
398
- if (!workflow.name) errors.push('Missing workflow name');
399
- if (!workflow.description) errors.push('Missing workflow description');
400
- if (!Array.isArray(workflow.skills)) errors.push('skills must be an array');
401
- if (!Array.isArray(workflow.scripts)) errors.push('scripts must be an array');
402
- if (!Array.isArray(workflow.libs)) errors.push('libs must be an array');
403
- if (!Array.isArray(workflow.docs)) errors.push('docs must be an array');
404
- if (!Array.isArray(workflow.mcpServers)) errors.push('mcpServers must be an array');
405
- if (!Array.isArray(workflow.dependencies)) errors.push('dependencies must be an array');
406
- if (!Array.isArray(workflow.envVars)) errors.push('envVars must be an array');
340
+ if (!workflow.name) errors.push("Missing workflow name");
341
+ if (!workflow.description) errors.push("Missing workflow description");
342
+ if (!Array.isArray(workflow.skills)) errors.push("skills must be an array");
343
+ if (!Array.isArray(workflow.scripts)) errors.push("scripts must be an array");
344
+ if (!Array.isArray(workflow.libs)) errors.push("libs must be an array");
345
+ if (!Array.isArray(workflow.docs)) errors.push("docs must be an array");
346
+ if (!Array.isArray(workflow.mcpServers))
347
+ errors.push("mcpServers must be an array");
348
+ if (!Array.isArray(workflow.dependencies))
349
+ errors.push("dependencies must be an array");
350
+ if (!Array.isArray(workflow.envVars)) errors.push("envVars must be an array");
407
351
 
408
352
  return {
409
353
  valid: errors.length === 0,
410
- errors
354
+ errors,
411
355
  };
412
356
  }
413
357
 
@@ -417,5 +361,5 @@ export {
417
361
  getWorkflowNames,
418
362
  getWorkflowsByCategory,
419
363
  resolveWorkflowDependencies,
420
- validateWorkflow
364
+ validateWorkflow,
421
365
  };