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.
- package/.claude-plugin/plugin.json +0 -1
- package/.env.example +5 -4
- package/CHANGELOG.md +2 -2
- package/CONTENT_CREATION_GUIDE.md +489 -3211
- package/DEVELOPER_USE_CASES.md +1 -1
- package/MODULAR_INSTALLATION.md +2 -2
- package/README.md +39 -33
- package/TECHNICAL_ARCHITECTURE.md +1 -1
- package/USER_GUIDE.md +242 -190
- package/agents/content-editor-agent.md +90 -0
- package/agents/content-planner-agent.md +97 -0
- package/agents/content-research-agent.md +62 -0
- package/agents/content-seo-agent.md +101 -0
- package/agents/content-writer-agent.md +69 -0
- package/agents/infographic-analyzer-agent.md +63 -0
- package/agents/infographic-designer-agent.md +72 -0
- package/bin/cli.js +776 -422
- package/{content-rules.example.md → content-rules-example.md} +2 -2
- package/dist/mcp/health-check.js +82 -68
- package/dist/mcp/mcp-config.json +8 -0
- package/dist/mcp/openstack-server.js +1746 -1262
- package/dist/server/.tsbuildinfo +1 -1
- package/extension.json +21 -4
- package/package.json +181 -184
- package/skills/company-config/SKILL.md +133 -0
- package/skills/configure/SKILL.md +1 -1
- package/skills/myai-configurator/SKILL.md +77 -0
- package/skills/myai-configurator/content-creation-configurator/SKILL.md +516 -0
- package/skills/myai-configurator/content-maintenance-configurator/SKILL.md +397 -0
- package/skills/myai-content-enrichment/SKILL.md +114 -0
- package/skills/myai-content-ideation/SKILL.md +288 -0
- package/skills/myai-content-ideation/evals/evals.json +182 -0
- package/skills/myai-content-production-coordinator/SKILL.md +946 -0
- package/skills/{content-rules-setup → myai-content-rules-setup}/SKILL.md +1 -1
- package/skills/{content-verifier → myai-content-verifier}/SKILL.md +1 -1
- package/skills/myai-content-writer/SKILL.md +333 -0
- package/skills/{infographic → myai-infographic}/SKILL.md +1 -1
- package/skills/myai-proprietary-content-verifier/SKILL.md +175 -0
- package/skills/myai-proprietary-content-verifier/evals/evals.json +36 -0
- package/skills/myai-skill-builder/SKILL.md +699 -0
- package/skills/myai-skill-builder/agents/analyzer-agent.md +137 -0
- package/skills/myai-skill-builder/agents/comparator-agent.md +77 -0
- package/skills/myai-skill-builder/agents/grader-agent.md +103 -0
- package/skills/myai-skill-builder/assets/eval_review.html +131 -0
- package/skills/myai-skill-builder/references/schemas.md +211 -0
- package/skills/myai-skill-builder/scripts/aggregate_benchmark.py +190 -0
- package/skills/myai-skill-builder/scripts/generate_review.py +381 -0
- package/skills/myai-skill-builder/scripts/package_skill.py +91 -0
- package/skills/myai-skill-builder/scripts/run_eval.py +105 -0
- package/skills/myai-skill-builder/scripts/run_loop.py +211 -0
- package/skills/myai-skill-builder/scripts/utils.py +123 -0
- package/skills/myai-visual-generator/SKILL.md +125 -0
- package/skills/myai-visual-generator/evals/evals.json +155 -0
- package/skills/myai-visual-generator/references/infographic-pipeline.md +73 -0
- package/skills/myai-visual-generator/references/research-visuals.md +57 -0
- package/skills/myai-visual-generator/references/services.md +89 -0
- package/skills/myai-visual-generator/scripts/visual-generation-utils.js +1272 -0
- package/skills/myaidev-figma/SKILL.md +212 -0
- package/skills/myaidev-figma/capture.js +133 -0
- package/skills/myaidev-figma/crawl.js +130 -0
- package/skills/myaidev-figma-configure/SKILL.md +130 -0
- package/skills/openstack-manager/SKILL.md +1 -1
- package/skills/payloadcms-publisher/SKILL.md +141 -77
- package/skills/payloadcms-publisher/references/field-mapping.md +142 -0
- package/skills/payloadcms-publisher/references/lexical-format.md +97 -0
- package/skills/security-auditor/SKILL.md +1 -1
- package/src/cli/commands/addon.js +105 -7
- package/src/config/workflows.js +172 -228
- package/src/lib/ascii-banner.js +197 -182
- package/src/lib/{content-coordinator.js → content-production-coordinator.js} +649 -459
- package/src/lib/installation-detector.js +93 -59
- package/src/lib/payloadcms-utils.js +285 -510
- package/src/lib/workflow-installer.js +55 -0
- package/src/mcp/health-check.js +82 -68
- package/src/mcp/openstack-server.js +1746 -1262
- package/src/scripts/configure-visual-apis.js +224 -173
- package/src/scripts/configure-wordpress-mcp.js +96 -66
- package/src/scripts/init/install.js +109 -85
- package/src/scripts/init-project.js +138 -67
- package/src/scripts/utils/write-content.js +67 -52
- package/src/scripts/wordpress/publish-to-wordpress.js +128 -128
- package/src/templates/claude/CLAUDE.md +19 -12
- package/hooks/hooks.json +0 -26
- package/skills/content-coordinator/SKILL.md +0 -130
- package/skills/content-enrichment/SKILL.md +0 -80
- package/skills/content-writer/SKILL.md +0 -285
- package/skills/skill-builder/SKILL.md +0 -417
- package/skills/visual-generator/SKILL.md +0 -140
- /package/skills/{content-writer → myai-content-writer}/agents/editor-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/planner-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/research-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/seo-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/visual-planner-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/writer-agent.md +0 -0
package/extension.json
CHANGED
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"id": "content-creation",
|
|
56
56
|
"name": "Content Creation",
|
|
57
57
|
"description": "SEO-optimized content writing with AI visual generation",
|
|
58
|
-
"skills": ["content-writer", "visual-generator", "content-verifier"],
|
|
58
|
+
"skills": ["myai-content-writer", "myai-visual-generator", "myai-content-verifier"],
|
|
59
59
|
"platforms": ["claudeCode", "geminiCli", "codexCli"]
|
|
60
60
|
},
|
|
61
61
|
{
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
"content": {
|
|
99
99
|
"name": "Content Pack",
|
|
100
100
|
"description": "Content creation and publishing",
|
|
101
|
-
"skills": ["content-writer", "content-verifier", "visual-generator", "wordpress-publisher"]
|
|
101
|
+
"skills": ["company-config", "myai-content-rules-setup", "myai-content-writer", "myai-content-verifier", "myai-proprietary-content-verifier", "myai-visual-generator", "myai-content-enrichment", "myai-content-ideation", "myai-content-production-coordinator", "myai-infographic", "wordpress-publisher", "astro-publisher", "docusaurus-publisher", "mintlify-publisher", "payloadcms-publisher"]
|
|
102
102
|
},
|
|
103
103
|
"development": {
|
|
104
104
|
"name": "Development Pack",
|
|
@@ -115,14 +115,31 @@
|
|
|
115
115
|
"description": "Deployment and infrastructure management",
|
|
116
116
|
"skills": ["coolify-deployer", "openstack-manager"]
|
|
117
117
|
},
|
|
118
|
+
"skill-development": {
|
|
119
|
+
"name": "Skill Development Pack",
|
|
120
|
+
"description": "Tools for creating, testing, and publishing skills to the marketplace",
|
|
121
|
+
"skills": ["myai-skill-builder", "skill-contributor"]
|
|
122
|
+
},
|
|
123
|
+
"design": {
|
|
124
|
+
"name": "Design Pack",
|
|
125
|
+
"description": "Figma design capture and configuration",
|
|
126
|
+
"skills": ["myaidev-figma", "myaidev-figma-configure"]
|
|
127
|
+
},
|
|
118
128
|
"full": {
|
|
119
129
|
"name": "Full Pack",
|
|
120
130
|
"description": "All skills and capabilities",
|
|
121
131
|
"skills": [
|
|
122
|
-
"
|
|
132
|
+
"company-config", "myai-configurator", "myai-content-rules-setup",
|
|
133
|
+
"myai-content-writer", "myai-content-verifier", "myai-proprietary-content-verifier",
|
|
134
|
+
"myai-visual-generator", "myai-content-enrichment", "myai-content-ideation",
|
|
135
|
+
"myai-content-production-coordinator", "myai-infographic",
|
|
136
|
+
"wordpress-publisher", "astro-publisher", "docusaurus-publisher", "mintlify-publisher", "payloadcms-publisher",
|
|
123
137
|
"myaidev-workflow", "myaidev-architect", "myaidev-coder", "myaidev-tester", "myaidev-reviewer", "myaidev-documenter", "myaidev-analyze", "myaidev-debug", "myaidev-refactor", "myaidev-performance", "myaidev-migrate",
|
|
138
|
+
"myaidev-figma", "myaidev-figma-configure",
|
|
124
139
|
"security-tester", "security-auditor",
|
|
125
|
-
"coolify-deployer", "openstack-manager"
|
|
140
|
+
"coolify-deployer", "deployer", "openstack-manager",
|
|
141
|
+
"git-workflow", "configure",
|
|
142
|
+
"myai-skill-builder", "skill-contributor"
|
|
126
143
|
]
|
|
127
144
|
}
|
|
128
145
|
},
|
package/package.json
CHANGED
|
@@ -1,186 +1,183 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
"node-fetch": "npm:node-fetch-native@^1.6.0"
|
|
184
|
-
}
|
|
185
|
-
}
|
|
2
|
+
"name": "myaidev-method",
|
|
3
|
+
"version": "0.3.5",
|
|
4
|
+
"description": "Comprehensive development framework with SPARC methodology for AI-assisted software development, security testing (PTES, OWASP, penetration testing, compliance auditing), AI visual content generation (Gemini, OpenAI GPT Image 1.5, Imagen, FLUX 2, Veo 3), OpenStack VM management, multi-platform publishing (WordPress, PayloadCMS, Astro, Docusaurus, Mintlify), and Coolify deployment",
|
|
5
|
+
"mcpName": "io.github.myaione/myaidev-method",
|
|
6
|
+
"main": "src/index.js",
|
|
7
|
+
"bin": {
|
|
8
|
+
"myai": "bin/cli.js",
|
|
9
|
+
"myaidev-mcp-launcher": "dist/mcp/mcp-launcher.js",
|
|
10
|
+
"myaidev-mcp-server": "src/mcp/wordpress-server.js",
|
|
11
|
+
"myaidev-method": "bin/cli.js"
|
|
12
|
+
},
|
|
13
|
+
"scripts": {
|
|
14
|
+
"test": "node test/run-tests.js",
|
|
15
|
+
"test:gutenberg": "node test/test-gutenberg-converter.js",
|
|
16
|
+
"test:install": "node test/test-installation.js",
|
|
17
|
+
"test:workflows": "node test/test-workflow-installer.js",
|
|
18
|
+
"test:mcp": "node test/test-enhanced-mcp-server.js",
|
|
19
|
+
"test:mcp:simple": "node test/test-simple-mcp.js",
|
|
20
|
+
"mcp:start": "node src/mcp/mcp-launcher.js start",
|
|
21
|
+
"mcp:start:direct": "node src/mcp/wordpress-integration.js",
|
|
22
|
+
"mcp:start:simple": "node src/mcp/wordpress-admin-mcp.js",
|
|
23
|
+
"mcp:status": "node src/mcp/mcp-launcher.js status",
|
|
24
|
+
"mcp:health": "node src/mcp/mcp-launcher.js health",
|
|
25
|
+
"build:mcp": "mkdir -p dist/mcp && cp src/mcp/*.js src/mcp/*.json dist/mcp/",
|
|
26
|
+
"build:server": "tsc -p tsconfig.server.json && mkdir -p dist/server/database && cp src/server/database/schema.sql dist/server/database/",
|
|
27
|
+
"build": "npm run build:mcp && npm run build:server",
|
|
28
|
+
"dev:server": "tsx watch src/server/main.ts",
|
|
29
|
+
"typecheck:server": "tsc -p tsconfig.server.json --noEmit",
|
|
30
|
+
"typecheck": "npm run typecheck:server",
|
|
31
|
+
"prepublishOnly": "npm install && npm test && npm run build",
|
|
32
|
+
"postinstall": "echo \"MyAIDev Method installed successfully! Run 'npx myaidev-method@latest init --claude' to get started.\"",
|
|
33
|
+
"dev:architect": "node src/scripts/dev-architect.js",
|
|
34
|
+
"dev:code": "node src/scripts/dev-code.js",
|
|
35
|
+
"dev:test": "node src/scripts/dev-test.js",
|
|
36
|
+
"dev:review": "node src/scripts/dev-review.js",
|
|
37
|
+
"dev:docs": "node src/scripts/dev-docs.js",
|
|
38
|
+
"sparc": "node src/scripts/sparc-workflow.js",
|
|
39
|
+
"myaidev": "node src/scripts/sparc-workflow.js",
|
|
40
|
+
"wordpress:health-check": "node src/scripts/wordpress/wordpress-health-check.js",
|
|
41
|
+
"wordpress:security-scan": "node src/scripts/wordpress-security-scan.js",
|
|
42
|
+
"wordpress:performance-check": "node src/scripts/wordpress-performance-check.js",
|
|
43
|
+
"wordpress:comprehensive-report": "node src/scripts/wordpress-comprehensive-report.js",
|
|
44
|
+
"coolify:status": "node src/scripts/coolify-status.js",
|
|
45
|
+
"coolify:list": "node src/scripts/coolify-list-resources.js",
|
|
46
|
+
"payloadcms:publish": "node src/scripts/payloadcms-publish.js",
|
|
47
|
+
"docusaurus:publish": "node src/scripts/docusaurus-publish.js",
|
|
48
|
+
"mintlify:publish": "node src/scripts/mintlify-publish.js",
|
|
49
|
+
"astro:publish": "node src/scripts/astro-publish.js",
|
|
50
|
+
"configure": "node src/scripts/init/configure.js",
|
|
51
|
+
"configure:visual": "node src/scripts/configure-visual-apis.js",
|
|
52
|
+
"generate:visual": "node src/scripts/generate-visual-cli.js",
|
|
53
|
+
"convert:html": "node src/scripts/html-conversion-cli.js",
|
|
54
|
+
"init": "node src/scripts/init-project.js",
|
|
55
|
+
"build:platforms": "node scripts/build-platforms.js all",
|
|
56
|
+
"build:claude": "node scripts/build-platforms.js claude",
|
|
57
|
+
"build:gemini": "node scripts/build-platforms.js gemini",
|
|
58
|
+
"build:codex": "node scripts/build-platforms.js codex"
|
|
59
|
+
},
|
|
60
|
+
"keywords": [
|
|
61
|
+
"claude-code",
|
|
62
|
+
"ai-cli",
|
|
63
|
+
"sparc",
|
|
64
|
+
"sparc-methodology",
|
|
65
|
+
"agentic-development",
|
|
66
|
+
"spec-kit",
|
|
67
|
+
"software-development",
|
|
68
|
+
"code-quality",
|
|
69
|
+
"testing",
|
|
70
|
+
"code-review",
|
|
71
|
+
"mcp",
|
|
72
|
+
"wordpress",
|
|
73
|
+
"payloadcms",
|
|
74
|
+
"payload",
|
|
75
|
+
"docusaurus",
|
|
76
|
+
"mintlify",
|
|
77
|
+
"astro",
|
|
78
|
+
"coolify",
|
|
79
|
+
"ramnode",
|
|
80
|
+
"content-writer",
|
|
81
|
+
"cms",
|
|
82
|
+
"headless-cms",
|
|
83
|
+
"publishing",
|
|
84
|
+
"static-site",
|
|
85
|
+
"documentation",
|
|
86
|
+
"ai-agents",
|
|
87
|
+
"automation",
|
|
88
|
+
"image-generation",
|
|
89
|
+
"ai-images",
|
|
90
|
+
"video-generation",
|
|
91
|
+
"gemini",
|
|
92
|
+
"imagen",
|
|
93
|
+
"dall-e",
|
|
94
|
+
"veo",
|
|
95
|
+
"visual-content",
|
|
96
|
+
"deployment",
|
|
97
|
+
"devops",
|
|
98
|
+
"cli-tool",
|
|
99
|
+
"slash-commands",
|
|
100
|
+
"gemini-cli",
|
|
101
|
+
"codex-cli"
|
|
102
|
+
],
|
|
103
|
+
"author": "Samuel Mukoti <samuelm@openmy.ai>",
|
|
104
|
+
"license": "MIT",
|
|
105
|
+
"type": "module",
|
|
106
|
+
"dependencies": {
|
|
107
|
+
"@effect/platform-node": "^0.98.4",
|
|
108
|
+
"@fal-ai/client": "^1.7.2",
|
|
109
|
+
"@hono/node-server": "^1.19.5",
|
|
110
|
+
"@modelcontextprotocol/sdk": "^1.18.0",
|
|
111
|
+
"@payloadcms/richtext-lexical": "3.77.0",
|
|
112
|
+
"@tsconfig/strictest": "^2.0.5",
|
|
113
|
+
"bcrypt": "^6.0.0",
|
|
114
|
+
"better-sqlite3": "^12.5.0",
|
|
115
|
+
"chalk": "^5.3.0",
|
|
116
|
+
"commander": "^14.0.2",
|
|
117
|
+
"dotenv": "^17.2.3",
|
|
118
|
+
"effect": "^3.18.4",
|
|
119
|
+
"fs-extra": "^11.2.0",
|
|
120
|
+
"google-auth-library": "^10.5.0",
|
|
121
|
+
"gray-matter": "^4.0.3",
|
|
122
|
+
"hono": "^4.10.3",
|
|
123
|
+
"inquirer": "^13.1.0",
|
|
124
|
+
"jose": "^6.1.3",
|
|
125
|
+
"marked": "^17.0.1",
|
|
126
|
+
"ora": "^9.0.0",
|
|
127
|
+
"pptxgenjs": "^4.0.1",
|
|
128
|
+
"puppeteer": "^24.35.0",
|
|
129
|
+
"simple-git": "^3.22.0",
|
|
130
|
+
"ssh2": "^1.15.0",
|
|
131
|
+
"zod": "^4.3.5"
|
|
132
|
+
},
|
|
133
|
+
"devDependencies": {
|
|
134
|
+
"@types/bcrypt": "^6.0.0",
|
|
135
|
+
"@types/better-sqlite3": "^7.6.11",
|
|
136
|
+
"@types/node": "^25.0.3",
|
|
137
|
+
"tsx": "^4.7.1",
|
|
138
|
+
"typescript": "^5.3.3"
|
|
139
|
+
},
|
|
140
|
+
"repository": {
|
|
141
|
+
"type": "git",
|
|
142
|
+
"url": "git+https://github.com/myaione/myaidev-method.git"
|
|
143
|
+
},
|
|
144
|
+
"bugs": {
|
|
145
|
+
"url": "https://github.com/myaione/myaidev-method/issues"
|
|
146
|
+
},
|
|
147
|
+
"homepage": "https://github.com/myaione/myaidev-method#readme",
|
|
148
|
+
"files": [
|
|
149
|
+
"bin/",
|
|
150
|
+
"src/",
|
|
151
|
+
"dist/",
|
|
152
|
+
".claude-plugin/",
|
|
153
|
+
"skills/",
|
|
154
|
+
"agents/",
|
|
155
|
+
"extension.json",
|
|
156
|
+
"README.md",
|
|
157
|
+
"USER_GUIDE.md",
|
|
158
|
+
"DEVELOPER_USE_CASES.md",
|
|
159
|
+
"CONTENT_CREATION_GUIDE.md",
|
|
160
|
+
"MODULAR_INSTALLATION.md",
|
|
161
|
+
"SECURITY_TESTING_GUIDE.md",
|
|
162
|
+
"content-rules-example.md",
|
|
163
|
+
"LICENSE",
|
|
164
|
+
".env.example",
|
|
165
|
+
"DEV_WORKFLOW_GUIDE.md",
|
|
166
|
+
"MCP_INTEGRATION.md",
|
|
167
|
+
"WORDPRESS_ADMIN_SCRIPTS.md",
|
|
168
|
+
"COOLIFY_DEPLOYMENT.md",
|
|
169
|
+
"PUBLISHING_GUIDE.md",
|
|
170
|
+
"TECHNICAL_ARCHITECTURE.md",
|
|
171
|
+
"CHANGELOG.md"
|
|
172
|
+
],
|
|
173
|
+
"engines": {
|
|
174
|
+
"node": ">=18.0.0"
|
|
175
|
+
},
|
|
176
|
+
"overrides": {
|
|
177
|
+
"glob": "^13.0.0",
|
|
178
|
+
"rimraf": "^6.0.0",
|
|
179
|
+
"gaxios": {
|
|
180
|
+
"node-fetch": "npm:node-fetch-native@^1.6.0"
|
|
181
|
+
}
|
|
182
|
+
}
|
|
186
183
|
}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: company-config
|
|
3
|
+
description: One-time company configuration skill. Collects company profile, products, and services — saved as config files for all other skills to consume as context.
|
|
4
|
+
allowed-tools: [Read, Write, Bash, Glob, AskUserQuestion, WebFetch]
|
|
5
|
+
model: haiku
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Company Config Skill
|
|
9
|
+
|
|
10
|
+
Three-part company onboarding run once at project setup. Collects brand profile, products, and services. All outputs are consumed by downstream pipeline skills.
|
|
11
|
+
|
|
12
|
+
If any of the output files already exist, ask the user whether to update or start fresh for that section.
|
|
13
|
+
|
|
14
|
+
## Part 1: Brand Profile
|
|
15
|
+
|
|
16
|
+
Collect company identity and save to `./brand-config.json`.
|
|
17
|
+
|
|
18
|
+
### Questions
|
|
19
|
+
|
|
20
|
+
Ask **one at a time**. Accept "skip" or "N/A" — record as `null`. When they enter the company URL, automatically try to fetch description and contact information, and ask the user if it can be used.
|
|
21
|
+
|
|
22
|
+
1. **Full Name** — "What is your full name?"
|
|
23
|
+
2. **Company/Brand Name** — "What is your company or brand name?"
|
|
24
|
+
3. **Company URL** — "What is your company's website URL?"
|
|
25
|
+
4. **Company Description** — "In a few sentences, describe what your company does."
|
|
26
|
+
5. **Contact Information** — "Provide your contact details: email, phone, social handles (any that apply)."
|
|
27
|
+
|
|
28
|
+
### Output
|
|
29
|
+
|
|
30
|
+
Save to `./brand-config.json`:
|
|
31
|
+
|
|
32
|
+
```json
|
|
33
|
+
{
|
|
34
|
+
"lastUpdated": "{YYYY-MM-DD}",
|
|
35
|
+
"contact": {
|
|
36
|
+
"fullName": "{full name}"
|
|
37
|
+
},
|
|
38
|
+
"company": {
|
|
39
|
+
"name": "{company/brand name}",
|
|
40
|
+
"url": "{website URL}",
|
|
41
|
+
"description": "{company description — preserve user's wording, only fix grammar}"
|
|
42
|
+
},
|
|
43
|
+
"contactChannels": [
|
|
44
|
+
{ "channel": "{channel}", "value": "{value}" }
|
|
45
|
+
]
|
|
46
|
+
}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Part 2: Products
|
|
50
|
+
|
|
51
|
+
Collect product information and save to `./product-config.json`. If you can derive the product and the pricing details from the website URL the customer has shared, propose a draft and ask if it can be used.
|
|
52
|
+
|
|
53
|
+
### Questions
|
|
54
|
+
|
|
55
|
+
Ask **one at a time**.
|
|
56
|
+
|
|
57
|
+
1. **Products** — "What products does your company offer? List each with a brief description."
|
|
58
|
+
2. **Pricing Plans** — "What are the pricing plans for your products? Include plan name, price, and what's included."
|
|
59
|
+
|
|
60
|
+
If the user gives product names without descriptions, ask for a brief description of each.
|
|
61
|
+
|
|
62
|
+
### Output
|
|
63
|
+
|
|
64
|
+
Save to `./product-config.json`:
|
|
65
|
+
|
|
66
|
+
```json
|
|
67
|
+
{
|
|
68
|
+
"lastUpdated": "{YYYY-MM-DD}",
|
|
69
|
+
"products": [
|
|
70
|
+
{ "name": "{name}", "description": "{description}" }
|
|
71
|
+
],
|
|
72
|
+
"pricing": [
|
|
73
|
+
{ "plan": "{plan name}", "price": "{price}", "details": "{what's included}" }
|
|
74
|
+
]
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Part 3: Services
|
|
79
|
+
|
|
80
|
+
Collect service information and target audience, then save to `./service-config.json`. If you can derive the service and target audience details from the website URL the customer has shared, propose a draft and ask if it can be used.
|
|
81
|
+
|
|
82
|
+
### Questions
|
|
83
|
+
|
|
84
|
+
Ask **one at a time**.
|
|
85
|
+
|
|
86
|
+
1. **Services** — "What services does your company offer? List each with a brief description."
|
|
87
|
+
2. **Target Audience** — "Who is the target audience for your services? Describe the customer profiles or segments you serve."
|
|
88
|
+
|
|
89
|
+
If the user gives service names without descriptions, ask for a brief description of each.
|
|
90
|
+
|
|
91
|
+
### Output
|
|
92
|
+
|
|
93
|
+
Save to `./service-config.json`:
|
|
94
|
+
|
|
95
|
+
```json
|
|
96
|
+
{
|
|
97
|
+
"lastUpdated": "{YYYY-MM-DD}",
|
|
98
|
+
"services": [
|
|
99
|
+
{ "name": "{name}", "description": "{description}" }
|
|
100
|
+
],
|
|
101
|
+
"audience": [
|
|
102
|
+
{ "segment": "{audience segment}", "description": "{description}" }
|
|
103
|
+
]
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Skipped Values
|
|
108
|
+
|
|
109
|
+
For any skipped questions in Parts 1-3, use `null` for single values and `[]` for arrays.
|
|
110
|
+
|
|
111
|
+
## After Saving
|
|
112
|
+
|
|
113
|
+
After all parts are complete, confirm and display a summary:
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
Company configuration complete.
|
|
117
|
+
|
|
118
|
+
brand-config.json
|
|
119
|
+
Contact: {full name}
|
|
120
|
+
Company: {company name}
|
|
121
|
+
URL: {url}
|
|
122
|
+
Channels: {count} listed
|
|
123
|
+
|
|
124
|
+
product-config.json
|
|
125
|
+
Products: {count} listed
|
|
126
|
+
Pricing: {count} plans
|
|
127
|
+
|
|
128
|
+
service-config.json
|
|
129
|
+
Services: {count} listed
|
|
130
|
+
Audience: {count} segments
|
|
131
|
+
|
|
132
|
+
All config files are now available to content pipeline skills.
|
|
133
|
+
```
|
|
@@ -38,7 +38,7 @@ Before showing options, check installed workflows:
|
|
|
38
38
|
## Configuration Sections
|
|
39
39
|
|
|
40
40
|
### Section 1: Content Rules
|
|
41
|
-
- Check for existing `content-rules.md`
|
|
41
|
+
- Check for existing `content-rules.md` at project root
|
|
42
42
|
- If exists: offer Skip/Update/New
|
|
43
43
|
- If not: offer Quick (5 questions) / Full (29 questions) / Skip
|
|
44
44
|
- Use AskUserQuestion for interactive choices
|