feat(memory): add opt-in scoped memory tools
This commit is contained in:
1 parent
cd09ed531d
commit
e4e56db488
14 files changed
+618
-5
No files matched your search
@@ -42,3 +42,23 @@ files, symlinked install directories, and a tampered manifest.
|
||||
branches.
|
||||
- `npm pack --dry-run` — passed; included runtime files, selected content,
|
||||
licenses, notice, and README.
|
||||
|
||||
## Optional memory review (2026-10-08)
|
||||
|
||||
Memory tools are not registered unless `memory.enabled` is explicitly true.
|
||||
Session keys include hashes of the OpenCode project identity and session ID;
|
||||
project-scope access additionally requires `memory.project: true` and is keyed
|
||||
to the canonical project. Each operation checks the session's project ID. Data
|
||||
is only stored or returned through explicit tool calls; list previews and
|
||||
retrieval become ordinary tool output visible to the active provider. The
|
||||
package does not encrypt storage, capture session content, or background-upload
|
||||
memory. Retention is lazy: expired entries are rejected and removed on access,
|
||||
not by a scheduled purge. Provider-backed learning and persistence across live
|
||||
OpenCode restarts have not been verified, so this is not a security audit or a
|
||||
claim about the underlying storage implementation.
|
||||
|
||||
Deterministic checks cover disabled-by-default behavior, session separation,
|
||||
project opt-in, project separation, cross-project rejection, explicit deletion,
|
||||
and expiry. A plugin config object containing user options is preserved during
|
||||
uninstall; users must remove that entry themselves if they converted the
|
||||
installer-added string to configure memory.
|
||||
Reference in new issue
Block a user