benjamin-docs 0.1.1 → 0.1.2

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 (2) hide show
  1. package/README.md +62 -290
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,269 +1,99 @@
1
1
  # benjamin-docs
2
2
 
3
- Repo-local project memory for humans and AI agents.
3
+ Local project memory for humans and AI agents.
4
4
 
5
- `benjamin-docs` turns planning and build conversations into structured Markdown docs that live inside your project. It works before code exists, inside existing codebases, and for individual feature scopes.
5
+ `benjamin-docs` turns useful chats into project docs.
6
6
 
7
- ## Status
7
+ It keeps decisions, plans, open questions, and handoff notes in Markdown files inside your project.
8
8
 
9
- Early MVP. The CLI is prepared for its first public `0.1.0` package release as `benjamin-docs`.
9
+ No cloud. No dashboard. No transcript dump.
10
10
 
11
- The current goal is to make the open-source repo useful, understandable, and safe to try before adding hosted publishing or SaaS features.
11
+ ## What It Solves
12
12
 
13
- ## Why It Exists
13
+ AI work gets lost in chat history.
14
14
 
15
- Long agent sessions create valuable project context: product decisions, rejected options, feature plans, user-facing notes, handoff context, and code references. That context is easy to lose.
15
+ You explain the same context again.
16
16
 
17
- `benjamin-docs` keeps that memory close to the work:
17
+ Future agents miss decisions.
18
18
 
19
- - human-readable Markdown in `benjamin-docs/`
20
- - machine-readable metadata in `.benjamin-docs/`
21
- - local validation before docs are shared or exported
22
- - agent skill guidance so future sessions can update docs without drifting
19
+ Projects drift.
23
20
 
24
- ## Try It From Any Chat
21
+ `benjamin-docs` gives the project a small local notebook that agents can keep up to date.
25
22
 
26
- If a conversation already contains a useful project idea, ask your agent:
23
+ ## Install
27
24
 
28
- ```text
29
- Use the benjamin-docs skill to create a project from this chat.
25
+ ```bash
26
+ pnpm add -g benjamin-docs
27
+ benjamin-docs install-skill
28
+ benjamin-docs introduce
30
29
  ```
31
30
 
32
- The agent should suggest a local folder like:
31
+ `install-skill` installs the bundled agent skill for common local tools:
33
32
 
34
33
  ```text
35
- ~/Documents/Benjamin Docs/Atelier Edits
34
+ ~/.agents/skills/benjamin-docs/
35
+ ~/.codex/skills/benjamin-docs/
36
+ ~/.claude/skills/benjamin-docs/
37
+ ~/.cursor/skills/benjamin-docs/
36
38
  ```
37
39
 
38
- After you confirm, it creates:
40
+ Claude Desktop / Claude.ai uses uploaded skills. After install, upload:
39
41
 
40
42
  ```text
41
- README.md
42
- benjamin-docs/
43
- .benjamin-docs/
43
+ ~/.claude/skills/benjamin-docs/
44
44
  ```
45
45
 
46
- The top-level `README.md` explains the project in plain language. The `benjamin-docs/` folder captures the project brief, roadmap, open questions, and handoff notes. Nothing is uploaded by the CLI.
47
-
48
- ## For Non-Programmers
49
-
50
- You can use `benjamin-docs` even if you are planning an app, product, service, or creative project before any code exists.
51
-
52
- Think of it as a project notebook that your AI agent keeps inside your project folder. The agent does the writing; the CLI creates the folders, checks that the notes are valid, and gives the next prompt to use.
46
+ ## Use It From Any Chat
53
47
 
54
- You need:
55
-
56
- - a place on your computer where the agent can create a project folder, such as `~/Documents/Benjamin Docs/Project Name`
57
- - an AI coding agent that can run terminal commands and edit files
58
- - the `benjamin-docs` CLI installed with pnpm, or a local source checkout while developing
59
- - the `benjamin-docs` skill installed for your agent
60
-
61
- If all you have is the current chat, start by asking your agent:
48
+ If you only have a chat and no project folder yet, ask your agent:
62
49
 
63
50
  ```text
64
51
  Use the benjamin-docs skill to create a project from this chat.
