attention-manifest-protocol 0.4.2 → 0.4.3

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 (827) hide show
  1. package/CHANGELOG.md +341 -293
  2. package/CHANGELOG.zh-CN.md +41 -8
  3. package/README.md +250 -171
  4. package/README.zh-CN.md +251 -171
  5. package/lib/assignment/assign.d.ts +102 -0
  6. package/lib/assignment/assign.js +556 -0
  7. package/lib/assignment/binding.d.ts +103 -0
  8. package/lib/assignment/binding.js +575 -0
  9. package/lib/assignment/errors.d.ts +14 -0
  10. package/lib/assignment/errors.js +16 -0
  11. package/lib/assignment/guards.d.ts +18 -0
  12. package/lib/assignment/guards.js +28 -0
  13. package/lib/assignment/index.d.ts +10 -0
  14. package/lib/assignment/index.js +10 -0
  15. package/lib/assignment/types.d.ts +169 -0
  16. package/lib/assignment/types.js +1 -0
  17. package/lib/attention/budget.d.ts +1 -1
  18. package/lib/attention/budget.js +31 -9
  19. package/lib/bayes/engine.js +2 -1
  20. package/lib/bayes/reliability.js +25 -10
  21. package/lib/boundary/frame.d.ts +10 -4
  22. package/lib/boundary/frame.js +346 -109
  23. package/lib/boundary/kinds.d.ts +11 -0
  24. package/lib/boundary/kinds.js +33 -0
  25. package/lib/boundary/refTable.d.ts +19 -9
  26. package/lib/boundary/refTable.js +128 -30
  27. package/lib/boundary/toolCall.d.ts +22 -10
  28. package/lib/boundary/toolCall.js +798 -97
  29. package/lib/concept/conceptBudget.js +10 -1
  30. package/lib/concurrency/idempotency.d.ts +4 -3
  31. package/lib/concurrency/idempotency.js +57 -13
  32. package/lib/concurrency/retry.js +18 -3
  33. package/lib/context/agentContext.d.ts +13 -0
  34. package/lib/context/agentContext.js +14 -1
  35. package/lib/context/ast.d.ts +4 -1
  36. package/lib/context/ast.js +13 -3
  37. package/lib/context/contentStore.js +22 -9
  38. package/lib/context/contextBuilder.d.ts +457 -0
  39. package/lib/context/contextBuilder.js +1395 -0
  40. package/lib/context/contextPackage.d.ts +214 -0
  41. package/lib/context/contextPackage.js +191 -0
  42. package/lib/context/index.d.ts +14 -3
  43. package/lib/context/index.js +9 -1
  44. package/lib/context/relevance.d.ts +171 -0
  45. package/lib/context/relevance.js +250 -0
  46. package/lib/context/workspaceDiff.d.ts +105 -0
  47. package/lib/context/workspaceDiff.js +238 -0
  48. package/lib/context/workspaceService.d.ts +236 -1
  49. package/lib/context/workspaceService.js +1501 -73
  50. package/lib/cooperation/collaboration.d.ts +9 -0
  51. package/lib/cooperation/session.d.ts +4 -4
  52. package/lib/cooperation/session.js +3 -3
  53. package/lib/database/adapter/filesystemStore.d.ts +145 -0
  54. package/lib/database/adapter/filesystemStore.js +321 -0
  55. package/lib/database/adapter/index.d.ts +2 -0
  56. package/lib/database/adapter/index.js +2 -0
  57. package/lib/database/adapter/workspaceSessionStore.d.ts +118 -0
  58. package/lib/database/adapter/workspaceSessionStore.js +120 -0
  59. package/lib/database/entity/fileGraph.d.ts +53 -0
  60. package/lib/database/entity/fileGraph.js +15 -0
  61. package/lib/database/entity/fileTree.d.ts +76 -0
  62. package/lib/database/entity/fileTree.js +39 -0
  63. package/lib/database/entity/hook.d.ts +29 -0
  64. package/lib/database/entity/hook.js +18 -0
  65. package/lib/database/entity/index.d.ts +4 -0
  66. package/lib/database/entity/index.js +4 -0
  67. package/lib/database/entity/workspaceSession.d.ts +53 -0
  68. package/lib/database/entity/workspaceSession.js +28 -0
  69. package/lib/database/repository/fileAnnotationRepository.d.ts +75 -0
  70. package/lib/database/repository/fileAnnotationRepository.js +109 -0
  71. package/lib/database/repository/fileGraphRepository.d.ts +188 -0
  72. package/lib/database/repository/fileGraphRepository.js +648 -0
  73. package/lib/database/repository/fileNodeRepository.d.ts +116 -0
  74. package/lib/database/repository/fileNodeRepository.js +263 -0
  75. package/lib/database/repository/fileOutlineRepository.d.ts +40 -0
  76. package/lib/database/repository/fileOutlineRepository.js +104 -0
  77. package/lib/database/repository/fileWriteRepository.d.ts +41 -0
  78. package/lib/database/repository/fileWriteRepository.js +93 -0
  79. package/lib/database/repository/hookRepository.d.ts +67 -0
  80. package/lib/database/repository/hookRepository.js +150 -0
  81. package/lib/database/repository/index.d.ts +7 -0
  82. package/lib/database/repository/index.js +7 -0
  83. package/lib/database/repository/workspaceSessionRepository.d.ts +134 -0
  84. package/lib/database/repository/workspaceSessionRepository.js +327 -0
  85. package/lib/database/service/database.d.ts +14 -0
  86. package/lib/database/service/database.js +21 -0
  87. package/lib/database/sql/schema.js +187 -0
  88. package/lib/database/store/database.js +6 -1
  89. package/lib/delegate/team.d.ts +5 -0
  90. package/lib/delegate/team.js +83 -20
  91. package/lib/discover/classify.d.ts +20 -0
  92. package/lib/discover/classify.js +85 -0
  93. package/lib/discover/host.d.ts +20 -0
  94. package/lib/discover/host.js +89 -0
  95. package/lib/discover/index.d.ts +11 -0
  96. package/lib/discover/index.js +11 -0
  97. package/lib/discover/kinds.d.ts +14 -0
  98. package/lib/discover/kinds.js +23 -0
  99. package/lib/discover/tree.d.ts +7 -0
  100. package/lib/discover/tree.js +432 -0
  101. package/lib/discover/types.d.ts +115 -0
  102. package/lib/discover/types.js +1 -0
  103. package/lib/error/boundaryRejection.d.ts +1 -1
  104. package/lib/evaluation/agreement.js +2 -2
  105. package/lib/execution/handles.js +6 -0
  106. package/lib/execution/pin.js +2 -2
  107. package/lib/file/cfb.d.ts +56 -0
  108. package/lib/file/cfb.js +396 -0
  109. package/lib/file/dependency.d.ts +151 -0
  110. package/lib/file/dependency.js +568 -0
  111. package/lib/file/directory.d.ts +34 -0
  112. package/lib/file/directory.js +141 -0
  113. package/lib/file/errors.d.ts +20 -0
  114. package/lib/file/errors.js +18 -0
  115. package/lib/file/exportGraph.d.ts +31 -0
  116. package/lib/file/exportGraph.js +554 -0
  117. package/lib/file/file.d.ts +40 -0
  118. package/lib/file/file.js +339 -0
  119. package/lib/file/importGraph.d.ts +121 -0
  120. package/lib/file/importGraph.js +1022 -0
  121. package/lib/file/index.d.ts +45 -0
  122. package/lib/file/index.js +30 -0
  123. package/lib/file/metadata.d.ts +66 -0
  124. package/lib/file/metadata.js +470 -0
  125. package/lib/file/path.d.ts +60 -0
  126. package/lib/file/path.js +259 -0
  127. package/lib/file/read.d.ts +168 -0
  128. package/lib/file/read.js +541 -0
  129. package/lib/file/runtime.d.ts +95 -0
  130. package/lib/file/runtime.js +150 -0
  131. package/lib/file/service.d.ts +227 -0
  132. package/lib/file/service.js +663 -0
  133. package/lib/file/syntaxTree.d.ts +7 -0
  134. package/lib/file/syntaxTree.js +38 -0
  135. package/lib/file/time.d.ts +38 -0
  136. package/lib/file/time.js +44 -0
  137. package/lib/file/tree.d.ts +53 -0
  138. package/lib/file/tree.js +417 -0
  139. package/lib/file/types.d.ts +371 -0
  140. package/lib/file/types.js +1 -0
  141. package/lib/file/write.d.ts +159 -0
  142. package/lib/file/write.js +1028 -0
  143. package/lib/file/zip.d.ts +35 -0
  144. package/lib/file/zip.js +349 -0
  145. package/lib/fingerprint/algorithm.d.ts +97 -0
  146. package/lib/fingerprint/algorithm.js +271 -0
  147. package/lib/fingerprint/bytes.d.ts +18 -0
  148. package/lib/fingerprint/bytes.js +31 -0
  149. package/lib/fingerprint/error.d.ts +73 -0
  150. package/lib/fingerprint/error.js +86 -0
  151. package/lib/fingerprint/file.d.ts +71 -0
  152. package/lib/fingerprint/file.js +254 -0
  153. package/lib/fingerprint/index.d.ts +37 -0
  154. package/lib/fingerprint/index.js +12 -0
  155. package/lib/fingerprint/json.d.ts +41 -0
  156. package/lib/fingerprint/json.js +94 -0
  157. package/lib/fingerprint/number.d.ts +32 -0
  158. package/lib/fingerprint/number.js +95 -0
  159. package/lib/fingerprint/policy.d.ts +54 -0
  160. package/lib/fingerprint/policy.js +50 -0
  161. package/lib/fingerprint/preimage.d.ts +84 -0
  162. package/lib/fingerprint/preimage.js +133 -0
  163. package/lib/fingerprint/raw.d.ts +26 -0
  164. package/lib/fingerprint/raw.js +45 -0
  165. package/lib/fingerprint/ref.d.ts +39 -0
  166. package/lib/fingerprint/ref.js +178 -0
  167. package/lib/fingerprint/text.d.ts +42 -0
  168. package/lib/fingerprint/text.js +155 -0
  169. package/lib/fingerprint/tree.d.ts +56 -0
  170. package/lib/fingerprint/tree.js +288 -0
  171. package/lib/fingerprint/verify.d.ts +20 -0
  172. package/lib/fingerprint/verify.js +99 -0
  173. package/lib/global/filesystem.d.ts +43 -0
  174. package/lib/global/filesystem.js +75 -0
  175. package/lib/global/index.d.ts +8 -0
  176. package/lib/global/index.js +8 -0
  177. package/lib/global/service.d.ts +51 -0
  178. package/lib/global/service.js +98 -0
  179. package/lib/governance/transport.js +18 -6
  180. package/lib/hook/ast.d.ts +29 -0
  181. package/lib/hook/ast.js +22 -0
  182. package/lib/hook/code.d.ts +55 -0
  183. package/lib/hook/code.js +47 -0
  184. package/lib/hook/dependency.d.ts +45 -0
  185. package/lib/hook/dependency.js +28 -0
  186. package/lib/hook/diff.d.ts +114 -0
  187. package/lib/hook/diff.js +327 -0
  188. package/lib/hook/exportation.d.ts +31 -0
  189. package/lib/hook/exportation.js +24 -0
  190. package/lib/hook/file.d.ts +44 -0
  191. package/lib/hook/file.js +154 -0
  192. package/lib/hook/importation.d.ts +33 -0
  193. package/lib/hook/importation.js +22 -0
  194. package/lib/hook/index.d.ts +30 -0
  195. package/lib/hook/index.js +23 -0
  196. package/lib/hook/outline.d.ts +35 -0
  197. package/lib/hook/outline.js +27 -0
  198. package/lib/hook/project.d.ts +65 -0
  199. package/lib/hook/project.js +217 -0
  200. package/lib/hook/types.d.ts +114 -0
  201. package/lib/hook/types.js +407 -0
  202. package/lib/index.d.ts +9 -0
  203. package/lib/index.js +9 -0
  204. package/lib/lock/lease.js +28 -3
  205. package/lib/manifest/cardSign.d.ts +1 -1
  206. package/lib/manifest/cardSign.js +37 -7
  207. package/lib/manifest/federation.js +13 -6
  208. package/lib/manifest/trust.d.ts +2 -0
  209. package/lib/manifest/trust.js +27 -6
  210. package/lib/module/index.d.ts +4 -0
  211. package/lib/module/index.js +4 -0
  212. package/lib/module/mcp/client.js +21 -2
  213. package/lib/module/mcp/filesystemServer.d.ts +24 -0
  214. package/lib/module/mcp/filesystemServer.js +102 -0
  215. package/lib/module/mcp/http.js +32 -19
  216. package/lib/module/mcp/workspaceServer.js +20 -3
  217. package/lib/module/tool/filesystemExecutor.d.ts +18 -0
  218. package/lib/module/tool/filesystemExecutor.js +49 -0
  219. package/lib/module/tool/globalExecutor.d.ts +17 -0
  220. package/lib/module/tool/globalExecutor.js +39 -0
  221. package/lib/module/tool/globalFilesystemExecutor.d.ts +18 -0
  222. package/lib/module/tool/globalFilesystemExecutor.js +49 -0
  223. package/lib/module/tool/workspaceExecutor.d.ts +9 -0
  224. package/lib/module/tool/workspaceExecutor.js +16 -3
  225. package/lib/naming/aliases.d.ts +48 -0
  226. package/lib/naming/aliases.js +79 -0
  227. package/lib/naming/catalog.d.ts +117 -0
  228. package/lib/naming/catalog.js +108 -0
  229. package/lib/naming/grammar.d.ts +67 -0
  230. package/lib/naming/grammar.js +212 -0
  231. package/lib/naming/ids.d.ts +157 -0
  232. package/lib/naming/ids.js +119 -0
  233. package/lib/naming/index.d.ts +13 -0
  234. package/lib/naming/index.js +13 -0
  235. package/lib/outline/index.d.ts +9 -0
  236. package/lib/outline/index.js +8 -0
  237. package/lib/outline/office.d.ts +160 -0
  238. package/lib/outline/office.js +2375 -0
  239. package/lib/outline/officeBridge.d.ts +32 -0
  240. package/lib/outline/officeBridge.js +27 -0
  241. package/lib/outline/outline.d.ts +159 -0
  242. package/lib/outline/outline.js +837 -0
  243. package/lib/outline/outlineIndex.d.ts +97 -0
  244. package/lib/outline/outlineIndex.js +325 -0
  245. package/lib/outline/outlineKeywords.d.ts +59 -0
  246. package/lib/outline/outlineKeywords.js +143 -0
  247. package/lib/outline/outlineStrategies.d.ts +414 -0
  248. package/lib/outline/outlineStrategies.js +8324 -0
  249. package/lib/outline/reactOutline.d.ts +37 -0
  250. package/lib/outline/reactOutline.js +1070 -0
  251. package/lib/outline/shellOutline.d.ts +65 -0
  252. package/lib/outline/shellOutline.js +873 -0
  253. package/lib/outline/sqlOutline.d.ts +170 -0
  254. package/lib/outline/sqlOutline.js +1536 -0
  255. package/lib/outline/strategy.d.ts +46 -0
  256. package/lib/outline/strategy.js +1 -0
  257. package/lib/outline/types.d.ts +95 -0
  258. package/lib/outline/types.js +1 -0
  259. package/lib/outline/visualBasicOutline.d.ts +27 -0
  260. package/lib/outline/visualBasicOutline.js +750 -0
  261. package/lib/protocol/filesystem.d.ts +55 -0
  262. package/lib/protocol/filesystem.js +105 -0
  263. package/lib/protocol/global.d.ts +42 -0
  264. package/lib/protocol/global.js +63 -0
  265. package/lib/protocol/globalFilesystem.d.ts +40 -0
  266. package/lib/protocol/globalFilesystem.js +59 -0
  267. package/lib/protocol/index.d.ts +4 -0
  268. package/lib/protocol/index.js +4 -0
  269. package/lib/protocol/protocol.d.ts +4 -0
  270. package/lib/protocol/wire.js +5 -2
  271. package/lib/protocol/workspace.d.ts +305 -0
  272. package/lib/protocol/workspace.js +258 -0
  273. package/lib/receipt/receipt.d.ts +8 -0
  274. package/lib/registry/content.js +9 -3
  275. package/lib/runtime/kernelRuntime.js +9 -1
  276. package/lib/scenario/scenario.js +5 -4
  277. package/lib/semantic/canonical.d.ts +61 -0
  278. package/lib/semantic/canonical.js +135 -8
  279. package/lib/semantic/jsonValue.d.ts +31 -0
  280. package/lib/semantic/jsonValue.js +122 -0
  281. package/lib/semantic/sha256.js +3 -0
  282. package/lib/semantic/time.d.ts +14 -0
  283. package/lib/semantic/time.js +56 -0
  284. package/lib/session/context.d.ts +76 -0
  285. package/lib/session/context.js +419 -0
  286. package/lib/session/errors.d.ts +24 -0
  287. package/lib/session/errors.js +22 -0
  288. package/lib/session/identity.d.ts +24 -0
  289. package/lib/session/identity.js +56 -0
  290. package/lib/session/index.d.ts +14 -0
  291. package/lib/session/index.js +12 -0
  292. package/lib/session/registry.d.ts +130 -0
  293. package/lib/session/registry.js +908 -0
  294. package/lib/session/types.d.ts +227 -0
  295. package/lib/session/types.js +14 -0
  296. package/lib/structure/index.d.ts +1 -0
  297. package/lib/structure/index.js +1 -0
  298. package/lib/structure/trie.d.ts +88 -0
  299. package/lib/structure/trie.js +183 -0
  300. package/lib/syntax/byteIndex.d.ts +44 -0
  301. package/lib/syntax/byteIndex.js +148 -0
  302. package/lib/syntax/charset.d.ts +88 -0
  303. package/lib/syntax/charset.js +276 -0
  304. package/lib/syntax/index.d.ts +6 -0
  305. package/lib/syntax/index.js +5 -0
  306. package/lib/syntax/syntaxRegistry.d.ts +150 -0
  307. package/lib/syntax/syntaxRegistry.js +314 -0
  308. package/lib/syntax/syntaxTree.d.ts +106 -0
  309. package/lib/syntax/syntaxTree.js +668 -0
  310. package/lib/syntax/types.d.ts +15 -0
  311. package/lib/syntax/types.js +1 -0
  312. package/lib/types/common.d.ts +1 -1
  313. package/package.json +72 -193
  314. package/.editorconfig +0 -12
  315. package/.prettierignore +0 -17
  316. package/MCP-Token/347/250/216/344/270/216/344/270/213/344/270/200/344/273/243/345/267/245/345/205/267/345/215/217/350/256/256.html +0 -1763
  317. package/docs/annotation-campaign-A.csv +0 -54
  318. package/docs/annotation-campaign-B.csv +0 -54
  319. package/docs/annotation-campaign.csv +0 -54
  320. package/docs/eval/annotations-A.jsonl +0 -16
  321. package/docs/eval/annotations.json +0 -122
  322. package/docs/eval/recorded-labels.json +0 -12
  323. package/docs/eval/replay-cases.json +0 -14
  324. package/docs/eval/replay-labels-b.json +0 -14
  325. package/docs/examples/attention-request.json +0 -16
  326. package/docs/examples/checkpoint.json +0 -15
  327. package/docs/examples/claim.json +0 -66
  328. package/docs/examples/collaboration.json +0 -66
  329. package/docs/examples/concept-checkpoint.json +0 -15
  330. package/docs/examples/concept-prune-plan.json +0 -45
  331. package/docs/examples/federation.json +0 -126
  332. package/docs/examples/frame-chain.json +0 -77
  333. package/docs/examples/ledger-snapshot.json +0 -108
  334. package/docs/examples/manifest.json +0 -77
  335. package/docs/examples/message.json +0 -19
  336. package/docs/examples/other-model.json +0 -45
  337. package/docs/examples/plan.json +0 -50
  338. package/docs/examples/prune-plan.json +0 -48
  339. package/docs/examples/receipt.json +0 -22
  340. package/docs/examples/runtime-run.json +0 -573
  341. package/docs/examples/team.json +0 -66
  342. package/docs/examples/verb-note.json +0 -11
  343. package/docs/probes/bayes-scores.json +0 -1452
  344. package/docs/probes/calibration-imported.json +0 -141
  345. package/docs/probes/context-ast-deepseek.json +0 -1577
  346. package/docs/probes/deepseek-probe.json +0 -917
  347. package/docs/probes/eval-recorded-replay.json +0 -597
  348. package/docs/probes/eval-replay.json +0 -124
  349. package/docs/probes/eval-summary.json +0 -42
  350. package/docs/probes/runtime-eval.json +0 -4230
  351. package/docs/schemas/collaboration.schema.json +0 -73
  352. package/docs/schemas/common.schema.json +0 -125
  353. package/docs/schemas/compaction.schema.json +0 -121
  354. package/docs/schemas/concept-compaction.schema.json +0 -73
  355. package/docs/schemas/concept.schema.json +0 -97
  356. package/docs/schemas/epistemic.schema.json +0 -178
  357. package/docs/schemas/federation.schema.json +0 -66
  358. package/docs/schemas/frame.schema.json +0 -86
  359. package/docs/schemas/ledger-snapshot.schema.json +0 -30
  360. package/docs/schemas/manifest.schema.json +0 -169
  361. package/docs/schemas/message.schema.json +0 -41
  362. package/docs/schemas/plan.schema.json +0 -189
  363. package/docs/schemas/receipt.schema.json +0 -45
  364. package/docs/schemas/social.schema.json +0 -153
  365. package/docs/schemas/team.schema.json +0 -56
  366. package/docs/schemas/verb.schema.json +0 -120
  367. package/eslint.config.mts +0 -96
  368. package/index.html +0 -13
  369. package/lib/context/workspaceProtocol.d.ts +0 -30
  370. package/lib/context/workspaceProtocol.js +0 -49
  371. package/prettier.config.mts +0 -37
  372. package/public/favicon.svg +0 -1
  373. package/public/icons.svg +0 -24
  374. package/src/attention/attention.ts +0 -347
  375. package/src/attention/budget.ts +0 -72
  376. package/src/attention/cognition.ts +0 -519
  377. package/src/attention/index.ts +0 -8
  378. package/src/attention/interrupts.ts +0 -228
  379. package/src/attention/resource.ts +0 -316
  380. package/src/attention/social.ts +0 -217
  381. package/src/attention/socialTypes.ts +0 -115
  382. package/src/authz/authz.ts +0 -305
  383. package/src/authz/index.ts +0 -1
  384. package/src/bayes/calibration.ts +0 -204
  385. package/src/bayes/calibrationRegistry.ts +0 -111
  386. package/src/bayes/calibrationSelection.ts +0 -154
  387. package/src/bayes/engine.ts +0 -532
  388. package/src/bayes/index.ts +0 -6
  389. package/src/bayes/reliability.ts +0 -62
  390. package/src/bayes/scopedPriors.ts +0 -88
  391. package/src/boundary/frame.ts +0 -322
  392. package/src/boundary/ids.ts +0 -14
  393. package/src/boundary/index.ts +0 -12
  394. package/src/boundary/refTable.ts +0 -125
  395. package/src/boundary/toolCall.ts +0 -212
  396. package/src/concept/concept.ts +0 -75
  397. package/src/concept/conceptBudget.ts +0 -346
  398. package/src/concept/conceptBudgetTypes.ts +0 -79
  399. package/src/concept/index.ts +0 -3
  400. package/src/concurrency/idempotency.ts +0 -41
  401. package/src/concurrency/index.ts +0 -5
  402. package/src/concurrency/mutex.ts +0 -26
  403. package/src/concurrency/namedLocks.ts +0 -35
  404. package/src/concurrency/retry.ts +0 -50
  405. package/src/concurrency/worker.ts +0 -128
  406. package/src/context/agentContext.ts +0 -308
  407. package/src/context/ast.ts +0 -499
  408. package/src/context/contentStore.ts +0 -75
  409. package/src/context/context.ts +0 -65
  410. package/src/context/contextIndex.ts +0 -85
  411. package/src/context/document.ts +0 -137
  412. package/src/context/fileStorePath.ts +0 -14
  413. package/src/context/index.ts +0 -43
  414. package/src/context/lifecycle.ts +0 -221
  415. package/src/context/projections.ts +0 -151
  416. package/src/context/workspace.ts +0 -422
  417. package/src/context/workspaceProtocol.ts +0 -112
  418. package/src/context/workspaceService.ts +0 -423
  419. package/src/cooperation/board.ts +0 -104
  420. package/src/cooperation/collaboration.ts +0 -60
  421. package/src/cooperation/index.ts +0 -6
  422. package/src/cooperation/merge.ts +0 -190
  423. package/src/cooperation/metrics.ts +0 -57
  424. package/src/cooperation/session.ts +0 -131
  425. package/src/cooperation/unified.ts +0 -56
  426. package/src/counter.ts +0 -9
  427. package/src/database/adapter/adapters.ts +0 -35
  428. package/src/database/adapter/index.ts +0 -4
  429. package/src/database/adapter/runtimeSink.ts +0 -74
  430. package/src/database/adapter/sessionStore.ts +0 -32
  431. package/src/database/adapter/turnStore.ts +0 -23
  432. package/src/database/entity/agent.ts +0 -199
  433. package/src/database/entity/entity.ts +0 -1046
  434. package/src/database/entity/handle.ts +0 -79
  435. package/src/database/entity/index.ts +0 -32
  436. package/src/database/entity/message.ts +0 -74
  437. package/src/database/entity/meta.ts +0 -11
  438. package/src/database/entity/object.ts +0 -42
  439. package/src/database/entity/outbox.ts +0 -15
  440. package/src/database/entity/process.ts +0 -65
  441. package/src/database/entity/registry.ts +0 -155
  442. package/src/database/entity/runtimeApproval.ts +0 -30
  443. package/src/database/entity/runtimeSession.ts +0 -13
  444. package/src/database/entity/runtimeTurn.ts +0 -15
  445. package/src/database/entity/thread.ts +0 -85
  446. package/src/database/entity/window.ts +0 -85
  447. package/src/database/entity/worker.ts +0 -90
  448. package/src/database/index.ts +0 -6
  449. package/src/database/repository/addressSpaceRepository.ts +0 -72
  450. package/src/database/repository/agentRepository.ts +0 -460
  451. package/src/database/repository/base.ts +0 -41
  452. package/src/database/repository/executionRepository.ts +0 -477
  453. package/src/database/repository/handleRepository.ts +0 -64
  454. package/src/database/repository/index.ts +0 -20
  455. package/src/database/repository/messageRepository.ts +0 -52
  456. package/src/database/repository/objectRepository.ts +0 -69
  457. package/src/database/repository/outboxRepository.ts +0 -63
  458. package/src/database/repository/processRepository.ts +0 -58
  459. package/src/database/repository/registryRepository.ts +0 -119
  460. package/src/database/repository/repository.ts +0 -491
  461. package/src/database/repository/runtimeApprovalRepository.ts +0 -44
  462. package/src/database/repository/runtimeSessionRepository.ts +0 -27
  463. package/src/database/repository/runtimeTurnRepository.ts +0 -39
  464. package/src/database/repository/socialRepository.ts +0 -185
  465. package/src/database/repository/threadRepository.ts +0 -57
  466. package/src/database/repository/windowRepository.ts +0 -88
  467. package/src/database/repository/workerRepository.ts +0 -69
  468. package/src/database/service/database.ts +0 -90
  469. package/src/database/service/handleService.ts +0 -48
  470. package/src/database/service/index.ts +0 -16
  471. package/src/database/service/messageService.ts +0 -61
  472. package/src/database/service/objectService.ts +0 -59
  473. package/src/database/service/processService.ts +0 -61
  474. package/src/database/service/registryServices.ts +0 -88
  475. package/src/database/service/service.ts +0 -183
  476. package/src/database/service/stepService.ts +0 -53
  477. package/src/database/service/threadService.ts +0 -65
  478. package/src/database/service/windowService.ts +0 -30
  479. package/src/database/service/workerService.ts +0 -57
  480. package/src/database/sql/index.ts +0 -3
  481. package/src/database/sql/schema.ts +0 -418
  482. package/src/database/sql/sql.ts +0 -543
  483. package/src/database/store/database.ts +0 -210
  484. package/src/database/store/index.ts +0 -3
  485. package/src/database/store/store.ts +0 -266
  486. package/src/delegate/index.ts +0 -2
  487. package/src/delegate/team.ts +0 -268
  488. package/src/delegate/teamTypes.ts +0 -47
  489. package/src/diagnosis/checklist.ts +0 -74
  490. package/src/diagnosis/context.ts +0 -93
  491. package/src/diagnosis/frame.ts +0 -256
  492. package/src/diagnosis/index.ts +0 -5
  493. package/src/diagnosis/router.ts +0 -72
  494. package/src/diagnosis/types.ts +0 -89
  495. package/src/error/agentError.ts +0 -16
  496. package/src/error/ampError.ts +0 -20
  497. package/src/error/authzError.ts +0 -14
  498. package/src/error/boundaryRejection.ts +0 -20
  499. package/src/error/index.ts +0 -7
  500. package/src/error/kernelError.ts +0 -27
  501. package/src/error/mailboxError.ts +0 -9
  502. package/src/error/windowError.ts +0 -12
  503. package/src/evaluation/agreement.ts +0 -96
  504. package/src/evaluation/index.ts +0 -2
  505. package/src/evaluation/labels.ts +0 -241
  506. package/src/evidence/evidenceGraph.ts +0 -205
  507. package/src/evidence/index.ts +0 -4
  508. package/src/evidence/revalidation.ts +0 -191
  509. package/src/execution/exec.ts +0 -408
  510. package/src/execution/handles.ts +0 -65
  511. package/src/execution/index.ts +0 -3
  512. package/src/execution/pin.ts +0 -154
  513. package/src/frame/frame.ts +0 -70
  514. package/src/frame/index.ts +0 -1
  515. package/src/goal/goal.ts +0 -43
  516. package/src/goal/index.ts +0 -2
  517. package/src/goal/plan.ts +0 -196
  518. package/src/governance/attentionManifest.ts +0 -802
  519. package/src/governance/audit.ts +0 -362
  520. package/src/governance/budget.ts +0 -628
  521. package/src/governance/context.ts +0 -356
  522. package/src/governance/control.ts +0 -159
  523. package/src/governance/cooperation.ts +0 -479
  524. package/src/governance/credential.ts +0 -359
  525. package/src/governance/httpServer.ts +0 -99
  526. package/src/governance/index.ts +0 -32
  527. package/src/governance/legal.ts +0 -574
  528. package/src/governance/matrix.ts +0 -460
  529. package/src/governance/perspectives.ts +0 -406
  530. package/src/governance/signing.ts +0 -407
  531. package/src/governance/store.ts +0 -125
  532. package/src/governance/switching.ts +0 -459
  533. package/src/governance/toolPolicy.ts +0 -80
  534. package/src/governance/transport.ts +0 -204
  535. package/src/governance/types.ts +0 -380
  536. package/src/governance/workflow.ts +0 -743
  537. package/src/index.ts +0 -11
  538. package/src/interaction/index.ts +0 -1
  539. package/src/interaction/interaction.ts +0 -391
  540. package/src/ipc/index.ts +0 -4
  541. package/src/ipc/mailbox.ts +0 -132
  542. package/src/ipc/memorySocialStore.ts +0 -93
  543. package/src/ipc/social.ts +0 -93
  544. package/src/kernel/index.ts +0 -14
  545. package/src/kernel/scheduler.ts +0 -498
  546. package/src/ledger/checkpoint.ts +0 -304
  547. package/src/ledger/index.ts +0 -4
  548. package/src/ledger/ledger.ts +0 -31
  549. package/src/ledger/persistence.ts +0 -159
  550. package/src/ledger/share.ts +0 -80
  551. package/src/lock/index.ts +0 -2
  552. package/src/lock/lease.ts +0 -74
  553. package/src/main.ts +0 -199
  554. package/src/manifest/agentCard.ts +0 -72
  555. package/src/manifest/cardSign.ts +0 -87
  556. package/src/manifest/federation.ts +0 -237
  557. package/src/manifest/federationTypes.ts +0 -55
  558. package/src/manifest/index.ts +0 -8
  559. package/src/manifest/keys.ts +0 -643
  560. package/src/manifest/manifest.ts +0 -114
  561. package/src/manifest/sign.ts +0 -134
  562. package/src/manifest/trust.ts +0 -146
  563. package/src/mission/index.ts +0 -2
  564. package/src/mission/missionQueue.ts +0 -75
  565. package/src/module/index.ts +0 -9
  566. package/src/module/llm/deepseek.ts +0 -214
  567. package/src/module/llm/llm.ts +0 -84
  568. package/src/module/mcp/client.ts +0 -110
  569. package/src/module/mcp/http.ts +0 -102
  570. package/src/module/mcp/protocol.ts +0 -77
  571. package/src/module/mcp/server.ts +0 -148
  572. package/src/module/mcp/transport.ts +0 -30
  573. package/src/module/mcp/workspaceServer.ts +0 -111
  574. package/src/module/sandbox/sandbox.ts +0 -29
  575. package/src/module/tool/mcpExecutor.ts +0 -54
  576. package/src/module/tool/policy.ts +0 -52
  577. package/src/module/tool/redact.ts +0 -29
  578. package/src/module/tool/tool.ts +0 -53
  579. package/src/module/tool/workspaceExecutor.ts +0 -35
  580. package/src/policy/guard.ts +0 -240
  581. package/src/policy/index.ts +0 -2
  582. package/src/policy/policy.ts +0 -561
  583. package/src/process/agent.ts +0 -341
  584. package/src/process/agentService.ts +0 -236
  585. package/src/process/agentStore.ts +0 -378
  586. package/src/process/executionStore.ts +0 -151
  587. package/src/process/index.ts +0 -5
  588. package/src/process/process.ts +0 -240
  589. package/src/process/transitions.ts +0 -19
  590. package/src/progress/index.ts +0 -2
  591. package/src/progress/progress.ts +0 -85
  592. package/src/protocol/a2a.ts +0 -120
  593. package/src/protocol/channel.ts +0 -44
  594. package/src/protocol/envelope.ts +0 -655
  595. package/src/protocol/httpChannel.ts +0 -87
  596. package/src/protocol/index.ts +0 -6
  597. package/src/protocol/protocol.ts +0 -138
  598. package/src/protocol/wire.ts +0 -60
  599. package/src/receipt/index.ts +0 -1
  600. package/src/receipt/receipt.ts +0 -47
  601. package/src/registry/content.ts +0 -69
  602. package/src/registry/index.ts +0 -23
  603. package/src/registry/registry.ts +0 -599
  604. package/src/runtime/action.ts +0 -87
  605. package/src/runtime/behavior.ts +0 -330
  606. package/src/runtime/behaviorTuning.ts +0 -163
  607. package/src/runtime/cognitiveRuntime.ts +0 -703
  608. package/src/runtime/escalation.ts +0 -35
  609. package/src/runtime/governedTask.ts +0 -233
  610. package/src/runtime/index.ts +0 -15
  611. package/src/runtime/kernelRuntime.ts +0 -144
  612. package/src/runtime/operation.ts +0 -35
  613. package/src/runtime/replay.ts +0 -71
  614. package/src/runtime/routing.ts +0 -58
  615. package/src/runtime/safety.ts +0 -48
  616. package/src/runtime/session.ts +0 -341
  617. package/src/runtime/sessionStore.ts +0 -43
  618. package/src/runtime/telemetry.ts +0 -55
  619. package/src/runtime/turnStore.ts +0 -30
  620. package/src/scenario/index.ts +0 -1
  621. package/src/scenario/scenario.ts +0 -299
  622. package/src/semantic/canonical.ts +0 -24
  623. package/src/semantic/index.ts +0 -2
  624. package/src/semantic/sha256.ts +0 -82
  625. package/src/storage/appendLog.ts +0 -372
  626. package/src/storage/fileAppendSink.ts +0 -40
  627. package/src/storage/index.ts +0 -2
  628. package/src/store/bindCache.ts +0 -22
  629. package/src/store/cache.ts +0 -191
  630. package/src/store/context.ts +0 -31
  631. package/src/store/handleStore.ts +0 -31
  632. package/src/store/index.ts +0 -9
  633. package/src/store/messageStore.ts +0 -31
  634. package/src/store/objectStore.ts +0 -31
  635. package/src/store/processStore.ts +0 -31
  636. package/src/store/threadStore.ts +0 -31
  637. package/src/store/windowStore.ts +0 -31
  638. package/src/structure/abstractSyntaxTree.ts +0 -493
  639. package/src/structure/avlTree.ts +0 -408
  640. package/src/structure/binarySearchTree.ts +0 -352
  641. package/src/structure/binaryTree.ts +0 -525
  642. package/src/structure/bloomFilter.ts +0 -231
  643. package/src/structure/compare.ts +0 -110
  644. package/src/structure/cuckooFilter.ts +0 -337
  645. package/src/structure/deque.ts +0 -223
  646. package/src/structure/filterKey.ts +0 -36
  647. package/src/structure/hash.ts +0 -279
  648. package/src/structure/heap.ts +0 -268
  649. package/src/structure/index.ts +0 -20
  650. package/src/structure/iterator.ts +0 -22
  651. package/src/structure/lru.ts +0 -619
  652. package/src/structure/ordered.ts +0 -399
  653. package/src/structure/priority.ts +0 -915
  654. package/src/structure/queue.ts +0 -168
  655. package/src/structure/redBlackTree.ts +0 -680
  656. package/src/structure/segmentTree.ts +0 -248
  657. package/src/structure/stack.ts +0 -118
  658. package/src/structure/unordered.ts +0 -407
  659. package/src/style.css +0 -278
  660. package/src/thread/index.ts +0 -2
  661. package/src/thread/thread.ts +0 -176
  662. package/src/thread/transitions.ts +0 -17
  663. package/src/types/common.ts +0 -119
  664. package/src/types/index.ts +0 -23
  665. package/src/warrant/epistemic.ts +0 -154
  666. package/src/warrant/index.ts +0 -3
  667. package/src/warrant/inquiry.ts +0 -166
  668. package/src/warrant/warrant.ts +0 -179
  669. package/src/window/compaction.ts +0 -403
  670. package/src/window/compactionTypes.ts +0 -119
  671. package/src/window/index.ts +0 -7
  672. package/src/window/page.ts +0 -18
  673. package/src/window/window.ts +0 -244
  674. package/tools/_helpers.ts +0 -34
  675. package/tools/a2a-check.ts +0 -110
  676. package/tools/a2a-flow-check.ts +0 -78
  677. package/tools/agent-card-check.ts +0 -76
  678. package/tools/agent-check.ts +0 -236
  679. package/tools/agent-store-check.ts +0 -153
  680. package/tools/agreement-check.ts +0 -27
  681. package/tools/annotation-server-check.ts +0 -48
  682. package/tools/annotation-server.ts +0 -230
  683. package/tools/annotation-status.ts +0 -65
  684. package/tools/approval-access-check.ts +0 -66
  685. package/tools/arch-check.ts +0 -72
  686. package/tools/attention-core-check.ts +0 -48
  687. package/tools/attention-resource-check.ts +0 -169
  688. package/tools/audit-check.ts +0 -207
  689. package/tools/authority-check.ts +0 -124
  690. package/tools/authz-check.ts +0 -138
  691. package/tools/bayes-check.ts +0 -162
  692. package/tools/bayes-probe.ts +0 -154
  693. package/tools/behavior-tuning-check.ts +0 -53
  694. package/tools/board-check.ts +0 -87
  695. package/tools/boundary-check.ts +0 -199
  696. package/tools/bundle-trust-check.ts +0 -96
  697. package/tools/calibrate-imported.ts +0 -108
  698. package/tools/calibration-check.ts +0 -44
  699. package/tools/calibration-registry-check.ts +0 -40
  700. package/tools/calibration-sim.ts +0 -40
  701. package/tools/card-sign-check.ts +0 -71
  702. package/tools/card-trust-check.ts +0 -78
  703. package/tools/channel-check.ts +0 -86
  704. package/tools/checkpoint-check.ts +0 -620
  705. package/tools/cleanup-style-configs.ts +0 -29
  706. package/tools/cognition-check.ts +0 -648
  707. package/tools/cognitive-runtime-check.ts +0 -609
  708. package/tools/collaboration-demo.ts +0 -78
  709. package/tools/compaction-check.ts +0 -266
  710. package/tools/concept-check.ts +0 -260
  711. package/tools/concurrency-check.ts +0 -242
  712. package/tools/conformance-runtime.ts +0 -389
  713. package/tools/conformance.ts +0 -651
  714. package/tools/context-ast-check.ts +0 -90
  715. package/tools/context-ast-deepseek.ts +0 -242
  716. package/tools/context-graph-bench.ts +0 -50
  717. package/tools/context-graph-check.ts +0 -229
  718. package/tools/context-index-check.ts +0 -48
  719. package/tools/context-lifecycle-check.ts +0 -69
  720. package/tools/context-projection-check.ts +0 -73
  721. package/tools/context-scope-check.ts +0 -134
  722. package/tools/context-storage-check.ts +0 -113
  723. package/tools/cooperation-check.ts +0 -517
  724. package/tools/cooperation-http-check.ts +0 -125
  725. package/tools/deepseek-llm-check.ts +0 -147
  726. package/tools/deepseek-probe.ts +0 -494
  727. package/tools/diagnosis-check.ts +0 -109
  728. package/tools/diagnosis-router-check.ts +0 -50
  729. package/tools/document-context-check.ts +0 -237
  730. package/tools/envelope-check.ts +0 -659
  731. package/tools/eslint-rules/index.ts +0 -26
  732. package/tools/eslint-rules/rules/jsdoc-comment-format.ts +0 -105
  733. package/tools/eslint-rules/rules/no-function-keyword.ts +0 -60
  734. package/tools/eslint-rules/rules/no-multiline-parameters.ts +0 -71
  735. package/tools/eslint-rules/rules/no-multiline-type-parameters.ts +0 -57
  736. package/tools/eslint-rules/rules/no-undefined-comparison.ts +0 -115
  737. package/tools/eslint-rules/rules/prefer-template-for-string-conversion.ts +0 -97
  738. package/tools/eslint-rules/rules/require-typeof-parentheses.ts +0 -49
  739. package/tools/eslint-rules/rules/require-variable-type.ts +0 -36
  740. package/tools/eslint-rules/rules/variable-naming.ts +0 -175
  741. package/tools/eval-recorded-replay.ts +0 -215
  742. package/tools/eval-replay.ts +0 -139
  743. package/tools/eval-summary.ts +0 -136
  744. package/tools/evidence-revalidation-check.ts +0 -235
  745. package/tools/exec-check.ts +0 -217
  746. package/tools/federation-check.ts +0 -166
  747. package/tools/federation-demo.ts +0 -45
  748. package/tools/filter-check.ts +0 -243
  749. package/tools/governance-check.ts +0 -680
  750. package/tools/governance-store-check.ts +0 -131
  751. package/tools/governed-task-check.ts +0 -227
  752. package/tools/guard-check.ts +0 -122
  753. package/tools/http-channel-check.ts +0 -125
  754. package/tools/import-campaign.ts +0 -28
  755. package/tools/inquiry-check.ts +0 -126
  756. package/tools/interaction-check.ts +0 -171
  757. package/tools/interrupts-check.ts +0 -173
  758. package/tools/ipc-check.ts +0 -170
  759. package/tools/kernel-async-check.ts +0 -136
  760. package/tools/kernel-check.ts +0 -369
  761. package/tools/kernel-runtime-check.ts +0 -276
  762. package/tools/keys-check.ts +0 -559
  763. package/tools/label-audit.ts +0 -70
  764. package/tools/labels-workflow-check.ts +0 -49
  765. package/tools/linear-structure-check.ts +0 -524
  766. package/tools/live-exec.ts +0 -62
  767. package/tools/live-governance-eval.ts +0 -813
  768. package/tools/live-legacy.ts +0 -50
  769. package/tools/lru-check.ts +0 -182
  770. package/tools/make-annotation-campaign.ts +0 -57
  771. package/tools/mcp-executor-check.ts +0 -33
  772. package/tools/merge-annotations.ts +0 -32
  773. package/tools/merge-check.ts +0 -98
  774. package/tools/metrics-check.ts +0 -84
  775. package/tools/net-probe.ts +0 -107
  776. package/tools/oauth-probe.ts +0 -117
  777. package/tools/outbox-check.ts +0 -50
  778. package/tools/persistence-check.ts +0 -144
  779. package/tools/pin-check.ts +0 -116
  780. package/tools/platform-check.ts +0 -281
  781. package/tools/policy-check.ts +0 -514
  782. package/tools/prettier-plugin/index.mts +0 -84
  783. package/tools/priority-check.ts +0 -627
  784. package/tools/probe-context7.ts +0 -63
  785. package/tools/registry-check.ts +0 -252
  786. package/tools/reliability-check.ts +0 -25
  787. package/tools/retry-check.ts +0 -85
  788. package/tools/rewrite-declaration-extensions.ts +0 -98
  789. package/tools/runtime-check.ts +0 -165
  790. package/tools/runtime-deepseek-check.ts +0 -85
  791. package/tools/runtime-eval.ts +0 -358
  792. package/tools/scenario-check.ts +0 -161
  793. package/tools/scenario-incident.ts +0 -162
  794. package/tools/scoped-priors-check.ts +0 -35
  795. package/tools/scoped-priors-pooling.ts +0 -34
  796. package/tools/segment-ast-check.ts +0 -649
  797. package/tools/session-check.ts +0 -196
  798. package/tools/session-store-check.ts +0 -73
  799. package/tools/share-check.ts +0 -88
  800. package/tools/sign-check.ts +0 -95
  801. package/tools/signing-check.ts +0 -275
  802. package/tools/snapshot-demo.ts +0 -65
  803. package/tools/social-check.ts +0 -146
  804. package/tools/structure-compare-check.ts +0 -95
  805. package/tools/support/documentScanner.ts +0 -577
  806. package/tools/support/texScanner.ts +0 -631
  807. package/tools/support/workspaceScanner.ts +0 -476
  808. package/tools/team-check.ts +0 -163
  809. package/tools/team-demo.ts +0 -36
  810. package/tools/telemetry-check.ts +0 -44
  811. package/tools/tex-context-check.ts +0 -263
  812. package/tools/tool-gate-check.ts +0 -98
  813. package/tools/tree-structure-check.ts +0 -786
  814. package/tools/trust-flow-check.ts +0 -158
  815. package/tools/turn-store-check.ts +0 -57
  816. package/tools/unified-check.ts +0 -83
  817. package/tools/validate.ts +0 -309
  818. package/tools/wire-check.ts +0 -96
  819. package/tools/workspace-agent-check.ts +0 -486
  820. package/tools/workspace-agent-demo.ts +0 -62
  821. package/tools/workspace-agent-server.ts +0 -101
  822. package/tools/workspace-context-check.ts +0 -331
  823. package/tools/workspace-context.ts +0 -131
  824. package/tsconfig.build.json +0 -14
  825. package/tsconfig.json +0 -24
  826. package/tsconfig.tools.json +0 -31
  827. package/viz/context-ast.json +0 -1577
