@nyte-ai/core 0.0.27 → 0.0.28-nightly.20261107.65

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 (272) hide show
  1. package/dist/chunks/{compose-bkhsj5yx.js → compose-05sqjsze.js} +1 -1
  2. package/dist/chunks/{compose-xe03b4qd.js → compose-08rmb0yn.js} +6 -6
  3. package/dist/chunks/{compose-q7an3bw4.js → compose-0yabb4c7.js} +3 -3
  4. package/dist/chunks/compose-16eggcz0.js +38 -0
  5. package/dist/chunks/{compose-qdhj0nek.js → compose-19wg2xgj.js} +1 -1
  6. package/dist/chunks/{compose-ryqb4grg.js → compose-20w6an69.js} +15 -9
  7. package/dist/chunks/{compose-v393apkc.js → compose-2mp2wgw3.js} +5 -5
  8. package/dist/chunks/{compose-pvg74sc3.js → compose-2rj86x9k.js} +2 -2
  9. package/dist/chunks/{compose-46w2zh74.js → compose-3tb2b116.js} +17 -3
  10. package/dist/chunks/{compose-hf725nb9.js → compose-48j26a24.js} +3 -3
  11. package/dist/chunks/{compose-wt8qer4v.js → compose-4qb3x99w.js} +9 -9
  12. package/dist/chunks/{compose-v1qy7at2.js → compose-50nd01ad.js} +17 -17
  13. package/dist/chunks/compose-56vqzsby.js +126 -0
  14. package/dist/chunks/{compose-m4nbk7cg.js → compose-5crk6kb9.js} +14 -6
  15. package/dist/chunks/{compose-kd2ythd8.js → compose-5p392at4.js} +1 -1
  16. package/dist/chunks/{compose-z7ex5h37.js → compose-6ctc8sqj.js} +7 -7
  17. package/dist/chunks/{compose-fs0g7btz.js → compose-6gckhz4z.js} +4 -18
  18. package/dist/chunks/{compose-vstnxkah.js → compose-7nthbnzt.js} +19 -11
  19. package/dist/chunks/compose-80eam7w1.js +52 -0
  20. package/dist/chunks/{compose-h9p301x9.js → compose-89m9ff5a.js} +69 -51
  21. package/dist/chunks/{compose-pfesbnwr.js → compose-8by3anxq.js} +5 -5
  22. package/dist/chunks/{compose-9btw2ftt.js → compose-9g0z9k4e.js} +8 -11
  23. package/dist/chunks/{compose-w9harpgf.js → compose-9tyqzjts.js} +4 -4
  24. package/dist/chunks/{compose-kdwr4f9h.js → compose-9zvxshve.js} +8 -3
  25. package/dist/chunks/{compose-pe5q9ws1.js → compose-a71r4vkh.js} +4 -4
  26. package/dist/chunks/{compose-wq6n7832.js → compose-a97jdann.js} +2 -2
  27. package/dist/chunks/{compose-z5kyvvcn.js → compose-b4ymq924.js} +4 -4
  28. package/dist/chunks/{compose-k7zrqkwd.js → compose-bvwkk2km.js} +9 -9
  29. package/dist/chunks/{compose-2rze4dp0.js → compose-cct3t9v9.js} +4 -4
  30. package/dist/chunks/{compose-9ea1z187.js → compose-dvhhpy57.js} +1 -1
  31. package/dist/chunks/{compose-g7939vn0.js → compose-dxr1x24z.js} +1 -0
  32. package/dist/chunks/{compose-7z3s2jh4.js → compose-ejdmb593.js} +3 -3
  33. package/dist/chunks/{compose-s53kwh1s.js → compose-err2x79t.js} +96 -29
  34. package/dist/chunks/{compose-jcdkrkrq.js → compose-ew3k2afa.js} +5 -5
  35. package/dist/chunks/{compose-wgs4rgfp.js → compose-f487a54f.js} +1 -1
  36. package/dist/chunks/{compose-cvh0zrhj.js → compose-fx0nf0q2.js} +4 -4
  37. package/dist/chunks/compose-fyq7vhr1.js +97 -0
  38. package/dist/chunks/{compose-sr2wnvct.js → compose-ggjg7v8s.js} +7 -4
  39. package/dist/chunks/{compose-tsvc143b.js → compose-grv09eme.js} +9 -39
  40. package/dist/chunks/{compose-4vv109cy.js → compose-hbwrnc6f.js} +5 -5
  41. package/dist/chunks/{compose-gqm6dxkj.js → compose-hh17swyr.js} +7 -3
  42. package/dist/chunks/{compose-8e6d0bgc.js → compose-hj6m97gz.js} +3 -3
  43. package/dist/chunks/compose-hqq7t7ym.js +33 -0
  44. package/dist/chunks/{compose-sd9z9n34.js → compose-j09nymsq.js} +6 -6
  45. package/dist/chunks/{compose-c3b46yga.js → compose-jq3j6n2c.js} +6 -6
  46. package/dist/chunks/{compose-tdjsw8a8.js → compose-jqvrzwnm.js} +13 -11
  47. package/dist/chunks/{compose-7rg4gapa.js → compose-jt1f5xzs.js} +38 -18
  48. package/dist/chunks/{compose-deneqk7y.js → compose-k17j7k3v.js} +2 -2
  49. package/dist/chunks/{compose-anx0exmp.js → compose-k3sfhbpk.js} +2 -2
  50. package/dist/chunks/{compose-cnwbszcc.js → compose-kf5d1wah.js} +3 -3
  51. package/dist/chunks/{compose-4xt553qr.js → compose-kkc25sv9.js} +8 -6
  52. package/dist/chunks/{compose-a3cden7x.js → compose-ks5fp75q.js} +1 -1
  53. package/dist/chunks/{compose-fkj32m47.js → compose-kt88k2db.js} +7 -7
  54. package/dist/chunks/{compose-h2bxs4jj.js → compose-m1z0k10y.js} +4 -48
  55. package/dist/chunks/{compose-kw7fr9gb.js → compose-mgwsbc2n.js} +13 -13
  56. package/dist/chunks/{compose-3vbyrkdd.js → compose-mhzdfs3s.js} +17 -4
  57. package/dist/chunks/{compose-3hk932nc.js → compose-mkt72pbp.js} +1 -1
  58. package/dist/chunks/{compose-4s1p6hkf.js → compose-mnn75b9t.js} +3 -3
  59. package/dist/chunks/{compose-nn05pggt.js → compose-mps0t4tj.js} +1 -1
  60. package/dist/chunks/{compose-t04sevkp.js → compose-n8378y4t.js} +72 -37
  61. package/dist/chunks/{compose-8wgzd0xk.js → compose-nfz0ynfb.js} +19 -13
  62. package/dist/chunks/{compose-pbnycs2z.js → compose-ngtn2e5d.js} +3 -3
  63. package/dist/chunks/{compose-r1j3g6qs.js → compose-nm0r8780.js} +6 -3
  64. package/dist/chunks/{compose-jwnnb7rq.js → compose-pbwz79da.js} +8 -6
  65. package/dist/chunks/{compose-yt8mgrrz.js → compose-pcjq6ms0.js} +19 -19
  66. package/dist/chunks/{compose-fhre47zv.js → compose-pm12nqkh.js} +22 -9
  67. package/dist/chunks/{compose-7wnrbjj6.js → compose-qdv8r5cc.js} +3 -3
  68. package/dist/chunks/{compose-t6r6mnry.js → compose-qhp8sq82.js} +54 -53
  69. package/dist/chunks/{compose-q4xx59j9.js → compose-rmv7q2qx.js} +3 -3
  70. package/dist/chunks/{compose-055ad57g.js → compose-ry8fwg7j.js} +1 -1
  71. package/dist/chunks/{compose-wnh9mvp0.js → compose-scs8k1qr.js} +12 -12
  72. package/dist/chunks/{compose-rthykcv3.js → compose-sypbcebk.js} +13 -11
  73. package/dist/chunks/{compose-63tdemgm.js → compose-t7ez6wfh.js} +6 -6
  74. package/dist/chunks/{compose-27jdjx5y.js → compose-thf39hdv.js} +12 -3
  75. package/dist/chunks/compose-thmmc888.js +76 -0
  76. package/dist/chunks/{compose-qt8w23kc.js → compose-ty7jfe5b.js} +5 -38
  77. package/dist/chunks/{compose-2khx6tjw.js → compose-v716bszy.js} +8 -8
  78. package/dist/chunks/{compose-06npxy5m.js → compose-vmr9v2v6.js} +26 -15
  79. package/dist/chunks/compose-x040a930.js +33 -0
  80. package/dist/chunks/compose-x9jn24mf.js +48 -0
  81. package/dist/chunks/{compose-998zw23w.js → compose-xh76am0q.js} +2 -2
  82. package/dist/chunks/{compose-ytybhb9r.js → compose-xxbn8n3r.js} +8 -6
  83. package/dist/chunks/{compose-hy53eheq.js → compose-y9am16gx.js} +19 -12
  84. package/dist/chunks/{compose-3z4yana6.js → compose-yc19056t.js} +6 -6
  85. package/dist/chunks/{compose-5a8v4p46.js → compose-yg7qvfxt.js} +19 -16
  86. package/dist/chunks/{compose-b5m0rmfh.js → compose-yg9mtagj.js} +2 -2
  87. package/dist/chunks/{compose-v4wdxywp.js → compose-yphjgadz.js} +5 -1
  88. package/dist/chunks/{compose-0pgfd2m6.js → compose-ywnk93xk.js} +4 -4
  89. package/dist/chunks/{compose-5m8xpg89.js → compose-z3q8rajf.js} +15 -16
  90. package/dist/chunks/{compose-nqas4rj1.js → compose-z8nexyz2.js} +2 -2
  91. package/dist/chunks/{compose-2k0vnyp3.js → compose-z9e4wwh7.js} +11 -6
  92. package/dist/chunks/{compose-0pgmfvqq.js → compose-zyyffxdp.js} +6 -4
  93. package/dist/src/agent/agent-loop.d.ts +0 -3
  94. package/dist/src/agent/compaction.d.ts +0 -2
  95. package/dist/src/agent/compaction.js +58 -49
  96. package/dist/src/agent/open-parts.d.ts +0 -5
  97. package/dist/src/agent/open-parts.js +6 -6
  98. package/dist/src/agent/project-prompt.d.ts +5 -0
  99. package/dist/src/agent/project-prompt.js +68 -0
  100. package/dist/src/agent/prompt-sections.d.ts +0 -20
  101. package/dist/src/agent/prompt-sections.js +21 -20
  102. package/dist/src/agent/request.d.ts +0 -1
  103. package/dist/src/agent/request.js +38 -35
  104. package/dist/src/agent/tool-runner.js +56 -48
  105. package/dist/src/agent/transcript.d.ts +0 -1
  106. package/dist/src/agent/transcript.js +54 -45
  107. package/dist/src/agent/turn.js +64 -57
  108. package/dist/src/api/attach.js +10 -8
  109. package/dist/src/api/connection.d.ts +0 -1
  110. package/dist/src/api/connection.js +81 -75
  111. package/dist/src/api/head.js +57 -53
  112. package/dist/src/api/host.js +1 -1
  113. package/dist/src/api/part-schema.d.ts +0 -7
  114. package/dist/src/api/part.d.ts +0 -4
  115. package/dist/src/api/part.js +24 -23
  116. package/dist/src/api/projects.d.ts +12 -0
  117. package/dist/src/api/projects.js +76 -0
  118. package/dist/src/api/server.d.ts +0 -1
  119. package/dist/src/api/server.js +76 -70
  120. package/dist/src/api/session-changes.js +65 -60
  121. package/dist/src/api/session.js +64 -59
  122. package/dist/src/builtins/environment.d.ts +0 -1
  123. package/dist/src/builtins/environment.js +1 -1
  124. package/dist/src/builtins/interruptions.d.ts +0 -1
  125. package/dist/src/builtins/mcp.d.ts +2 -7
  126. package/dist/src/builtins/mcp.js +1 -1
  127. package/dist/src/compose.d.ts +1 -1
  128. package/dist/src/compose.js +94 -87
  129. package/dist/src/contract/fold.d.ts +1 -4
  130. package/dist/src/contract/host.d.ts +13 -4
  131. package/dist/src/contract/kernel.d.ts +4 -7
  132. package/dist/src/contract/parts.d.ts +0 -1
  133. package/dist/src/contract/plugin.d.ts +0 -1
  134. package/dist/src/contract/presence.d.ts +31 -0
  135. package/dist/src/contract/presence.js +0 -0
  136. package/dist/src/contract/records.d.ts +28 -3
  137. package/dist/src/contract/records.js +3 -1
  138. package/dist/src/contract/server.d.ts +0 -18
  139. package/dist/src/contract/session.d.ts +3 -4
  140. package/dist/src/contract/store.d.ts +0 -2
  141. package/dist/src/contract/tools.d.ts +0 -4
  142. package/dist/src/contract/workspace.d.ts +32 -35
  143. package/dist/src/drive/execution.js +61 -54
  144. package/dist/src/engine/admission-writes.js +5 -5
  145. package/dist/src/engine/admission.d.ts +0 -2
  146. package/dist/src/engine/admission.js +29 -27
  147. package/dist/src/engine/batches.js +25 -24
  148. package/dist/src/engine/branch-summary.js +24 -23
  149. package/dist/src/engine/children.d.ts +0 -15
  150. package/dist/src/engine/children.js +7 -11
  151. package/dist/src/engine/contributions.js +5 -5
  152. package/dist/src/engine/durable.js +23 -22
  153. package/dist/src/engine/fence.d.ts +0 -2
  154. package/dist/src/engine/fence.js +23 -22
  155. package/dist/src/engine/fork.d.ts +0 -5
  156. package/dist/src/engine/fork.js +21 -20
  157. package/dist/src/engine/holds.js +30 -28
  158. package/dist/src/{drive → engine}/interruptions.d.ts +0 -6
  159. package/dist/src/{drive → engine}/interruptions.js +7 -6
  160. package/dist/src/engine/jobs.js +31 -29
  161. package/dist/src/engine/lease.d.ts +0 -9
  162. package/dist/src/engine/mentions.d.ts +0 -7
  163. package/dist/src/engine/move.js +27 -25
  164. package/dist/src/engine/pause.d.ts +4 -0
  165. package/dist/src/{drive → engine}/pause.js +1 -1
  166. package/dist/src/engine/presence.d.ts +2 -30
  167. package/dist/src/engine/presence.js +3 -3
  168. package/dist/src/engine/principals.js +21 -20
  169. package/dist/src/engine/receipts.js +24 -23
  170. package/dist/src/engine/runs.js +30 -28
  171. package/dist/src/engine/start.d.ts +0 -4
  172. package/dist/src/engine/start.js +30 -41
  173. package/dist/src/engine/stop.d.ts +7 -0
  174. package/dist/src/engine/stop.js +43 -0
  175. package/dist/src/engine/surface.d.ts +0 -1
  176. package/dist/src/engine/surface.js +5 -5
  177. package/dist/src/engine/waits.js +22 -21
  178. package/dist/src/env/browser.js +32 -30
  179. package/dist/src/env/environment.js +36 -34
  180. package/dist/src/env/mcp.d.ts +0 -15
  181. package/dist/src/env/mcp.js +38 -36
  182. package/dist/src/env/session-changes.d.ts +0 -1
  183. package/dist/src/env/session-changes.js +7 -6
  184. package/dist/src/env/trust.d.ts +0 -23
  185. package/dist/src/env/trust.js +37 -35
  186. package/dist/src/env/variables.js +6 -30
  187. package/dist/src/env/workspaces.d.ts +2 -7
  188. package/dist/src/env/workspaces.js +44 -44
  189. package/dist/src/env/worktrees.d.ts +0 -20
  190. package/dist/src/env/worktrees.js +38 -37
  191. package/dist/src/extend/activation.js +44 -45
  192. package/dist/src/extend/context-filter.d.ts +12 -0
  193. package/dist/src/extend/context-filter.js +18 -0
  194. package/dist/src/extend/hooks.js +26 -24
  195. package/dist/src/extend/models.js +37 -34
  196. package/dist/src/extend/part-views.d.ts +0 -4
  197. package/dist/src/extend/plugin-api.d.ts +1 -7
  198. package/dist/src/extend/plugin-api.js +23 -25
  199. package/dist/src/extend/plugin-folders.d.ts +0 -14
  200. package/dist/src/extend/plugin-folders.js +38 -36
  201. package/dist/src/extend/plugin-runtime.d.ts +0 -1
  202. package/dist/src/extend/plugin-runtime.js +54 -50
  203. package/dist/src/extend/registry.d.ts +0 -3
  204. package/dist/src/extend/registry.js +35 -32
  205. package/dist/src/extend/resources.d.ts +3 -14
  206. package/dist/src/extend/resources.js +51 -41
  207. package/dist/src/extend/setting-definitions.d.ts +10 -0
  208. package/dist/src/extend/setting-definitions.js +16 -0
  209. package/dist/src/extend/settings.js +51 -47
  210. package/dist/src/extend/workspace-commands.d.ts +0 -3
  211. package/dist/src/extend/workspace-commands.js +55 -51
  212. package/dist/src/fold/calls.js +6 -6
  213. package/dist/src/fold/checkpoint.js +12 -11
  214. package/dist/src/fold/code.d.ts +1 -1
  215. package/dist/src/fold/code.js +1 -1
  216. package/dist/src/fold/commit.js +20 -19
  217. package/dist/src/fold/draft.d.ts +3 -0
  218. package/dist/src/fold/draft.js +11 -5
  219. package/dist/src/fold/fold.js +8 -8
  220. package/dist/src/fold/paths.d.ts +3 -0
  221. package/dist/src/fold/paths.js +10 -8
  222. package/dist/src/fold/project.js +5 -5
  223. package/dist/src/fold/reads.d.ts +2 -0
  224. package/dist/src/fold/reads.js +8 -5
  225. package/dist/src/fold/seen.js +22 -21
  226. package/dist/src/fold/view.js +10 -10
  227. package/dist/src/fold/watch.js +19 -18
  228. package/dist/src/fold/window.js +7 -7
  229. package/dist/src/harness.d.ts +1 -2
  230. package/dist/src/harness.js +96 -89
  231. package/dist/src/index.d.ts +1 -1
  232. package/dist/src/index.js +9 -9
  233. package/dist/src/server.js +91 -84
  234. package/dist/src/store/catalogs.js +3 -3
  235. package/dist/src/store/children.d.ts +10 -0
  236. package/dist/src/store/children.js +14 -0
  237. package/dist/src/store/inspect.js +5 -5
  238. package/dist/src/store/log.js +2 -2
  239. package/dist/src/store/memory-store.js +5 -5
  240. package/dist/src/store/migrations.d.ts +0 -4
  241. package/dist/src/store/migrations.js +5 -4
  242. package/dist/src/store/model-state.d.ts +0 -1
  243. package/dist/src/store/model-state.js +5 -5
  244. package/dist/src/store/parts.d.ts +0 -2
  245. package/dist/src/store/parts.js +5 -5
  246. package/dist/src/store/project-migration.d.ts +2 -0
  247. package/dist/src/store/project-migration.js +6 -0
  248. package/dist/src/store/refs.d.ts +3 -2
  249. package/dist/src/store/refs.js +5 -1
  250. package/dist/src/store/secrets.d.ts +8 -0
  251. package/dist/src/store/secrets.js +10 -0
  252. package/dist/src/store/session-index.d.ts +0 -3
  253. package/dist/src/store/session-index.js +3 -3
  254. package/dist/src/store/session.d.ts +0 -7
  255. package/dist/src/store/session.js +5 -7
  256. package/dist/src/{extend → store}/setting-layers.d.ts +1 -8
  257. package/dist/src/store/setting-layers.js +15 -0
  258. package/dist/src/store/wait-index.d.ts +0 -5
  259. package/dist/src/store.d.ts +1 -1
  260. package/dist/src/store.js +18 -15
  261. package/dist/src/testing.js +94 -87
  262. package/dist/src/util/callable.d.ts +0 -1
  263. package/dist/src/util/clip.d.ts +0 -1
  264. package/dist/src/util/json-schema.d.ts +0 -5
  265. package/dist/src/util/trace.d.ts +0 -4
  266. package/dist/src/util/usage.d.ts +0 -1
  267. package/package.json +4 -3
  268. package/dist/chunks/compose-zt01bebj.js +0 -34
  269. package/dist/src/drive/pause.d.ts +0 -11
  270. package/dist/src/extend/secret-settings.d.ts +0 -4
  271. package/dist/src/extend/secret-settings.js +0 -39
  272. package/dist/src/extend/setting-layers.js +0 -44
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  parseSessionRef2
3
- } from "./compose-v4wdxywp.js";
3
+ } from "./compose-yphjgadz.js";
4
4
 
