@ornexus/neocortex 4.60.74 → 4.60.75

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 (55) hide show
  1. package/dist/release-source.json +1 -1
  2. package/install.ps1 +1 -1
  3. package/install.sh +1 -1
  4. package/package.json +2 -2
  5. package/packages/client/dist/cache/encrypted-cache.d.ts +27 -0
  6. package/packages/client/dist/cache/encrypted-cache.js +1 -1
  7. package/packages/client/dist/commands/invoke.d.ts +38 -1
  8. package/packages/client/dist/commands/invoke.js +79 -79
  9. package/packages/client/dist/config/host-auth-broker.d.ts +31 -0
  10. package/packages/client/dist/config/host-auth-broker.js +1 -0
  11. package/packages/client/dist/config/host-auth-reference.d.ts +32 -0
  12. package/packages/client/dist/config/host-auth-reference.js +1 -0
  13. package/packages/client/dist/config/secure-config.js +1 -1
  14. package/packages/client/dist/continuity/native-agent-types.d.ts +11 -0
  15. package/packages/client/dist/continuity/native-agent-types.js +1 -1
  16. package/packages/client/dist/errors/error-messages.d.ts +3 -0
  17. package/packages/client/dist/errors/error-messages.js +2 -2
  18. package/packages/client/dist/git/direct-yolo-checkpoint.d.ts +11 -1
  19. package/packages/client/dist/git/direct-yolo-checkpoint.js +4 -4
  20. package/packages/client/dist/index.d.ts +2 -0
  21. package/packages/client/dist/index.js +1 -1
  22. package/packages/client/dist/license/host-auth-recovery.d.ts +158 -0
  23. package/packages/client/dist/license/host-auth-recovery.js +1 -0
  24. package/packages/client/dist/license/license-client.d.ts +10 -1
  25. package/packages/client/dist/license/license-client.js +1 -1
  26. package/packages/client/dist/runner/epic-background-dispatcher.d.ts +61 -0
  27. package/packages/client/dist/runner/epic-background-dispatcher.js +1 -0
  28. package/packages/client/dist/runner/headless/background-root.d.ts +65 -0
  29. package/packages/client/dist/runner/headless/background-root.js +1 -0
  30. package/packages/client/dist/runner/headless/epic-terminal-git-runner.d.ts +9 -0
  31. package/packages/client/dist/runner/headless/epic-terminal-git-runner.js +2 -2
  32. package/packages/client/dist/runner/headless/managed-environment-cleanup.d.ts +95 -0
  33. package/packages/client/dist/runner/headless/managed-environment-cleanup.js +1 -0
  34. package/packages/client/dist/state/project-state-snapshot.d.ts +7 -0
  35. package/packages/client/dist/state/project-state-snapshot.js +1 -1
  36. package/packages/client/dist/yolo/change-evidence-collector.d.ts +21 -1
  37. package/packages/client/dist/yolo/change-evidence-collector.js +1 -1
  38. package/packages/shared/dist/invocation/explicit-intent-recovery.d.ts +83 -0
  39. package/packages/shared/dist/invocation/explicit-intent-recovery.js +187 -0
  40. package/packages/shared/dist/invocation/index.d.ts +7 -0
  41. package/packages/shared/dist/invocation/index.js +22 -0
  42. package/targets-stubs/antigravity/gemini.md +1 -1
  43. package/targets-stubs/antigravity/skill/SKILL.md +1 -1
  44. package/targets-stubs/claude-code/neocortex-root.agent.yaml +1 -1
  45. package/targets-stubs/claude-code/neocortex-root.md +2 -2
  46. package/targets-stubs/claude-code/neocortex.agent.yaml +1 -1
  47. package/targets-stubs/claude-code/neocortex.md +2 -2
  48. package/targets-stubs/codex/AGENTS.md +24 -21
  49. package/targets-stubs/codex/README.md +6 -1
  50. package/targets-stubs/codex/neocortex.toml +7 -2
  51. package/targets-stubs/cursor/agent.md +2 -2
  52. package/targets-stubs/gemini-cli/agent.md +2 -2
  53. package/targets-stubs/opencode/neocortex-root.md +16 -1
  54. package/targets-stubs/opencode/neocortex.md +6 -0
  55. package/targets-stubs/vscode/neocortex.agent.md +2 -2