@@ -0,0 +1,75 @@
1
+ import { GlobalFilesystemProtocol, GlobalFilesystemProtocolVersion, globalFilesystemLocalIds, globalFilesystemToolDefinitions, } from "../protocol/globalFilesystem.js";
2
+ export class GlobalFilesystemService {
3
+ base;
4
+ constructor(base) {
5
+ this.base = base;
6
+ }
7
+ /**
8
+ * Bind one authenticated session to the global namespace.
9
+ */
10
+ bind(sessionId, token) {
11
+ return new GlobalFilesystemSession(this.base.bind(sessionId, token));
12
+ }
13
+ dispose(sessionId) {
14
+ this.base.dispose(sessionId);
15
+ }
16
+ }
17
+ export class GlobalFilesystemSession {
18
+ base;
19
+ constructor(base) {
20
+ this.base = base;
21
+ }
22
+ get sessionId() {
23
+ return this.base.sessionId;
24
+ }
25
+ get descriptor() {
26
+ return this.base.descriptor;
27
+ }
28
+ tools() {
29
+ return globalFilesystemToolDefinitions();
30
+ }
31
+ /**
32
+ * Typed delegates keep hook and direct-embedder code identical for the
33
+ * local and global surfaces.
34
+ */
35
+ read = (request) => this.base.read(request);
36
+ write = (request) => this.base.write(request);
37
+ outline = (request) => this.base.outline(request);
38
+ imports = (request) => this.base.imports(request);
39
+ exports = (request) => this.base.exports(request);
40
+ dependency = (request) => this.base.dependency(request);
41
+ ast = (request) => this.base.ast(request);
42
+ revision = () => this.base.revision();
43
+ async call(name, raw) {
44
+ const local = globalFilesystemLocalIds.get(name);
45
+ if (local === (void 0)) {
46
+ return {
47
+ protocol: GlobalFilesystemProtocol,
48
+ version: GlobalFilesystemProtocolVersion,
49
+ ok: false,
50
+ revision: `ses.${this.base.descriptor.revision}`,
51
+ session: this.base.sessionId,
52
+ error: { code: "unknown_tool", message: "unknown_tool" },
53
+ };
54
+ }
55
+ const response = await this.base.dispatch(local, raw);
56
+ if ("error" in response) {
57
+ return {
58
+ protocol: GlobalFilesystemProtocol,
59
+ version: GlobalFilesystemProtocolVersion,
60
+ ok: false,
61
+ revision: response.revision,
62
+ session: response.session,
63
+ error: response.error,
64
+ };
65
+ }
66
+ return {
67
+ protocol: GlobalFilesystemProtocol,
68
+ version: GlobalFilesystemProtocolVersion,
69
+ ok: true,
70
+ revision: response.revision,
71
+ session: response.session,
72
+ data: response.data,
73
+ };
74
+ }
75
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Global surface: the `amp.workspace` operation set over every authorized
3
+ * project, exposed as `amp_tool_global_*`.
4
+ *
5
+ * Subpath: `attention-manifest-protocol/global`.
6
+ */
7
+ export * from "./service.js";
8
+ export * from "./filesystem.js";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Global surface: the `amp.workspace` operation set over every authorized
3
+ * project, exposed as `amp_tool_global_*`.
4
+ *
5
+ * Subpath: `attention-manifest-protocol/global`.
6
+ */
7
+ export * from "./service.js";
8
+ export * from "./filesystem.js";
@@ -0,0 +1,51 @@
1
+ import type { ToolCatalog } from "../naming/index.js";
2
+ import type { WorkspaceRunner, WorkspaceServiceLimits, WorkspaceWriter } from "../context/workspaceService.js";
3
+ import type { ContentStore } from "../context/contentStore.js";
4
+ import type { WorkspaceSnapshot } from "../context/workspace.js";
5
+ import type { HostCatalog } from "../discover/host.js";
6
+ import type { Frame } from "../frame/frame.js";
7
+ import type { ContextSnapshot } from "../context/lifecycle.js";
8
+ import type { Receipt } from "../receipt/receipt.js";
9
+ import type { GlobalResponse } from "../protocol/global.js";
10
+ import type { WorkspaceToolDefinition } from "../protocol/workspace.js";
11
+ export interface GlobalServiceOptions {
12
+ agentId: string;
13
+ snapshot: WorkspaceSnapshot;
14
+ store: ContentStore;
15
+ /**
16
+ * Optional narrower project set. Omitted means every project in `snapshot`.
17
+ */
18
+ projectIds?: readonly string[];
19
+ host?: HostCatalog;
20
+ limits?: Partial<WorkspaceServiceLimits>;
21
+ /**
22
+ * Optional persistence port forwarded to the underlying workspace service.
23
+ * Without it the global write tool answers `write_unavailable`, exactly as
24
+ * the workspace-scoped surface does.
25
+ */
26
+ writer?: WorkspaceWriter;
27
+ /**
28
+ * Optional execution port forwarded to the underlying workspace service.
29
+ * Without it `build`/`compile`/`run`/`test` answer `run_unavailable`.
30
+ */
31
+ runner?: WorkspaceRunner;
32
+ }
33
+ export declare class GlobalAgentService {
34
+ private readonly workspace;
35
+ private readonly definitions;
36
+ private readonly revision;
37
+ private cachedCatalog;
38
+ constructor(options: GlobalServiceOptions);
39
+ tools(): WorkspaceToolDefinition[];
40
+ catalog(): ToolCatalog;
41
+ call(name: string, raw: unknown): GlobalResponse;
42
+ registerFrame(frame: Frame, revision: string): void;
43
+ revokeFrame(frameId: string): void;
44
+ settle(contextId: string, receipt: Receipt): ContextSnapshot;
45
+ pendingSettlements(): Array<{
46
+ contextId: string;
47
+ frameId: string;
48
+ estimatedTokens: number;
49
+ }>;
50
+ private error;
51
+ }
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Global agent service: the `amp.workspace` operation set over every
3
+ * host-authorized project, exposed under the `amp_tool_global_*` names.
4
+ *
5
+ * This is a thin adapter, not a second implementation. The underlying
6
+ * `WorkspaceAgentService` receives the complete project set; the adapter
7
+ * rewrites names, the protocol envelope and the capabilities catalog so a
8
+ * client sees the global surface consistently.
9
+ */
10
+ import { buildCatalog } from "../naming/index.js";
11
+ import { digestOf } from "../semantic/canonical.js";
12
+ import { WorkspaceAgentService } from "../context/workspaceService.js";
13
+ import { GlobalProtocol, GlobalProtocolVersion, globalToolDefinitions, globalToolLeaves } from "../protocol/global.js";
14
+ export class GlobalAgentService {
15
+ workspace;
16
+ definitions = globalToolDefinitions();
17
+ revision;
18
+ cachedCatalog;
19
+ constructor(options) {
20
+ const projectIds = options.projectIds ?? options.snapshot.entities.filter((entity) => entity.kind === "project").map((entity) => entity.id);
21
+ this.revision = options.snapshot.revision;
22
+ this.workspace = new WorkspaceAgentService({
23
+ agentId: options.agentId,
24
+ snapshot: options.snapshot,
25
+ projectIds,
26
+ store: options.store,
27
+ ...(options.host === (void 0) ? {} : { host: options.host }),
28
+ ...(options.limits === (void 0) ? {} : { limits: options.limits }),
29
+ ...(options.writer === (void 0) ? {} : { writer: options.writer }),
30
+ ...(options.runner === (void 0) ? {} : { runner: options.runner }),
31
+ });
32
+ }
33
+ tools() {
34
+ return structuredClone(this.definitions);
35
+ }
36
+ catalog() {
37
+ if (this.cachedCatalog === (void 0)) {
38
+ const entries = this.definitions.map((tool) => ({
39
+ id: tool.name,
40
+ digest: digestOf({ description: tool.description, inputSchema: tool.inputSchema, risk: tool.risk }),
41
+ risk: tool.risk,
42
+ }));
43
+ this.cachedCatalog = buildCatalog(entries, { version: "1.0.0", ttlMs: 0, cacheScope: "private" });
44
+ }
45
+ return structuredClone(this.cachedCatalog);
46
+ }
47
+ call(name, raw) {
48
+ const leaf = globalToolLeaves.get(name);
49
+ if (leaf === (void 0)) {
50
+ return this.error("unknown_tool", "unknown_tool");
51
+ }
52
+ const response = this.workspace.call(`amp_tool_workspace_${leaf}`, raw);
53
+ if ("error" in response) {
54
+ return {
55
+ protocol: GlobalProtocol,
56
+ version: GlobalProtocolVersion,
57
+ revision: response.revision,
58
+ ok: false,
59
+ error: response.error,
60
+ };
61
+ }
62
+ const data = { ...response.data };
63
+ if (leaf === "capabilities") {
64
+ data.tools = this.definitions.map((tool) => tool.name);
65
+ const catalog = this.catalog();
66
+ data.catalog = { version: catalog.version, digest: catalog.digest, sortedBy: catalog.sortedBy, ttlMs: catalog.ttlMs };
67
+ data.deprecatedAliases = [];
68
+ }
69
+ return {
70
+ protocol: GlobalProtocol,
71
+ version: GlobalProtocolVersion,
72
+ revision: response.revision,
73
+ ok: true,
74
+ data,
75
+ };
76
+ }
77
+ registerFrame(frame, revision) {
78
+ this.workspace.registerFrame(frame, revision);
79
+ }
80
+ revokeFrame(frameId) {
81
+ this.workspace.revokeFrame(frameId);
82
+ }
83
+ settle(contextId, receipt) {
84
+ return this.workspace.settle(contextId, receipt);
85
+ }
86
+ pendingSettlements() {
87
+ return this.workspace.pendingSettlements();
88
+ }
89
+ error(code, message) {
90
+ return {
91
+ protocol: GlobalProtocol,
92
+ version: GlobalProtocolVersion,
93
+ revision: this.revision,
94
+ ok: false,
95
+ error: { code, message },
96
+ };
97
+ }
98
+ }
@@ -81,8 +81,13 @@ export class HttpCooperationTransport {
81
81
  export const createCooperationHandler = (bus, options = {}) => {
82
82
  const replay = new ReplayGuard();
83
83
  const now = options.now ?? (() => Date.now());
84
- const maxSkewMs = Math.max(1_000, options.maxSkewMs ?? 60_000);
85
- const replayWindowMs = Math.max(maxSkewMs, options.replayWindowMs ?? 5 * 60_000);
84
+ const configuredSkew = options.maxSkewMs ?? 60_000;
85
+ const configuredWindow = options.replayWindowMs ?? 5 * 60_000;
86
+ if (!Number.isFinite(configuredSkew) || configuredSkew < 0 || !Number.isFinite(configuredWindow) || configuredWindow < 0) {
87
+ throw new RangeError("transport replay windows must be finite and non-negative");
88
+ }
89
+ const maxSkewMs = Math.max(1_000, configuredSkew);
90
+ const replayWindowMs = Math.max(maxSkewMs, configuredWindow);
86
91
  return async (body) => {
87
92
  if (!isRecord(body) || !isRecord(body.message)) {
88
93
  return {
@@ -92,7 +97,11 @@ export const createCooperationHandler = (bus, options = {}) => {
92
97
  }
93
98
  if (options.keyring !== (void 0)) {
94
99
  const auth = body.auth;
95
- if (!isRecord(auth) || typeof (auth.signer) !== "string" || typeof (auth.signature) !== "string" || typeof (auth.timestamp) !== "string" || typeof (auth.nonce) !== "string") {
100
+ if (!isRecord(auth) ||
101
+ typeof (auth.signer) !== "string" ||
102
+ typeof (auth.signature) !== "string" ||
103
+ typeof (auth.timestamp) !== "string" ||
104
+ typeof (auth.nonce) !== "string") {
96
105
  return { status: 401, body: { ok: false, code: "transport-error", detail: "missing transport authentication" } };
97
106
  }
98
107
  const candidates = options.keyring.candidates(auth.signer, auth.kid);
@@ -101,12 +110,12 @@ export const createCooperationHandler = (bus, options = {}) => {
101
110
  }
102
111
  const timestamp = Date.parse(auth.timestamp);
103
112
  const current = now();
113
+ if (!Number.isFinite(current)) {
114
+ return { status: 500, body: { ok: false, code: "transport-error", detail: "transport clock is invalid" } };
115
+ }
104
116
  if (!Number.isFinite(timestamp) || Math.abs(current - timestamp) > maxSkewMs) {
105
117
  return { status: 409, body: { ok: false, code: "transport-error", detail: "transport timestamp is outside the allowed skew" } };
106
118
  }
107
- if (!replay.accept(auth.nonce, current, replayWindowMs)) {
108
- return { status: 409, body: { ok: false, code: "transport-error", detail: "transport nonce was already used" } };
109
- }
110
119
  let valid = false;
111
120
  for (let index = 0; index < candidates.length; index += 1) {
112
121
  if (await verifyCanonicalValue({ message: body.message, signer: auth.signer, timestamp: auth.timestamp, nonce: auth.nonce }, auth.signature, candidates[index])) {
@@ -117,6 +126,9 @@ export const createCooperationHandler = (bus, options = {}) => {
117
126
  if (!valid) {
118
127
  return { status: 401, body: { ok: false, code: "transport-error", detail: "transport signature does not verify" } };
119
128
  }
129
+ if (!replay.accept(auth.nonce, current, replayWindowMs)) {
130
+ return { status: 409, body: { ok: false, code: "transport-error", detail: "transport nonce was already used" } };
131
+ }
120
132
  }
121
133
  const delivery = bus.receive(body.message);
122
134
  return { status: delivery.ok ? 200 : 422, body: delivery };
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Syntax-tree hooks.
3
+ *
4
+ * The parse helper exposes the lossless CST directly; `useAst` adds the standard
5
+ * hook state, cache and audit record. Both are read-only: the parser never
6
+ * evaluates or imports the target file.
7
+ */
8
+ import type { AstRequest } from "../file/service.js";
9
+ import type { SyntaxTree } from "../syntax/syntaxTree.js";
10
+ import type { Hook, HookOptions, HookSession } from "./types.js";
11
+ /**
12
+ * Parse helper shape.
13
+ */
14
+ export type AstParse = (path: string, options?: Omit<AstRequest, "path">) => SyntaxTree;
15
+ /**
16
+ * Parse one file into a syntax tree without hook state.
17
+ *
18
+ * @param session - Bound filesystem session.
19
+ * @returns Parse helper.
20
+ */
21
+ export declare const useParse: (session: HookSession) => AstParse;
22
+ /**
23
+ * Syntax-tree hook.
24
+ *
25
+ * @param session - Bound filesystem session.
26
+ * @param options - Recorder and cache options.
27
+ * @returns Hook producing one syntax tree.
28
+ */
29
+ export declare const useAst: (session: HookSession, options?: HookOptions) => Hook<AstRequest, SyntaxTree>;
@@ -0,0 +1,22 @@
1
+ import { createHook } from "./types.js";
2
+ /**
3
+ * Parse one file into a syntax tree without hook state.
4
+ *
5
+ * @param session - Bound filesystem session.
6
+ * @returns Parse helper.
7
+ */
8
+ export const useParse = (session) => (path, options = {}) => session.ast({ path, ...options });
9
+ /**
10
+ * Syntax-tree hook.
11
+ *
12
+ * @param session - Bound filesystem session.
13
+ * @param options - Recorder and cache options.
14
+ * @returns Hook producing one syntax tree.
15
+ */
16
+ export const useAst = (session, options = {}) => createHook({
17
+ name: "ast",
18
+ session,
19
+ execute: (request) => session.ast(request),
20
+ pathOf: (request) => request.path,
21
+ options,
22
+ });
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Code model hook.
3
+ *
4
+ * A code model is the smallest set of facts an agent needs before editing a
5
+ * file: what language and content it is, what structure it has, what it imports
6
+ * and what it exports. The model is assembled from the three service methods
7
+ * (`outline`, `imports`, `exports`) and never from a second parser; the outline
8
+ * already carries the fingerprint and the language tag, so the three parts
9
+ * cannot disagree about which file version they describe.
10
+ *
11
+ * The model is deliberately not cached across paths: a caller asks for one
12
+ * path, and the hook layer's optional cache keyed by the request handles
13
+ * repetition.
14
+ */
15
+ import type { ExportReport, ImportReport } from "../file/types.js";
16
+ import type { OutlineResult } from "../outline/types.js";
17
+ import type { Hook, HookOptions, HookSession } from "./types.js";
18
+ /**
19
+ * Complete model for one source file.
20
+ */
21
+ export interface CodeModel {
22
+ readonly path: string;
23
+ readonly language: string;
24
+ readonly fingerprint: string;
25
+ readonly outline: OutlineResult;
26
+ readonly imports: ImportReport;
27
+ readonly exports: ExportReport;
28
+ }
29
+ /**
30
+ * Request accepted by `useCode`.
31
+ */
32
+ export interface CodeRequest {
33
+ readonly path: string;
34
+ readonly maxNodes?: number;
35
+ readonly maxDepth?: number;
36
+ }
37
+ /**
38
+ * Parse helper shape: one path in, one code model out.
39
+ */
40
+ export type CodeParse = (path: string) => CodeModel;
41
+ /**
42
+ * Read the complete code model for one path.
43
+ *
44
+ * @param session - Bound filesystem session.
45
+ * @returns Parse helper.
46
+ */
47
+ export declare const useParse: (session: HookSession) => CodeParse;
48
+ /**
49
+ * Code model hook.
50
+ *
51
+ * @param session - Bound filesystem session.
52
+ * @param options - Recorder and cache options.
53
+ * @returns Hook producing one code model.
54
+ */
55
+ export declare const useCode: (session: HookSession, options?: HookOptions) => Hook<CodeRequest, CodeModel>;
@@ -0,0 +1,47 @@
1
+ import { createHook } from "./types.js";
2
+ /**
3
+ * Build a code model from the service methods. This is the single assembly
4
+ * point used by both the parse helper and the hook.
5
+ *
6
+ * @param session - Bound filesystem session.
7
+ * @param request - Path and optional outline bounds.
8
+ * @returns The assembled model.
9
+ */
10
+ const codeModelOf = (session, request) => {
11
+ const outline = session.outline({
12
+ path: request.path,
13
+ ...(request.maxNodes === (void 0) ? {} : { maxNodes: request.maxNodes }),
14
+ ...(request.maxDepth === (void 0) ? {} : { maxDepth: request.maxDepth }),
15
+ });
16
+ const imports = session.imports({ path: request.path });
17
+ const exports = session.exports({ path: request.path });
18
+ return {
19
+ path: request.path,
20
+ language: outline.language,
21
+ fingerprint: outline.fingerprint,
22
+ outline,
23
+ imports,
24
+ exports,
25
+ };
26
+ };
27
+ /**
28
+ * Read the complete code model for one path.
29
+ *
30
+ * @param session - Bound filesystem session.
31
+ * @returns Parse helper.
32
+ */
33
+ export const useParse = (session) => (path) => codeModelOf(session, { path });
34
+ /**
35
+ * Code model hook.
36
+ *
37
+ * @param session - Bound filesystem session.
38
+ * @param options - Recorder and cache options.
39
+ * @returns Hook producing one code model.
40
+ */
41
+ export const useCode = (session, options = {}) => createHook({
42
+ name: "code",
43
+ session,
44
+ execute: (request) => codeModelOf(session, request),
45
+ pathOf: (request) => request.path,
46
+ options,
47
+ });
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Dependency hooks.
3
+ *
4
+ * Two layers are exposed. `useParse` is a plain read helper that returns the
5
+ * import and export reports for one path; it exists so a caller that only needs
6
+ * facts does not have to create a hook or subscribe to state. `useDependency`
7
+ * wraps the graph query itself and keeps its bounded report observable.
8
+ *
9
+ * Both layers call the session methods directly. No graph algorithm is
10
+ * re-implemented here: the service already owns the import graph cache, cycle
11
+ * detection, topological order and closures, and duplicating any of that would
12
+ * create two answers to "what depends on this?".
13
+ */
14
+ import type { DependencyQuery } from "../file/service.js";
15
+ import type { DependencyReport, ExportReport, ImportReport } from "../file/types.js";
16
+ import type { Hook, HookOptions, HookSession } from "./types.js";
17
+ /**
18
+ * Facts returned by the dependency parse helper.
19
+ */
20
+ export interface DependencyFacts {
21
+ readonly path: string;
22
+ readonly imports: ImportReport;
23
+ readonly exports: ExportReport;
24
+ }
25
+ /**
26
+ * Parse helper shape: one path in, both reports out.
27
+ */
28
+ export type DependencyParse = (path: string) => DependencyFacts;
29
+ /**
30
+ * Read the import and export reports for one path. Both calls are read-only and
31
+ * use the session's outgoing direction.
32
+ *
33
+ * @param session - Bound filesystem session.
34
+ * @returns Parse helper.
35
+ */
36
+ export declare const useParse: (session: HookSession) => DependencyParse;
37
+ /**
38
+ * Dependency graph hook. The request is passed through unchanged, including
39
+ * `roots`, `direction`, `depth`, `limit` and `includeExternal`.
40
+ *
41
+ * @param session - Bound filesystem session.
42
+ * @param options - Recorder and cache options.
43
+ * @returns Hook producing a bounded dependency report.
44
+ */
45
+ export declare const useDependency: (session: HookSession, options?: HookOptions) => Hook<DependencyQuery, DependencyReport>;
@@ -0,0 +1,28 @@
1
+ import { createHook } from "./types.js";
2
+ /**
3
+ * Read the import and export reports for one path. Both calls are read-only and
4
+ * use the session's outgoing direction.
5
+ *
6
+ * @param session - Bound filesystem session.
7
+ * @returns Parse helper.
8
+ */
9
+ export const useParse = (session) => (path) => {
10
+ const imports = session.imports({ path });
11
+ const exports = session.exports({ path });
12
+ return { path, imports, exports };
13
+ };
14
+ /**
15
+ * Dependency graph hook. The request is passed through unchanged, including
16
+ * `roots`, `direction`, `depth`, `limit` and `includeExternal`.
17
+ *
18
+ * @param session - Bound filesystem session.
19
+ * @param options - Recorder and cache options.
20
+ * @returns Hook producing a bounded dependency report.
21
+ */
22
+ export const useDependency = (session, options = {}) => createHook({
23
+ name: "dependency",
24
+ session,
25
+ execute: (request) => session.dependency(request),
26
+ pathOf: (request) => request.roots?.[0],
27
+ options,
28
+ });
@@ -0,0 +1,114 @@
1
+ /**
2
+ * Diff line kind. `context` lines are equal on both sides.
3
+ */
4
+ export type DiffLineType = "add" | "remove" | "context";
5
+ /**
6
+ * One diff line. See the module comment for the coordinate rules.
7
+ */
8
+ export interface DiffLine {
9
+ readonly type: DiffLineType;
10
+ readonly text: string;
11
+ readonly beforeLine: number;
12
+ readonly afterLine: number;
13
+ }
14
+ /**
15
+ * One contiguous changed region plus its context lines.
16
+ */
17
+ export interface DiffHunk {
18
+ readonly beforeStart: number;
19
+ readonly beforeLines: number;
20
+ readonly afterStart: number;
21
+ readonly afterLines: number;
22
+ readonly lines: readonly DiffLine[];
23
+ }
24
+ /**
25
+ * Request accepted by `useDiff`. `before` overrides the current file as the
26
+ * old side, and `content` overrides it as the new side; an omitted side is
27
+ * read from the session. With both omitted the file is compared against itself
28
+ * and therefore has no hunks.
29
+ */
30
+ export interface DiffRequest {
31
+ readonly path: string;
32
+ readonly content?: string;
33
+ readonly before?: string;
34
+ readonly context?: number;
35
+ }
36
+ /**
37
+ * Complete diff result.
38
+ */
39
+ export interface DiffResult {
40
+ readonly path: string;
41
+ readonly beforeFingerprint: string;
42
+ readonly afterFingerprint: string;
43
+ readonly added: number;
44
+ readonly removed: number;
45
+ readonly unchanged: number;
46
+ readonly hunks: readonly DiffHunk[];
47
+ readonly truncated: boolean;
48
+ }
49
+ /**
50
+ * One side of a diff. Fingerprints and truncation are carried explicitly so a
51
+ * caller that read the file page by page does not have to reconstruct them.
52
+ */
53
+ export interface DiffSource {
54
+ readonly lines: readonly string[];
55
+ readonly fingerprint: string;
56
+ readonly truncated: boolean;
57
+ }
58
+ /**
59
+ * Options for a diff computation.
60
+ */
61
+ export interface DiffOptions {
62
+ readonly context?: number;
63
+ }
64
+ /**
65
+ * Maximum number of lines diffed per side. Beyond this the computation is
66
+ * bounded and the result says `truncated`.
67
+ */
68
+ export declare const DiffMaxLines: number;
69
+ /**
70
+ * Default number of unchanged lines kept on each side of a change.
71
+ */
72
+ export declare const DiffDefaultContext: number;
73
+ /**
74
+ * Hard ceiling for a caller-supplied context size.
75
+ */
76
+ export declare const DiffMaxContext: number;
77
+ /**
78
+ * Split text into logical lines. A trailing newline terminates the last line
79
+ * rather than creating an empty one; `\r` is stripped so CRLF files diff
80
+ * cleanly against LF content.
81
+ *
82
+ * @param text - Text to split.
83
+ * @returns Lines without terminators.
84
+ */
85
+ export declare const splitDiffLines: (text: string) => string[];
86
+ /**
87
+ * Build a diff source from caller-supplied text. The fingerprint covers the
88
+ * exact input, including its trailing newline.
89
+ *
90
+ * @param text - Whole text.
91
+ * @returns Source lines, fingerprint and truncation flag.
92
+ */
93
+ export declare const textDiffSource: (text: string) => DiffSource;
94
+ /**
95
+ * Diff two prepared sources. The fingerprints on the result always cover the
96
+ * whole input, even when the diff was truncated to `DiffMaxLines`.
97
+ *
98
+ * @param path - Root-relative path the result describes.
99
+ * @param before - Original side.
100
+ * @param after - New side.
101
+ * @param context - Unchanged lines retained on each side.
102
+ * @returns Diff result with counts and hunks.
103
+ */
104
+ export declare const diffSources: (path: string, before: DiffSource, after: DiffSource, context?: number) => DiffResult;
105
+ /**
106
+ * Diff two texts directly.
107
+ *
108
+ * @param path - Root-relative path the result describes.
109
+ * @param before - Original text.
110
+ * @param after - New text.
111
+ * @param options - Context size.
112
+ * @returns Diff result.
113
+ */
114
+ export declare const diffText: (path: string, before: string, after: string, options?: DiffOptions) => DiffResult;