5
5
  // src/store/log.ts
6
6
  import { SdkError, SessionEventSchema } from "@nyte-ai/schema";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  decodePartRecord2
3
- } from "./compose-kdwr4f9h.js";
3
+ } from "./compose-9zvxshve.js";
4
4
  import {
5
5
  partRef2
6
- } from "./compose-v4wdxywp.js";
6
+ } from "./compose-yphjgadz.js";
7
7
  import {
8
8
  dev2
9
9
  } from "./compose-n116fnmp.js";
@@ -11,17 +11,17 @@ import {
11
11
  load2,
12
12
  put2,
13
13
  readCall2
14
- } from "./compose-fs0g7btz.js";
14
+ } from "./compose-6gckhz4z.js";
15
15
  import {
16
16
  storedAnswer2
17
- } from "./compose-8e6d0bgc.js";
17
+ } from "./compose-hj6m97gz.js";
18
18
  import {
19
19
  waitIndex2,
20
20
  wokenIndex2
21
21
  } from "./compose-v7jq9qbt.js";
22
22
  import {
23
23
  changeCall2
24
- } from "./compose-7z3s2jh4.js";
24
+ } from "./compose-ejdmb593.js";
25
25
  import {
26
26
  holdLease2
27
27
  } from "./compose-79h43be5.js";