@@ -10,6 +10,7 @@ import { COMMAND_REGISTRY_CHECKSUM, COMMAND_REGISTRY_VERSION, GENERATED_SHARED_C
10
10
  import { GENERATED_INVOCATION_SCHEMA_MANIFEST, GENERATED_INVOCATION_SCHEMAS, } from '../generated/invocation-schema.generated.js';
11
11
  import { canonicalizeCommandRegistryJcs } from '../command-registry-contract.js';
12
12
  import { CONTINUITY_GOAL_OPERATION_IDS } from '../continuity/goal-operation-authority.js';
13
+ import { recoverExplicitIntentWithAuthority, } from './explicit-intent-recovery.js';
13
14
  export * from './input-envelope.js';
14
15
  export * from './project-identity-migration.js';
15
16
  export * from './state-projection.js';
@@ -17,6 +18,7 @@ export * from './strict-effect-receipt.js';
17
18
  export * from './public-diagnostics.js';
18
19
  export * from './recovery-route-compiler.js';
19
20
  export * from './executable-policy-recovery.js';
21
+ export * from './explicit-intent-recovery.js';
20
22
  export const EXACT_INVOCATION_POLICY = 'p205-exact-invocation-v1';
21
23
  export const INVOCATION_SCHEMA_VERSION = 'p205-invocation-schema-v1';
22
24
  export const INVOCATION_LIMITS = Object.freeze({
@@ -598,6 +600,26 @@ export function admitInvocation(input, options = {}) {
598
600
  return reject('invalid_arguments', uiUxReview, lexed.tokens.length, bytes);
599
601
  return resolved(command, operation.operationId, parsed, uiUxReview, lexed.tokens.length, bytes);
600
602
  }
603
+ /**
604
+ * P224.02 public exact-first recovery facade. It reuses this module's single
605
+ * registry, schema, lexer and admission authority instead of duplicating policy.
606
+ */
607
+ export function recoverExplicitInvocation(input, options = {}) {
608
+ const exactAdmission = admitInvocation(input, options);
609
+ const lexed = lexInvocationEnvelope(input);
610
+ return recoverExplicitIntentWithAuthority({
611
+ input,
612
+ exactAdmission,
613
+ tokens: lexed.ok ? lexed.tokens : null,
614
+ commands: commands.map((command) => ({
615
+ id: command.id,
616
+ aliases: command.aliases,
617
+ number: command.number,
618
+ })),
619
+ schemas: invocationSchemas,
620
+ admitCanonical: (candidate) => admitInvocation(candidate, options),
621
+ });
622
+ }
601
623
  function resolved(command, operationId, parsed, uiUxReview, tokenCount, bytes) {
602
624
  const selection = freeze({
603
625
  commandId: command.id,
@@ -1,4 +1,4 @@
1
- # 🧠 Neocortex v4.60.74 | OrNexus Team
1
+ # 🧠 Neocortex v4.60.75 | OrNexus Team
2
2
 
3
3
  This project uses Neocortex, a Development Orchestrator.
4
4
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: neocortex
3
- description: "🧠 Neocortex v4.60.74 | OrNexus Team"
3
+ description: "🧠 Neocortex v4.60.75 | OrNexus Team"
4
4
  ---
5
5
 
6
6
  <!--
@@ -4,7 +4,7 @@ agent:
4
4
  name: 'Neocortex Root Agent'
5
5
  title: 'Development Orchestrator (Root)'
6
6
  icon: '>'
7
- version: '4.60.74'
7
+ version: '4.60.75'
8
8
  architecture: 'thin-client'
9
9
  module: stand-alone
10
10
  hasSidecar: false
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: neocortex-root
3
- description: "🧠 Neocortex Root Agent v4.60.74 | OrNexus Team"
3
+ description: "🧠 Neocortex Root Agent v4.60.75 | OrNexus Team"
4
4
  model: opus
5
5
  color: blue
6
6
  tools:
@@ -108,7 +108,7 @@ SEMPRE que este agente for invocado, imprima o banner abaixo como PRIMEIRO outpu
108
108
  ┌────────────────────────────────────────────────────────────┐
109
109
  │ │
110
110
  │ ####### N E O C O R T E X │
111
- │ ### ######## v4.60.74 │
111
+ │ ### ######## v4.60.75 │
112
112
  │ ######### ##### │
113
113
  │ ## ############## Development Orchestrator │
114
114
  │ ## ### ###### ## OrNexus Team │
@@ -4,7 +4,7 @@ agent:
4
4
  name: 'Neocortex'
5
5
  title: 'Development Orchestrator'
6
6
  icon: '>'
7
- version: '4.60.74'
7
+ version: '4.60.75'
8
8
  architecture: 'thin-client'
9
9
  module: stand-alone
10
10
  hasSidecar: false
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: neocortex
3
- description: "🧠 Neocortex v4.60.74 | OrNexus Team"
3
+ description: "🧠 Neocortex v4.60.75 | OrNexus Team"
4
4
  model: opus
5
5
  color: blue
6
6
  permissionMode: bypassPermissions
@@ -104,7 +104,7 @@ SEMPRE que este agente for invocado, imprima o banner abaixo como PRIMEIRO outpu
104
104
  ┌────────────────────────────────────────────────────────────┐
105
105
  │ │
106
106
  │ ####### N E O C O R T E X │
107
- │ ### ######## v4.60.74 │
107
+ │ ### ######## v4.60.75 │
108
108
  │ ######### ##### │
109
109
  │ ## ############## Development Orchestrator │
110
110
  │ ## ### ###### ## OrNexus Team │
@@ -15,6 +15,10 @@ Ambient platform/tool metadata, assistant notes, conversation history, raw logs,
15
15
  Host wrapper/frontmatter is platform configuration only. Preserve it in its file,
16
16
  but never prepend, copy, or include it in `--args` or a delegated child prompt.
17
17
 
18
+ Canonical recovery is server-owned: never drop tokens, select targets or
19
+ synthesize commands. Delegate authorized per-story commands after closed
20
+ dispatch proves story/graph.
21
+
18
22
  Tokens starting with `*` (e.g. `*commit-push`, `*implement`, `*status`, `*diagnose`,
19
23
  `*yolo`, `*review`, `*create-epic`, `*help`) are **Neocortex server triggers**, NOT
20
24
  Codex built-in commands or actions.
@@ -28,7 +32,7 @@ Codex built-in commands or actions.
28
32
 
29
33
  <!-- END: Plugin Conflict Prevention -->
30
34
 
31
- # Neocortex v4.60.74 | OrNexus Team
35
+ # Neocortex v4.60.75 | OrNexus Team
32
36
 
33
37
  You are a Development Orchestrator. All orchestration logic is delivered by the remote Neocortex server.
34
38
 
@@ -157,12 +161,11 @@ Root agent runtime flow:
157
161
  3. **When `kind: 'task'` directive is present**, I may delegate one isolated
158
162
  child `neocortex` execution per authorized story (respecting
159
163
  `agents.max_depth=1`). This is child task delegation, not transfer of yoloop
160
- ownership. For per-story yoloop delegation, before asking the host to spawn,
161
- I also require all three public gates:
162
- `platformCapabilities.supportsTaskDelegation === true`,
163
- `taskDelegationCapability === 'native_safe'`, and a closed
164
- `dispatchBinding` for the same story and current graph revision. A legacy or
165
- mismatched directive remains inline; local host capability never elevates it.
164
+ ownership. Before native spawn I require `supportsTaskDelegation === true`,
165
+ `taskDelegationCapability === 'native_safe'`, and a closed same-story/current-
166
+ revision `dispatchBinding`. Background waves also require the exact
167
+ `native-background-dispatch-v1` envelope and a story/prompt/binding bijection.
168
+ Missing or mismatched data stays inline; local host capability never elevates it.
166
169
  4. **When NO `kind: 'task'` directive is present** (only `kind: 'skill'`), I do
167
170
  NOT create a child execution. I use `/loop` inline or the shell-loop fallback
168
171
  documented below to keep ownership in this root.
@@ -187,11 +190,15 @@ operator remediation according to the server response.
187
190
 
188
191
  ### Native child observation
189
192
 
190
- For an authorized graph-bound per-story task, the root reserves before spawn.
191
- It passes only public gate fields, binding and host attestation to
192
- `neocortex-client native-agent reserve --project-root ...` as bounded stdin JSON.
193
- `action=spawn-once` authorizes one spawn. `action=reconcile-existing` forbids a
194
- replacement: enumerate or wait on the host tree and reconcile that agent first.
193
+ For an authorized graph-bound task, reserve through
194
+ `neocortex-client native-agent reserve` using bounded stdin with only public
195
+ gates, binding and attestation.
196
+ `spawn-once` permits one spawn; `reconcile-existing` forbids replacement and
197
+ requires host reconciliation first.
198
+
199
+ For an authorized background wave, reserve all bindings and launch all
200
+ `spawn-once` entries before settlement. The first admissible terminal may return
201
+ while siblings run; only the root integrates results or continues yoloop.
195
202
 
196
203
  The host runtime remains the only liveness authority. After a real host event,
197
204
  list or bounded wait result, the root records the transition with
@@ -200,13 +207,11 @@ The client accepts the raw host identifier only on stdin, converts it to an
200
207
  opaque `agt_` digest locally and never prints or persists the raw identifier.
201
208
  Do not place raw handles in commentary, prompts, tracked state or server args.
202
209
 
203
- Use the lifecycle `requested -> spawned -> running -> completed|failed|interrupted`.
204
- An unavailable event stream or exhausted bounded polling budget becomes
205
- `unknown`, never `running`. A fresh authoritative host listing that omits a
206
- previously observed child becomes `lost`; neither state authorizes an automatic
207
- replacement. Query `neocortex-client native-agent status --dispatch-key ...`
208
- to resume after restart or compaction. Prefer host events, otherwise use at most
209
- 30 cancelable polls with one poll in flight per dispatch key.
210
+ Use `requested -> spawned -> running -> completed|failed|interrupted`. Missing
211
+ events or exhausted polls become `unknown`; a fresh host listing that omits an
212
+ observed child becomes `lost`. Neither permits automatic replacement. Resume via
213
+ `native-agent status --dispatch-key ...`; otherwise allow at most 30 cancelable polls,
214
+ sequentially, per dispatch key.
210
215
 
211
216
  Tell the user only when the lifecycle state changes, a stale/unknown heartbeat
212
217
  becomes relevant, a terminal result arrives, or user action is required.
@@ -218,8 +223,6 @@ distinct topologies; none promises a sidebar entry.
218
223
  For `*arch-plan`, the root consumes `metadata.archPlan.execution` as the sole
219
224
  continuation authority. When its state or next action is `ask-user`, I ask only
220
225
  the sanitized listed question IDs and do not launch a task. After explicit
221
- answers, I resume and, when authorized, redelegate the same current stage.
222
-
223
226
  A child stage return never means that the architecture pipeline is complete and
224
227
  never selects the successor. I advance only when the root envelope accepts both
225
228
  completion and validation evidence for the current stage. Terminal `complete`
@@ -33,13 +33,18 @@ neocortex activate YOUR-LICENSE-KEY # Get yours at https://neocortex.sh/portal/
33
33
  Codex may run it in the custom subagent installed at
34
34
  `$CODEX_HOME/agents/neocortex.toml` and, for project installs,
35
35
  `.codex/agents/neocortex.toml`
36
+ 5. Native background waves require the exact versioned background envelope,
37
+ native-safe host gates and graph-bound per-story bindings; the root reserves
38
+ and launches the authorized frontier before awaiting first settlement
36
39
 
37
40
  `AGENTS.md` remains the automatic root interceptor and owns explicit `*`
38
41
  invocations. The native `neocortex.toml` profile also accepts a direct
39
42
  `@neocortex` natural-language request: it maps only to a public registered
40
43
  command, validates the command shape, and asks before acting when intent is
41
44
  ambiguous or required values are missing. A bare `@neocortex` opens `*menu`.
42
- Outer `*yoloop` ownership always remains with the root agent.
45
+ Outer `*yoloop` ownership always remains with the root agent. Headless
46
+ subprocess overlap and synthetic fixtures remain distinct evidence and do not
47
+ qualify a native-agent host.
43
48
 
44
49
  The installer does not raise Codex `[agents] max_threads` or `max_depth` by
45
50
  default. Users can tune those settings in `$CODEX_HOME/config.toml` when their
@@ -34,6 +34,11 @@ Host wrapper/frontmatter is platform configuration only. Never prepend, copy, or
34
34
  include it in `{DELEGATED_PROMPT}`; the delegated payload must remain one canonical
35
35
  per-story command such as `*yolo @docs/stories/<id>.story.md`.
36
36
 
37
+ Exact admission and bounded canonical recovery remain server-owned. This child
38
+ must not remove prose, select a target, or repair an outer command. Delegated-task
39
+ mode is valid only for the already-authorized per-story prompt bound to the same
40
+ story and graph by the root's closed dispatch evidence.
41
+
37
42
  neocortex-client invoke \
38
43
  --args "{DELEGATED_PROMPT}" \
39
44
  --project-root "$(git rev-parse --show-toplevel 2>/dev/null || pwd -P)" \
@@ -102,6 +107,6 @@ when native task delegation is unavailable.
102
107
  Native child reservation, host-handle observation, status polling and yoloop
103
108
  continuation are root-only responsibilities. This child must never invoke the
104
109
  `native-agent` bridge, enumerate or spawn another agent, persist a host handle,
105
- or infer liveness from silence. It returns only its terminal per-story result to
106
- the root.
110
+ consume the background envelope, await siblings, integrate results, or infer
111
+ liveness from silence. It returns only its terminal per-story result to the root.
107
112
  """
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: neocortex
3
- description: "🧠 Neocortex v4.60.74 | OrNexus Team"
3
+ description: "🧠 Neocortex v4.60.75 | OrNexus Team"
4
4
  model: inherit
5
5
  readonly: false
6
6
  is_background: false
@@ -64,7 +64,7 @@ SEMPRE que este agente for invocado, imprima o banner abaixo como PRIMEIRO outpu
64
64
  ┌────────────────────────────────────────────────────────────┐
65
65
  │ │
66
66
  │ ####### N E O C O R T E X │
67
- │ ### ######## v4.60.74 │
67
+ │ ### ######## v4.60.75 │
68
68
  │ ######### ##### │
69
69
  │ ## ############## Development Orchestrator │
70
70
  │ ## ### ###### ## OrNexus Team │
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: neocortex-root
3
- description: "🧠 Neocortex v4.60.74 | OrNexus Team"
3
+ description: "🧠 Neocortex v4.60.75 | OrNexus Team"
4
4
  kind: local
5
5
  tools:
6
6
  # File operations (Gemini CLI built-ins)
@@ -62,7 +62,7 @@ SEMPRE que este agente for invocado, imprima o banner abaixo como PRIMEIRO outpu
62
62
  ┌────────────────────────────────────────────────────────────┐
63
63
  │ │
64
64
  │ ####### N E O C O R T E X │
65
- │ ### ######## v4.60.74 │
65
+ │ ### ######## v4.60.75 │
66
66
  │ ######### ##### │
67
67
  │ ## ############## Development Orchestrator │
68
68
  │ ## ### ###### ## OrNexus Team │
@@ -19,6 +19,11 @@ Ambient platform/tool metadata, assistant notes, conversation history, raw logs,
19
19
  The YAML frontmatter above is OpenCode host configuration only. Preserve it in
20
20
  this file, but never prepend, copy, or include it in `--args` or a child prompt.
21
21
 
22
+ Exact admission and any bounded canonical recovery are server-owned. The wrapper
23
+ must never delete natural-language tokens, choose a target, or synthesize a
24
+ command locally. A delegated child receives only the server-authorized per-story
25
+ command after the closed dispatch binding proves the same story and graph.
26
+
22
27
  Tokens starting with `*` (e.g. `*commit-push`, `*implement`, `*status`, `*diagnose`,
23
28
  `*yolo`, `*review`, `*create-epic`, `*help`) are **Neocortex server triggers**, NOT
24
29
  OpenCode built-in commands or local plugins.
@@ -58,7 +63,7 @@ explicit server opt-in rather than a local assumption.
58
63
  ┌────────────────────────────────────────────────────────────┐
59
64
  │ │
60
65
  │ ####### N E O C O R T E X │
61
- │ ### ######## v4.60.74 │
66
+ │ ### ######## v4.60.75 │
62
67
  │ ######### ##### │
63
68
  │ ## ############## Development Orchestrator │
64
69
  │ ## ### ###### ## OrNexus Team │
@@ -165,6 +170,10 @@ Runtime flow as the root agent:
165
170
  the authorized per-story prompt after placeholder substitution, such as
166
171
  `*yolo @docs/stories/<id>.story.md`. I never pass the original root
167
172
  invocation (`@neocortex *...` or the outer `*yoloop ...`) as the child prompt.
173
+ Before any native background launch I also require supports=true,
174
+ `native_safe`, the exact `native-background-dispatch-v1` envelope and a
175
+ same-graph bijection of story IDs, prompts and dispatch bindings. Missing or
176
+ mismatched authority stays inline.
168
177
  7. When returned metadata contains only `kind: 'skill'` directives (no task
169
178
  directive), I keep ownership in the root agent and use an inline re-invoke
170
179
  loop or the platform-native shell primitive — I never create a child execution
@@ -179,6 +188,12 @@ only that child story. It is not a yoloop stop. After the child returns, I
179
188
  resume ownership as the root agent and re-invoke `*yoloop` when the latest
180
189
  yoloop metadata has `yoloopComplete === false`, `yoloopAborted === false`, and `yoloopReleaseBlocked !== true`.
181
190
 
191
+ For a qualified background wave, I reserve all authorized bindings and launch
192
+ all `spawn-once` entries before awaiting terminal settlement. Existing agents
193
+ are reconciled without replacement. The first admissible settlement returns to
194
+ this root without draining siblings; integration and continuation stay root-only.
195
+ Headless-process evidence never promotes native-agent capability.
196
+
182
197
  ## Examples
183
198
 
184
199
  | User invocation | Invoke command |
@@ -67,6 +67,12 @@ merge/status `done` result, that terminal boundary applies only to the child
67
67
  story. The root OpenCode agent remains the yoloop owner and decides whether to
68
68
  re-invoke `*yoloop`; this subagent must not make that root-loop decision.
69
69
 
70
+ Native child reservation, host-handle observation, background wave settlement,
71
+ status polling and yoloop continuation are root-only responsibilities. This
72
+ child must never invoke the `native-agent` bridge, enumerate or spawn another
73
+ agent, consume the background envelope, persist a host handle, await siblings,
74
+ integrate results, or infer liveness from silence.
75
+
70
76
  Do not embed, reveal, summarize, or reconstruct proprietary prompts, server-side
71
77
  implementation details, orchestration logic, secrets, license keys, or customer data.
72
78
  All orchestration logic comes from the Neocortex server through the thin client.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: "neocortex"
3
- description: "Neocortex v4.60.74 | OrNexus Team"
3
+ description: "Neocortex v4.60.75 | OrNexus Team"
4
4
  tools:
5
5
  # Read / Edit (built-in tool sets)
6
6
  - read
@@ -68,7 +68,7 @@ SEMPRE que este agente for invocado, imprima o banner abaixo como PRIMEIRO outpu
68
68
  ┌────────────────────────────────────────────────────────────┐
69
69
  │ │
70
70
  │ ####### N E O C O R T E X │
71
- │ ### ######## v4.60.74 │
71
+ │ ### ######## v4.60.75 │
72
72
  │ ######### ##### │
73
73
  │ ## ############## Development Orchestrator │
74
74
  │ ## ### ###### ## OrNexus Team │