toolnet-memory 0.3.11 → 0.3.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 CHANGED
@@ -11,30 +11,65 @@
11
11
 
12
12
  **One project. Multiple coding agents. Continuous context.**
13
13
 
14
+ Current release: **v0.3.11**
15
+
14
16
  </div>
15
17
 
16
18
  ---
17
19
 
18
20
  ## What is ToolNet Memory?
19
21
 
20
- ToolNet Memory is a persistent project-memory and code-intelligence layer for AI coding agents.
22
+ ToolNet Memory is a persistent memory, continuity, and code-intelligence layer for AI coding agents.
21
23
 
22
- It keeps project knowledge outside a single chat/session so supported agents can move between sessions without rebuilding project context from zero.
24
+ It keeps project knowledge outside a single chat or session so supported coding agents can continue the same work without rebuilding context from zero.
23
25
 
24
26
  ToolNet Memory combines four layers:
25
27
 
26
- - **Fast project context** — local startup context with no deep recovery.
27
- - **Work continuity** — current goal, task, phase, blockers, decisions, and next actions.
28
+ - **Fast project context** — small local startup context for normal work.
29
+ - **Work continuity** — current goal, phase, blockers, decisions, and next actions.
28
30
  - **Durable memory** — filtered project knowledge that survives agent/session changes.
29
- - **Code intelligence** — symbols, dependencies, call relationships, architecture, impact analysis, semantic search, and graph visualization.
31
+ - **Code intelligence** — symbols, dependencies, call graphs, architecture, semantic search, impact analysis, and graph visualization.
30
32
 
31
- ToolNet Memory is **not a raw transcript dump**. Session history and durable project memory are kept separate, filtered, bounded, and selectively promoted.
33
+ ToolNet Memory is **not a raw transcript dump**. Raw session history is kept separate from durable project memory and is protected from normal agent reads.
34
+
35
+ ---
36
+
37
+ ## Supported Coding Agents
38
+
39
+ ToolNet Memory currently supports an 8-agent continuity ring:
40
+
41
+ ```text
42
+ Agy / Antigravity
43
+ OpenCode
44
+ Codex
45
+ Claude Code
46
+ Kiro CLI
47
+ Cursor CLI
48
+ GitHub Copilot CLI
49
+ Grok Build
50
+ ```
51
+
52
+ A project can move between agents while keeping the same ToolNet work state and memory.
53
+
54
+ Typical continuity data includes:
55
+
56
+ ```text
57
+ Current request
58
+ Current goal
59
+ Current task
60
+ Current phase
61
+ Recent decisions
62
+ Blockers
63
+ Warnings
64
+ Next actions
65
+ Last agent/session
66
+ ```
32
67
 
33
68
  ---
34
69
 
35
70
  ## Quick Start
36
71
 
37
- ### 1. Install once per VPS / user
72
+ ### 1. Install
38
73
 
39
74
  ```bash
40
75
  curl -fsSL https://memory.toolnet.tech/install | bash
@@ -55,7 +90,7 @@ toolnet-memory --version
55
90
  toolnet-memory doctor
56
91
  ```
57
92
 
58
- ### 2. Configure ToolNet once
93
+ ### 2. Configure
59
94
 
60
95
  ```bash
61
96
  toolnet-memory setup
@@ -74,13 +109,19 @@ cd /path/to/project
74
109
  toolnet-memory init
75
110
  ```
76
111
 
77
- ### 4. Build project intelligence once
112
+ Project identity is stored in:
113
+
114
+ ```text
115
+ .toolnet/project.json
116
+ ```
117
+
118
+ ### 4. Build project intelligence
78
119
 
79
120
  ```bash
80
121
  toolnet-memory index
81
122
  ```
82
123
 
83
- The full index builds:
124
+ The full index pipeline includes:
84
125
 
85
126
  ```text
86
127
  Scanning files
@@ -100,7 +141,7 @@ Graph Analysis
100
141
  3D Visualization Dataset
101
142
  ```
102
143
 
103
- After the first full index, use incremental indexing for normal changes:
144
+ After the first full index, normal code changes can use:
104
145
 
105
146
  ```bash
106
147
  toolnet-memory incremental
@@ -108,67 +149,59 @@ toolnet-memory incremental
108
149
 
109
150
  ---
110
151
 
111
- ## Normal Daily Workflow
152
+ ## Daily Workflow
112
153
 
113
- In normal use, users should not need to manually load large session histories.
154
+ Normal startup is intentionally lightweight:
114
155
 
115
156
  ```text