@@ -30,7 +30,7 @@ import {
30
30
  readParkedWait2,
31
31
  waitingOn2,
32
32
  lapsed2
33
- } from "./compose-3z4yana6.js";
33
+ } from "./compose-yc19056t.js";
34
34
 
35
35
  // src/engine/durable.ts
36
36
  import { isJson, isJsonObject, SdkError } from "@nyte-ai/schema";
@@ -11,7 +11,7 @@ import {
11
11
  import {
12
12
  sessionRef2,
13
13
  parseSessionRef2
14
- } from "./compose-v4wdxywp.js";
14
+ } from "./compose-yphjgadz.js";
15
15
  import {
16
16
  admits2,
17
17
  fenceNames2,
@@ -19,12 +19,12 @@ import {
19
19
  collectSessionEvents2,
20
20
  loggedEvent2,
21
21
  decodeObject2
22
- } from "./compose-bkhsj5yx.js";
22
+ } from "./compose-05sqjsze.js";
23
23
  import {
24
24
  sessionIndexRef2,
25
25
  projectSessionIndex2,
26
26
  directorySessions2
27
- } from "./compose-b5m0rmfh.js";
27
+ } from "./compose-yg9mtagj.js";
28
28
 
29
29
  // src/store/memory-store.ts
30
30
  import { asId, asSeq, isJsonObject } from "@nyte-ai/schema";
