total-recall-brain 3.1.2 → 3.2.1

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.
Files changed (60) hide show
  1. package/extension/background.js +99 -0
  2. package/extension/content-script.css +16 -0
  3. package/extension/content-script.js +134 -0
  4. package/extension/icons/README.md +27 -0
  5. package/extension/icons/icon-128.png +0 -0
  6. package/extension/icons/icon-16.png +0 -0
  7. package/extension/icons/icon-48.png +0 -0
  8. package/extension/lib/brain-client.js +47 -0
  9. package/extension/manifest.json +39 -0
  10. package/extension/options/options.css +218 -0
  11. package/extension/options/options.html +72 -0
  12. package/extension/options/options.js +99 -0
  13. package/extension/popup/popup.css +221 -0
  14. package/extension/popup/popup.html +44 -0
  15. package/extension/popup/popup.js +107 -0
  16. package/extension/sidepanel/sidepanel.css +340 -0
  17. package/extension/sidepanel/sidepanel.html +38 -0
  18. package/extension/sidepanel/sidepanel.js +229 -0
  19. package/frontend/README.md +73 -0
  20. package/frontend/index.html +17 -0
  21. package/frontend/package.json +31 -0
  22. package/frontend/src/App.css +2 -0
  23. package/frontend/src/App.tsx +390 -0
  24. package/frontend/src/api.ts +688 -0
  25. package/frontend/src/assets/hero.png +0 -0
  26. package/frontend/src/assets/react.svg +1 -0
  27. package/frontend/src/assets/vite.svg +1 -0
  28. package/frontend/src/components/BrainSelector.tsx +272 -0
  29. package/frontend/src/components/DaemonLogsTab.tsx +54 -0
  30. package/frontend/src/components/Graph3D.tsx +850 -0
  31. package/frontend/src/components/MarkdownUtils.tsx +99 -0
  32. package/frontend/src/components/ResearchAgendaTab.tsx +707 -0
  33. package/frontend/src/components/TaskQueueTab.tsx +185 -0
  34. package/frontend/src/index.css +1589 -0
  35. package/frontend/src/main.tsx +10 -0
  36. package/frontend/src/pages/ApiKeysPage.tsx +288 -0
  37. package/frontend/src/pages/AutomationsPage.tsx +354 -0
  38. package/frontend/src/pages/ChatPage.tsx +806 -0
  39. package/frontend/src/pages/DeploymentsPage.tsx +275 -0
  40. package/frontend/src/pages/FilesPage.tsx +384 -0
  41. package/frontend/src/pages/HealthPage.tsx +91 -0
  42. package/frontend/src/pages/IntegrationsPage.tsx +382 -0
  43. package/frontend/src/pages/LoginPage.tsx +237 -0
  44. package/frontend/src/pages/MemoryPage.tsx +1192 -0
  45. package/frontend/src/pages/SandboxPage.tsx +113 -0
  46. package/frontend/src/pages/SettingsPage.tsx +662 -0
  47. package/frontend/src/pages/SkillsPage.tsx +618 -0
  48. package/frontend/src/pages/TasksPage.tsx +392 -0
  49. package/frontend/src/pages/UsagePage.tsx +260 -0
  50. package/frontend/src/types.ts +163 -0
  51. package/frontend/tsconfig.app.json +25 -0
  52. package/frontend/tsconfig.json +7 -0
  53. package/frontend/tsconfig.node.json +24 -0
  54. package/frontend/vite.config.ts +24 -0
  55. package/package.json +8 -1
  56. package/scaffold/.agent/skills/total-recall/memory-vault/concepts/cli-help-reference.md +35 -8
  57. package/scaffold/.agent/skills/total-recall/memory-vault/invariants/operating-instructions.md +13 -8
  58. package/scaffold/.agent/skills/total-recall/memory-vault/preferences/always-websearch-gap.md +28 -1
  59. package/scaffold/.agent/skills/total-recall/memory-vault/preferences/topic-research-sop.md +28 -1
  60. package/scaffold/.agent/skills/total-recall/skills/ssss/references/ssss-spec.md +830 -81