116
157
  Open project
117
158
 
118
- Agent detects ToolNet project
159
+ Agent loads ToolNet integration
119
160
 
120
- Fast local context loads
161
+ Fast local context is available
121
162
 
122
163
  Agent continues current work
123
164
 
124
- ToolNet captures meaningful continuity
165
+ Meaningful continuity is captured
125
166
  ```
126
167
 
127
- Fast context can be viewed manually with:
168
+ Useful commands:
128
169
 
129
170
  ```bash
130
- toolnet-memory
131
- ```
171
+ # Fast project context
172
+ toolnet-memory context
132
173
 
133
- or:
174
+ # Current work state
175
+ toolnet-memory work
134
176
 
135
- ```bash
136
- toolnet-memory context
177
+ # Ask project memory
178
+ toolnet-memory ask "What changed in the authentication flow?"
179
+
180
+ # Project status
181
+ toolnet-memory status
137
182
  ```
138
183
 
139
- The default startup context is intentionally small and local. Deep recovery is reserved for cases where fast context is insufficient.
184
+ Deep recovery is separate and is not automatically dumped into every prompt.
140
185
 
141
186
  ---
142
187
 
143
- ## Switching Between Coding Agents
188
+ # Agent Integrations
144
189
 
145
- ToolNet Memory is designed for workflows such as:
190
+ Detect installed/supported coding agents:
146
191
 
147
- ```text
148
- OpenCode → Agy / Antigravity → Codex → Claude Code → Kiro CLI → Cursor CLI → GitHub Copilot CLI → Grok Build
192
+ ```bash
193
+ toolnet-memory integrate:detect
149
194
  ```
150
195
 
151
- The next agent should receive the same project continuity instead of starting from zero.
152
-
153
- Typical continuity includes:
196
+ Automatically configure detected integrations:
154
197
 
155
- ```text
156
- Last agent
157
- Last session
158
- Current request
159
- Current activity
160
- Goal
161
- Plan
162
- Current phase
163
- Blockers
164
- Decisions
165
- Next actions
198
+ ```bash
199
+ toolnet-memory integrate:auto
166
200
  ```
167
201
 
168
- Supported integrations currently include:
202
+ Manual integration commands:
169
203
 
170
204
  ```bash
171
- toolnet-memory integrate:auto
172
205
  toolnet-memory integrate:agy
173
206
  toolnet-memory integrate:opencode
174
207
  toolnet-memory integrate:codex
@@ -179,39 +212,310 @@ toolnet-memory integrate:copilot
179
212
  toolnet-memory integrate:grok
180
213
  ```
181
214
 
182
- Cursor CLI, GitHub Copilot CLI, and Grok Build use the same shared ToolNet
183
- continuity layer. Their integrations register ToolNet MCP plus lifecycle capture/
184
- continuity guards; Grok also installs the ToolNet continuity skill.
215
+ ---
216
+
217
+ ## v0.3.11: Dual-Scope Integrations
218
+
219
+ Cursor CLI, GitHub Copilot CLI, and Grok Build support three explicit scopes:
220
+
221
+ ```text
222
+ global
223
+ project
224
+ both
225
+ ```
226
+
227
+ Examples:
228
+
229
+ ```bash
230
+ # Global only
231
+ toolnet-memory integrate:cursor --scope global
232
+
233
+ # Project only
234
+ toolnet-memory integrate:cursor \
235
+ --scope project \
236
+ --project /path/to/project
237
+
238
+ # Global + project
239
+ toolnet-memory integrate:cursor \
240
+ --scope both \
241
+ --project /path/to/project
242
+ ```
185
243
 
186
- Detect integrations without modifying configuration:
244
+ The same scope syntax is supported by:
187
245
 
188
246
  ```bash