@@ -0,0 +1,38 @@
1
+ // src/store/project-migration.ts
2
+ import { isJsonObject } from "@nyte-ai/schema";
3
+ var projectCoordinators2 = {
4
+ kind: "rewrite",
5
+ name: "2026-11-04-project-coordinators",
6
+ rewrite(object) {
7
+ if (!isJsonObject(object) || object.kind !== "project")
8
+ return null;
9
+ const body = object.body;
10
+ if (!isJsonObject(body) || "models" in body)
11
+ return null;
12
+ const goal = isJsonObject(body.until) ? body.until.goal : undefined;
13
+ const instructions = [
14
+ typeof body.brief === "string" ? body.brief.trim() : "",
15
+ typeof goal === "string" ? `Goal: ${goal}` : ""
16
+ ].filter((line) => line !== "");
17
+ return {
18
+ ...object,
19
+ body: {
20
+ id: body.id ?? null,
21
+ name: body.name ?? null,
22
+ workspace: body.workspace ?? null,
23
+ coordinator: body.lead ?? null,
24
+ models: { coordinator: null, agents: body.worker ?? null },
25
+ instructions: instructions.join(`
26
+
27
+ `),
28
+ skills: [],
29
+ disabledMcp: [],
30
+ disabledDocs: [],
31
+ archived: body.archived ?? false,
32
+ createdAt: body.createdAt ?? 0
33
+ }
34
+ };
35
+ }
36
+ };
37
+
38
+ export { projectCoordinators2 };
@@ -6,7 +6,7 @@ import {
6
6
  } from "./compose-3v627j0s.js";
