youmd 0.10.2 → 0.12.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.
Files changed (205) hide show
  1. package/dist/commands/brain.d.ts.map +1 -1
  2. package/dist/commands/brain.js +91 -28
  3. package/dist/commands/brain.js.map +1 -1
  4. package/dist/commands/chat.d.ts.map +1 -1
  5. package/dist/commands/chat.js +6 -1
  6. package/dist/commands/chat.js.map +1 -1
  7. package/dist/commands/conversations.d.ts +5 -0
  8. package/dist/commands/conversations.d.ts.map +1 -0
  9. package/dist/commands/conversations.js +116 -0
  10. package/dist/commands/conversations.js.map +1 -0
  11. package/dist/commands/doctor.d.ts +1 -0
  12. package/dist/commands/doctor.d.ts.map +1 -1
  13. package/dist/commands/doctor.js +16 -1
  14. package/dist/commands/doctor.js.map +1 -1
  15. package/dist/commands/founder.d.ts +13 -0
  16. package/dist/commands/founder.d.ts.map +1 -0
  17. package/dist/commands/founder.js +189 -0
  18. package/dist/commands/founder.js.map +1 -0
  19. package/dist/commands/handoff.d.ts +5 -0
  20. package/dist/commands/handoff.d.ts.map +1 -0
  21. package/dist/commands/handoff.js +432 -0
  22. package/dist/commands/handoff.js.map +1 -0
  23. package/dist/commands/orchestrate.d.ts +15 -0
  24. package/dist/commands/orchestrate.d.ts.map +1 -1
  25. package/dist/commands/orchestrate.js +294 -0
  26. package/dist/commands/orchestrate.js.map +1 -1
  27. package/dist/commands/project.d.ts.map +1 -1
  28. package/dist/commands/project.js +8 -1
  29. package/dist/commands/project.js.map +1 -1
  30. package/dist/commands/reconcile.d.ts +15 -0
  31. package/dist/commands/reconcile.d.ts.map +1 -0
  32. package/dist/commands/reconcile.js +260 -0
  33. package/dist/commands/reconcile.js.map +1 -0
  34. package/dist/commands/session.d.ts +28 -0
  35. package/dist/commands/session.d.ts.map +1 -0
  36. package/dist/commands/session.js +895 -0
  37. package/dist/commands/session.js.map +1 -0
  38. package/dist/commands/stack.d.ts +2 -0
  39. package/dist/commands/stack.d.ts.map +1 -1
  40. package/dist/commands/stack.js +26 -0
  41. package/dist/commands/stack.js.map +1 -1
  42. package/dist/commands/sync.d.ts.map +1 -1
  43. package/dist/commands/sync.js +11 -0
  44. package/dist/commands/sync.js.map +1 -1
  45. package/dist/commands/tasks.d.ts +57 -0
  46. package/dist/commands/tasks.d.ts.map +1 -1
  47. package/dist/commands/tasks.js +236 -31
  48. package/dist/commands/tasks.js.map +1 -1
  49. package/dist/generated/capability-registry.d.ts +311 -71
  50. package/dist/generated/capability-registry.d.ts.map +1 -1
  51. package/dist/generated/capability-registry.js +346 -71
  52. package/dist/generated/capability-registry.js.map +1 -1
  53. package/dist/index.js +113 -2
  54. package/dist/index.js.map +1 -1
  55. package/dist/lib/api.d.ts +362 -1
  56. package/dist/lib/api.d.ts.map +1 -1
  57. package/dist/lib/api.js +171 -0
  58. package/dist/lib/api.js.map +1 -1
  59. package/dist/lib/brain/adapters.d.ts +20 -1
  60. package/dist/lib/brain/adapters.d.ts.map +1 -1
  61. package/dist/lib/brain/adapters.js +113 -2
  62. package/dist/lib/brain/adapters.js.map +1 -1
  63. package/dist/lib/brain/approval-key-trust.d.ts +29 -0
  64. package/dist/lib/brain/approval-key-trust.d.ts.map +1 -0
  65. package/dist/lib/brain/approval-key-trust.js +139 -0
  66. package/dist/lib/brain/approval-key-trust.js.map +1 -0
  67. package/dist/lib/brain/cache.d.ts +2 -2
  68. package/dist/lib/brain/cache.d.ts.map +1 -1
  69. package/dist/lib/brain/cache.js +4 -4
  70. package/dist/lib/brain/cache.js.map +1 -1
  71. package/dist/lib/brain/content.d.ts +56 -0
  72. package/dist/lib/brain/content.d.ts.map +1 -0
  73. package/dist/lib/brain/content.js +362 -0
  74. package/dist/lib/brain/content.js.map +1 -0
  75. package/dist/lib/brain/descriptor-validator.d.ts +11 -0
  76. package/dist/lib/brain/descriptor-validator.d.ts.map +1 -0
  77. package/dist/lib/brain/descriptor-validator.js +185 -0
  78. package/dist/lib/brain/descriptor-validator.js.map +1 -0
  79. package/dist/lib/brain/discovery.d.ts.map +1 -1
  80. package/dist/lib/brain/discovery.js +103 -60
  81. package/dist/lib/brain/discovery.js.map +1 -1
  82. package/dist/lib/brain/index.d.ts +2 -0
  83. package/dist/lib/brain/index.d.ts.map +1 -1
  84. package/dist/lib/brain/index.js +8 -2
  85. package/dist/lib/brain/index.js.map +1 -1
  86. package/dist/lib/brain/proposal.d.ts +53 -5
  87. package/dist/lib/brain/proposal.d.ts.map +1 -1
  88. package/dist/lib/brain/proposal.js +341 -64
  89. package/dist/lib/brain/proposal.js.map +1 -1
  90. package/dist/lib/brain/safe-file.d.ts +25 -1
  91. package/dist/lib/brain/safe-file.d.ts.map +1 -1
  92. package/dist/lib/brain/safe-file.js +250 -30
  93. package/dist/lib/brain/safe-file.js.map +1 -1
  94. package/dist/lib/brain/safe-open.d.ts +2 -0
  95. package/dist/lib/brain/safe-open.d.ts.map +1 -0
  96. package/dist/lib/brain/safe-open.js +77 -0
  97. package/dist/lib/brain/safe-open.js.map +1 -0
  98. package/dist/lib/brain/safety.d.ts.map +1 -1
  99. package/dist/lib/brain/safety.js +5 -0
  100. package/dist/lib/brain/safety.js.map +1 -1
  101. package/dist/lib/brain/staged-apply.d.ts +2 -1
  102. package/dist/lib/brain/staged-apply.d.ts.map +1 -1
  103. package/dist/lib/brain/staged-apply.js +6 -3
  104. package/dist/lib/brain/staged-apply.js.map +1 -1
  105. package/dist/lib/brain/store.d.ts +3 -0
  106. package/dist/lib/brain/store.d.ts.map +1 -1
  107. package/dist/lib/brain/store.js +68 -0
  108. package/dist/lib/brain/store.js.map +1 -1
  109. package/dist/lib/brain/sync.d.ts +87 -0
  110. package/dist/lib/brain/sync.d.ts.map +1 -0
  111. package/dist/lib/brain/sync.js +238 -0
  112. package/dist/lib/brain/sync.js.map +1 -0
  113. package/dist/lib/brain/types.d.ts +23 -0
  114. package/dist/lib/brain/types.d.ts.map +1 -1
  115. package/dist/lib/config.d.ts +7 -0
  116. package/dist/lib/config.d.ts.map +1 -1
  117. package/dist/lib/config.js +3 -0
  118. package/dist/lib/config.js.map +1 -1
  119. package/dist/lib/daemon.js +1 -1
  120. package/dist/lib/daemon.js.map +1 -1
  121. package/dist/lib/goalRegistryFile.d.ts +169 -0
  122. package/dist/lib/goalRegistryFile.d.ts.map +1 -0
  123. package/dist/lib/goalRegistryFile.js +518 -0
  124. package/dist/lib/goalRegistryFile.js.map +1 -0
  125. package/dist/lib/goalsFile.d.ts +101 -0
  126. package/dist/lib/goalsFile.d.ts.map +1 -0
  127. package/dist/lib/goalsFile.js +413 -0
  128. package/dist/lib/goalsFile.js.map +1 -0
  129. package/dist/lib/handoff.d.ts +170 -0
  130. package/dist/lib/handoff.d.ts.map +1 -0
  131. package/dist/lib/handoff.js +316 -0
  132. package/dist/lib/handoff.js.map +1 -0
  133. package/dist/lib/machine-identity.d.ts +2 -0
  134. package/dist/lib/machine-identity.d.ts.map +1 -1
  135. package/dist/lib/machine-identity.js +13 -6
  136. package/dist/lib/machine-identity.js.map +1 -1
  137. package/dist/lib/onboarding.d.ts +4 -1
  138. package/dist/lib/onboarding.d.ts.map +1 -1
  139. package/dist/lib/onboarding.js +11 -3
  140. package/dist/lib/onboarding.js.map +1 -1
  141. package/dist/lib/orchestrator/loop.d.ts +7 -0
  142. package/dist/lib/orchestrator/loop.d.ts.map +1 -1
  143. package/dist/lib/orchestrator/loop.js +53 -0
  144. package/dist/lib/orchestrator/loop.js.map +1 -1
  145. package/dist/lib/orchestrator/run-journal.d.ts +178 -0
  146. package/dist/lib/orchestrator/run-journal.d.ts.map +1 -0
  147. package/dist/lib/orchestrator/run-journal.js +912 -0
  148. package/dist/lib/orchestrator/run-journal.js.map +1 -0
  149. package/dist/lib/orchestrator/supervisor.d.ts +11 -0
  150. package/dist/lib/orchestrator/supervisor.d.ts.map +1 -1
  151. package/dist/lib/orchestrator/supervisor.js +304 -116
  152. package/dist/lib/orchestrator/supervisor.js.map +1 -1
  153. package/dist/lib/orchestrator/tools.d.ts +2 -0
  154. package/dist/lib/orchestrator/tools.d.ts.map +1 -1
  155. package/dist/lib/orchestrator/tools.js +214 -1
  156. package/dist/lib/orchestrator/tools.js.map +1 -1
  157. package/dist/lib/redact.d.ts.map +1 -1
  158. package/dist/lib/redact.js +31 -6
  159. package/dist/lib/redact.js.map +1 -1
  160. package/dist/lib/remote-agent-event.d.ts +19 -0
  161. package/dist/lib/remote-agent-event.d.ts.map +1 -0
  162. package/dist/lib/remote-agent-event.js +85 -0
  163. package/dist/lib/remote-agent-event.js.map +1 -0
  164. package/dist/lib/remote-command.d.ts.map +1 -1
  165. package/dist/lib/remote-command.js +19 -0
  166. package/dist/lib/remote-command.js.map +1 -1
  167. package/dist/lib/remote-executor.d.ts +7 -1
  168. package/dist/lib/remote-executor.d.ts.map +1 -1
  169. package/dist/lib/remote-executor.js +391 -0
  170. package/dist/lib/remote-executor.js.map +1 -1
  171. package/dist/lib/sessionCheckpoint.d.ts +104 -0
  172. package/dist/lib/sessionCheckpoint.d.ts.map +1 -0
  173. package/dist/lib/sessionCheckpoint.js +191 -0
  174. package/dist/lib/sessionCheckpoint.js.map +1 -0
  175. package/dist/lib/sessionHandoff.d.ts +47 -0
  176. package/dist/lib/sessionHandoff.d.ts.map +1 -0
  177. package/dist/lib/sessionHandoff.js +305 -0
  178. package/dist/lib/sessionHandoff.js.map +1 -0
  179. package/dist/lib/stream.d.ts +3 -1
  180. package/dist/lib/stream.d.ts.map +1 -1
  181. package/dist/lib/stream.js +8 -3
  182. package/dist/lib/stream.js.map +1 -1
  183. package/dist/lib/taskLedgerProposal.d.ts +102 -0
  184. package/dist/lib/taskLedgerProposal.d.ts.map +1 -0
  185. package/dist/lib/taskLedgerProposal.js +408 -0
  186. package/dist/lib/taskLedgerProposal.js.map +1 -0
  187. package/dist/lib/tasksFile.d.ts +23 -2
  188. package/dist/lib/tasksFile.d.ts.map +1 -1
  189. package/dist/lib/tasksFile.js +122 -10
  190. package/dist/lib/tasksFile.js.map +1 -1
  191. package/dist/mcp/registry.d.ts.map +1 -1
  192. package/dist/mcp/registry.js +110 -0
  193. package/dist/mcp/registry.js.map +1 -1
  194. package/native/prebuilds/darwin-universal/youmd_safe_open.node +0 -0
  195. package/native/safe-open/youmd_safe_open.c +224 -0
  196. package/package.json +11 -3
  197. package/scripts/build-safe-open.mjs +63 -0
  198. package/scripts/skillstack-sync/com.you.context-sync.plist +1 -1
  199. package/scripts/skillstack-sync/com.you.identity-sync.plist +1 -1
  200. package/scripts/skillstack-sync/com.you.orchestrator-watch.plist +1 -1
  201. package/scripts/skillstack-sync/com.you.realtime-sync.plist +7 -1
  202. package/scripts/skillstack-sync/com.you.skillstack-sync.plist +1 -1
  203. package/scripts/skillstack-sync/context-sync.sh +19 -7
  204. package/scripts/skillstack-sync/install-daemons-linux.sh +6 -0
  205. package/scripts/smoke-safe-open-node.cjs +50 -0
