@brunobracaioli/aibrain 0.2.0-beta.1 → 0.3.0-beta.14
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/README.md +78 -4
- package/dist/assets/claude/.claude-plugin/plugin.json +49 -1
- package/dist/assets/claude/hooks/context-compaction.ts +6062 -734
- package/dist/assets/claude/hooks/native-host-contract-runtime.ts +18 -0
- package/dist/assets/claude/hooks/native-host-contract.test.ts +42 -0
- package/dist/assets/claude/hooks/provider-window.js +263 -0
- package/dist/assets/claude/hooks/state-fitting.d.mts +47 -0
- package/dist/assets/claude/hooks/state-fitting.mjs +324 -0
- package/dist/assets/codex-context-compaction.mjs +2690 -266
- package/dist/assets/context-selection-fitting.mjs +194 -0
- package/dist/assets/context-state-fitting.mjs +324 -0
- package/dist/assets/context-telemetry-reporter.mjs +305 -0
- package/dist/assets/jev-paid-pilot-terminal.mjs +764 -123
- package/dist/claude-checkpoint.mjs +1338 -0
- package/dist/claude-compatibility.mjs +506 -0
- package/dist/claude-observation.mjs +1336 -0
- package/dist/cli.mjs +256 -30
- package/dist/codex-compatibility.mjs +467 -0
- package/dist/codex-diagnostics.mjs +426 -0
- package/dist/codex-permissions.mjs +590 -0
- package/dist/codex-protocol-fingerprint.json +131 -0
- package/dist/context-telemetry.mjs +257 -0
- package/dist/launch.mjs +352 -26
- package/dist/mcp.mjs +329 -7
- package/dist/monitor.mjs +11 -0
- package/dist/package.json +1 -1
- package/dist/platform.mjs +34 -3
- package/dist/state.mjs +107 -4
- package/dist/telemetry-report.mjs +133 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,9 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
Assisted AI Brain context beta client for Linux/WSL with Node.js 22 or newer.
|
|
4
4
|
|
|
5
|
-
The reviewed native compatibility set is Claude Code 2.1.294, 2.1.295,
|
|
6
|
-
2.1.
|
|
7
|
-
|
|
5
|
+
The reviewed native compatibility set is Claude Code 2.1.294, 2.1.295, 2.1.296,
|
|
6
|
+
2.1.299, 2.1.300, 2.1.301, 2.1.302 or 2.1.303, and Codex CLI 0.161.0,
|
|
7
|
+
0.162.0, 0.162.1 or 0.163.0. A newer stable Codex 0.x release may continue only
|
|
8
|
+
after its locally generated experimental protocol schemas and transport flags
|
|
9
|
+
match the bundled adapter contract; prereleases, older releases and new majors
|
|
10
|
+
remain rejected. Starting with beta14, newer stable Claude 2.1 patches can
|
|
11
|
+
continue after isolated strict plugin validation, required hook/API checks and
|
|
12
|
+
an enabled-hook test in the native offline runner. Doctor distinguishes
|
|
13
|
+
`host_checked` from `qualified`; this check does not establish full behavioral
|
|
14
|
+
equivalence with a tested native release. Unknown older patches, prereleases
|
|
15
|
+
and other major/minor families remain rejected. No credentials, conversations,
|
|
16
|
+
model requests or JEV calls are used by these compatibility probes.
|
|
17
|
+
|
|
18
|
+
The Codex terminal bridge permits the native session picker's separate read-only
|
|
19
|
+
connection while keeping the primary conversation and monitor intact. A picker
|
|
20
|
+
cannot compact, start a turn, inject history or take ownership of the primary
|
|
21
|
+
connection. Its failure or timeout closes only that auxiliary connection.
|
|
8
22
|
|
|
9
23
|
```sh
|
|
10
24
|
# Install the published beta:
|
|
@@ -36,7 +50,7 @@ For users of an earlier unscoped review tarball, close its client sessions,
|
|
|
36
50
|
run `npm uninstall -g aibrain`, and install this scoped package. Local
|
|
37
51
|
`~/.aibrain` state, notes, and checkpoints are retained.
|
|
38
52
|
|
|
39
|
-
This `0.
|
|
53
|
+
This `0.3` client adds configurable context profiles. A fresh
|
|
40
54
|
setup defaults to `upstream`: 60% trigger, 0.5 keep threshold, six recent items
|
|
41
55
|
protected, and broader completed text-tool eligibility in Claude. Existing
|
|
42
56
|
schema1 configurations keep their previous behavior. After a reviewed v2 backend
|
|
@@ -54,5 +68,65 @@ text; they do not claim that a live session is being monitored. Codex keeps nati
|
|
|
54
68
|
compaction and recovery notes in the same thread. The backend checks paid access
|
|
55
69
|
and unchanged shared quotas before any JEV request.
|
|
56
70
|
|
|
71
|
+
The `0.3.0-beta.14` Claude launcher uses the durable context strategy and
|
|
72
|
+
records bounded recovery reasons when native summary proof cannot be confirmed:
|
|
73
|
+
JEV selects compatible historical tool evidence, bounded private notes retain
|
|
74
|
+
the selected text, and Claude core summarizes the reduced input. The next
|
|
75
|
+
prompt restores those notes in the same session after verifying native state.
|
|
76
|
+
The final native context contains a summary; this is not summary-free transcript
|
|
77
|
+
replacement. Direct hook-owned history replacement remains experimental because
|
|
78
|
+
resume can replay older content in affected Claude versions.
|
|
79
|
+
|
|
80
|
+
The notes preserve only the selected retained text that fits the local bound;
|
|
81
|
+
oversized entries are omitted as whole entries and counted. The separate full
|
|
82
|
+
checkpoint has its own retention. Neither path guarantees perfect preservation
|
|
83
|
+
of every internal host field. Shadow prefiltering continues to observe without
|
|
84
|
+
changing tool results. Native qualification and publication evidence is tracked
|
|
85
|
+
in the [release record](https://github.com/brunobracaioli/mcp-ai-brain/blob/main/docs/reference/claude-durable-context-2026-10-14.md).
|
|
86
|
+
|
|
87
|
+
The launcher grants the native clients the provider-free `brain_context_budget`
|
|
88
|
+
read alongside the existing context tools. It is a short-lived advisory snapshot,
|
|
89
|
+
not a billing meter, reservation, or provider authorization; atomic admission
|
|
90
|
+
remains authoritative.
|
|
91
|
+
|
|
92
|
+
Codex diagnostics are kept in the launched adapter's private state directory.
|
|
93
|
+
`aibrain diagnostics --client codex --json` shows only bounded stages, closed
|
|
94
|
+
reasons, pseudonymous session identifiers, client versions, and small numeric
|
|
95
|
+
counters. Prompts, notes, paths, credentials, raw errors, and app-server stdout
|
|
96
|
+
are excluded.
|
|
97
|
+
|
|
98
|
+
Beta12 reads large Codex histories in bounded pages and keeps their complete
|
|
99
|
+
contents in verified private capture segments. It checks history again before
|
|
100
|
+
selection and before native compaction; notes and recovery stay in the same
|
|
101
|
+
thread. Older captures remain readable. A single turn exceeding 8 MiB, a capture
|
|
102
|
+
exceeding the bounded page/item/128 MiB limits, or exhausted private storage is
|
|
103
|
+
reported explicitly. Such a failure does not authorize discarding protected
|
|
104
|
+
history or retrying a paid operation. The private capture directory remains
|
|
105
|
+
bounded to 256 MiB and 128 managed files, with current recovery references
|
|
106
|
+
protected from cleanup.
|
|
107
|
+
|
|
108
|
+
Claude plan diagnostics distinguish response parsing, identity, expiry and
|
|
109
|
+
history changes. A text JSON plan can use the same 256 KiB limit as structured
|
|
110
|
+
plans; smaller budget/error envelopes retain their separate limits. These local
|
|
111
|
+
diagnostics contain format names and numeric sizes, never plan contents.
|
|
112
|
+
|
|
113
|
+
Context dashboard telemetry is disabled for fresh and existing configurations.
|
|
114
|
+
Enable it only after reviewing the extended disclosure:
|
|
115
|
+
|
|
116
|
+
```sh
|
|
117
|
+
aibrain setup --client both --telemetry on --accept-disclosure
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Omit `--telemetry` to preserve the stored choice, or use `--telemetry off` to stop
|
|
121
|
+
future-launch reports. Settings are captured when a client starts, so close and
|
|
122
|
+
restart currently monitored sessions after opting out to stop their reporting.
|
|
123
|
+
Enabled reports use the existing authenticated MCP transport and
|
|
124
|
+
contain only a hashed native session key, random lifecycle identifiers, native
|
|
125
|
+
client version, phase, timestamps, numeric counts, and allowed measurements or
|
|
126
|
+
reasons. Prompts, notes, paths, tool names, credentials, and raw errors are not
|
|
127
|
+
reported. The dashboard shows a 30-day visible window; physical cleanup runs on
|
|
128
|
+
the next successful daily cleanup. Delivery failure never fails or triggers a
|
|
129
|
+
context operation.
|
|
130
|
+
|
|
57
131
|
Read the [canonical subscriber beta guide](https://github.com/brunobracaioli/mcp-ai-brain/blob/main/docs/how-to/aibrain-subscriber-beta.md)
|
|
58
132
|
for setup, support, disclosure, limits, and disable procedures.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-brain-context-compaction",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0-beta.14",
|
|
4
4
|
"author": { "name": "AISAC" },
|
|
5
5
|
"description": "AI Brain paid-plan context monitoring with conservative Claude compaction fallback.",
|
|
6
6
|
"hooks": "./hooks/hooks.json",
|
|
@@ -89,11 +89,59 @@
|
|
|
89
89
|
"description": "preserve_internal keeps handled messages intact. upstream_compatible rebuilds selected handled read messages from exposed fields and may lose hidden engine metadata.",
|
|
90
90
|
"default": "preserve_internal"
|
|
91
91
|
},
|
|
92
|
+
"compactionStrategy": {
|
|
93
|
+
"type": "string",
|
|
94
|
+
"title": "Compaction strategy",
|
|
95
|
+
"description": "direct_experimental returns a hook-owned transcript; native_summary_notes delegates the final summary to Claude core and keeps selected evidence in private notes.",
|
|
96
|
+
"default": "direct_experimental"
|
|
97
|
+
},
|
|
92
98
|
"diagnosticMode": {
|
|
93
99
|
"type": "boolean",
|
|
94
100
|
"title": "Emit runtime diagnostics",
|
|
95
101
|
"description": "Opt-in content-free hook entry diagnostics for local pilot verification.",
|
|
96
102
|
"default": false
|
|
103
|
+
},
|
|
104
|
+
"telemetryEnabled": {
|
|
105
|
+
"type": "boolean",
|
|
106
|
+
"title": "Enable context dashboard telemetry",
|
|
107
|
+
"description": "Opt-in operational telemetry for the authenticated Contexto dashboard. The launcher enables this only after the extended AI Brain disclosure.",
|
|
108
|
+
"default": false
|
|
109
|
+
},
|
|
110
|
+
"telemetryDisclosed": {
|
|
111
|
+
"type": "boolean",
|
|
112
|
+
"title": "Context telemetry disclosure acknowledged",
|
|
113
|
+
"description": "Permit content-free lifecycle reports containing a hashed session key, bounded measurements, counts, phases and reasons.",
|
|
114
|
+
"default": false
|
|
115
|
+
},
|
|
116
|
+
"telemetryClientVersion": {
|
|
117
|
+
"type": "string",
|
|
118
|
+
"title": "Native Claude version",
|
|
119
|
+
"description": "Launcher-provided native semver used to label telemetry; empty values keep telemetry inactive.",
|
|
120
|
+
"default": ""
|
|
121
|
+
},
|
|
122
|
+
"telemetryNodePath": {
|
|
123
|
+
"type": "string",
|
|
124
|
+
"title": "Owned telemetry Node path",
|
|
125
|
+
"description": "Launcher-provided absolute Node executable path for the report helper.",
|
|
126
|
+
"default": ""
|
|
127
|
+
},
|
|
128
|
+
"telemetryHelperPath": {
|
|
129
|
+
"type": "string",
|
|
130
|
+
"title": "Owned telemetry helper path",
|
|
131
|
+
"description": "Launcher-provided absolute report-only helper path.",
|
|
132
|
+
"default": ""
|
|
133
|
+
},
|
|
134
|
+
"telemetryStateDir": {
|
|
135
|
+
"type": "string",
|
|
136
|
+
"title": "Owned telemetry state path",
|
|
137
|
+
"description": "Launcher-provided private aibrain state directory for the helper.",
|
|
138
|
+
"default": ""
|
|
139
|
+
},
|
|
140
|
+
"telemetryConfigDigest": {
|
|
141
|
+
"type": "string",
|
|
142
|
+
"title": "Owned telemetry configuration binding",
|
|
143
|
+
"description": "Launcher-provided binding for the private endpoint, token and disclosure state.",
|
|
144
|
+
"default": ""
|
|
97
145
|
}
|
|
98
146
|
}
|
|
99
147
|
}
|