65
- Suggest ~/Documents/Benjamin Docs/<Project Name> as the folder,
66
- initialize it as a planning-only project, write a simple top-level README.md,
67
- then capture the current context in plain language.
68
52
  ```
69
53
 
70
- After that, ask:
54
+ The agent should suggest:
71
55
 
72
56
  ```text
73
- Show me the benjamin-docs project brief, roadmap, open questions,
74
- and handoff. Explain what each file is for.
57
+ ~/Documents/Benjamin Docs/<Project Name>
75
58
  ```
76
59
 
77
- Nothing is uploaded or published by the CLI. The docs stay in your project folder unless you choose to share them.
78
-
79
- ## Create A Project From A Chat
80
-
81
- This is the simplest first use case: you do not have a repo, codebase, or project folder yet. You only have a useful conversation.
82
-
83
- Ask your agent:
60
+ After you confirm, it creates a local project with:
84
61
 
85
62
  ```text
86
- Use the benjamin-docs skill to create a project from this chat.
87
- Suggest ~/Documents/Benjamin Docs/<Project Name> unless I choose a different place.
88
- Create the folder, initialize benjamin-docs there, add a simple README.md,
89
- and turn this conversation into a project brief, roadmap, open questions,
90
- and handoff.
91
- ```
92
-
93
- The agent should:
94
-
95
- - infer a human-readable project name when the chat makes one obvious
96
- - suggest `~/Documents/Benjamin Docs/<Project Name>` as the default location
97
- - ask for confirmation before creating files
98
- - summarize what it will capture in short bullets
99
- - create the project folder
100
- - run `benjamin-docs init --mode planning` inside that folder
101
- - write a top-level `README.md` that explains what the project is and where to start
102
- - update the Benjamin docs under `benjamin-docs/` from the chat context
103
- - run `benjamin-docs validate`
104
- - show you what was created and what is still uncertain
105
-
106
- The CLI creates and validates the docs workspace. The agent turns the chat into useful project memory.
107
-
108
- ## Install The CLI
109
-
110
- Install globally with pnpm:
111
-
112
- ```bash
113
- pnpm add -g benjamin-docs
114
- benjamin-docs install-skill
115
- benjamin-docs introduce
116
- ```
117
-
118
- `install-skill` installs or updates the bundled skill in common local agent locations:
119
-
120
- ```text
121
- ~/.agents/skills/benjamin-docs/SKILL.md
122
- ~/.codex/skills/benjamin-docs/SKILL.md
123
- ~/.claude/skills/benjamin-docs/SKILL.md
124
- ~/.cursor/skills/benjamin-docs/SKILL.md
63
+ README.md
64
+ benjamin-docs/
65
+ .benjamin-docs/
125
66
  ```
126
67
 
127
- Claude Desktop / Claude.ai custom skills are uploaded through Claude's Skills UI. After running `install-skill`, use the generated `~/.claude/skills/benjamin-docs/` folder as the upload source.
68
+ ## Use It In An Existing Project
128
69
 
129
- Initialize docs in the current project folder:
70
+ From the project folder:
130
71
 
131
72
  ```bash
132
73
  benjamin-docs init
133
- benjamin-docs status
134
74
  benjamin-docs validate
135
75
  ```
136
76
 
137
- `init` prints the recommended agent prompt. Run `next` later if you want to see that prompt again.
77
+ Then ask your agent:
138
78
 
139
- ```bash
140
- benjamin-docs next
79
+ ```text
80
+ Capture the current project baseline with benjamin-docs.
141
81
  ```
142
82
 
143
- In an interactive terminal, `init` asks what you are setting up. In scripts or agent workflows, pass a mode explicitly.
144
-
145
83
  For an existing codebase:
146
84
 
147
85
  ```bash
148
86
  benjamin-docs init --mode codebase
149
- benjamin-docs validate
150
87
  ```
151
88
 
152
- For a single feature:
89
+ For one feature:
153
90
 