7
7
  import {
8
8
  decodeObject2
9
- } from "./compose-bkhsj5yx.js";
9
+ } from "./compose-05sqjsze.js";
10
10
 
11
11
  // src/store/catalogs.ts
12
12
  import { asId, isJsonObject, SdkError, SessionCatalogViewSchema } from "@nyte-ai/schema";
@@ -1,31 +1,31 @@
1
1
  import {
2
2
  envelope2
3
- } from "./compose-kdwr4f9h.js";
3
+ } from "./compose-9zvxshve.js";
4
4
  import {
5
5
  partRef2,
6
6
  workspaceRef2,
7
7
  trustRef2,
8
8
  leaseRef2
9
- } from "./compose-v4wdxywp.js";
9
+ } from "./compose-yphjgadz.js";
10
10
  import {
11
11
  publishSet2
12
- } from "./compose-wnh9mvp0.js";
12
+ } from "./compose-scs8k1qr.js";
13
13
  import {
14
14
  newRun2,
15
15
  begin2
16
- } from "./compose-k7zrqkwd.js";
16
+ } from "./compose-bvwkk2km.js";
17
17
  import {
18
18
  createHostState2
19
- } from "./compose-g7939vn0.js";
19
+ } from "./compose-dxr1x24z.js";
20
20
  import {
21
21
  createHost2
22
- } from "./compose-8wgzd0xk.js";
22
+ } from "./compose-nfz0ynfb.js";
23
23
  import {
24
24
  createKernel2
25
- } from "./compose-h9p301x9.js";
25
+ } from "./compose-89m9ff5a.js";
26
26
  import {
27
27
  memoryStore2
28
- } from "./compose-q7an3bw4.js";
28
+ } from "./compose-0yabb4c7.js";
29
29
 
30
30
  // src/harness.ts
31
31
  import { asId } from "@nyte-ai/schema";
@@ -58,6 +58,11 @@ var env2 = {
58
58
  stat: refuse,
59
59
  write: refuse,
60
60
  remove: refuse,
61
+ move: refuse,
62
+ copy: refuse,
63
+ mkdir: refuse,
64
+ trash: refuse,
65
+ restore: refuse,
61
66
  batch: () => {
62
67
  throw new Error("No files in tests.");
63
68
  },
@@ -115,7 +120,8 @@ async function setup2(options) {
115
120
  plugins: [],
116
121
  settings: [],
117
122
  views: [],
118
- defaultWorkspace: workspace2
123
+ defaultWorkspace: workspace2,
124
+ projects: []
119
125
  }),
120
126
  turn: turns.driver,
121
127
  resolveConfiguration: options?.resolveConfiguration ?? (async () => configuration2),
@@ -3,11 +3,11 @@ import {
3
3
  } from "./compose-5z835ej2.js";
4
4
  import {
5
5
  decodeRunRecord2
6
- } from "./compose-kdwr4f9h.js";
6
+ } from "./compose-9zvxshve.js";
7
7
  import {
8
8
  sessionRef2,
9
9
  runRef2
10
- } from "./compose-v4wdxywp.js";
10
+ } from "./compose-yphjgadz.js";
11
11
  import {
12
12
  dev2
13
13
  } from "./compose-n116fnmp.js";
@@ -17,7 +17,7 @@ import {
17
17
  requireSession2,
18
18
  put2,
19
19
  attempt2
20
- } from "./compose-fs0g7btz.js";
20
+ } from "./compose-6gckhz4z.js";
21
21
  import {
22
22
  convertJsonSchema2,
23
23
  check2
@@ -28,11 +28,11 @@ import {
28
28
  } from "./compose-84272xbk.js";
29
29
  import {
30
30
  commit2
31
- } from "./compose-7z3s2jh4.js";
31
+ } from "./compose-ejdmb593.js";
32
32
  import {
33
33
  modelInfo2,
34
34
  withLimits2
35
- } from "./compose-z5kyvvcn.js";
35
+ } from "./compose-b4ymq924.js";
36
36
 
37
37
  // src/agent/request.ts
38
38
  import { contentText } from "@nyte-ai/schema/model";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  readWorkspace2
3
- } from "./compose-m4nbk7cg.js";
3
+ } from "./compose-5crk6kb9.js";
4
4
  import {
5
5
  projectTrust2
6
- } from "./compose-jcdkrkrq.js";
6
+ } from "./compose-ew3k2afa.js";
7
7
 
8
8
  // src/extend/plugin-folders.ts
9
9
  var PLUGIN_FOLDER2 = ".nyte/plugins";
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  START2,
7
7
  NO_BACKGROUND2
8
- } from "./compose-fs0g7btz.js";
8
+ } from "./compose-6gckhz4z.js";
9
9
 
10
10
  // src/fold/draft.ts
11
11
  import { asId, backgroundRowKey, compile } from "@nyte-ai/schema";