189
- toolnet-memory integrate:detect
247
+ toolnet-memory integrate:copilot ...
248
+ toolnet-memory integrate:grok ...
249
+ ```
250
+
251
+ ### Scope policy
252
+
253
+ `integrate:auto` uses a conservative policy:
254
+
255
+ | Current location | Automatic scope |
256
+ | ----------------------------------------------------- | --------------- |
257
+ | Ordinary directory | `global` |
258
+ | Git repository without ToolNet initialization | `global` |
259
+ | Existing ToolNet project with `.toolnet/project.json` | `both` |
260
+
261
+ ToolNet does **not** create `.cursor/`, `.github/`, or `.grok/` project configuration just because the current directory is a Git repository.
262
+
263
+ Explicit scope always wins:
264
+
265
+ ```bash
266
+ toolnet-memory integrate:auto --scope global
267
+
268
+ toolnet-memory integrate:auto \
269
+ --scope project \
270
+ --project /path/to/project
271
+
272
+ toolnet-memory integrate:auto \
273
+ --scope both \
274
+ --project /path/to/project
275
+ ```
276
+
277
+ ---
278
+
279
+ ## Cursor CLI
280
+
281
+ Install:
282
+
283
+ ```bash
284
+ toolnet-memory integrate:cursor --scope global
285
+ ```
286
+
287
+ Or for an initialized ToolNet project:
288
+
289
+ ```bash
290
+ toolnet-memory integrate:cursor \
291
+ --scope both \
292
+ --project /path/to/project
293
+ ```
294
+
295
+ ToolNet surfaces:
296
+
297
+ ```text
298
+ Global MCP
299
+ ~/.cursor/mcp.json
300
+
301
+ Project MCP
302
+ <project>/.cursor/mcp.json
303
+
304
+ Global Hooks
305
+ ~/.cursor/hooks.json
306
+
307
+ Project Hooks
308
+ <project>/.cursor/hooks.json
309
+
310
+ Project Rule
311
+ <project>/.cursor/rules/toolnet-memory.mdc
312
+ ```
313
+
314
+ Project and global hook layers can both be active. ToolNet uses cross-process event deduplication to prevent duplicate capture.
315
+
316
+ ---
317
+
318
+ ## GitHub Copilot CLI
319
+
320
+ Install:
321
+
322
+ ```bash
323
+ toolnet-memory integrate:copilot --scope global
324
+ ```
325
+
326
+ Or:
327
+
328
+ ```bash
329
+ toolnet-memory integrate:copilot \
330
+ --scope both \
331
+ --project /path/to/project
332
+ ```
333
+
334
+ ToolNet surfaces:
335
+
336
+ ```text
337
+ Global MCP
338
+ ~/.copilot/mcp-config.json
339
+
340
+ Project MCP
341
+ <project>/.github/mcp.json
342
+
343
+ Global Hooks
344
+ ~/.copilot/hooks/toolnet-memory.json
345
+
346
+ Project Hooks
347
+ <project>/.github/hooks/toolnet-memory.json
348
+
349
+ Project Instruction
350
+ <project>/.github/instructions/toolnet-memory.instructions.md
351
+ ```
352
+
353
+ ToolNet does not overwrite `.github/copilot-instructions.md`.
354
+
355
+ If both global and project MCP entries exist, the project ToolNet MCP is treated as the effective project-scoped configuration.
356
+
357
+ ---
358
+
359
+ ## Grok Build
360
+
361
+ Install:
362
+
363
+ ```bash
364
+ toolnet-memory integrate:grok --scope global
365
+ ```
366
+
367
+ Or:
368
+
369
+ ```bash
370
+ toolnet-memory integrate:grok \
371
+ --scope both \
372
+ --project /path/to/project
373
+ ```
374
+
375
+ ToolNet surfaces:
376
+
377
+ ```text
378
+ Global MCP
379
+ ~/.grok/config.toml
380
+
381
+ Project MCP
382
+ <project>/.grok/config.toml
383
+
384
+ Global Hooks
385
+ ~/.grok/hooks/toolnet-memory.json
386
+
387
+ Project Hooks
388
+ <project>/.grok/hooks/toolnet-memory.json
389
+
390
+ Global Continuity Skill
391
+ ~/.grok/skills/toolnet-continuity/SKILL.md
392
+
393
+ Project Continuity Skill
394
+ <project>/.grok/skills/toolnet-continuity/SKILL.md
190
395
  ```
191
396
 
192
- ### Kiro CLI
397
+ In a project, the project ToolNet MCP and project continuity skill are the effective project-scoped versions.
193
398
 
194
- ToolNet Memory integrates with Kiro through MCP and lifecycle hooks.
399
+ Grok command hooks for lifecycle events remain passive; continuity is provided through the ToolNet MCP and `toolnet-continuity` skill rather than pretending hook stdout is hidden model context.
195
400
 
196
- ````bash
401
+ ---
402
+
403
+ ## Unified Integration Status
404
+
405
+ Show Cursor, Copilot, and Grok scope state together:
406
+
407
+ ```bash
408
+ toolnet-memory integrate:status --scope global
409
+ ```
410
+
411
+ For a project:
412
+
413
+ ```bash
414
+ toolnet-memory integrate:status \
415
+ --scope both \
416
+ --project /path/to/project
417
+ ```
418
+
419
+ Filter one agent:
420
+
421
+ ```bash
422
+ toolnet-memory integrate:status \
423
+ --scope both \
424
+ --project /path/to/project \
425
+ --agent cursor
426
+ ```
427
+
428
+ JSON output:
429
+
430
+ ```bash
431
+ toolnet-memory integrate:status \
432
+ --scope both \
433
+ --project /path/to/project \
434
+ --json
435
+ ```
436
+
437
+ Status reports:
438
+
439
+ ```text
440
+ Global configuration
441
+ Project configuration
442
+ Effective MCP scope
443
+ Effective hook scope
444
+ Effective rule/instruction/skill scope
445
+ Dedupe readiness
446
+ Trust requirement
447
+ Precedence/shadowing risk
448
+ Warnings
449
+ ```
450
+
451
+ ToolNet does not claim that a workspace is natively trusted unless the host application proves it. Project trust is therefore reported conservatively as required/unverified when applicable.
452
+
453
+ ---
454
+
455
+ ## Cross-Process Hook Deduplication
456
+
457
+ When both global and project hooks are loaded by a host, the same native event may arrive through two hook processes.
458
+
459
+ ToolNet prevents double capture with a short-lived cross-process event claim keyed by agent, session, event, and stable native identity.
460
+
461
+ Examples of deduplicated events include lifecycle and prompt events.
462
+
463
+ Security enforcement such as raw-session-history protection is evaluated before deduplication so a second hook source cannot bypass policy checks.
464
+
465
+ ---
466
+
467
+ ## Kiro CLI
468
+
469
+ Kiro integrates through MCP and lifecycle hooks:
470
+
471
+ ```bash
197
472
  toolnet-memory integrate:kiro
