total-recall-brain 3.24.1 → 3.25.0
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/docs/ARCHITECTURE.md +5 -5
- package/frontend/dist/assets/{index-BQL-opnK.js → index-wTl6WfEH.js} +134 -134
- package/frontend/dist/index.html +1 -1
- package/frontend/src/api/mesh.ts +24 -0
- package/frontend/src/api/system.ts +26 -0
- package/frontend/src/api/update.ts +16 -0
- package/frontend/src/components/TailnetEnroll.spec.tsx +73 -0
- package/frontend/src/components/TailnetEnroll.tsx +179 -0
- package/frontend/src/components/brand/BrandMark.tsx +1 -1
- package/frontend/src/index.css +1 -1
- package/frontend/src/pages/SettingsPage.spec.tsx +31 -0
- package/frontend/src/pages/SettingsPage.tsx +59 -2
- package/package.json +1 -1
- package/scaffold/.agent/skills/total-recall/SKILL.md +16 -2
- package/scaffold/.agent/skills/total-recall/memory-vault/preferences/always-websearch-gap.md +2 -0
- package/scaffold/.agent/skills/total-recall/memory-vault/preferences/topic-research-sop.md +2 -0
- package/scaffold/.agent/skills/total-recall/references/api-reference.md +1 -1
- package/scaffold/.agent/skills/total-recall/references/cli-reference.md +1 -1
- package/scaffold/.agent/skills/total-recall/scripts/sync-repo.mjs +166 -61
- package/scaffold/.agent/skills/total-recall/skills-registry/index.yaml +3 -2461
- package/src/cli/backup.mjs +63 -0
- package/src/cli/mesh.mjs +9 -0
- package/src/core/server-restart.mjs +130 -0
- package/src/server/route-manifest.json +12 -0
- package/src/server/routes/mesh.mjs +40 -0
- package/src/server/routes/system.mjs +38 -1
- package/src/server/routes/update.mjs +67 -8
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -113,7 +113,7 @@ Total Recall partitions your sovereign brain memory into two virtual directories
|
|
|
113
113
|
├── memory-vault/ # General user preferences
|
|
114
114
|
└── memory-derived/ # Ephemeral caches
|
|
115
115
|
|
|
116
|
-
|
|
116
|
+
<your-project>/ <-- LOCAL PROJECT BRAIN LAYER
|
|
117
117
|
└── .agent/skills/total-recall/
|
|
118
118
|
├── memory-vault/ # Project-specific facts
|
|
119
119
|
└── memory-derived/ # Unified project-local compiled index
|
|
@@ -130,7 +130,7 @@ Total Recall partitions your sovereign brain memory into two virtual directories
|
|
|
130
130
|
|
|
131
131
|
## 🌀 The Daemon Loop & Priority Task Scheduler
|
|
132
132
|
|
|
133
|
-
The background daemon (`dream.mjs`) manages the **Continuous Intelligent Scheduler** ([src/core/scheduler.mjs](
|
|
133
|
+
The background daemon (`dream.mjs`) manages the **Continuous Intelligent Scheduler** ([src/core/scheduler.mjs](src/core/scheduler.mjs)) and task execution loops:
|
|
134
134
|
|
|
135
135
|
### 1. Priority-Driven Queue Mechanics
|
|
136
136
|
Tasks are enqueued dynamically as standard Markdown files (`type: task`) located in your vault's `scheduler/queue/` directory. The scheduler resolves an **Effective Priority** by multiplying the task's base `priority` (10 to 100) by a strictly-regulated **layer weight** (`LAYER_WEIGHTS`), prioritizing critical correctness and active developer guidance over passive exploration:
|
|
@@ -159,7 +159,7 @@ When the active developer queues are empty, the scheduler **automatically auto-g
|
|
|
159
159
|
|
|
160
160
|
## 🏃 hard Task Execution
|
|
161
161
|
|
|
162
|
-
Pending priority tasks are executed by the **Task Runner** ([src/core/task_runner.mjs](
|
|
162
|
+
Pending priority tasks are executed by the **Task Runner** ([src/core/task_runner.mjs](src/core/task_runner.mjs)):
|
|
163
163
|
- **State Machine Updates**: Tasks transition transparently through states: `pending` → `in_progress` → `done` or `failed` (logging full exceptions to disk).
|
|
164
164
|
- **Subagent Routing**: Routes tasks to specialized subagents depending on category:
|
|
165
165
|
- `proactive-research`: Spawns autonomous web crawls and gathers cited research reports (`research.mjs`).
|
|
@@ -224,7 +224,7 @@ Total Recall consolidates all data folders under the meta-skill `skills/total-re
|
|
|
224
224
|
|
|
225
225
|
## 💬 Interactive CLI Agent Chat REPL
|
|
226
226
|
|
|
227
|
-
Total Recall features a native terminal-based chat REPL (`npx total-recall chat`) running [src/cli/chat.mjs](
|
|
227
|
+
Total Recall features a native terminal-based chat REPL (`npx total-recall chat`) running [src/cli/chat.mjs](src/cli/chat.mjs) that enables direct, conversational access to your active brain kernel from the terminal:
|
|
228
228
|
|
|
229
229
|
- **CLI-Agent Execution**: Conversation turns are dispatched dynamically to your prioritized **Unified Headless CLI Agents Registry** (`antigravity`, `gemini`, `claude`, `codex`) via `spawnSync`.
|
|
230
230
|
- **Pre-flight Health Routing**: Upon starting, `chat` checks agent binary availability, selecting the highest-priority active subagent found in your `$PATH`.
|
|
@@ -243,7 +243,7 @@ For web dashboard access, Total Recall strictly avoids external third-party OAut
|
|
|
243
243
|
- **TLS Protection**: The daemon blocks non-secure remote connections, requiring active HTTPS TLS layers (automated via Caddy proxying) for all production traffic.
|
|
244
244
|
|
|
245
245
|
### 2. Personal Access Token (PAT) Key Lifecycle Manager
|
|
246
|
-
Headless tools, IDE editors, and session Relays authenticate via standard HTTP Bearer headers (`Authorization: Bearer tr_<token>`), managed by the **Keys Lifecycle Manager** ([src/server/keys.mjs](
|
|
246
|
+
Headless tools, IDE editors, and session Relays authenticate via standard HTTP Bearer headers (`Authorization: Bearer tr_<token>`), managed by the **Keys Lifecycle Manager** ([src/server/keys.mjs](src/server/keys.mjs)):
|
|
247
247
|
- **SHA-256 Hash Preservation**: To eliminate credential exposure risk, the server **never writes tokens to disk in plaintext**. It persists only a timing-safe SHA-256 hash (`token_hash`) and a short identifying prefix (`token_prefix`) inside the owner-exclusive `config/keys.jsonl` file (written with `0o600` access modes). Diffs are cleanly git-versioned.
|
|
248
248
|
- **Timing-Attack Protection**: Inbound Bearer PAT tokens are verified using cryptographically secure timing-safe comparisons (`crypto.timingSafeEqual`) on SHA-256 hashes, eliminating timing vector leaks.
|
|
249
249
|
- **Role-Based Granular Scopes**: Validated PAT keys carry granular permission scopes (e.g., `chat:write`, `memory:read`, `sandbox:run`), permitting fine-grained access control boundaries for different editors.
|