@@ -1 +1 @@
1
- {"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../src/commands/brain.ts"],"names":[],"mappings":"AAsCA,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAyCD,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkBjH;AAmQD,wBAAsB,YAAY,CAChC,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,IAAI,CAAC,CAiTf"}
1
+ {"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../src/commands/brain.ts"],"names":[],"mappings":"AAgDA,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAyCD,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkBjH;AAmSD,wBAAsB,YAAY,CAChC,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,IAAI,CAAC,CAmVf"}
@@ -44,7 +44,9 @@ const os = __importStar(require("os"));
44
44
  const path = __importStar(require("path"));
45
45
  const render_1 = require("../lib/render");
46
46
  const brain_1 = require("../lib/brain");
47
+ const api_1 = require("../lib/api");
47
48
  const apply_control_plane_1 = require("../lib/brain/apply-control-plane");
49
+ const sync_1 = require("../lib/brain/sync");
48
50
  const ACCENT = chalk_1.default.hex("#C46A3A");
49
51
  const DIM = chalk_1.default.dim;
50
52
  class BrainProposalInputError extends Error {
@@ -152,6 +154,16 @@ function safeFailure(error) {
152
154
  if (error instanceof BrainMapError) {
153
155
  return { code: error.code, message: error.safeMessage };
154
156
  }
157
+ if (error instanceof sync_1.ProjectBrainSyncError) {
158
+ return {
159
+ code: `PROJECT_BRAIN_SYNC_${error.phase.toUpperCase()}_FAILED`,
160
+ message: error.phase === "snapshot"
161
+ ? "The Project Brain snapshot was not accepted; no artifact content was uploaded."
162
+ : error.phase === "content"
163
+ ? "The snapshot was accepted, but bounded artifact content was not; retrying is idempotent."
164
+ : "The exact Project Brain workspace could not be established; nothing was uploaded.",
165
+ };
166
+ }
155
167
  if (error instanceof brain_1.BrainSafetyError) {
156
168
  return {
157
169
  code: "PROJECT_BRAIN_PERSISTENCE_REFUSED",
@@ -182,7 +194,7 @@ function readSafeJsonFile(fileValue, maxBytes = 1024 * 1024) {
182
194
  throw new BrainProposalInputError("proposal input is not JSON");
183
195
  }
184
196
  }
185
- function readProposalCandidate(fileValue) {
197
+ function readValidationCandidate(fileValue) {
186
198
  const resolved = canonicalPath(fileValue);
187
199
  let stat;
188
200
  try {
@@ -195,12 +207,28 @@ function readProposalCandidate(fileValue) {
195
207
  throw new BrainProposalInputError("proposal validation input is unsafe");
196
208
  try {
197
209
  const value = JSON.parse(fs.readFileSync(resolved, "utf8"));
198
- return asRecord(value).kind === "project-brain-proposal" ? value : null;
210
+ return ["project-brain-proposal", "project"].includes(String(asRecord(value).kind)) ? value : null;
199
211
  }
200
212
  catch {
201
213
  return null;
202
214
  }
203
215
  }
216
+ async function approvalVerificationKeysFor(proposal, approval) {
217
+ if (proposal.proposalType !== "descriptor_adoption")
218
+ return undefined;
219
+ for (const refresh of [false, true]) {
220
+ const response = await (0, api_1.getProjectBrainApprovalVerificationKeys)({ refresh });
221
+ if (response.ok && response.data?.schemaVersion === "you-md/project-brain-approval-jwks/v1"
222
+ && response.data.cacheMaxAgeSeconds === 300 && response.data.approvalMaxAgeSeconds === 900
223
+ && response.data.minimumRotationOverlapSeconds >= 1200
224
+ && response.data.secretValuesExposed === false && Array.isArray(response.data.keys)
225
+ && response.data.keys.length > 0
226
+ && (0, brain_1.verifyProjectBrainApprovalSignature)(approval, response.data.keys)) {
227
+ return response.data.keys;
228
+ }
229
+ }
230
+ throw new BrainProposalInputError("hosted approval verification keys are unavailable, untrusted, stale, or invalid");
231
+ }
204
232
  function proposalGenerationResult(type, generated) {
205
233
  return {
206
234
  schemaVersion: "you-md/project-brain-proposal-generation/v1",
@@ -341,8 +369,9 @@ function printHelp() {
341
369
  console.log("");
342
370
  console.log(" " + ACCENT("Commands"));
343
371
  console.log(" " + chalk_1.default.cyan("scan") + DIM(" scan declared roots and atomically update the local brain"));
372
+ console.log(" " + chalk_1.default.cyan("sync") + DIM(" upload one bounded project or an all-root read-only metadata index"));
344
373
  console.log(" " + chalk_1.default.cyan("map") + DIM(" render a portable project-brain catalog into a separate output repo"));
345
- console.log(" " + chalk_1.default.cyan("adopt") + DIM(" propose a reviewable .you-project descriptor without writing it"));
374
+ console.log(" " + chalk_1.default.cyan("adopt") + DIM(" propose an exact replacement for an existing invalid .you-project"));
346
375
  console.log(" " + chalk_1.default.cyan("propose") + DIM(" import an overrides/notes JSON patch as an exact proposal"));
347
376
  console.log(" " + chalk_1.default.cyan("stage") + DIM(" stage exact proposal/approval/root bindings for one native apply id"));
348
377
  console.log(" " + chalk_1.default.cyan("apply") + DIM(" apply an approved, explicitly granted local artifact patch"));
@@ -352,6 +381,8 @@ function printHelp() {
352
381
  console.log("");
353
382
  console.log(" " + DIM("Examples:"));
354
383
  console.log(" " + chalk_1.default.cyan("you brain scan --roots ~/Desktop/CODE_2025,~/Desktop/CODE_YOU"));
384
+ console.log(" " + chalk_1.default.cyan("you brain sync --root . --project youmd"));
385
+ console.log(" " + chalk_1.default.cyan("you brain sync --roots ~/Desktop/CODE_2025,~/Desktop/CODE_YOU") + DIM(" # metadata only"));
355
386
  console.log(" " + chalk_1.default.cyan("you brain map --roots ~/code/youmd,~/code/hubify --out ~/brain-repo"));
356
387
  console.log(" " + chalk_1.default.cyan("you brain adopt --project legacy-app --json"));
357
388
  console.log(" " + chalk_1.default.cyan("you brain propose --path overrides/legacy-app.json --json"));
@@ -368,7 +399,7 @@ async function brainCommand(subcommand, args = [], options = {}) {
368
399
  printHelp();
369
400
  return;
370
401
  }
371
- if (!new Set(["scan", "map", "adopt", "propose", "stage", "apply", "recover", "validate", "show"]).has(command)) {
402
+ if (!new Set(["scan", "sync", "map", "adopt", "propose", "stage", "apply", "recover", "validate", "show"]).has(command)) {
372
403
  console.error(ACCENT(`unknown brain command: ${subcommand}`));
373
404
  printHelp();
374
405
  process.exitCode = 1;
@@ -376,15 +407,17 @@ async function brainCommand(subcommand, args = [], options = {}) {
376
407
  }
377
408
  const spinner = options.json ? null : new render_1.BrailleSpinner(command === "scan"
378
409
  ? "indexing project truth without touching its owners"
379
- : command === "map"
380
- ? "rendering a portable map from repository-owned truth"
381
- : command === "adopt" || command === "propose"
382
- ? "drafting an exact proposal without applying it"
383
- : command === "stage" || command === "apply" || command === "recover"
384
- ? "checking grants, journal, and encrypted rollback boundaries"
385
- : command === "validate"
386
- ? "checking provenance and revision integrity"
387
- : "opening the latest trusted project snapshot");
410
+ : command === "sync"
411
+ ? "syncing snapshot evidence before bounded project context"
412
+ : command === "map"
413
+ ? "rendering a portable map from repository-owned truth"
414
+ : command === "adopt" || command === "propose"
415
+ ? "drafting an exact proposal without applying it"
416
+ : command === "stage" || command === "apply" || command === "recover"
417
+ ? "checking grants, journal, and encrypted rollback boundaries"
418
+ : command === "validate"
419
+ ? "checking provenance and revision integrity"
420
+ : "opening the latest trusted project snapshot");
388
421
  spinner?.start();
389
422
  try {
390
423
  let result;
@@ -394,6 +427,19 @@ async function brainCommand(subcommand, args = [], options = {}) {
394
427
  ? await (0, brain_1.scanAllProjectBrains)({ roots, persist: options.persist !== false })
395
428
  : await (0, brain_1.scanProjectBrain)({ project: options.project, persist: options.persist !== false });
396
429
  }
430
+ else if (command === "sync") {
431
+ const roots = commaList(options.roots)?.map(canonicalPath);
432
+ if (roots?.length && options.root) {
433
+ throw new sync_1.ProjectBrainSyncError("scan", 0, "brain sync accepts either --root or --roots, not both");
434
+ }
435
+ result = roots?.length
436
+ ? await (0, sync_1.syncProjectBrainIndex)({ roots, brainRoot: options.brainRoot })
437
+ : await (0, sync_1.syncProjectBrain)({
438
+ root: canonicalPath(options.root || process.cwd()),
439
+ project: options.project,
440
+ brainRoot: options.brainRoot,
441
+ });
442
+ }
397
443
  else if (command === "map") {
398
444
  const { roots, outDir } = validateBrainMapPaths(options.roots, options.out);
399
445
  const batch = await (0, brain_1.scanAllProjectBrains)({ roots, persist: false });
@@ -433,12 +479,17 @@ async function brainCommand(subcommand, args = [], options = {}) {
433
479
  };
434
480
  }
435
481
  else if (command === "adopt") {
436
- const scanned = await (0, brain_1.scanProjectBrain)({ project: options.project || args[0], persist: false });
437
- const generated = (0, brain_1.proposeProjectBrainAdoption)(scanned.scan, {
438
- projectRef: options.project ? `project:${options.project.replace(/^project:/, "")}` : undefined,
439
- name: options.name,
440
- rationale: options.rationale,
441
- });
482
+ const selected = options.project || args[0];
483
+ const selectedIsPath = Boolean(selected && (path.isAbsolute(selected) || selected.startsWith(".") || selected.includes("/") || selected.includes("\\")));
484
+ const projectRef = selected && !selectedIsPath ? `project:${selected.replace(/^project:/, "")}` : undefined;
485
+ const roots = commaList(options.roots)?.map(canonicalPath);
486
+ const generated = roots?.length
487
+ ? (0, brain_1.proposeProjectBrainAdoptions)((await (0, brain_1.scanAllProjectBrains)({ roots, persist: false })).workspaces.map((workspace) => workspace.scan), { projectRef, name: options.name, rationale: options.rationale })
488
+ : (0, brain_1.proposeProjectBrainAdoption)((await (0, brain_1.scanProjectBrain)({ project: selected, persist: false })).scan, {
489
+ projectRef,
490
+ name: options.name,
491
+ rationale: options.rationale,
492
+ });
442
493
  result = proposalGenerationResult("descriptor_adoption", generated);
443
494
  }
444
495
  else if (command === "propose") {
@@ -462,6 +513,8 @@ async function brainCommand(subcommand, args = [], options = {}) {
462
513
  if (!proposalValidation.valid || !proposalValidation.proposal)
463
514
  throw new BrainProposalInputError("proposal is invalid");
464
515
  const approvalInput = readSafeJsonFile(options.approval, 256 * 1024);
516
+ const approval = approvalInput.value;
517
+ const approvalVerificationKeys = await approvalVerificationKeysFor(proposalValidation.proposal, approval);
465
518
  const staged = (0, brain_1.stageProjectBrainApply)({
466
519
  brainRoot: options.brainRoot,
467
520
  proposalId: options.proposalId,
@@ -472,7 +525,8 @@ async function brainCommand(subcommand, args = [], options = {}) {
472
525
  proposal: proposalValidation.proposal,
473
526
  approvalPath: approvalInput.path,
474
527
  approvalContent: approvalInput.content,
475
- approval: approvalInput.value,
528
+ approval,
529
+ approvalVerificationKeys,
476
530
  });
477
531
  result = {
478
532
  schemaVersion: staged.schemaVersion,
@@ -527,6 +581,8 @@ async function brainCommand(subcommand, args = [], options = {}) {
527
581
  if (stagedResolution && `sha256:${(0, brain_1.sha256)(approvalInput.content)}` !== stagedResolution.approvalContentHash) {
528
582
  throw new brain_1.BrainStagedApplyError("PROJECT_BRAIN_STAGE_STALE_HASH", "approval changed after staged consumption");
529
583
  }
584
+ const approval = approvalInput.value;
585
+ const approvalVerificationKeys = await approvalVerificationKeysFor(proposalValidation.proposal, approval);
530
586
  const root = canonicalPath(rootValue || process.cwd());
531
587
  const scanned = await (0, brain_1.scanProjectBrain)({
532
588
  roots: [root],
@@ -536,9 +592,12 @@ async function brainCommand(subcommand, args = [], options = {}) {
536
592
  const proposal = proposalValidation.proposal;
537
593
  const project = scanned.scan.projects.find((candidate) => candidate.projectRef === proposal.projectRef);
538
594
  const artifact = project?.artifacts.find((candidate) => candidate.artifactRef === proposal.target.artifactRef);
539
- const capability = artifact?.writePolicy === "managed_write" || artifact?.writePolicy === "task_write"
540
- ? artifact.writePolicy
541
- : null;
595
+ const capability = proposal.proposalType === "descriptor_adoption"
596
+ && proposal.target.path === ".you-project" && proposal.target.exists === true
597
+ ? "descriptor_adopt"
598
+ : artifact?.writePolicy === "managed_write" || artifact?.writePolicy === "task_write"
599
+ ? artifact.writePolicy
600
+ : null;
542
601
  if (!capability || !proposal.target.path)
543
602
  throw new BrainProposalInputError("proposal target lacks a local write grant");
544
603
  const device = (0, brain_1.readProjectBrainTrustedDeviceIdentity)();
@@ -568,7 +627,8 @@ async function brainCommand(subcommand, args = [], options = {}) {
568
627
  root,
569
628
  brainRoot: options.brainRoot,
570
629
  proposal,
571
- approval: approvalInput.value,
630
+ approval,
631
+ approvalVerificationKeys,
572
632
  scan: scanned.scan,
573
633
  onPrepared: async (evidence) => {
574
634
  rollbackCiphertextHash = evidence.rollbackCiphertextHash;
@@ -639,10 +699,13 @@ async function brainCommand(subcommand, args = [], options = {}) {
639
699
  else if (command === "validate") {
640
700
  const requestedPath = options.path || args[0];
641
701
  if (requestedPath) {
642
- const proposal = readProposalCandidate(requestedPath);
643
- result = proposal
644
- ? (0, brain_1.validateProjectBrainProposal)(proposal)
645
- : await (0, brain_1.validateProjectBrain)({ path: requestedPath, project: options.project });
702
+ const candidate = readValidationCandidate(requestedPath);
703
+ const kind = asRecord(candidate).kind;
704
+ result = kind === "project-brain-proposal"
705
+ ? (0, brain_1.validateProjectBrainProposal)(candidate)
706
+ : kind === "project"
707
+ ? (0, brain_1.validateProjectBrainDescriptor)(candidate)
708
+ : await (0, brain_1.validateProjectBrain)({ path: requestedPath, project: options.project });
646
709
  }
647
710
  else
648
711
  result = await (0, brain_1.validateProjectBrain)({ project: options.project });
@@ -1 +1 @@
1
- {"version":3,"file":"brain.js","sourceRoot":"","sources":["../../src/commands/brain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brain.js","sourceRoot":"","sources":["../../src/commands/brain.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AA0gEA,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqlBjD"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AA+gEA,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqlBjD"}
@@ -71,12 +71,17 @@ const CURRENT_VERSION = (0, version_1.readCliVersion)();
71
71
  * parsePrivateUpdates, parseProjectUpdates) keep working unchanged.
72
72
  */
73
73
  async function callLLMWithStreaming(apiKey, messages, spinnerLabel) {
74
+ const ownerToken = (0, config_1.readGlobalConfig)().token?.trim();
74
75
  return (0, stream_1.streamAssistantTurn)({
75
76
  streamUrl: STREAM_URL,
76
77
  messages,
78
+ authorizationToken: ownerToken || undefined,
77
79
  spinnerLabel,
78
80
  timeoutMs: 120000,
79
- fallback: () => (0, onboarding_1.callLLM)(apiKey, messages),
81
+ fallback: () => (0, onboarding_1.callLLM)(apiKey, messages, {
82
+ authorizationToken: ownerToken || undefined,
83
+ model: "gpt-5.6-sol",
84
+ }),
80
85
  });
81
86
  }
82
87
  function detectSourcesInMessage(text) {