154
91
  ```bash
155
92
  benjamin-docs init --mode feature --feature billing-reminders
156
- benjamin-docs validate
157
- ```
158
-
159
- If you prefer a project-local dev dependency:
160
-
161
- ```bash
162
- cd /path/to/your-project
163
- pnpm add -D benjamin-docs
164
- pnpm exec benjamin-docs init
165
- pnpm exec benjamin-docs validate
166
- ```
167
-
168
- ## Install The Agent Skill Locally
169
-
170
- The skill teaches an agent how to capture planning/build conversations into the docs created by the CLI.
171
-
172
- Install or update it from the published package:
173
-
174
- ```bash
175
- benjamin-docs install-skill
176
- ```
177
-
178
- Install one target only:
179
-
180
- ```bash
181
- benjamin-docs install-skill --target codex
182
- benjamin-docs install-skill --target cursor
183
- benjamin-docs install-skill --target claude-code
184
- ```
185
-
186
- Then ask your agent:
187
-
188
- ```text
189
- Capture this conversation with benjamin-docs.
190
- ```
191
-
192
- For a first planning session, a clearer prompt is:
193
-
194
- ```text
195
- Use the benjamin-docs skill.
196
- If there is no project folder yet, ask me where to create one.
197
- Suggest ~/Documents/Benjamin Docs/<Project Name> by default.
198
- Initialize it as a planning-only project, add a simple README.md,
199
- and capture what we know, what we decided, what is still unclear,
200
- and what I should do next. Keep it understandable for a non-technical reader.
201
- ```
202
-
203
- ## Local Development
204
-
205
- ```bash
206
- git clone https://github.com/msiksnis/benjamin-docs.git
207
- cd benjamin-docs
208
- pnpm install
209
- pnpm build
210
- node dist/src/cli.js introduce
211
93
  ```
212
94
 
213
- To test the source CLI inside another local project without installing the package:
214
-
215
- ```bash
216
- cd /path/to/your-project
217
- node /path/to/benjamin-docs/dist/src/cli.js init
218
- ```
219
-
220
- ## Checks
221
-
222
- ```bash
223
- pnpm check
224
- node dist/src/cli.js validate
225
- npm pack --dry-run
226
- ```
227
-
228
- Before publishing:
229
-
230
- ```bash
231
- pnpm run release:check
232
- pnpm publish
233
- ```
234
-
235
- ## Common Commands
236
-
237
- ```bash
238
- benjamin-docs introduce
239
- benjamin-docs install-skill
240
- benjamin-docs help
241
- benjamin-docs --version
242
- benjamin-docs init
243
- benjamin-docs init --mode codebase
244
- benjamin-docs init --mode feature --feature booking-capacity
245
- benjamin-docs next
246
- benjamin-docs status
247
- benjamin-docs validate
248
- benjamin-docs scope create feature booking-capacity
249
- benjamin-docs anchor add booking-capacity-rules src/features/booking/capacity.ts
250
- benjamin-docs export --audience developer
251
- benjamin-docs promote --to codebase
252
- ```
253
-
254
- In a source checkout, use `node dist/src/cli.js ...` after `pnpm build`.
255
-
256
95
  ## What It Creates
257
96
 
258
- ```text
259
- benjamin-docs/
260
- .benjamin-docs/
261
- ```
262
-
263
- `benjamin-docs/` contains human-readable Markdown. `.benjamin-docs/` contains machine metadata for validation, exports, anchors, and future publishing.
264
-
265
- The default workspace is:
266
-
267
97
  ```text
268
98
  benjamin-docs/
269
99
  project/
@@ -271,109 +101,51 @@ benjamin-docs/
271
101
  engineering/
272
102
  features/
273
103
  releases/
274
- ```
275
-
276
- Existing project docs in `docs/` are left alone. They may be useful context, but they are not the Benjamin-managed workspace unless `.benjamin-docs/config.json` explicitly says so.
277
-
278
- ## Agent Workflow
279
-
280
- The CLI owns structure and validation. Codex or Claude skills own synthesis from the current conversation.
281
-
282
- If the agent does not recognize `benjamin-docs`, run:
283
-
284
- ```bash
285
- benjamin-docs install-skill
286
- ```
287
-
288
- Ask your agent:
289
-
290
- ```text
291
- Capture this conversation with benjamin-docs.
292
- ```
293
-
294
- The agent should update the relevant docs, run validation, and report what changed.
295
-
296
- Good capture prompts:
297
-
298
- ```text
299
- Use the benjamin-docs skill to create a project from this chat.
300
- Suggest ~/Documents/Benjamin Docs/<Project Name>, then initialize it and capture the project.
301
- ```
302
104
 