@@ -35,7 +35,7 @@ function updatePart2(draft, id, change) {
35
35
  const next = change(current);
36
36
  if (next === current)
37
37
  return;
38
- draft.parts.set(id, next);
38
+ putPart2(draft, next);
39
39
  const message = draft.messages.get(toPartMessageId2(id));
40
40
  if (message?.kind === "part")
41
41
  return setMessage2(draft, {
@@ -50,6 +50,20 @@ function updatePart2(draft, id, change) {
50
50
  draft.partViews = draft.partViews.with(index, partView2(next));
51
51
  touchRow2(draft, "parts", id);
52
52
  }
53
+ function putPart2(draft, record) {
54
+ draft.parts.set(record.id, record);
55
+ if (awaitsSettlement2(record))
56
+ draft.unsettled.add(record.id);
57
+ else
58
+ draft.unsettled.delete(record.id);
59
+ }
60
+ function dropPart2(draft, id) {
61
+ draft.parts.delete(id);
62
+ draft.unsettled.delete(id);
63
+ }
64
+ function awaitsSettlement2(part) {
65
+ return part.status.kind === "live" || part.status.kind === "waiting";
66
+ }
53
67
  function committed2(draft, id) {
54
68
  const commit = draft.commits.get(id);
55
69
  if (commit === undefined)
@@ -331,4 +345,4 @@ function pendingTurn2(id) {
331
345
  return asId(`pending:${id}`);
332
346
  }
333
347
 
334
- export { IDLE2, WORKING2, UNCONFIGURED2, NO_CONTEXT2, updatePart2, committed2, setMessage2, setTurn2, showsTurn2, hidesTurn2, touchRow2, dropRow2, touchPath2, setChanges2, setCatalogId2, noteHead2, dropHead2, emptyStamps2, newTouched2, backgroundRows2, readQueueIds2, belongsInQueue2, openTurn2, turnInfo2, updateHead2, dropFailed2, liveRun2, newPath2, emptyHead2, partView2, reuse2, toPartMessageId2, pendingTurn2 };
348
+ export { IDLE2, WORKING2, UNCONFIGURED2, NO_CONTEXT2, updatePart2, putPart2, dropPart2, awaitsSettlement2, committed2, setMessage2, setTurn2, showsTurn2, hidesTurn2, touchRow2, dropRow2, touchPath2, setChanges2, setCatalogId2, noteHead2, dropHead2, emptyStamps2, newTouched2, backgroundRows2, readQueueIds2, belongsInQueue2, openTurn2, turnInfo2, updateHead2, dropFailed2, liveRun2, newPath2, emptyHead2, partView2, reuse2, toPartMessageId2, pendingTurn2 };
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  requireSession2
3
- } from "./compose-fs0g7btz.js";
3
+ } from "./compose-6gckhz4z.js";
4
4
  import {
5
5
  forwarded2
6
6
  } from "./compose-r714e418.js";
7
7
  import {
8
8
  readWorkspace2
9
- } from "./compose-m4nbk7cg.js";
9
+ } from "./compose-5crk6kb9.js";
10
10
  import {
11
11
  projectTrust2
12
- } from "./compose-jcdkrkrq.js";
12
+ } from "./compose-ew3k2afa.js";
13
13
 
14
14
  // src/env/mcp.ts
15
15
  import { SdkError } from "@nyte-ai/schema";
@@ -1,33 +1,33 @@
1
1
  import {
2
2
  hostPrincipalsRef2
3
- } from "./compose-v4wdxywp.js";
3
+ } from "./compose-yphjgadz.js";
4
4
  import {
5
5
  sendReceipt2
6
- } from "./compose-c3b46yga.js";
6
+ } from "./compose-jq3j6n2c.js";
7
7
  import {
8
8
  heldReceipt2,
9
9
  applyBatch2
10
- } from "./compose-s53kwh1s.js";
10
+ } from "./compose-err2x79t.js";
11
11
  import {
12
12
  move2
13
- } from "./compose-fhre47zv.js";
13
+ } from "./compose-pm12nqkh.js";
14
14
  import {
15
15
  driveInProcess2
16
- } from "./compose-v1qy7at2.js";
16
+ } from "./compose-50nd01ad.js";
17
17
  import {
18
18
  attachSession2
19
- } from "./compose-r1j3g6qs.js";
19
+ } from "./compose-nm0r8780.js";
20
20
  import {
21
21
  leaseHold2,
22
22
  releaseHold2
23
- } from "./compose-2rze4dp0.js";
23
+ } from "./compose-cct3t9v9.js";
24
24
  import {
25
25
  sessionChanges2
26
- } from "./compose-nn05pggt.js";
26
+ } from "./compose-mps0t4tj.js";
27
27
  import {
28
28
  redeemPairing2,
29
29
  authenticateToken2
30
- } from "./compose-w9harpgf.js";
30
+ } from "./compose-9tyqzjts.js";
31
31
 
32
32
  // src/api/server.ts
33
33
  function createServerHost2(kernel) {
@@ -4,14 +4,14 @@ import {
4
4
  import {
5
5
  decodeRunRecord2,
6
6
  decodeLease2
7
- } from "./compose-kdwr4f9h.js";
7
+ } from "./compose-9zvxshve.js";
8
8
  import {
9
9
  dev2
10
10
  } from "./compose-n116fnmp.js";
11
11
  import {
12
12
  runRef2,
13
13
  leaseRef2
14
- } from "./compose-v4wdxywp.js";
14
+ } from "./compose-yphjgadz.js";
15
15
  import {
16
16
  load2,
17
17
  readSession2,
@@ -21,60 +21,60 @@ import {
21
21
  covers2,
22
22
  coveredSessions2,
23
23
  coveredHere2
24
- } from "./compose-fs0g7btz.js";
24
+ } from "./compose-6gckhz4z.js";
25
25
  import {
26
26
  withFold2
27
- } from "./compose-27jdjx5y.js";
27
+ } from "./compose-thf39hdv.js";
28
28
  import {
29
29
  readChildState2
30
- } from "./compose-h2bxs4jj.js";
30
+ } from "./compose-80eam7w1.js";
31
31
  import {
32
32
  commit2
33
- } from "./compose-7z3s2jh4.js";
33
+ } from "./compose-ejdmb593.js";
34
34
  import {
35
35
  holdLease2
36
36
  } from "./compose-79h43be5.js";