198
473
  toolnet-memory integrate:kiro --status
474
+ ```
475
+
476
+ Kiro receives ToolNet continuity through the shared memory core and does not maintain a separate memory database.
199
477
 
200
- Kiro receives compact ToolNet startup context, cross-agent continuity through memory_agent_ask, local WAL capture, final Stop flush, and raw-session-history protection through PreToolUse.
478
+ ---
201
479
 
202
- Kiro uses the shared ToolNet continuity core and does not maintain a separate memory database.
480
+ ## MCP Server
203
481
 
204
- ToolNet Memory also exposes an MCP server:
482
+ Run the ToolNet MCP server directly:
205
483
 
206
484
  ```bash
207
485
  toolnet-memory mcp
208
- ````
486
+ ```
487
+
488
+ Core MCP capabilities include:
489
+
490
+ ```text
491
+ memory_search
492
+ memory_save
493
+ memory_forget
494
+ project_context
495
+ code_search
496
+ semantic_code_search
497
+ find_symbol
498
+ find_callers
499
+ trace_calls
500
+ find_dependencies
501
+ analyze_impact
502
+ get_architecture
503
+ graph_path
504
+ graph_neighborhood
505
+ dead_code
506
+ snapshot_create
507
+ snapshot_list
508
+ snapshot_restore
509
+ memory_agent_ask
510
+ ```
511
+
512
+ `memory_agent_ask` is the continuity-facing agent entry point used when an agent needs to recover or continue prior project work.
209
513
 
210
514
  ---
211
515
 
212
516
  ## Project Operating Manual
213
517
 
214
- Every project can define persistent mandatory rules in:
518
+ Projects can define persistent rules in:
215
519
 
216
520
  ```text
217
521
  .toolnet/PROJECT.md
@@ -248,26 +552,17 @@ toolnet-memory project:manual-show
248
552
  toolnet-memory project:manual-sync
