@boopkit/cli 0.6.12 → 0.6.13
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 +26 -5
- package/dist/capability-versions.json +1 -1
- package/dist/cli.js +2 -1
- package/dist/commands/add.js +49 -2
- package/dist/commands/init.d.ts +17 -1
- package/dist/commands/init.js +149 -25
- package/dist/commands/loop-merge.d.ts +1 -0
- package/dist/commands/loop-merge.js +4 -2
- package/dist/commands/loop.d.ts +21 -2
- package/dist/commands/loop.js +105 -16
- package/dist/commands/loop.js.orig-pre-maxbuffer +1455 -0
- package/dist/lib/scaffold.d.ts +18 -7
- package/dist/lib/scaffold.js +31 -14
- package/docs/init.md +132 -86
- package/docs/loop.md +16 -0
- package/package.json +3 -2
- package/profiles/base/profile.md +105 -0
- package/profiles/base/templates/.github/copilot-instructions.md +3 -0
- package/profiles/base/templates/.gitignore.hbs +6 -0
- package/profiles/base/templates/AGENTS.md.hbs +50 -0
- package/profiles/base/templates/CLAUDE.md.hbs +3 -0
- package/profiles/base/templates/README.md.hbs +15 -0
- package/profiles/base/templates/docs/README.md +12 -0
- package/profiles/base/templates/package.json.hbs +7 -0
- package/profiles/base/templates/reference/README.md +16 -0
- package/profiles/base/templates/specs/README.md +12 -0
- package/profiles/development/profile.md +8 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Docs
|
|
2
|
+
|
|
3
|
+
Guides for the people who **use** what this project produces.
|
|
4
|
+
Where `reference/` explains how things are set up for the people who maintain them, `docs/` explains how to use them.
|
|
5
|
+
|
|
6
|
+
## What belongs here
|
|
7
|
+
|
|
8
|
+
- How-to guides for a task someone will come here to do, written from their side
|
|
9
|
+
- Getting-started pages for someone meeting the result for the first time
|
|
10
|
+
- Answers to the questions people keep asking
|
|
11
|
+
|
|
12
|
+
Write for a reader who was not involved in the work and only needs to use its result.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Reference
|
|
2
|
+
|
|
3
|
+
Documents that describe **what exists now** — the current state of whatever this project has set up, decided or produced.
|
|
4
|
+
Where `specs/` records what we intend, `reference/` records what is actually true.
|
|
5
|
+
|
|
6
|
+
## What belongs here
|
|
7
|
+
|
|
8
|
+
- A description of each thing that exists: what it is, where it lives, how it is configured, and why it is that way
|
|
9
|
+
- Decisions that are in force, with enough of the reasoning that someone can tell when a decision no longer applies
|
|
10
|
+
- Conventions this project follows, so a newcomer can work the same way
|
|
11
|
+
|
|
12
|
+
## Keeping it true
|
|
13
|
+
|
|
14
|
+
A reference page is only useful while it matches reality.
|
|
15
|
+
When a piece of work is finished, or something that already exists changes, update the page that describes it as part of the same piece of work.
|
|
16
|
+
If a page no longer describes anything real, delete it rather than leaving it to mislead.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Specs
|
|
2
|
+
|
|
3
|
+
Design documents and specifications for planned features and changes. Specs describe the **future state** — what we intend to build — in contrast to `reference/` which documents the **current state**.
|
|
4
|
+
|
|
5
|
+
## Workflow
|
|
6
|
+
|
|
7
|
+
1. Write a spec for a new feature or significant change
|
|
8
|
+
2. Review and approve the spec
|
|
9
|
+
3. Create implementation tasks (in beads) from the approved spec
|
|
10
|
+
4. After shipping, update `reference/` docs to reflect the new reality
|
|
11
|
+
|
|
12
|
+
Specs remain as a record of design intent even after implementation.
|
|
@@ -61,7 +61,14 @@ and it would make `boop init --profile development`
|
|
|
61
61
|
emit an Express `src/app.ts` that imports a dependency the profile never installs.
|
|
62
62
|
|
|
63
63
|
So `kernel` is absent, and `ProfileMetadata.kernel` is optional to allow it.
|
|
64
|
-
|
|
64
|
+
|
|
65
|
+
Having no kernel does not on its own stop `boop init`.
|
|
66
|
+
A profile that ships a `templates/` folder of its own, as `base` does,
|
|
67
|
+
is scaffolded from those templates instead.
|
|
68
|
+
This profile ships none, because it describes how a project is developed,
|
|
69
|
+
not what files the project starts with.
|
|
70
|
+
With neither a kernel nor templates there is nothing to write,
|
|
71
|
+
and the consequence is deliberate: `boop init --profile development` is refused
|
|
65
72
|
with a message pointing at the two ways this profile is actually meant to be used —
|
|
66
73
|
name it in an existing project's `.boop/config.json`,
|
|
67
74
|
or `boop add` these capabilities one at a time.
|