37
37
  import {
38
38
  loadWaits2,
39
39
  earliestWake2
40
- } from "./compose-3z4yana6.js";
40
+ } from "./compose-yc19056t.js";
41
41
  import {
42
42
  LEASE_MS2
43
- } from "./compose-xe03b4qd.js";
43
+ } from "./compose-08rmb0yn.js";
44
44
  import {
45
45
  stopRequested2
46
- } from "./compose-fkj32m47.js";
46
+ } from "./compose-kt88k2db.js";
47
47
  import {
48
48
  selectRunStart2,
49
49
  landing2
50
- } from "./compose-06npxy5m.js";
50
+ } from "./compose-vmr9v2v6.js";
51
51
  import {
52
52
  reapJobs2
53
- } from "./compose-z7ex5h37.js";
53
+ } from "./compose-6ctc8sqj.js";
54
54
  import {
55
55
  newRun2,
56
56
  begin2,
57
57
  endRun2
58
- } from "./compose-k7zrqkwd.js";
58
+ } from "./compose-bvwkk2km.js";
59
59
  import {
60
60
  executeCall2,
61
61
  owedCalls2,
62
62
  readToolInput2
63
- } from "./compose-kw7fr9gb.js";
63
+ } from "./compose-mgwsbc2n.js";
64
64
  import {
65
65
  recoverMoves2
66
- } from "./compose-fhre47zv.js";
66
+ } from "./compose-pm12nqkh.js";
67
67
  import {
68
68
  BEAT_MS2
69
- } from "./compose-nqas4rj1.js";
69
+ } from "./compose-z8nexyz2.js";
70
70
  import {
71
71
  recoverStarts2
72
- } from "./compose-9btw2ftt.js";
72
+ } from "./compose-9g0z9k4e.js";
73
73
  import {
74
74
  crashLooping2,
75
75
  parkedFailure2,
76
76
  interruption2
77
- } from "./compose-0pgfd2m6.js";
77
+ } from "./compose-ywnk93xk.js";
78
78
 
79
79
  // src/drive/execution.ts
80
80
  import { asId, SdkError } from "@nyte-ai/schema";
@@ -0,0 +1,126 @@
1
+ import {
2
+ decodeWorkspaceRecord2,
3
+ decodeProjectRecord2
4
+ } from "./compose-9zvxshve.js";
5
+ import {
6
+ workspaceRef2,
7
+ PROJECTS2,
8
+ projectRef2
9
+ } from "./compose-yphjgadz.js";
10
+ import {
11
+ STALE2,
12
+ load2,
13
+ readSession2,
14
+ put2,
15
+ attempt2
16
+ } from "./compose-6gckhz4z.js";
17
+ import {
18
+ commit2
19
+ } from "./compose-ejdmb593.js";
20
+ import {
21
+ dropScans2
22
+ } from "./compose-yg7qvfxt.js";
23
+
24
+ // src/api/projects.ts
25
+ import { asId, PROJECT_EDITABLE, SdkError } from "@nyte-ai/schema";
26
+ function createProjects2(kernel) {
27
+ return {
28
+ async create(input) {
29
+ if (await kernel.store.refs.get(workspaceRef2(input.workspace)) === null)
30
+ throw new SdkError("unknown", `Workspace ${input.workspace} is not registered on this host.`);
31
+ const at = Date.now();
32
+ const project = {
33
+ id: asId(crypto.randomUUID()),
34
+ name: input.name,
35
+ workspace: input.workspace,
36
+ coordinator: null,
37
+ models: input.models,
38
+ instructions: input.instructions,
39
+ skills: input.skills,
40
+ disabledMcp: input.disabledMcp,
41
+ disabledDocs: input.disabledDocs,
42
+ archived: false,
43
+ createdAt: at
44
+ };
45
+ await commit2(kernel, [
46
+ {
47
+ name: projectRef2(project.id),
48
+ target: await put2(kernel.store, "project", project, at),
49
+ expect: "absent"
50
+ }
51
+ ]);
52
+ await publishProjects2(kernel);
53
+ return project;
54
+ }
55
+ };
56
+ }
57
+ function projectHandle2(kernel, id) {
58
+ return {
59
+ id,
60
+ async update(patch) {
61
+ const { before, updated } = await attempt2(`Updating project ${id}`, async () => {
62
+ const found = await requireProject2(kernel, id);
63
+ const next = applyPatch(found.record, patch, PROJECT_EDITABLE);
64
+ if (next === found.record)
65
+ return { before: found.record, updated: next };
66
+ const outcome = await commit2(kernel, [
67
+ {
68
+ name: projectRef2(id),
69
+ target: await put2(kernel.store, "project", next),
70
+ expect: found.ref.revision
71
+ }
72
+ ]);
73
+ return outcome.kind === "set" ? { before: found.record, updated: next } : STALE2;
74
+ });
75
+ await publishProjects2(kernel);
76
+ if (JSON.stringify(before.disabledMcp) !== JSON.stringify(updated.disabledMcp) || JSON.stringify(before.disabledDocs) !== JSON.stringify(updated.disabledDocs))
77
+ await reloadProjectSessions(kernel, id);
78
+ return updated;
79
+ }
80
+ };
81
+ }
82
+ async function readProjects2(kernel) {
83
+ const found = await Promise.all((await kernel.store.refs.list(PROJECTS2)).map((ref) => load2(kernel.store, ref, decodeProjectRecord2)));
84
+ return found.flatMap((entry) => entry === null ? [] : [entry.record]).toSorted((left, right) => left.createdAt - right.createdAt);
85
+ }
86
+ async function publishProjects2(kernel) {
87
+ kernel.host.update({ projects: await readProjects2(kernel) });
88
+ }
89
+ async function requireProject2(kernel, id) {
90
+ const found = await load2(kernel.store, await kernel.store.refs.get(projectRef2(id)), decodeProjectRecord2);
91
+ if (found === null)
92
+ throw new SdkError("unknown", `No project has the id ${id}.`);
93
+ return found;
94
+ }
95
+ async function joinableProject2(kernel, id, workspace) {
96
+ const found = await requireProject2(kernel, id);
97
+ if (found.record.archived)
98
+ throw new SdkError("invalid", `Project ${found.record.name} is archived.`);
99
+ const own = await load2(kernel.store, await kernel.store.refs.get(workspaceRef2(workspace)), decodeWorkspaceRecord2);
100
+ const folder = own?.record.isolation?.source ?? workspace;
101
+ if (folder !== found.record.workspace)
102
+ throw new SdkError("invalid", `Project ${found.record.name} works in another folder than this chat.`);
103
+ return found;
104
+ }
105
+ async function coordinatorUpdate2(kernel, found, session) {
106
+ return {
107
+ name: projectRef2(found.record.id),
108
+ target: await put2(kernel.store, "project", { ...found.record, coordinator: session }),
109
+ expect: found.ref.revision
110
+ };
111
+ }
112
+ async function reloadProjectSessions(kernel, id) {
113
+ const sessions = [...kernel.plugins.runtimes().keys()];
114
+ const records = await Promise.all(sessions.map((session) => readSession2(kernel.store, session)));
115
+ const chosen = new Set(records.flatMap((found) => found?.record.project === id ? [found.record.id] : []));
116
+ dropScans2(kernel, (session) => chosen.has(session));
117
+ await Promise.all([...chosen].map((session) => kernel.plugins.reload(session)));
118
+ }
119
+ function applyPatch(record, patch, keys) {
120
+ const changed = keys.filter((key) => patch[key] !== undefined && JSON.stringify(patch[key]) !== JSON.stringify(record[key]));
121
+ if (changed.length === 0)
122
+ return record;
123
+ return Object.assign({ ...record }, Object.fromEntries(changed.map((key) => [key, patch[key]])));
124
+ }
125
+
126
+ export { createProjects2, projectHandle2, readProjects2, publishProjects2, requireProject2, joinableProject2, coordinatorUpdate2 };
@@ -1,23 +1,23 @@
1
1
  import {
2
2
  decodeWorkspaceRecord2
3
- } from "./compose-kdwr4f9h.js";
3
+ } from "./compose-9zvxshve.js";
4
4
  import {
5
5
  workspaceRef2
6
- } from "./compose-v4wdxywp.js";
6
+ } from "./compose-yphjgadz.js";
7
7
  import {
8
8
  load2,
9
9
  requireSession2,
10
10
  listSessionRecords2
11
- } from "./compose-fs0g7btz.js";
11
+ } from "./compose-6gckhz4z.js";
12
12
  import {
13
13
  applyBatch2
14
- } from "./compose-s53kwh1s.js";
14
+ } from "./compose-err2x79t.js";
15
15
  import {
16
16
  wrapBrowser2
17
- } from "./compose-9ea1z187.js";
17
+ } from "./compose-dvhhpy57.js";
18
18
  import {
19
19
  resolveVariables2
20
- } from "./compose-pfesbnwr.js";
20
+ } from "./compose-8by3anxq.js";
21
21
 