@@ -0,0 +1,163 @@
1
+ // ─── Types for the Total Recall frontend ────────────────────────────────────────
2
+
3
+ export interface ChatMessage {
4
+ id: string
5
+ role: 'user' | 'assistant' | 'system'
6
+ content: string
7
+ timestamp: number
8
+ versions?: string[]
9
+ currentVersionIndex?: number
10
+ }
11
+
12
+ export interface MemoryNode {
13
+ slug: string
14
+ title: string
15
+ category: string
16
+ status?: string
17
+ priority?: string
18
+ importance?: number
19
+ confidence?: number
20
+ modality?: string
21
+ tags?: string[]
22
+ body?: string
23
+ content?: string
24
+ excerpt?: string
25
+ related?: string[]
26
+ supersedes?: string[]
27
+ contradicts?: string[]
28
+ subject?: string
29
+ predicate?: string
30
+ object?: string
31
+ sentiment_polarity?: string
32
+ }
33
+
34
+ export interface ScriptFile {
35
+ name: string
36
+ size: number
37
+ modified: string
38
+ }
39
+
40
+ export interface HealthData {
41
+ status: string
42
+ version: string
43
+ uptime_seconds: number
44
+ timestamp: string
45
+ disk?: { free: number, total: number }
46
+ ollama?: string
47
+ ollama_models?: string[]
48
+ cli_agents?: string[]
49
+ daemon?: string
50
+ emergency_alerts?: string | null
51
+ }
52
+
53
+ export interface SandboxResult {
54
+ success: boolean
55
+ output: string
56
+ isError?: boolean
57
+ }
58
+
59
+ export interface Task {
60
+ slug: string
61
+ target: string
62
+ category: string
63
+ status: string
64
+ priority: number
65
+ body?: string
66
+ error?: string
67
+ progress?: number
68
+ }
69
+
70
+ export interface FileNode {
71
+ name: string
72
+ size: number
73
+ modified: string
74
+ isDirectory: boolean
75
+ }
76
+
77
+ export interface ResearchItem {
78
+ id: string
79
+ topic: string
80
+ status: 'pending' | 'in_progress' | 'done' | 'failed' | 'paused'
81
+ priority: 'low' | 'medium' | 'high' | 'critical'
82
+ notes: string | null
83
+ node_slug?: string | null
84
+ research_phase?: string
85
+ created_at: string
86
+ updated_at: string
87
+ completed_at?: string | null
88
+ }
89
+
90
+ export interface Conflict {
91
+ conflict_id: string
92
+ status: 'pending' | 'resolved'
93
+ new_slug: string
94
+ existing_slug: string
95
+ similarity: number
96
+ polarity_flip: boolean
97
+ detected_at: string
98
+ reason: string
99
+ resolution: string | null
100
+ resolved_at: string | null
101
+ _existing_node?: MemoryNode
102
+ _new_node?: MemoryNode
103
+ }
104
+
105
+ export interface UsageBreakdown {
106
+ dailyUsd: number
107
+ weeklyUsd: number
108
+ dailyTokens?: number
109
+ weeklyTokens?: number
110
+ }
111
+
112
+ export interface UsageData {
113
+ timestamp: string
114
+ dailyUsd: number
115
+ weeklyUsd: number
116
+ breakdown: {
117
+ gemini: UsageBreakdown
118
+ claude: UsageBreakdown
119
+ codex: UsageBreakdown
120
+ }
121
+ }
122
+
123
+ export interface ConfigJson {
124
+ security: {
125
+ yolo_mode?: boolean
126
+ privacy?: {
127
+ enforce_local_only?: boolean
128
+ allow_frontier_export?: 'always' | 'ask_per_skill' | 'never' | string
129
+ }
130
+ dashboard?: {
131
+ force_password_reset?: boolean
132
+ session_ttl_hours?: number
133
+ }
134
+ bind?: {
135
+ host?: string
136
+ port?: number
137
+ allow_public_bind?: boolean
138
+ }
139
+ network?: {
140
+ require_https?: boolean
141
+ public_health?: boolean
142
+ allowed_origins?: string[]
143
+ }
144
+ rate_limits?: {
145
+ api_requests_per_minute?: number
146
+ sandbox_requests_per_minute?: number
147
+ ingest_requests_per_minute?: number
148
+ }
149
+ [key: string]: unknown
150
+ }
151
+ budget: {
152
+ budget?: {
153
+ enabled?: boolean
154
+ daily_cap_usd?: number
155
+ weekly_cap_usd?: number
156
+ }
157
+ [key: string]: unknown
158
+ }
159
+ brain?: {
160
+ preferred_agent?: string
161
+ }
162
+ }
163
+
@@ -0,0 +1,25 @@
1
+ {
2
+ "compilerOptions": {
3
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
4
+ "target": "es2023",
5
+ "lib": ["ES2023", "DOM"],
6
+ "module": "esnext",
7
+ "types": ["vite/client"],
8
+ "skipLibCheck": true,
9
+
10
+ /* Bundler mode */
11
+ "moduleResolution": "bundler",
12
+ "allowImportingTsExtensions": true,
13
+ "verbatimModuleSyntax": true,
14
+ "moduleDetection": "force",
15
+ "noEmit": true,
16
+ "jsx": "react-jsx",
17
+
18
+ /* Linting */
19
+ "noUnusedLocals": true,
20
+ "noUnusedParameters": true,
21
+ "erasableSyntaxOnly": true,
22
+ "noFallthroughCasesInSwitch": true
23
+ },
24
+ "include": ["src"]
25
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "files": [],
3
+ "references": [
4
+ { "path": "./tsconfig.app.json" },
5
+ { "path": "./tsconfig.node.json" }
6
+ ]
7
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "compilerOptions": {
3
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
4
+ "target": "es2023",
5
+ "lib": ["ES2023"],
6
+ "module": "esnext",
7
+ "types": ["node"],
8
+ "skipLibCheck": true,
9
+
10
+ /* Bundler mode */
11
+ "moduleResolution": "bundler",
12
+ "allowImportingTsExtensions": true,
13
+ "verbatimModuleSyntax": true,
14
+ "moduleDetection": "force",
15
+ "noEmit": true,
16
+
17
+ /* Linting */
18
+ "noUnusedLocals": true,
19
+ "noUnusedParameters": true,
20
+ "erasableSyntaxOnly": true,
21
+ "noFallthroughCasesInSwitch": true
22
+ },
23
+ "include": ["vite.config.ts"]
24
+ }
@@ -0,0 +1,24 @@
1
+ import { defineConfig } from 'vite'
2
+ import react from '@vitejs/plugin-react'
3
+
4
+ // https://vite.dev/config/
5
+ export default defineConfig({
6
+ plugins: [react()],
7
+ server: {
8
+ port: 5173,
9
+ proxy: {
10
+ '/v1': {
11
+ target: 'http://localhost:3000',
12
+ changeOrigin: true,
13
+ },
14
+ '/health': {
15
+ target: 'http://localhost:3000',
16
+ changeOrigin: true,
17
+ },
18
+ '/api': {
19
+ target: 'http://localhost:3000',
20
+ changeOrigin: true,
21
+ },
22
+ },
23
+ },
24
+ })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "total-recall-brain",
3
- "version": "3.1.2",
3
+ "version": "3.2.1",
4
4
  "description": "Sovereign AI system — database-free, SSSS-powered personal intelligence engine deployable to any POSIX host.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -12,6 +12,13 @@
