You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: remove package.json and _module-installer from modules
Security: Remove _module-installer concept entirely - script execution
during module installation is a security nightmare for community modules.
Simplification: Remove all package.json references. Modules only need:
- module.yaml (required)
- module-help.csv (optional but powerful for help system)
Changes:
- Delete module-installer-standards.md
- Delete step-04-installer.md
- Renumber steps: 04→03, 05→04, 06→05, 07→06, 08→07
- Update all workflow step references
- Remove installer checks from validation
- Remove package.json from documentation
- Remove npm publishing instructions from tutorial
- Update module structure examples throughout
Modules are now simpler and safer - just module.yaml, your agents/workflows,
and optionally module-help.csv for the BMad help system integration.
In a future release, `module-help.csv` will be auto-generated from workflow and agent metadata. For now, it's the manual way to tap into the power of the BMad help system.
201
192
:::
202
193
203
-
### package.json (For npm Publishing Only)
204
-
205
-
If you plan to publish your module to npm, create `package.json`:
206
-
207
-
```json
208
-
{
209
-
"name": "@your-username/your-module",
210
-
"version": "0.1.0",
211
-
"description": "Your module description",
212
-
"keywords": ["bmad", "bmad-module"],
213
-
"author": "Your Name",
214
-
"license": "MIT"
215
-
}
216
-
```
217
-
218
-
:::note[Package Naming]
219
-
Use scoped naming (`@username/module-name` or `@bmad-code-org/` for official modules).
220
-
:::
221
-
222
-
:::note[Local Modules Don't Need package.json]
223
-
If you're only using your module locally or sharing it directly (folder, git repo), you can skip `package.json` entirely. It's only required for npm publishing.
224
-
:::
225
-
226
194
## Step 4: Implement Your Agents and Workflows
227
195
228
196
Morgan created spec files during the build step. Now implement your agents and workflows:
@@ -237,7 +205,7 @@ For details on creating agents and workflows, see:
237
205
238
206
## Step 5: Validate Your Module
239
207
240
-
Before publishing, validate your module:
208
+
Before sharing, validate your module:
241
209
242
210
```
243
211
[VM] or "validate-module"
@@ -252,36 +220,6 @@ Morgan checks:
252
220
253
221
Fix any issues Morgan identifies, then re-validate.
254
222
255
-
## Step 6: Publish Your Module
256
-
257
-
When your module is ready to share:
258
-
259
-
### Option A: Quick Release
260
-
261
-
```bash
262
-
npm run release # Patch (0.1.0 → 0.1.1)
263
-
npm run release:minor # Minor (0.1.0 → 0.2.0)
264
-
npm run release:major # Major (0.1.0 → 1.0.0)
265
-
```
266
-
267
-
This updates the version, creates a git tag, and pushes to trigger GitHub Actions publishing.
268
-
269
-
### Option B: Manual Publishing
270
-
271
-
```bash
272
-
cd /path/to/your-module
273
-
npm publish
274
-
```
275
-
276
-
You may be prompted for OTP if you have 2FA enabled on your npm account.
277
-
278
-
:::note[First-Time Setup]
279
-
If you're publishing for the first time:
280
-
1. Create an npm account at https://www.npmjs.com
281
-
2. Create an automation token at https://www.npmjs.com/settings/tokens
282
-
3. Add as GitHub secret: `gh secret set NPM_TOKEN --repo your-repo`
283
-
:::
284
-
285
223
## What You've Accomplished
286
224
287
225
You've created a complete BMad module with:
@@ -305,26 +243,24 @@ Your module is now ready to:
305
243
| Build module |`[CM]` or `create-module`|
306
244
| Validate |`[VM]` or `validate-module`|
307
245
| Edit module |`[EM]` or `edit-module`|
308
-
| Quick release |`npm run release`|
309
-
| Manual publish |`npm publish`|
310
246
311
247
## Common Questions
312
248
313
249
**Should I use bmad-module-template?**
314
250
315
-
Yes! The [bmad-module-template](https://github.com/bmad-code-org/bmad-module-template) provides a starting point with proper structure, npm setup, and GitHub Actions. You can also use Morgan to generate a module from scratch.
251
+
Yes! The [bmad-module-template](https://github.com/bmad-code-org/bmad-module-template) provides a starting point with proper structure. You can also use Morgan to generate a module from scratch.
316
252
317
253
**What's the difference between the brief and the module?**
318
254
319
255
The brief is a **vision document** created through creative discovery. The module is the **implementation** built from that brief. Think of it as: brief = blueprint, module = building.
320
256
321
-
**Can I update my module after publishing?**
257
+
**Can I update my module after sharing it?**
322
258
323
-
Yes! Use `npm run release` to bump the version and publish updates. Users can update with `npm update @your-username/your-module`.
259
+
Yes! Share the updated module folder or repository. Users can reinstall to get the latest version.
324
260
325
261
**How do I share my module privately?**
326
262
327
-
Don't publish to npm. Share the module folder directly, or host it in a private Git repository. Users can install from a local path.
263
+
Share the module folder directly, or host it in a private Git repository. Users can install from a local path.
328
264
329
265
## Getting Help
330
266
@@ -342,6 +278,6 @@ Don't publish to npm. Share the module folder directly, or host it in a private
342
278
:::tip[Key Takeaways]
343
279
-**Plan first** — The brief ensures your module has a clear vision
344
280
-**Structure matters** — Follow the standard module structure for compatibility
345
-
-**Validate before publishing** — Use `[VM]` to check your work
346
-
-**Share your work** — Publishing to npm makes your module available to the community
281
+
-**Validate before sharing** — Use `[VM]` to check your work
282
+
-**Share your work** — Modules can be shared via folders, git repos, or the community
0 commit comments