22
22
  // src/env/environment.ts
23
23
  import { SdkError } from "@nyte-ai/schema";
@@ -295,6 +295,9 @@ function wrapFiles(kernel, scope, files) {
295
295
  const plan = (entries) => ({
296
296
  put: (input) => plan([...entries, { kind: "put", ...input }]),
297
297
  remove: (input) => plan([...entries, { kind: "remove", ...input }]),
298
+ move: (input) => plan([...entries, { kind: "move", ...input }]),
299
+ copy: (input) => plan([...entries, { kind: "copy", ...input }]),
300
+ mkdir: (input) => plan([...entries, { kind: "mkdir", ...input }]),
298
301
  apply: () => applyBatch2(kernel, scope, files, entries)
299
302
  });
300
303
  return {
@@ -303,6 +306,11 @@ function wrapFiles(kernel, scope, files) {
303
306
  stat: (path) => files.stat(path),
304
307
  write: (path, contents, options) => files.write(path, contents, options),
305
308
  remove: (path, options) => files.remove(path, options),
309
+ move: (from, to) => files.move(from, to),
310
+ copy: (from, to) => files.copy(from, to),
311
+ mkdir: (path) => files.mkdir(path),
312
+ trash: (path) => files.trash(path),
313
+ restore: (token) => files.restore(token),
306
314
  batch: () => plan([]),
307
315
  format: (path, contents) => files.format(path, contents),
308
316
  scan: (input) => files.scan(input),
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  START2,
6
6
  readPositionCommit2
7
- } from "./compose-fs0g7btz.js";
7
+ } from "./compose-6gckhz4z.js";
8
8
 
9
9
  // src/fold/project.ts
10
10
  function holdsReports2(execution) {
@@ -3,11 +3,11 @@ import {
3
3
  } from "./compose-5z835ej2.js";
4
4
  import {
5
5
  decodeJobRecord2
6
- } from "./compose-kdwr4f9h.js";
6
+ } from "./compose-9zvxshve.js";
7
7
  import {
8
8
  JOBS2,
9
9
  jobRef2
10
- } from "./compose-v4wdxywp.js";
10
+ } from "./compose-yphjgadz.js";
11
11
  import {
12
12
  dev2
13
13
  } from "./compose-n116fnmp.js";
@@ -16,14 +16,14 @@ import {
16
16
  load2,
17
17
  readSession2,
18
18
  put2
19
- } from "./compose-fs0g7btz.js";
19
+ } from "./compose-6gckhz4z.js";
20
20
  import {
21
21
  followedTrace2,
22
22
  traceparent2
23
23
  } from "./compose-sp6d0d37.js";
24
24
  import {
25
25
  commit2
26
- } from "./compose-7z3s2jh4.js";
26
+ } from "./compose-ejdmb593.js";
27
27
  import {
28
28
  clipText2
29
29
  } from "./compose-vdq5n6th.js";
@@ -33,14 +33,14 @@ import {
33
33
  import {
34
34
  readJob2,
35
35
  waitFor2
36
- } from "./compose-3z4yana6.js";
36
+ } from "./compose-yc19056t.js";
37
37
  import {
38
38
  send2
39
- } from "./compose-06npxy5m.js";
39
+ } from "./compose-vmr9v2v6.js";
40
40
  import {
41
41
  recordAcquisition2,
42
42
  recordedAcquisition2
43
- } from "./compose-xe03b4qd.js";
43
+ } from "./compose-08rmb0yn.js";
44
44
 
45
45
  // src/engine/jobs.ts
46
46
  import { asId, asSeq, foldJobChange, jobTaskState, SdkError } from "@nyte-ai/schema";