249
553
  ```
250
554
 
251
- This is the correct place for rules such as:
252
-
253
- - allowed source path,
254
- - development vs production environment,
255
- - deployment commands,
256
- - files that must not be edited,
257
- - verification requirements,
258
- - architecture constraints.
259
-
260
555
  Secrets and credentials should remain in `.env` or another secret store, not in `PROJECT.md`.
261
556
 
262
557
  ---
263
558
 
264
559
  ## Code Intelligence
265
560
 
266
- ToolNet Memory builds a persistent structural model of the project so coding agents can understand relationships before changing code.
561
+ ToolNet builds a persistent structural model of the codebase.
267
562
 
268
563
  Capabilities include:
269
564
 
270
- - source symbol indexing,
565
+ - symbol indexing,
271
566
  - imports and dependencies,
272
567
  - callers and callees,
273
568
  - type relationships,
@@ -296,23 +591,17 @@ toolnet-memory semantic "authentication flow"
296
591
  toolnet-memory impact src/auth.ts
297
592
  ```
298
593
 
299
- The goal is not only to find code, but to help an agent understand **what may break if a file, symbol, or dependency changes**.
300
-
301
594
  ---
302
595
 
303
596
  ## Code Graph UI
304
597
 
305
- ToolNet Memory includes a project graph visualization UI.
306
-
307
- Start it with:
598
+ Open the project graph:
308
599
 
309
600
  ```bash
310
601
  toolnet-memory graph
311
602
  ```
312
603
 
313
- The graph uses real indexed ToolNet project data.
314
-
315
- For large projects, the UI uses a lightweight drill-down flow instead of rendering the complete symbol graph at once:
604
+ For large projects the UI uses drill-down navigation:
316
605
 
317
606
  ```text
318
607
  Overview
@@ -324,15 +613,13 @@ Files
324
613
  Symbols + relationships
325
614
  ```
326
615
 
327
- This keeps the graph usable on large projects and mobile browsers while preserving access to detailed relationships when needed.
328
-
329
- The graph server defaults to:
616
+ Default address:
330
617
 
331
618
  ```text
332
619
  127.0.0.1:9749
333
620
  ```
334
621
 
335
- To expose it temporarily on a VPS network interface:
622
+ Optional VPS exposure:
336
623
 
337
624
  ```bash
338
625
  TOOLNET_GRAPH_HOST=0.0.0.0 \
@@ -344,19 +631,14 @@ toolnet-memory graph
344
631
 
345
632
  ## Memory and Work Continuity
346
633
 
347
- View the current work state:
634
+ View current work:
348
635
 
349
636
  ```bash
350
637
  toolnet-memory work
351
- ```
352
-
353
- or:
354
-
355
- ```bash
356
638
  toolnet-memory work:status
357
639
  ```
358
640
 
359
- Ask project memory directly:
641
+ Ask memory:
360
642
 
361
643
  ```bash
362
644
  toolnet-memory ask "What was changed in the authentication flow?"
@@ -369,7 +651,7 @@ toolnet-memory memory:review
369
651
  toolnet-memory memory:reconcile
370
652
  ```
371
653
 
372
- ToolNet tracks structured continuity such as:
654
+ Structured continuity can include:
373
655
 
374
656
  ```text
375
657
  Mission
@@ -389,20 +671,20 @@ Next Actions
389
671
 
390
672
  ## Fast Context vs Deep Recovery
391
673
 
392
- ### Fast Context — default
674
+ ### Fast context
393
675
 
394
- Fast context is local, bounded, and intended for normal agent startup.
676
+ Used for normal startup:
395
677
 
396
678
  ```bash
397
- toolnet-memory
679
+ toolnet-memory context
398
680
  toolnet-memory context:print
399
681
  ```
400
682
 
401
- It uses project-local ToolNet files and does not automatically dump remote history into the prompt.
683
+ It is local and bounded.
402
684
 
403
- ### Deep Recovery — manual only
685
+ ### Deep recovery
404
686
 
405
- Use deep recovery only when the normal fast context is not enough.
687
+ Use only when fast context is insufficient:
406
688
 
407
689
  ```bash
408
690
  toolnet-memory brief
@@ -412,68 +694,19 @@ toolnet-memory session:codex-recover
412
694
  toolnet-memory session:opencode-recover
413
695
  ```
414
696
 
