total-recall-brain 3.46.2 → 3.47.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.
- package/bin/total-recall.mjs +5 -0
- package/frontend/dist/assets/index-CpsWeV4X.css +1 -0
- package/frontend/dist/assets/{index-D1goIPjC.js → index-poecbHSl.js} +100 -100
- package/frontend/dist/brand/total-recall-lockup-transparent.png +0 -0
- package/frontend/dist/index.html +2 -2
- package/frontend/dist/sw.js +1 -1
- package/frontend/src/App.tsx +15 -81
- package/frontend/src/components/DashboardOverview.tsx +164 -0
- package/frontend/src/components/brand/BrandMark.tsx +8 -6
- package/frontend/src/components/plugins/PluginWorkspace.tsx +112 -57
- package/frontend/src/components/workspace/PluginHome.tsx +3 -3
- package/frontend/src/index.css +43 -11
- package/package.json +1 -1
- package/scaffold/.agent/skills/total-recall/plugins/auth/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/auth/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/auth/plugin.json +30 -5
- package/scaffold/.agent/skills/total-recall/plugins/auth/skills/auth/SKILL.md +35 -0
- package/scaffold/.agent/skills/total-recall/plugins/auth/ui/home.js +494 -79
- package/scaffold/.agent/skills/total-recall/plugins/automations/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/automations/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/automations/plugin.json +33 -8
- package/scaffold/.agent/skills/total-recall/plugins/automations/skills/automations/SKILL.md +29 -0
- package/scaffold/.agent/skills/total-recall/plugins/automations/ui/chunks/dream-consolidation.md +17 -0
- package/scaffold/.agent/skills/total-recall/plugins/code-quality/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/code-quality/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/code-quality/plugin.json +31 -4
- package/scaffold/.agent/skills/total-recall/plugins/code-quality/skills/code-quality/SKILL.md +27 -0
- package/scaffold/.agent/skills/total-recall/plugins/composable-cli/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/composable-cli/package.json +1 -1
- package/scaffold/.agent/skills/total-recall/plugins/composable-cli/plugin.json +17 -3
- package/scaffold/.agent/skills/total-recall/plugins/embeddings/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/embeddings/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/embeddings/plugin.json +24 -4
- package/scaffold/.agent/skills/total-recall/plugins/embeddings/skills/embeddings/SKILL.md +25 -0
- package/scaffold/.agent/skills/total-recall/plugins/git/package-lock.json +6 -6
- package/scaffold/.agent/skills/total-recall/plugins/git/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/git/plugin.json +300 -58
- package/scaffold/.agent/skills/total-recall/plugins/git/skills/git/SKILL.md +36 -0
- package/scaffold/.agent/skills/total-recall/plugins/git/src/ops/commit-memory.mjs +5 -33
- package/scaffold/.agent/skills/total-recall/plugins/git/ui/chunks/git-fleet-ops.md +16 -0
- package/scaffold/.agent/skills/total-recall/plugins/git/ui/chunks/git-publish.md +16 -0
- package/scaffold/.agent/skills/total-recall/plugins/mesh/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/mesh/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/mesh/plugin.json +47 -14
- package/scaffold/.agent/skills/total-recall/plugins/mesh/skills/mesh/SKILL.md +36 -0
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/cli.mjs +6 -3
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/package.json +1 -1
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/plugin.json +5 -2
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/cascade.mjs +4 -2
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/coordinator.mjs +28 -9
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/dispatch.mjs +7 -1
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/model-selection.mjs +59 -0
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/remote-operation.mjs +3 -3
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/router.mjs +9 -3
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/src/worker.mjs +50 -6
- package/scaffold/.agent/skills/total-recall/plugins/meta-harness/ui/chunks/session-controls.md +16 -0
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/cli.mjs +175 -17
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/package-lock.json +6 -6
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/plugin.json +242 -31
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/skills/openwiki/SKILL.md +32 -0
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/config.mjs +41 -15
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/generate.mjs +29 -22
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/graph.mjs +20 -33
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/lint.mjs +42 -49
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/markdown-links.mjs +112 -0
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/mesh-vaults.mjs +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/refresh.mjs +219 -65
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/search.mjs +2 -1
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/src/upstream-watcher.mjs +21 -3
- package/scaffold/.agent/skills/total-recall/plugins/openwiki/ui/panel.js +51 -2
- package/scaffold/.agent/skills/total-recall/plugins/security/package-lock.json +4 -4
- package/scaffold/.agent/skills/total-recall/plugins/security/package.json +1 -1
- package/scaffold/.agent/skills/total-recall/plugins/security/plugin.json +22 -5
- package/scaffold/.agent/skills/total-recall/plugins/ssss/package.json +3 -2
- package/scaffold/.agent/skills/total-recall/plugins/ssss/plugin.json +169 -37
- package/scaffold/.agent/skills/total-recall/plugins/ssss/skills/ssss/SKILL.md +30 -0
- package/src/cli/context.mjs +6 -2
- package/src/cli/plugin/create.mjs +2 -1
- package/src/cli/plugin/monetization.mjs +66 -32
- package/src/cli/plugin/search.mjs +25 -3
- package/src/cli/preflight.mjs +40 -6
- package/src/core/context-compactor.mjs +2 -0
- package/src/core/gate-mode.mjs +13 -24
- package/src/core/plugin-distribution.mjs +35 -1
- package/src/core/preflight-gate.mjs +28 -8
- package/src/core/preflight-receipt.mjs +11 -0
- package/src/server/routes/vault.mjs +1 -0
- package/frontend/dist/assets/index-BRYE1jmv.css +0 -1
|
@@ -18,7 +18,7 @@ export function PluginHome({ plugin, plugins, brainId, onCommand }: {
|
|
|
18
18
|
const home = (plugin.manifest?.ui as { home?: string } | undefined)?.home || plugin.ui?.home
|
|
19
19
|
const panel = panels.find(element => element.id === home) || panels[0]
|
|
20
20
|
const operations = scopedPluginOperations(plugin)
|
|
21
|
-
const chunks = published?.chunks.length ? published.chunks : defaults
|
|
21
|
+
const chunks = published?.chunks.length ? published.chunks : (panel ? [] : defaults)
|
|
22
22
|
|
|
23
23
|
useEffect(() => {
|
|
24
24
|
const controller = new AbortController()
|
|
@@ -62,8 +62,8 @@ export function PluginHome({ plugin, plugins, brainId, onCommand }: {
|
|
|
62
62
|
)}
|
|
63
63
|
{!loading && !published?.chunks.length && panel && !chunks.some(chunk => chunk.panel === panel.id) &&
|
|
64
64
|
<PluginPanel plugin={plugin} elementId={panel.id} designCss={designCss} brainId={brainId} />}
|
|
65
|
-
{!
|
|
66
|
-
<h2>
|
|
65
|
+
{!loading && !panel && !chunks.length && operations.length > 0 && <section aria-label="Plugin operations">
|
|
66
|
+
<h2>Quick actions</h2>
|
|
67
67
|
<ul className="plugin-home-operations">
|
|
68
68
|
{operations.slice(0, 6).map(command => <li key={command.name}>
|
|
69
69
|
<button type="button" className="btn btn-ghost" onClick={() => onCommand(command.name)}>{command.name}</button>
|
package/frontend/src/index.css
CHANGED
|
@@ -132,17 +132,15 @@ code, pre { font-family: var(--font-mono); }
|
|
|
132
132
|
inset: 0 auto 0 0;
|
|
133
133
|
width: var(--sidebar-width);
|
|
134
134
|
min-width: var(--sidebar-width);
|
|
135
|
-
background: var(--
|
|
136
|
-
|
|
137
|
-
-webkit-backdrop-filter: blur(20px) saturate(1.4);
|
|
138
|
-
border-right: 1px solid var(--glass-border);
|
|
135
|
+
background: var(--bg-secondary);
|
|
136
|
+
border-right: 1px solid var(--border);
|
|
139
137
|
display: flex;
|
|
140
138
|
flex-direction: column;
|
|
141
139
|
padding: 14px 0 12px;
|
|
142
140
|
transform: translateX(-100%);
|
|
143
141
|
transition: transform var(--transition-normal);
|
|
144
142
|
z-index: 100;
|
|
145
|
-
box-shadow: 4px 0 40px rgba(0, 0, 0, 0.
|
|
143
|
+
box-shadow: 4px 0 40px rgba(0, 0, 0, 0.45);
|
|
146
144
|
}
|
|
147
145
|
|
|
148
146
|
.sidebar-nav {
|
|
@@ -211,24 +209,56 @@ code, pre { font-family: var(--font-mono); }
|
|
|
211
209
|
flex-direction: column;
|
|
212
210
|
min-width: 0;
|
|
213
211
|
min-height: 0;
|
|
212
|
+
max-width: 100%;
|
|
213
|
+
overflow-x: hidden;
|
|
214
214
|
}
|
|
215
215
|
|
|
216
216
|
.workspace-toolbar {
|
|
217
|
-
display:
|
|
217
|
+
display: grid;
|
|
218
|
+
grid-template-columns: 1fr auto 1fr;
|
|
218
219
|
align-items: center;
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
220
|
+
gap: 8px 12px;
|
|
221
|
+
width: 100%;
|
|
222
|
+
max-width: 100%;
|
|
223
|
+
box-sizing: border-box;
|
|
224
|
+
padding: 10px clamp(12px, 3vw, 24px);
|
|
222
225
|
border-bottom: 1px solid var(--border);
|
|
223
226
|
}
|
|
224
227
|
|
|
225
228
|
.workspace-logo {
|
|
229
|
+
grid-column: 2;
|
|
230
|
+
justify-self: center;
|
|
226
231
|
border-radius: var(--radius-sm);
|
|
227
232
|
}
|
|
228
233
|
|
|
234
|
+
.workspace-toolbar-actions {
|
|
235
|
+
grid-column: 3;
|
|
236
|
+
justify-self: end;
|
|
237
|
+
display: flex;
|
|
238
|
+
align-items: center;
|
|
239
|
+
gap: 8px;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
@media (max-width: 680px) {
|
|
243
|
+
.workspace-toolbar {
|
|
244
|
+
grid-template-columns: minmax(0, 1fr);
|
|
245
|
+
justify-items: center;
|
|
246
|
+
}
|
|
247
|
+
.workspace-toolbar-spacer {
|
|
248
|
+
display: none;
|
|
249
|
+
}
|
|
250
|
+
.workspace-logo,
|
|
251
|
+
.workspace-toolbar-actions {
|
|
252
|
+
grid-column: 1;
|
|
253
|
+
justify-self: center;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
229
257
|
.workspace-body {
|
|
230
258
|
flex: 1;
|
|
259
|
+
min-width: 0;
|
|
231
260
|
min-height: 0;
|
|
261
|
+
max-width: 100%;
|
|
232
262
|
}
|
|
233
263
|
|
|
234
264
|
.workspace-body[hidden] {
|
|
@@ -399,14 +429,16 @@ code, pre { font-family: var(--font-mono); }
|
|
|
399
429
|
.drawer-shortcut-edit { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) auto; gap: 8px; }
|
|
400
430
|
.drawer-code, .drawer-context { font-family: var(--font-mono), monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
|
|
401
431
|
.drawer-code { width: 100%; resize: vertical; }
|
|
402
|
-
.drawer-html { display: block; width: 100%; height:
|
|
432
|
+
.drawer-html { display: block; width: 100%; height: 110px; border: 1px solid var(--border); border-radius: var(--radius-sm); }
|
|
403
433
|
.help-content { display: grid; gap: 10px; min-width: 0; }
|
|
404
434
|
.help-topic-picker { display: grid; gap: 4px; font-size: 13px; color: var(--text-secondary); }
|
|
405
435
|
.help-topic-description { font-size: 12px; color: var(--text-secondary); }
|
|
406
436
|
.help-article { min-width: 0; overflow-wrap: anywhere; }
|
|
407
437
|
|
|
408
438
|
@media (max-width: 540px) {
|
|
409
|
-
.app-layout { --workspace-right-width: calc(100vw - 48px); --workspace-bottom-height: min(72dvh, 600px); }
|
|
439
|
+
.app-layout { --workspace-right-width: calc(100vw - 48px); --workspace-bottom-height: min(72dvh, 600px); overflow-x: clip; }
|
|
440
|
+
.workspace-toolbar { gap: 6px 8px; padding: 6px 10px; }
|
|
441
|
+
.workspace-toolbar .btn { padding-inline: 10px; font-size: 13px; }
|
|
410
442
|
.workspace-edge-handle--right { font-size: 11px; padding-inline: 5px; }
|
|
411
443
|
.workspace-edge-handle--right[aria-expanded="true"] { font-size: 0; }
|
|
412
444
|
.drawer-shortcut-edit { grid-template-columns: minmax(0, 1fr); }
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "total-recall-brain",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.47.1",
|
|
4
4
|
"description": "The Vibe Coding Brain & Autonomous Software Factory: memory, rules, secrets, and 33 visual plugins automatically managed across all your devices.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"supertest": "^7.3.1",
|
|
22
|
-
"total-recall-brain": "3.
|
|
22
|
+
"total-recall-brain": "3.47.0",
|
|
23
23
|
"vitest": "^4.1.12"
|
|
24
24
|
}
|
|
25
25
|
},
|
|
@@ -6704,9 +6704,9 @@
|
|
|
6704
6704
|
}
|
|
6705
6705
|
},
|
|
6706
6706
|
"node_modules/total-recall-brain": {
|
|
6707
|
-
"version": "3.
|
|
6708
|
-
"resolved": "https://registry.npmjs.org/total-recall-brain/-/total-recall-brain-3.
|
|
6709
|
-
"integrity": "sha512-
|
|
6707
|
+
"version": "3.47.0",
|
|
6708
|
+
"resolved": "https://registry.npmjs.org/total-recall-brain/-/total-recall-brain-3.47.0.tgz",
|
|
6709
|
+
"integrity": "sha512-S4UIdbbTyxw7C4+rix+7oHMm/6gYkcxwNBcP6kRDySX40p5IgqVTKgHk1n8rmaKiyYFoIX/HZHlHSjNrHgn0Gw==",
|
|
6710
6710
|
"dev": true,
|
|
6711
6711
|
"license": "MIT",
|
|
6712
6712
|
"workspaces": [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tr-plugin-auth",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "White-label Total Recall auth plugin: Passkey biometric FIDO2 and Google OAuth2 authentication.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "cli.mjs",
|
|
@@ -34,7 +34,8 @@
|
|
|
34
34
|
"scripts/",
|
|
35
35
|
"!src/**/*.spec.mjs",
|
|
36
36
|
"ui/",
|
|
37
|
-
"!src/**/*.test.mjs"
|
|
37
|
+
"!src/**/*.test.mjs",
|
|
38
|
+
"skills/"
|
|
38
39
|
],
|
|
39
40
|
"publishConfig": {
|
|
40
41
|
"access": "public"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://github.com/gregiteen/total-recall/blob/main/metadata.plugin.schema.json",
|
|
3
3
|
"id": "auth",
|
|
4
4
|
"name": "Auth & Secrets",
|
|
5
|
-
"version": "1.3.
|
|
5
|
+
"version": "1.3.1",
|
|
6
6
|
"description": "Encrypted credentials, repository bindings, dashboard sign-in and access across brains and machines.",
|
|
7
7
|
"author": "Total Recall contributors",
|
|
8
8
|
"license": "MIT",
|
|
@@ -49,9 +49,17 @@
|
|
|
49
49
|
}
|
|
50
50
|
],
|
|
51
51
|
"gate": {
|
|
52
|
-
"tasks": [
|
|
52
|
+
"tasks": [
|
|
53
|
+
"Read, store or rotate a credential",
|
|
54
|
+
"Issue or revoke API keys",
|
|
55
|
+
"Passkeys, passwords and sign-in sessions",
|
|
56
|
+
"Audit where secrets are used"
|
|
57
|
+
],
|
|
53
58
|
"owned_commands": [
|
|
54
|
-
{
|
|
59
|
+
{
|
|
60
|
+
"pattern": "security\\s+find-generic-password\\b",
|
|
61
|
+
"use": "total-recall auth secret get <KEY>"
|
|
62
|
+
}
|
|
55
63
|
]
|
|
56
64
|
},
|
|
57
65
|
"cli": {
|
|
@@ -129,10 +137,20 @@
|
|
|
129
137
|
"tag": "tr-auth-home",
|
|
130
138
|
"module": "ui/home.js",
|
|
131
139
|
"description": "Credential inventory, brains, machines and sign-in checks",
|
|
132
|
-
"events": [
|
|
140
|
+
"events": [
|
|
141
|
+
"auth-inventory",
|
|
142
|
+
"auth-credential-mutate"
|
|
143
|
+
]
|
|
133
144
|
}
|
|
134
145
|
]
|
|
135
146
|
},
|
|
147
|
+
"reuse": {
|
|
148
|
+
"commands": [
|
|
149
|
+
"total-recall ssss status",
|
|
150
|
+
"total-recall decision status"
|
|
151
|
+
],
|
|
152
|
+
"owned": "Encrypted credential store, OAuth/passkey sign-in, session tokens, scoped keys, and auth secrets across Total Recall plugins."
|
|
153
|
+
},
|
|
136
154
|
"configuration": {
|
|
137
155
|
"fields": [
|
|
138
156
|
{
|
|
@@ -237,5 +255,12 @@
|
|
|
237
255
|
"distribution": {
|
|
238
256
|
"tier": "official",
|
|
239
257
|
"license": "open"
|
|
240
|
-
}
|
|
258
|
+
},
|
|
259
|
+
"skills": [
|
|
260
|
+
{
|
|
261
|
+
"id": "auth",
|
|
262
|
+
"path": "./skills/auth/SKILL.md",
|
|
263
|
+
"description": "Encrypted credentials, repository bindings, dashboard sign-in and access across brains and machines."
|
|
264
|
+
}
|
|
265
|
+
]
|
|
241
266
|
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: auth
|
|
3
|
+
description: "Encrypted credentials, repository bindings, dashboard sign-in and access across brains and machines."
|
|
4
|
+
version: 1.3.0
|
|
5
|
+
repo_scoped: false
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Auth & Secrets
|
|
9
|
+
|
|
10
|
+
Encrypted credentials, repository bindings, dashboard sign-in and access across brains and machines.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
Use the `auth` Total Recall plugin (`total-recall auth`) instead of ad-hoc scripts or raw commands whenever working on auth & secrets tasks.
|
|
15
|
+
|
|
16
|
+
## Commands
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
total-recall auth --help
|
|
20
|
+
total-recall auth status # Display auth system status and active providers
|
|
21
|
+
total-recall auth audit # Audit permissions, session secrets, and credential integrity
|
|
22
|
+
total-recall auth rotate # Generate and securely rotate SESSION_SECRET in store
|
|
23
|
+
total-recall auth passkey # Manage FIDO2 WebAuthn passkeys
|
|
24
|
+
total-recall auth google # Google OAuth status, connect, accounts, refresh and verified disconnect
|
|
25
|
+
total-recall auth probe # Run HTTP 200 health verification probe
|
|
26
|
+
total-recall auth session # Inspect active session tokens
|
|
27
|
+
total-recall auth agent # Sign in an agent CLI that authenticates on its own terminal
|
|
28
|
+
total-recall auth secret # Manage and inspect auth secrets in the Total Recall store
|
|
29
|
+
total-recall auth password # Set dashboard password through encrypted auth store: set --stdin [--force-reset]
|
|
30
|
+
total-recall auth key # Issue, list, revoke and audit scoped tokens; inspect and update role policy
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Owned Raw Commands
|
|
34
|
+
|
|
35
|
+
This plugin owns: `security\s+find-generic-password\b`.
|