12
12
  "src/",
13
13
  "!src/**/*.spec.mjs",
14
14
  "!src/**/*.test.mjs",
15
+ "frontend/dist/",
16
+ "frontend/package.json",
17
+ "frontend/vite.config.ts",
18
+ "frontend/tsconfig*.json",
19
+ "frontend/index.html",
20
+ "frontend/src/",
21
+ "extension/",
15
22
  "templates/",
16
23
  "scaffold/",
17
24
  "docs/ARCHITECTURE.md",
@@ -2,18 +2,45 @@
2
2
  type: memory
3
3
  slug: cli-help-reference
4
4
  category: concepts
5
- title: "Total Recall Command & Architecture Help Reference"
5
+ title: Total Recall Command & Architecture Help Reference
6
6
  schema_version: 2
7
7
  status: active
8
- confidence: 1.0
8
+ confidence: 1
9
9
  importance: 5
10
- priority: high
11
- modality: descriptive
12
- tags: [cli, help, commands, VFS, integrations, scheduler, daemon, budget, sandbox, watchdog]
13
- created: 2026-05-25T00:51:00Z
14
- updated: 2026-05-25T00:56:00Z
10
+ modality: should
11
+ tags:
12
+ - cli
13
+ - help
14
+ - commands
15
+ - VFS
16
+ - integrations
17
+ - scheduler
18
+ - daemon
19
+ - budget
20
+ - sandbox
21
+ - watchdog
22
+ created: 2026-05-25T00:51:00.000Z
23
+ updated: 2026-05-25T00:56:00.000Z
24
+ sentiment_polarity: descriptive
25
+ last_accessed: 2026-05-26T23:03:03.507Z
26
+ source:
27
+ type: manual
28
+ session_id: migration-repair
29
+ evidence_count: 1
30
+ supersedes: []
31
+ contradicts: []
32
+ related: []
33
+ routes_to_skills: []
34
+ superseded_by: null
35
+ sentiment_target: system
36
+ subject: system
37
+ predicate: remembers
38
+ object: Total Recall Command & Architecture Help Reference
39
+ decay:
40
+ half_life_days: 180
41
+ access_count: 1
42
+ x_temporal_context: 2026-05-26T23:05:06.474Z
15
43
  ---
16
-
17
44
  # Total Recall Command & Architecture Help Reference
18
45
 
19
46
  To guarantee perfect system awareness and eliminate unexpected retrieval latency, this semantic node documents the entire layout, core commands, internal features, and the interactive help subsystems of the **Total Recall Sovereign OS**.