415
- These commands are intentionally **not** meant to run automatically on every agent startup.
416
-
417
- ---
418
-
419
- ## AI Providers and Models
420
-
421
- ToolNet separates the reasoning model from the embedding model.
422
-
423
- Run interactive setup:
424
-
425
- ```bash
426
- toolnet-memory setup
427
- ```
428
-
429
- View provider state:
430
-
431
- ```bash
432
- toolnet-memory provider
433
- toolnet-memory provider:list
434
- toolnet-memory provider:status
435
- toolnet-memory provider:test llm
436
- toolnet-memory provider:test embedding
437
- ```
438
-
439
- View or change the active model:
440
-
441
- ```bash
442
- toolnet-memory model
443
- toolnet-memory model status
444
- toolnet-memory model list
445
- toolnet-memory model set <model>
446
- ```
447
-
448
- Canonical configuration uses:
449
-
450
- ```text
451
- TOOLNET_LLM_PROVIDER
452
- TOOLNET_LLM_API_KEY
453
- TOOLNET_LLM_BASE_URL
454
- TOOLNET_LLM_MODEL
455
-
456
- TOOLNET_EMBEDDING_PROVIDER
457
- TOOLNET_EMBEDDING_API_KEY
458
- TOOLNET_EMBEDDING_BASE_URL
459
- TOOLNET_EMBEDDING_MODEL
460
- ```
461
-
462
- Optional LLM fallbacks are supported for transient failures such as timeouts, HTTP 408, 429, and 5xx responses.
697
+ Deep recovery is intentionally not run automatically on every startup.
463
698
 
464
699
  ---
465
700
 
466
701
  ## Storage
467
702
 
468
- Supported storage modes include:
703
+ Supported modes include:
469
704
 
470
705
  - Cloudflare R2,
471
706
  - generic S3 / S3-compatible storage,
472
707
  - local storage,
473
708
  - Hugging Face S3 compatibility mode.
474
709
 
475
- Projects remain isolated by stable ToolNet project identity.
476
-
477
710
  A typical remote layout is:
478
711
 
479
712
  ```text
@@ -485,20 +718,12 @@ projects/<project>/
485
718
  └── snapshots/
486
719
  ```
487
720
 
488
- Project identity is stored locally under:
489
-
490
- ```text
491
- .toolnet/project.json
492
- ```
493
-
494
- Renaming or moving a project directory should not cause unrelated projects to share memory.
721
+ Projects remain isolated by stable ToolNet project identity.
495
722
 
496
723
  ---
497
724
 
498
725
  ## Snapshots and Recovery
499
726
 
500
- Create and restore project-scoped snapshots:
501
-
502
727
  ```bash
503
728
  toolnet-memory snapshot:list
504
729
  toolnet-memory snapshot:create "before refactor"
@@ -510,7 +735,7 @@ toolnet-memory recover
510
735
 
511
736
  ## Architecture Guard
512
737
 
513
- ToolNet can evaluate project rules and potentially dangerous changes.
738
+ Evaluate project rules and potentially dangerous changes:
514
739
 
515
740
  ```bash
516
741
  toolnet-memory guard:check
@@ -519,13 +744,11 @@ toolnet-memory guard:check --command "rm -rf ..."
519
744
  toolnet-memory guard:explain
520
745
  ```
521
746
 
522
- The project manual and guard system are intended to reduce accidental violations of important project constraints.
523
-
524
747
  ---
525
748
 
526
749
  ## Background Service
527
750
 
528
- ToolNet can optionally run a background daemon:
751
+ Optional daemon commands:
529
752
 
530
753
  ```bash
531
754
  toolnet-memory service:install
@@ -536,33 +759,33 @@ toolnet-memory service:stop
536
759
  toolnet-memory service:remove
537
760
  ```
538
761
 
539
- The background service is optional; the core CLI does not require a permanent daemon for every workflow.
762
+ The daemon is optional; the core CLI does not require a permanent background service.
540
763
 
541
764
  ---
542
765
 
543
766
  ## CLI Help
544
767
 
545
- The default help is intentionally compact:
768
+ Compact help:
546
769
 
547
770
  ```bash
548
771
  toolnet-memory help
549
772
  ```
550
773
 
551
- Show every command:
774
+ All commands:
552
775
 
553
776
  ```bash
554
777
  toolnet-memory help --all
555
778
  ```
556
779
 
557
- Show help for one command:
780
+ One command:
558
781
 
559
782
  ```bash
560
783
  toolnet-memory help index
561
784
  toolnet-memory help model
