diff options
| author | Agando <roduccomm@gmail.com> | 2026-10-22 00:46:05 +0200 |
|---|---|---|
| committer | Agando <roduccomm@gmail.com> | 2026-10-22 00:46:05 +0200 |
| commit | 61571cae4c642918b9e49dd81b51a3a9b2e46793 (patch) | |
| tree | 579421a331eec9365211f3082c2985eeb5dbde19 /modules/core/terminal.js | |
| parent | df6c4ec7ef576e188b68ef8e64eb1f94431b5a1c (diff) | |
feat(newos4): world-model-ask answers with the LLM, grounded in the model (v4.6.50)
`world-model-ask` was a 10-keyword lookup: any real question returned
"Unknown query. Try: modules, skills, ...". The documented example
("what changed since yesterday") compared nothing — it restated the current
snapshot.
- _modelDigest(): whitelisted snapshot (measured 942-965 chars on fixtures,
~3.3 KB live) + recent error sample + changesSinceLastSnapshot
- _buildAskPrompt(): "answer only from this JSON, never invent numbers, name the
command that would produce missing data"
- ask(): connects Ollama on demand, answers via chat(), falls back to the facts
path with a visible warning; --facts keeps the instant lookup
- _diffSincePrev(): keeps one previous snapshot in /system/world-model.prev.json
so "what changed" is a real diff (files 136 -> 140)
- world_model_query tool returns the snapshot (digest or detail:full) instead of
ten canned strings; no nested LLM call inside a tool call
- help text now says what it does; node test modules/test/test-world-model-ask.js
(11 assertions, runs the real class)
Verified live v4.6.50: facts "Loaded 46 modules" | LLM "The snapshot does not
contain information regarding the cause of memory growth ... use
world-model-refresh" | diff "files 136 -> 140" | tool snapshot 3,334 bytes.
Diffstat (limited to 'modules/core/terminal.js')
0 files changed, 0 insertions, 0 deletions