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.
- package/README.md +62 -290
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,269 +1,99 @@
|
|
|
1
1
|
# benjamin-docs
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Local project memory for humans and AI agents.
|
|
4
4
|
|
|
5
|
-
`benjamin-docs` turns
|
|
5
|
+
`benjamin-docs` turns useful chats into project docs.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
It keeps decisions, plans, open questions, and handoff notes in Markdown files inside your project.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
No cloud. No dashboard. No transcript dump.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
## What It Solves
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
AI work gets lost in chat history.
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
You explain the same context again.
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
Future agents miss decisions.
|
|
18
18
|
|
|
19
|
-
|
|
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
|
-
|
|
21
|
+
`benjamin-docs` gives the project a small local notebook that agents can keep up to date.
|
|
25
22
|
|
|
26
|
-
|
|
23
|
+
## Install
|
|
27
24
|
|
|
28
|
-
```
|
|
29
|
-
|
|
25
|
+
```bash
|
|
26
|
+
pnpm add -g benjamin-docs
|
|
27
|
+
benjamin-docs install-skill
|
|
28
|
+
benjamin-docs introduce
|
|
30
29
|
```
|
|
31
30
|
|
|
32
|
-
|
|
31
|
+
`install-skill` installs the bundled agent skill for common local tools:
|
|
33
32
|
|
|
34
33
|
```text
|
|
35
|
-
|
|
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
|
|
40
|
+
Claude Desktop / Claude.ai uses uploaded skills. After install, upload:
|
|
39
41
|
|
|
40
42
|
```text
|
|
41
|
-
|
|
42
|
-
benjamin-docs/
|
|
43
|
-
.benjamin-docs/
|
|
43
|
+
~/.claude/skills/benjamin-docs/
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
-
|
|
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
|
-
|
|
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
|
-
|
|
54
|
+
The agent should suggest:
|
|
71
55
|
|
|
72
56
|
```text
|
|
73
|
-
|
|
74
|
-
and handoff. Explain what each file is for.
|
|
57
|
+
~/Documents/Benjamin Docs/<Project Name>
|
|
75
58
|
```
|
|
76
59
|
|
|
77
|
-
|
|
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
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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
|
-
|
|
68
|
+
## Use It In An Existing Project
|
|
128
69
|
|
|
129
|
-
|
|
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
|
-
|
|
77
|
+
Then ask your agent:
|
|
138
78
|
|
|
139
|
-
```
|
|
140
|
-
benjamin-docs
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
325
|
-
benjamin-docs init --mode planning
|
|
326
|
-
```
|
|
110
|
+
`.benjamin-docs/` is metadata for validation, scopes, anchors, and exports.
|
|
327
111
|
|
|
328
|
-
|
|
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
|
-
|
|
114
|
+
## Useful Commands
|
|
335
115
|
|
|
336
116
|
```bash
|
|
337
|
-
benjamin-docs
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
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
|
-
|
|
127
|
+
## Local Development
|
|
348
128
|
|
|
349
129
|
```bash
|
|
350
|
-
benjamin-docs
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
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
|
-
|
|
136
|
+
Before publishing:
|
|
360
137
|
|
|
361
138
|
```bash
|
|
362
|
-
|
|
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
|
-
|
|
145
|
+
Keep it local-first.
|
|
146
|
+
|
|
147
|
+
Keep docs readable by non-programmers.
|
|
376
148
|
|
|
377
|
-
|
|
149
|
+
Keep agent workflows explicit.
|
|
378
150
|
|
|
379
|
-
|
|
151
|
+
Avoid magic that writes outside the project unless the user runs a clear command.
|