562
- toolnet-memory help graph
785
+ toolnet-memory help integrate:cursor
563
786
  ```
564
787
 
565
- Main user-facing commands:
788
+ Main commands:
566
789
 
567
790
  ```text
568
791
  GET STARTED
@@ -585,39 +808,19 @@ AI
585
808
  model
586
809
  provider
587
810
 
811
+ INTEGRATIONS
812
+ integrate:detect
813
+ integrate:auto
814
+ integrate:status
815
+ integrate:cursor
816
+ integrate:copilot
817
+ integrate:grok
818
+
588
819
  SYSTEM
589
820
  status
590
821
  update
591
822
  ```
592
823
 
593
- Advanced, recovery, service, session, and production commands remain available through `help --all`.
594
-
595
- ---
596
-
597
- ## Health and Status
598
-
599
- Quick status:
600
-
601
- ```bash
602
- toolnet-memory status
603
- ```
604
-
605
- Deeper diagnostics:
606
-
607
- ```bash
608
- toolnet-memory doctor
609
- ```
610
-
611
- Configuration:
612
-
613
- ```bash
614
- toolnet-memory config get KEY
615
- toolnet-memory config set KEY VALUE
616
- toolnet-memory config open
617
- ```
618
-
619
- Secret values are masked in normal CLI output.
620
-
621
824
  ---
622
825
 
623
826
  ## Updating
@@ -626,7 +829,7 @@ Secret values are masked in normal CLI output.
626
829
  toolnet-memory update
627
830
  ```
628
831
 
629
- Or reinstall the latest npm release:
832
+ Or:
630
833
 
631
834
  ```bash
632
835
  npm install -g toolnet-memory@latest
@@ -641,12 +844,13 @@ ToolNet Memory processes source-code metadata, project instructions, agent activ
641
844
  Important rules:
642
845
 
643
846
  - Never commit `.env` files or credentials.
644
- - Keep VPS passwords, API keys, and tokens out of `PROJECT.md`.
847
+ - Keep passwords, API keys, and tokens out of `PROJECT.md`.
645
848
  - Sanitize secrets before durable persistence.
646
849
  - Never inject memory from another project.
647
850
  - Treat raw coding-agent transcripts as sensitive.
648
851
  - Keep deep recovery manual and bounded.
649
852
  - Store global ToolNet credentials outside project repositories.
853
+ - Raw ToolNet session/history files are protected from normal agent access.
650
854
 
651
855
  See [SECURITY.md](SECURITY.md) for vulnerability reporting.
652
856
 
@@ -667,6 +871,26 @@ npm run build:release
667
871
  npm pack --dry-run
668
872
  ```
669
873
 
874
+ Phase 07 integration certification:
875
+
876
+ ```bash
877
+ npm run release:certify:phase07
878
+ ```
879
+
880
+ 8-agent continuity certification:
881
+
882
+ ```bash
883
+ npm run release:certify:8
884
+ ```
885
+
886
+ Optional native CLI E2E certification:
887
+
888
+ ```bash
889
+ npm run release:certify:native:optional
890
+ ```
891
+
892
+ Native Cursor/Copilot/Grok binaries are not required for normal package release certification.
893
+
670
894
  See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution rules.
671
895
 
672
896
  ---
@@ -675,25 +899,27 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution rules.
675
899
 
676
900
  ToolNet Memory uses GitHub Actions for CI and npm releases.
677
901
 
678
- Before a release, the repository validates:
902
+ The current release line is:
903
+
904
+ ```text
905
+ npm package: toolnet-memory@0.3.11
906
+ Git tag: v0.3.11
907
+ ```
908
+
909
+ Before release, the repository validates:
679
910
 
680
911
  ```text
681
912
  lint
682
913
  format
683
914
  TypeScript
684
915
  unit/integration tests
916
+ 8-agent continuity
917
+ Phase 07 integration contracts
685
918
  production build
686
919
  npm package contents
687
920
  ```
688
921
 
689
- Version tags trigger the release workflow and npm Trusted Publishing.
690
-
691
- The tag must match `package.json`:
692
-
693
- ```text
694
- package.json: 0.3.x
695
- Git tag: v0.3.x
696
- ```
922
+ Version tags trigger the Release workflow and npm Trusted Publishing.
697
923
 
698
924
  See [CHANGELOG.md](CHANGELOG.md) for release history.
699
925