@@ -2,10 +2,10 @@
2
2
  type: memory
3
3
  slug: operating-instructions
4
4
  category: invariants
5
- title: "Total Recall Core Operating Protocol"
5
+ title: Total Recall Core Operating Protocol
6
6
  schema_version: 2
7
7
  status: active
8
- confidence: 1.0
8
+ confidence: 1
9
9
  importance: 5
10
10
  priority: absolute
11
11
  immutable: true
@@ -13,9 +13,9 @@ modality: must
13
13
  subject: agent
14
14
  predicate: operate
15
15
  object: memory_system
16
- created: 2026-05-01T00:00:00Z
17
- updated: 2026-05-15T00:00:00Z
18
- last_accessed: 2026-05-15T00:00:00Z
16
+ created: 2026-05-01T00:00:00.000Z
17
+ updated: 2026-05-15T00:00:00.000Z
18
+ last_accessed: 2026-05-15T00:00:00.000Z
19
19
  source:
20
20
  type: scaffold
21
21
  session_id: scaffold-seed
@@ -24,16 +24,21 @@ source:
24
24
  supersedes: []
25
25
  superseded_by: null
26
26
  contradicts: []
27
- tags: [ssss, sovereignty, memory, protocol]
27
+ tags:
28
+ - ssss
29
+ - sovereignty
30
+ - memory
31
+ - protocol
28
32
  related: []
29
- routes_to_skills: [ssss]
33
+ routes_to_skills:
34
+ - ssss
30
35
  sentiment_polarity: directive_must
31
36
  sentiment_target: memory_system
32
37
  decay:
33
38
  half_life_days: 365
34
39
  access_count: 1
40
+ x_temporal_context: 2026-05-26T23:05:06.525Z
35
41
  ---
36
-
37
42
  # Total Recall Operating Protocol
38
43
 
39
44
  You are operating within the **Total Recall Sovereign OS**. Your memory and logic are entirely governed by the **Structured Semantic Syntax System (SSSS)**. There is no external database. The filesystem is your brain.
@@ -1,10 +1,37 @@
1
1
  ---
2
+ type: memory
2
3
  slug: always-websearch-gap
3
4
  category: preferences
4
5
  title: "Always Perform Web Search for Cutoff Gap"
5
6
  status: active
7
+ confidence: 1
8
+ importance: 5
9
+ created: "2026-05-25T22:36:21.376Z"
10
+ updated: "2026-05-25T22:36:21.376Z"
11
+ last_accessed: "2026-05-25T22:36:21.376Z"
12
+ source:
13
+ type: remember-cli
14
+ session_id: remember-session
15
+ evidence_count: 1
16
+ supersedes: []
17
+ superseded_by: null
18
+ contradicts: []
19
+ tags: [preferences, web-search, knowledge-cutoff]
20
+ related: []
21
+ routes_to_skills: []
22
+ sentiment_polarity: preference
23
+ sentiment_target: websearch-policy
24
+ modality: should
25
+ subject: system
26
+ predicate: performs_web_search
27
+ object: cutoff_gap
28
+ decay:
29
+ half_life_days: 180
30
+ access_count: 1
31
+ schema_version: 2
32
+ x_temporal_context: "2026-05-25T22:36:21.376Z"
6
33
  priority: absolute
7
- modality: must
34
+ immutable: true
8
35
  ---
9
36
 
10
37
  # Always Perform Web Search for Cutoff Gap
@@ -1,10 +1,37 @@
1
1
  ---
2
+ type: memory
2
3
  slug: topic-research-sop
3
4
  category: preferences
4
5
  title: "Standard Operating Procedure for Topic Research"
5
6
  status: active
7
+ confidence: 1
8
+ importance: 5
9
+ created: "2026-05-25T22:36:21.376Z"
10
+ updated: "2026-05-25T22:36:21.376Z"
11
+ last_accessed: "2026-05-25T22:36:21.376Z"
12
+ source:
13
+ type: remember-cli
14
+ session_id: remember-session
15
+ evidence_count: 1
16
+ supersedes: []
17
+ superseded_by: null
18
+ contradicts: []
19
+ tags: [preferences, SOP, research-daemon]
20
+ related: []
21
+ routes_to_skills: []
22
+ sentiment_polarity: preference
23
+ sentiment_target: research-sop
24
+ modality: should
25
+ subject: system
26
+ predicate: executes_research
27
+ object: topic
28
+ decay:
29
+ half_life_days: 180
30
+ access_count: 1
31
+ schema_version: 2
32
+ x_temporal_context: "2026-05-25T22:36:21.376Z"
6
33
  priority: absolute
7
- modality: must
34
+ immutable: true
8
35
  ---
9
36
 
10
37
  # Standard Operating Procedure for Topic Research