303
- ```text
304
- Capture this planning conversation with benjamin-docs.
305
- ```
306
-
307
- ```text
308
- Capture the current project baseline with benjamin-docs.
309
- Read the existing docs and codebase, then update the Benjamin docs
310
- under benjamin-docs/. Mark uncertain items.
311
- ```
312
-
313
- ```text
314
- Create a benjamin-docs feature scope for billing-reminders
315
- and capture the plan, decisions, risks, and handoff.
105
+ .benjamin-docs/
316
106
  ```
317
107
 
318
- ## Capture A Baseline
319
-
320
- A baseline capture turns the current state of a project into durable docs. It is the first useful pass after `init`, and it should capture decisions, rejected options, risks, open questions, and next actions instead of saving a raw transcript.
321
-
322
- For a new idea or planning-only project:
108
+ `benjamin-docs/` is for people and agents.
323
109
 
324
- ```bash
325
- benjamin-docs init --mode planning
326
- ```
110
+ `.benjamin-docs/` is metadata for validation, scopes, anchors, and exports.
327
111
 
328
- ```text
329
- Capture the baseline for this new idea with benjamin-docs.
330
- Update the project brief, roadmap, open questions, and handoff docs.
331
- Mark assumptions clearly and challenge any overbuilt V1 scope.
332
- ```
112
+ Existing `docs/` folders are left alone unless you explicitly configure otherwise.
333
113
 
334
- For an existing codebase:
114
+ ## Useful Commands
335
115
 
336
116
  ```bash
337
- benjamin-docs init --mode codebase
338
- ```
339
-
340
- ```text
341
- Capture the current codebase baseline with benjamin-docs.
342
- Read the README, package/config files, existing docs, and major source areas.
343
- Update the project, engineering, and handoff docs under benjamin-docs/.
344
- Include important code references, risks, and uncertain findings.
117
+ benjamin-docs introduce
118
+ benjamin-docs install-skill
119
+ benjamin-docs init
120
+ benjamin-docs next
121
+ benjamin-docs status
122
+ benjamin-docs validate
123
+ benjamin-docs scope create feature <slug>
124
+ benjamin-docs export --audience developer
345
125
  ```
346
126
 
347
- For one feature:
127
+ ## Local Development
348
128
 
349
129
  ```bash
350
- benjamin-docs init --mode feature --feature billing-reminders
351
- ```
352
-
353
- ```text
354
- Capture the billing-reminders feature with benjamin-docs.
355
- Update the feature brief, plan, decisions, and handoff.
356
- Include user goals, constraints, rejected options, test ideas, and next actions.
130
+ git clone https://github.com/msiksnis/benjamin-docs.git
131
+ cd benjamin-docs
132
+ pnpm install
133
+ pnpm check
357
134
  ```
358
135
 
359
- After any baseline capture:
136
+ Before publishing:
360
137
 
361
138
  ```bash
362
- benjamin-docs validate
139
+ pnpm run release:check
140
+ pnpm publish
363
141
  ```
364
142
 
365
- ## Design Boundaries
366
-
367
- - The repo-local docs are the source of truth.
368
- - The CLI should stay deterministic and dependency-light.
369
- - Ordinary local commands should not make network calls.
370
- - Existing docs in a repo should not be overwritten.
371
- - Hosted publishing, auth, comments, and web editing are future layers.
372
-
373
143
  ## Contributing
374
144
 
375
- See [CONTRIBUTING.md](CONTRIBUTING.md).
145
+ Keep it local-first.
146
+
147
+ Keep docs readable by non-programmers.
376
148
 
377
- ## Security
149
+ Keep agent workflows explicit.
378
150
 
379
- See [SECURITY.md](SECURITY.md).
151
+ Avoid magic that writes outside the project unless the user runs a clear command.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "benjamin-docs",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Repo-local project memory for humans and AI agents.",
5
5
  "keywords": [
6
6
  "ai",