@inneranimalmedia/agentsam-sdk 2.6.2 → 2.6.4

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 (661) hide show
  1. package/AGENTSAM.md +51 -1
  2. package/README.md +95 -0
  3. package/apps/README.md +34 -0
  4. package/apps/cad-creator/README.md +728 -0
  5. package/apps/cad-creator/shared/cad/package.json +19 -0
  6. package/apps/cad-creator/shared/cad/src/domain/operations.ts +7 -0
  7. package/apps/cad-creator/shared/cad/src/domain/project-contract.d.ts +3 -0
  8. package/apps/cad-creator/shared/cad/src/domain/project-contract.js +75 -0
  9. package/apps/cad-creator/shared/cad/src/domain/project-tools.d.ts +1 -0
  10. package/apps/cad-creator/shared/cad/src/domain/project-tools.js +24 -0
  11. package/apps/cad-creator/shared/cad/src/domain/validation.ts +191 -0
  12. package/apps/cad-creator/shared/cad/src/index.ts +4 -0
  13. package/apps/cad-creator/shared/cad/src/robotics/types.ts +232 -0
  14. package/apps/cad-creator/shared/cad/src/types.ts +507 -0
  15. package/apps/cad-creator/shared/cad/tsconfig.json +14 -0
  16. package/bin/agentsam +16 -1
  17. package/docs/AUTORAG.md +58 -0
  18. package/docs/BRAND_INTELLIGENCE.md +30 -0
  19. package/docs/CLI_SHELL.md +4 -2
  20. package/docs/CMS_CONTEXTUAL_COMPOSER.md +38 -0
  21. package/docs/MERKLE.md +4 -0
  22. package/docs/PROJECT_CONFIG.md +3 -0
  23. package/docs/REPOSITORY_KNOWLEDGE.md +2 -0
  24. package/docs/THEME_REFINERY.md +120 -0
  25. package/docs/architecture/AGENTSAM_DISTRIBUTION_OWNERSHIP.md +176 -0
  26. package/docs/architecture/AGENTSAM_GO_RUNTIME.md +282 -0
  27. package/docs/architecture/CODEBASEINDEX_GUIDED_PATH.md +202 -0
  28. package/docs/architecture/FS_E2E_CLOSURE_RECEIPT.md +59 -0
  29. package/docs/architecture/LOCAL_FS_AUTHORITY.md +38 -0
  30. package/docs/architecture/LOCAL_STUDIO_CLOUDFLARE_OAUTH.md +28 -0
  31. package/docs/architecture/PLAN_CLI_AND_LOCAL_STUDIO_DESKTOP.md +96 -0
  32. package/docs/architecture/PROVIDER-TOOLS-AND-COMPACTION.md +60 -0
  33. package/docs/architecture/SAM_ACTIVITY_RECOVERY_RECEIPT.md +39 -0
  34. package/docs/architecture/SAM_DECISION_WORK_RECEIPT.md +54 -0
  35. package/docs/architecture/SAM_KERNEL.md +181 -0
  36. package/docs/architecture/SAM_MACHINE_NORMALIZATION_PRECOMMIT_REPORT.md +208 -0
  37. package/docs/architecture/SLASH_SKILLS_PORTABLE.md +116 -0
  38. package/docs/architecture/STORAGE.md +87 -0
  39. package/docs/architecture/fs-e2e-receipt.latest.json +42 -0
  40. package/docs/architecture/previews/codebaseindex-guided-path/CODEBASEINDEX_GUIDED_PATH.md +202 -0
  41. package/docs/architecture/previews/codebaseindex-guided-path/index.html +321 -0
  42. package/docs/cad-project-tools.md +69 -0
  43. package/docs/cms-scaffolding-pattern-reference.md +73 -0
  44. package/docs/plans/AGENTSAM-INTERACTIVE-UI-REQUIREMENTS-codex-tui-20260919.md +113 -0
  45. package/docs/plans/AGENTSAM-INTERACTIVE-UI-REQUIREMENTS.md +85 -0
  46. package/docs/plans/AGENTSAM-MCP-CLIENT-2026-09-19.md +181 -0
  47. package/docs/plans/ASBD-PORTABLE-WORKGRAPH-UI-DEFERRED.md +34 -0
  48. package/docs/plans/ASTRA-BRIEF-2026-09-18.md +258 -0
  49. package/docs/plans/MULTI-AGENT-SPRINTS-2026-09-19.md +373 -0
  50. package/docs/plans/NEXT-AGENT-HANDOFF.md +167 -0
  51. package/docs/plans/RECONCILIATION-2026-09-19.md +178 -0
  52. package/docs/plugins.md +43 -0
  53. package/docs/tools/README.md +57 -0
  54. package/docs/tools/agent-and-orchestration.md +49 -0
  55. package/docs/tools/browser-and-research.md +46 -0
  56. package/docs/tools/cloudflare-platform.md +32 -0
  57. package/docs/tools/cms.md +25 -0
  58. package/docs/tools/communications.md +41 -0
  59. package/docs/tools/database-and-storage.md +62 -0
  60. package/docs/tools/design-and-media.md +64 -0
  61. package/docs/tools/filesystem-and-code.md +55 -0
  62. package/docs/tools/github.md +56 -0
  63. package/docs/tools/integrations-and-misc.md +16 -0
  64. package/docs/tools/memory.md +21 -0
  65. package/docs/tools/terminal-and-execution.md +29 -0
  66. package/docs/tools/tickets-and-platform.md +30 -0
  67. package/migrations/d1/0001_agentsam_plugin_runtime.sql +177 -0
  68. package/migrations/d1/0002_agentsam_ticket_ownership.sql +8 -0
  69. package/migrations/d1/0002_dynamic_model_policies.sql +23 -0
  70. package/migrations/d1/0003_expand_tool_handler_families.sql +18 -0
  71. package/migrations/d1/0004_project_aware_retrieval_lanes.sql +24 -0
  72. package/migrations/d1/0005_portable_knowledge_identity.sql +104 -0
  73. package/migrations/d1/0006_repair_ops_trail_account_scope.sql +14 -0
  74. package/migrations/d1/0007_repair_ops_trail_agent_run_account.sql +13 -0
  75. package/migrations/d1/0008_backfill_knowledge_run_legacy_tenant.sql +14 -0
  76. package/migrations/d1/0009_normalize_cloudflare_plugin_installations.sql +137 -0
  77. package/migrations/d1/0010_portable_tickets_memory.sql +140 -0
  78. package/migrations/d1/0011_agentsam_skill_v2.sql +185 -0
  79. package/migrations/d1/0011b_agentsam_skill_v2_cutover.sql +22 -0
  80. package/migrations/d1/0011c_agentsam_skill_v2_backfill.sql +76 -0
  81. package/migrations/d1/0011d_agentsam_skill_v2_retrieval_revisions.sql +50 -0
  82. package/migrations/d1/0012_agentsam_tools_required_seed.sql +67 -0
  83. package/migrations/d1/0013_identity_oauth_states.sql +15 -0
  84. package/migrations/d1/0014_auth_event_log.sql +20 -0
  85. package/migrations/d1/0015_identity_oauth_state_app_id.sql +3 -0
  86. package/migrations/d1/README_PORTABLE_CONTROL_PLANE.md +16 -0
  87. package/migrations/runtime/0001_cli_runtime.sql +67 -0
  88. package/migrations/runtime/0002_project_sessions.sql +15 -0
  89. package/migrations/runtime/0003_provider_continuations.sql +8 -0
  90. package/migrations/sqlite/agentsam_skill_retrieval.portable.sql +42 -0
  91. package/package.json +107 -12
  92. package/packages/agentsam-brand/README.md +21 -0
  93. package/packages/agentsam-brand/package.json +22 -0
  94. package/packages/agentsam-brand/src/contract.js +59 -0
  95. package/packages/agentsam-brand/src/extract.js +126 -0
  96. package/packages/agentsam-brand/src/goap-actions.js +73 -0
  97. package/packages/agentsam-brand/src/index.js +48 -0
  98. package/packages/agentsam-brand/src/plan.js +115 -0
  99. package/packages/agentsam-brand/src/resolve.js +139 -0
  100. package/packages/agentsam-brand/src/scan.js +250 -0
  101. package/packages/agentsam-brand/test/brand-scan.test.mjs +106 -0
  102. package/packages/agentsam-contracts/README.md +23 -0
  103. package/packages/agentsam-contracts/package.json +32 -0
  104. package/packages/agentsam-contracts/src/adapter.ts +25 -0
  105. package/packages/agentsam-contracts/src/agent.ts +35 -0
  106. package/packages/agentsam-contracts/src/artifacts.ts +33 -0
  107. package/packages/agentsam-contracts/src/authority.ts +29 -0
  108. package/packages/agentsam-contracts/src/context.ts +16 -0
  109. package/packages/agentsam-contracts/src/errors.ts +62 -0
  110. package/packages/agentsam-contracts/src/events.ts +47 -0
  111. package/packages/agentsam-contracts/src/execution.ts +50 -0
  112. package/packages/agentsam-contracts/src/hooks.ts +40 -0
  113. package/packages/agentsam-contracts/src/identity.ts +16 -0
  114. package/packages/agentsam-contracts/src/index.ts +14 -0
  115. package/packages/agentsam-contracts/src/models.ts +9 -0
  116. package/packages/agentsam-contracts/src/providers.ts +33 -0
  117. package/packages/agentsam-contracts/src/repository.ts +64 -0
  118. package/packages/agentsam-contracts/src/tools.ts +98 -0
  119. package/packages/agentsam-contracts/test/contracts.test.mjs +16 -0
  120. package/packages/agentsam-contracts/test/errors-catalog.test.mjs +25 -0
  121. package/packages/agentsam-contracts/test/repository.test.mjs +18 -0
  122. package/packages/agentsam-contracts/tsconfig.json +12 -0
  123. package/packages/agentsam-errors/package.json +17 -0
  124. package/packages/agentsam-errors/src/adapters/anthropic.js +15 -0
  125. package/packages/agentsam-errors/src/adapters/cad.js +109 -0
  126. package/packages/agentsam-errors/src/adapters/cloudflare.js +21 -0
  127. package/packages/agentsam-errors/src/adapters/cursor.js +4 -0
  128. package/packages/agentsam-errors/src/adapters/device.js +38 -0
  129. package/packages/agentsam-errors/src/adapters/docker.js +28 -0
  130. package/packages/agentsam-errors/src/adapters/gcp.js +14 -0
  131. package/packages/agentsam-errors/src/adapters/github.js +22 -0
  132. package/packages/agentsam-errors/src/adapters/google.js +17 -0
  133. package/packages/agentsam-errors/src/adapters/index.js +55 -0
  134. package/packages/agentsam-errors/src/adapters/internal.js +40 -0
  135. package/packages/agentsam-errors/src/adapters/oauth.js +24 -0
  136. package/packages/agentsam-errors/src/adapters/openai.js +17 -0
  137. package/packages/agentsam-errors/src/adapters/process.js +35 -0
  138. package/packages/agentsam-errors/src/adapters/provider.js +114 -0
  139. package/packages/agentsam-errors/src/envelope.js +239 -0
  140. package/packages/agentsam-errors/src/error.js +24 -0
  141. package/packages/agentsam-errors/src/fingerprint.js +35 -0
  142. package/packages/agentsam-errors/src/index.js +11 -0
  143. package/packages/agentsam-errors/src/normalize.js +30 -0
  144. package/packages/agentsam-errors/src/recovery.js +301 -0
  145. package/packages/agentsam-errors/src/redaction.js +52 -0
  146. package/packages/agentsam-errors/src/render.js +16 -0
  147. package/packages/agentsam-errors/src/retry.js +10 -0
  148. package/packages/agentsam-errors/src/transport.js +52 -0
  149. package/packages/agentsam-errors/src/vocabulary.js +320 -0
  150. package/packages/agentsam-errors/test/envelope.test.mjs +70 -0
  151. package/packages/agentsam-errors/test/providers.test.mjs +99 -0
  152. package/packages/agentsam-errors/test/redaction.test.mjs +21 -0
  153. package/packages/agentsam-errors/test/runtime-cad-device.test.mjs +76 -0
  154. package/packages/agentsam-errors/test/transport.test.mjs +46 -0
  155. package/packages/agentsam-knowledge/package.json +15 -0
  156. package/packages/agentsam-knowledge/src/autorag/index.js +64 -0
  157. package/packages/agentsam-knowledge/src/backends/index.js +26 -0
  158. package/packages/agentsam-knowledge/src/index.js +3 -0
  159. package/packages/agentsam-knowledge/src/providers/index.js +107 -0
  160. package/packages/agentsam-knowledge/test/autorag.test.mjs +42 -0
  161. package/packages/agentsam-nav/README.md +40 -0
  162. package/packages/agentsam-nav/dist/Nav.d.ts +43 -0
  163. package/packages/agentsam-nav/dist/NavCollapsible.d.ts +10 -0
  164. package/packages/agentsam-nav/dist/NavContent.d.ts +2 -0
  165. package/packages/agentsam-nav/dist/NavFooter.d.ts +2 -0
  166. package/packages/agentsam-nav/dist/NavGroup.d.ts +3 -0
  167. package/packages/agentsam-nav/dist/NavHeader.d.ts +2 -0
  168. package/packages/agentsam-nav/dist/NavMenu.d.ts +22 -0
  169. package/packages/agentsam-nav/dist/NavProvider.d.ts +35 -0
  170. package/packages/agentsam-nav/dist/NavTrigger.d.ts +2 -0
  171. package/packages/agentsam-nav/dist/Surfaces.d.ts +41 -0
  172. package/packages/agentsam-nav/dist/browser.d.ts +11 -0
  173. package/packages/agentsam-nav/dist/browser.global.js +132 -0
  174. package/packages/agentsam-nav/dist/browser.js +613 -0
  175. package/packages/agentsam-nav/dist/contracts.d.ts +76 -0
  176. package/packages/agentsam-nav/dist/index.d.ts +11 -0
  177. package/packages/agentsam-nav/dist/index.js +614 -0
  178. package/packages/agentsam-nav/dist/legacy.css +83 -0
  179. package/packages/agentsam-nav/dist/shell.css +113 -0
  180. package/packages/agentsam-nav/dist/theme.css +113 -0
  181. package/packages/agentsam-nav/dist/utils.d.ts +1 -0
  182. package/packages/agentsam-nav/package.json +43 -0
  183. package/packages/agentsam-queue-control/README.md +107 -0
  184. package/packages/agentsam-queue-control/package.json +31 -0
  185. package/packages/agentsam-queue-control/schemas/job-envelope.schema.json +56 -0
  186. package/packages/agentsam-queue-control/src/adapters/cloudflare.js +152 -0
  187. package/packages/agentsam-queue-control/src/adapters/memory.js +38 -0
  188. package/packages/agentsam-queue-control/src/contracts.js +130 -0
  189. package/packages/agentsam-queue-control/src/control-plane.js +141 -0
  190. package/packages/agentsam-queue-control/src/dispatch.js +43 -0
  191. package/packages/agentsam-queue-control/src/index.js +7 -0
  192. package/packages/agentsam-queue-control/src/policy.js +88 -0
  193. package/packages/agentsam-queue-control/src/topology.js +66 -0
  194. package/packages/agentsam-queue-control/test/queue-control.test.mjs +100 -0
  195. package/packages/agentsam-repository/src/goap.js +718 -0
  196. package/packages/agentsam-repository/src/goap.js.bak-20260922011251 +670 -0
  197. package/packages/agentsam-repository/src/index.js +5 -0
  198. package/packages/agentsam-repository/src/merkle/cloudflare-persistence.js +2 -2
  199. package/packages/agentsam-repository/src/tickets.js +184 -0
  200. package/packages/agentsam-repository/src/work-tracking.js +199 -0
  201. package/packages/agentsam-repository/src/workspace-state.js +176 -0
  202. package/packages/agentsam-repository/test/goap-tickets-workspace-state.test.mjs +152 -0
  203. package/packages/connectors/cloudflare/src/index.js +297 -15
  204. package/packages/connectors/cloudflare/src/owner.js +43 -40
  205. package/packages/connectors/cloudflare/src/routes.js +176 -26
  206. package/packages/connectors/cloudflare/tests/connector.test.mjs +137 -2
  207. package/packages/heuristic-theme/README.md +11 -0
  208. package/packages/heuristic-theme/package.json +25 -0
  209. package/packages/heuristic-theme/src/index.js +2 -0
  210. package/packages/heuristic-theme/src/registry.js +36 -0
  211. package/packages/heuristic-theme/src/theme.js +41 -0
  212. package/packages/heuristic-theme/test/theme.test.mjs +26 -0
  213. package/packages/identity/.agentsam/features/oauth-login-portal/agentsam.feature.json +64 -0
  214. package/packages/identity/.agentsam/features/oauth-login-portal/providers.json +96 -0
  215. package/packages/identity/.agentsam/features/oauth-login-portal/resources.json +47 -0
  216. package/packages/identity/.agentsam/features/oauth-login-portal/routes.json +83 -0
  217. package/packages/identity/.agentsam/features/oauth-login-portal/ui.json +35 -0
  218. package/packages/identity/docs/PORTABLE_IDENTITY_ARCHITECTURE.md +50 -0
  219. package/packages/identity/migrations/D1_SCHEMA_MAPPING.md +31 -0
  220. package/packages/identity/migrations/sqlite/001_identity_core.sql +99 -0
  221. package/packages/identity/migrations/sqlite/002_identity_oauth_client.sql +38 -0
  222. package/packages/identity/migrations/sqlite/003_identity_oauth_server.sql +64 -0
  223. package/packages/identity/package.json +4 -3
  224. package/packages/identity/src/adapters/cloudflare-d1/ids.js +4 -0
  225. package/packages/identity/src/adapters/cloudflare-d1/index.js +156 -18
  226. package/packages/identity/src/adapters/sqlite/index.js +319 -0
  227. package/packages/identity/src/app/verify-app.js +95 -0
  228. package/packages/identity/src/contracts/identity-store.js +115 -0
  229. package/packages/identity/src/contracts/provider.js +3 -2
  230. package/packages/identity/src/contracts/route-ids.js +30 -0
  231. package/packages/identity/src/contracts/route-projection.js +218 -0
  232. package/packages/identity/src/contracts/routes.js +11 -0
  233. package/packages/identity/src/core/browser-paths.js +4 -5
  234. package/packages/identity/src/core/constants.js +13 -8
  235. package/packages/identity/src/core/session-policy.js +32 -0
  236. package/packages/identity/src/frontend/auth-portal/pages/login.html +16 -9
  237. package/packages/identity/src/frontend/auth-portal/pages/reset.html +3 -3
  238. package/packages/identity/src/frontend/auth-portal/pages/signup.html +3 -3
  239. package/packages/identity/src/frontend/auth-portal/preview/dashboard-stub.html +1 -1
  240. package/packages/identity/src/index.js +27 -0
  241. package/packages/identity/src/oauth/README.md +10 -4
  242. package/packages/identity/src/oauth/credentials.js +31 -11
  243. package/packages/identity/src/oauth/finalize-inbound.js +1 -1
  244. package/packages/identity/src/oauth/iam-platform.js +13 -12
  245. package/packages/identity/src/oauth/redirect-paths.js +27 -36
  246. package/packages/identity/src/providers/cloudflare/index.js +19 -0
  247. package/packages/identity/src/providers/cloudflare/mapper.js +21 -0
  248. package/packages/identity/src/providers/cloudflare/oauth.js +48 -0
  249. package/packages/identity/src/providers/cloudflare/profile.js +28 -0
  250. package/packages/identity/src/providers/index.js +18 -2
  251. package/packages/identity/src/server/identity-service.js +35 -8
  252. package/packages/identity/src/server/mount-policy.js +30 -0
  253. package/packages/identity/src/server/post-auth.js +79 -0
  254. package/packages/identity/src/server/worker-router.js +153 -66
  255. package/packages/identity/tests/finalize-inbound-oauth.test.mjs +6 -6
  256. package/packages/identity/tests/iam-provider.test.mjs +1 -1
  257. package/packages/identity/tests/identity-service.test.mjs +47 -1
  258. package/packages/identity/tests/oauth-credentials.test.mjs +3 -1
  259. package/packages/identity/tests/portable-identity-architecture.test.mjs +157 -0
  260. package/packages/identity/tests/session-routes-policy.test.mjs +21 -0
  261. package/packages/providers/completeful/README.md +38 -0
  262. package/packages/providers/completeful/package.json +29 -0
  263. package/packages/providers/completeful/src/client.js +162 -0
  264. package/packages/providers/completeful/src/events.js +49 -0
  265. package/packages/providers/completeful/src/index.js +22 -0
  266. package/packages/providers/completeful/src/tools.js +579 -0
  267. package/packages/providers/completeful/src/webhooks.js +55 -0
  268. package/packages/providers/completeful/test/provider.test.mjs +196 -0
  269. package/packages/theme-church-site/README.md +10 -0
  270. package/packages/theme-church-site/package.json +31 -0
  271. package/packages/theme-church-site/src/harvest.json +14 -0
  272. package/packages/theme-church-site/src/index.js +85 -0
  273. package/packages/theme-church-site/test/theme.test.mjs +19 -0
  274. package/packages/theme-companions-site/README.md +10 -0
  275. package/packages/theme-companions-site/package.json +31 -0
  276. package/packages/theme-companions-site/src/harvest.json +12 -0
  277. package/packages/theme-companions-site/src/index.js +83 -0
  278. package/packages/theme-companions-site/test/theme.test.mjs +19 -0
  279. package/packages/theme-floors-site/README.md +10 -0
  280. package/packages/theme-floors-site/package.json +31 -0
  281. package/packages/theme-floors-site/src/harvest.json +14 -0
  282. package/packages/theme-floors-site/src/index.js +83 -0
  283. package/packages/theme-floors-site/test/theme.test.mjs +19 -0
  284. package/packages/theme-fuelnfree-site/README.md +10 -0
  285. package/packages/theme-fuelnfree-site/package.json +31 -0
  286. package/packages/theme-fuelnfree-site/src/harvest.json +13 -0
  287. package/packages/theme-fuelnfree-site/src/index.js +82 -0
  288. package/packages/theme-fuelnfree-site/test/theme.test.mjs +19 -0
  289. package/packages/theme-handyman-site/README.md +10 -0
  290. package/packages/theme-handyman-site/package.json +31 -0
  291. package/packages/theme-handyman-site/src/harvest.json +10 -0
  292. package/packages/theme-handyman-site/src/index.js +84 -0
  293. package/packages/theme-handyman-site/test/theme.test.mjs +19 -0
  294. package/packages/theme-insurance-site/README.md +10 -0
  295. package/packages/theme-insurance-site/package.json +31 -0
  296. package/packages/theme-insurance-site/src/harvest.json +10 -0
  297. package/packages/theme-insurance-site/src/index.js +84 -0
  298. package/packages/theme-insurance-site/test/theme.test.mjs +19 -0
  299. package/packages/theme-shinshu-site/README.md +10 -0
  300. package/packages/theme-shinshu-site/package.json +31 -0
  301. package/packages/theme-shinshu-site/src/harvest.json +12 -0
  302. package/packages/theme-shinshu-site/src/index.js +84 -0
  303. package/packages/theme-shinshu-site/test/theme.test.mjs +19 -0
  304. package/packages/work-graph/README.md +49 -0
  305. package/packages/work-graph/package.json +19 -0
  306. package/packages/work-graph/prototype/README.md +32 -0
  307. package/packages/work-graph/prototype/data/demo-workgraph.js +47 -0
  308. package/packages/work-graph/prototype/renderers/timeline-model.js +21 -0
  309. package/packages/work-graph/prototype/renderers/workgraph-runtime.js +38 -0
  310. package/packages/work-graph/prototype-gnantt.html +655 -0
  311. package/packages/work-graph/src/adapters/business/projects.js +23 -0
  312. package/packages/work-graph/src/adapters/engineering/git.js +22 -0
  313. package/packages/work-graph/src/adapters/engineering/mcp.js +22 -0
  314. package/packages/work-graph/src/index.js +76 -0
  315. package/packages/work-graph/src/renderers/gantt-model.js +11 -0
  316. package/packages/work-graph/src/renderers/timeline.js +16 -0
  317. package/packages/work-graph/test/work-graph.test.mjs +37 -0
  318. package/protocol/README.md +12 -0
  319. package/protocol/apps/agentsam.app.v1.schema.json +51 -0
  320. package/protocol/brand/brandpack.v1.schema.json +43 -0
  321. package/protocol/capabilities/cloudflare-cpu-audit-input.schema.json +30 -6
  322. package/protocol/capabilities/cloudflare-cpu-profile-input.schema.json +18 -4
  323. package/protocol/capabilities/cloudflare-wrangler-native-input.schema.json +59 -10
  324. package/protocol/capabilities/knowledge-search-input.schema.json +35 -0
  325. package/protocol/capabilities/manifest.json +163 -1
  326. package/protocol/capabilities/repository-audit-input.schema.json +39 -6
  327. package/protocol/capabilities/repository-snapshot-input.schema.json +15 -3
  328. package/protocol/capabilities/terminal-exec-input.schema.json +55 -0
  329. package/protocol/commerce/catalog.v1.json +50 -0
  330. package/protocol/credentials/issue.v1.schema.json +38 -0
  331. package/protocol/database/connection.v1.schema.json +41 -0
  332. package/protocol/embeddings/embedding-profile.v1.schema.json +20 -0
  333. package/protocol/errors/error-catalog.json +164 -0
  334. package/protocol/errors/error-envelope.schema.json +678 -0
  335. package/protocol/errors/recovery.v1.schema.json +50 -0
  336. package/protocol/features/README.md +57 -0
  337. package/protocol/features/agentsam.feature.v1.schema.json +290 -0
  338. package/protocol/features/catalog.json +65 -0
  339. package/protocol/features/examples/provider-resend.feature.json +17 -0
  340. package/protocol/go/agentsam-go-runtime.v1.json +17 -0
  341. package/protocol/knowledge/LIFECYCLE.md +140 -0
  342. package/protocol/knowledge/README.md +4 -0
  343. package/protocol/presets/catalog.json +128 -19
  344. package/protocol/rpc/v1/errors.proto +24 -0
  345. package/protocol/runtime/workspace-fs.v1.schema.json +71 -0
  346. package/protocol/sam/activity.v1.schema.json +48 -0
  347. package/protocol/sam/answer.v1.schema.json +35 -0
  348. package/protocol/sam/calibration.v1.schema.json +21 -0
  349. package/protocol/sam/decision-receipt.v1.schema.json +29 -0
  350. package/protocol/sam/evaluation.v1.schema.json +19 -0
  351. package/protocol/sam/operation.schema.json +66 -0
  352. package/protocol/sam/outcome.v1.schema.json +36 -0
  353. package/protocol/sam/question.v1.schema.json +26 -0
  354. package/protocol/sam/registry.seed.json +153 -0
  355. package/protocol/sam/result.schema.json +53 -0
  356. package/protocol/sam/state.v1.schema.json +23 -0
  357. package/protocol/skills/agentsam.interaction.v1.schema.json +50 -0
  358. package/protocol/skills/agentsam.skill.v1.schema.json +57 -0
  359. package/protocol/theme-refinery/d1-reconciliation.md +48 -0
  360. package/protocol/theme-refinery/product-metadata.schema.json +27 -0
  361. package/protocol/theme-refinery/receipts/products-registry-batch-20260924.json +318 -0
  362. package/protocol/theme-refinery/receipts/theme-harvest-20260924.json +472 -0
  363. package/protocol/theme-refinery/reconciliation-receipt.schema.json +83 -0
  364. package/protocol/ui/icon-registry.mjs +226 -0
  365. package/protocol/ui/icon.v1.schema.json +51 -0
  366. package/services/cad/server.py +249 -2
  367. package/skills/README.md +22 -9
  368. package/skills/agentsam-codebaseindex/SKILL.md +225 -0
  369. package/skills/catalog.json +14 -0
  370. package/src/agent/capability-adapter.js +15 -5
  371. package/src/agent/index.js +2 -1
  372. package/src/agent/model-turn.js +51 -0
  373. package/src/agent/responses-runner.js +304 -38
  374. package/src/capabilities/index.js +1 -0
  375. package/src/capabilities/terminal-exec.js +78 -0
  376. package/src/cli/command-catalog.js +130 -0
  377. package/src/cli/dispatch.js +48 -0
  378. package/src/cli.js +160 -10
  379. package/src/cloudflare/index.js +6 -0
  380. package/src/cloudflare/runtime-status.js +393 -0
  381. package/src/cloudflare/wrangler.js +17 -1
  382. package/src/commands/api-key.js +244 -0
  383. package/src/commands/app.js +138 -0
  384. package/src/commands/autorag.js +77 -0
  385. package/src/commands/brand.js +291 -0
  386. package/src/commands/cad.js +1 -0
  387. package/src/commands/codebaseindex.js +688 -0
  388. package/src/commands/connections.js +126 -29
  389. package/src/commands/context-economics.js +8 -0
  390. package/src/commands/db.js +7 -0
  391. package/src/commands/env.js +155 -27
  392. package/src/commands/eval.js +209 -14
  393. package/src/commands/go.js +678 -0
  394. package/src/commands/goap.js +176 -0
  395. package/src/commands/identity-init.js +27 -3
  396. package/src/commands/identity-protocol.js +195 -0
  397. package/src/commands/interaction-clack.js +115 -0
  398. package/src/commands/knowledge.js +64 -5
  399. package/src/commands/mcp.js +341 -0
  400. package/src/commands/merkle-persist.js +3 -1
  401. package/src/commands/merkle.js +18 -3
  402. package/src/commands/models.js +110 -24
  403. package/src/commands/plugins.js +175 -0
  404. package/src/commands/preferences.js +28 -8
  405. package/src/commands/product.js +53 -10
  406. package/src/commands/providers.js +173 -44
  407. package/src/commands/resume.js +9 -5
  408. package/src/commands/runtime-status.js +154 -0
  409. package/src/commands/shell.js +508 -56
  410. package/src/commands/skill.js +248 -0
  411. package/src/commands/skills.js +1 -1
  412. package/src/commands/start-local.js +4 -0
  413. package/src/commands/status.js +82 -7
  414. package/src/commands/tunnel.js +228 -195
  415. package/src/commands/whoami.js +156 -12
  416. package/src/context/budget.js +6 -0
  417. package/src/context/index.js +2 -1
  418. package/src/context/project-card.js +75 -0
  419. package/src/errors/contract.js +34 -211
  420. package/src/errors/diagnostic.js +95 -51
  421. package/src/errors/index.js +6 -13
  422. package/src/eval/index.js +6 -0
  423. package/src/eval/live.js +439 -0
  424. package/src/features/resolve.js +242 -0
  425. package/src/go/build.js +298 -0
  426. package/src/go/cloudflare.js +608 -0
  427. package/src/go/container.js +120 -0
  428. package/src/go/contract.js +144 -0
  429. package/src/go/discover.js +212 -0
  430. package/src/go/index.js +25 -0
  431. package/src/go/native-probe-runner.mjs +119 -0
  432. package/src/go/official-registry.js +280 -0
  433. package/src/go/official-release.js +10 -0
  434. package/src/go/receipts.js +144 -0
  435. package/src/go/verify.js +38 -0
  436. package/src/index.js +127 -1
  437. package/src/indexing/ingest/discover-models.js +298 -0
  438. package/src/indexing/ingest/inventory.js +243 -0
  439. package/src/indexing/ingest/job-graph.js +181 -0
  440. package/src/indexing/ingest/materials.js +210 -0
  441. package/src/knowledge/config.js +13 -5
  442. package/src/knowledge/engine.js +23 -8
  443. package/src/knowledge/index.js +1 -0
  444. package/src/knowledge/lane-registry.js +46 -0
  445. package/src/knowledge/providers/gemini.js +48 -8
  446. package/src/knowledge/service/client.js +13 -1
  447. package/src/knowledge/service/grpc-codec.js +156 -53
  448. package/src/knowledge/service/job-engine.js +133 -11
  449. package/src/knowledge/service/job-worker.js +34 -5
  450. package/src/knowledge/service/server.js +10 -1
  451. package/src/knowledge/store-discovery.js +77 -0
  452. package/src/lib/account-session.js +8 -2
  453. package/src/lib/agent-instructions.js +3 -0
  454. package/src/lib/auth.js +7 -3
  455. package/src/lib/cad/blender.js +42 -3
  456. package/src/lib/cad/d1-project-store.js +43 -0
  457. package/src/lib/cad/discovery.js +616 -0
  458. package/src/lib/cad/docker-executor.js +352 -0
  459. package/src/lib/cad/freecad.js +253 -0
  460. package/src/lib/cad/index.js +40 -0
  461. package/src/lib/cad/openscad.js +198 -0
  462. package/src/lib/cad/project-cli.d.ts +2 -0
  463. package/src/lib/cad/project-cli.js +21 -0
  464. package/src/lib/cad/project-contract.d.ts +3 -0
  465. package/src/lib/cad/project-contract.js +1 -0
  466. package/src/lib/cad/project-recipe.js +30 -0
  467. package/src/lib/cad/project-runtime.d.ts +2 -0
  468. package/src/lib/cad/project-runtime.js +53 -0
  469. package/src/lib/cad/project-store.js +25 -0
  470. package/src/lib/cad/project-workflows.js +31 -0
  471. package/src/lib/cad-docker.js +21 -2
  472. package/src/lib/cli-preferences.js +17 -2
  473. package/src/lib/core-client.js +37 -18
  474. package/src/lib/deploy/local-studio.js +6 -5
  475. package/src/lib/dockerize.js +3 -0
  476. package/src/lib/execution-approvals.js +1 -0
  477. package/src/lib/identity-scaffold.js +4 -1
  478. package/src/lib/knowledge-docker.js +9 -1
  479. package/src/lib/local-sessions.js +124 -34
  480. package/src/lib/local-status.js +35 -14
  481. package/src/lib/project-config.js +9 -0
  482. package/src/lib/provider-credentials.js +136 -32
  483. package/src/lib/scaffold/resolve-cloudflare-account.js +37 -0
  484. package/src/lib/scaffold/wizards/cms.js +2 -8
  485. package/src/lib/scaffold/wizards/worker-api.js +2 -8
  486. package/src/lib/slash-commands.js +10 -2
  487. package/src/local/migrations.js +109 -1
  488. package/src/local/runtime-store.js +31 -5
  489. package/src/local/sqlite.js +36 -1
  490. package/src/local-fs/capability.js +121 -0
  491. package/src/local-fs/freshness.js +75 -0
  492. package/src/local-fs/index.js +385 -0
  493. package/src/local-fs/paths.js +100 -0
  494. package/src/local-pty/server.js +295 -19
  495. package/src/mcp/authority.js +348 -0
  496. package/src/mcp/client-adapters.js +431 -0
  497. package/src/mcp/client.js +172 -0
  498. package/src/mcp/index.js +47 -0
  499. package/src/mcp/telemetry.js +103 -0
  500. package/src/models/ai-access-onboarding.js +112 -0
  501. package/src/models/catalog.js +329 -51
  502. package/src/models/discovery.js +34 -6
  503. package/src/models/index.js +2 -0
  504. package/src/models/inventory-core.js +190 -0
  505. package/src/models/policy.js +20 -0
  506. package/src/plugins/cloudflare.js +103 -0
  507. package/src/plugins/completeful.js +69 -0
  508. package/src/plugins/contracts.js +86 -0
  509. package/src/plugins/index.js +11 -0
  510. package/src/plugins/registry.js +207 -0
  511. package/src/plugins/resource-scope.js +45 -0
  512. package/src/plugins/runtime.js +118 -0
  513. package/src/plugins/vectorize.js +31 -0
  514. package/src/progression/engine.js +171 -0
  515. package/src/progression/index.js +1 -0
  516. package/src/providers/cloudflare-chat.js +1 -1
  517. package/src/providers/gemini-generate-content.js +2 -1
  518. package/src/providers/openai-responses.js +45 -16
  519. package/src/providers/tool-schema.js +85 -0
  520. package/src/repository/index.js +29 -0
  521. package/src/rpc/generated/errors_pb.js +961 -1
  522. package/src/sam/activity/index.js +183 -0
  523. package/src/sam/client.js +252 -0
  524. package/src/sam/decision/calibration.js +109 -0
  525. package/src/sam/decision/confidence.js +126 -0
  526. package/src/sam/decision/evaluate.js +157 -0
  527. package/src/sam/decision/evaluators/deterministic.js +341 -0
  528. package/src/sam/decision/evaluators/heuristic.js +61 -0
  529. package/src/sam/decision/evaluators/select.js +50 -0
  530. package/src/sam/decision/evaluators/semantic.js +149 -0
  531. package/src/sam/decision/hierarchical.js +61 -0
  532. package/src/sam/decision/index.js +53 -0
  533. package/src/sam/decision/policy.js +86 -0
  534. package/src/sam/decision/questions.js +120 -0
  535. package/src/sam/decision/receipt.js +148 -0
  536. package/src/sam/decision/state.js +117 -0
  537. package/src/sam/decision/types.js +22 -0
  538. package/src/sam/decision/validate.js +200 -0
  539. package/src/sam/define.js +51 -0
  540. package/src/sam/index.js +65 -0
  541. package/src/sam/operations/brand-scan.js +62 -0
  542. package/src/sam/operations/cad-blender-inspect.js +36 -0
  543. package/src/sam/operations/codebaseindex-ingest.js +49 -0
  544. package/src/sam/operations/decision-evaluate.js +59 -0
  545. package/src/sam/operations/planning-astar.js +77 -0
  546. package/src/sam/operations/planning-goap.js +60 -0
  547. package/src/sam/operations/repository-inspect.js +72 -0
  548. package/src/sam/operations/security-scan.js +33 -0
  549. package/src/sam/operations/terminal-exec.js +29 -0
  550. package/src/sam/planning/astar.js +311 -0
  551. package/src/sam/planning/goap.js +177 -0
  552. package/src/sam/planning/index.js +21 -0
  553. package/src/sam/planning/state.js +84 -0
  554. package/src/sam/registry.js +48 -0
  555. package/src/sam/result.js +77 -0
  556. package/src/sam/seed.js +44 -0
  557. package/src/sam/types.js +91 -0
  558. package/src/security/local-vault.js +415 -0
  559. package/src/security/process.js +20 -4
  560. package/src/skills/catalog.js +64 -0
  561. package/src/skills/content-resolver.js +124 -0
  562. package/src/skills/hosted-store.js +37 -0
  563. package/src/skills/index.js +29 -64
  564. package/src/skills/interaction.js +102 -0
  565. package/src/skills/local-store.js +228 -0
  566. package/src/skills/manifest.js +104 -0
  567. package/src/skills/metrics.js +31 -0
  568. package/src/skills/registry.js +184 -0
  569. package/src/skills/runtime.js +287 -0
  570. package/src/skills/slash.js +44 -0
  571. package/src/status/actions.js +192 -0
  572. package/src/tools/hydrate.js +5 -1
  573. package/src/tools/index.js +7 -0
  574. package/src/tools/redact.js +64 -0
  575. package/src/tools/registry.js +83 -0
  576. package/src/tools/runtime.js +257 -0
  577. package/src/tools/search.js +21 -8
  578. package/src/ui/ansi.js +117 -3
  579. package/src/ui/cli/activity.js +76 -7
  580. package/src/ui/cli/footer.js +110 -9
  581. package/src/ui/cli/help.js +96 -96
  582. package/src/ui/wireframes.js +166 -0
  583. package/test/account-session.test.mjs +28 -0
  584. package/test/apps-scaffold-contract.test.mjs +16 -1
  585. package/test/capabilities.test.mjs +1 -1
  586. package/test/cli/api-key-env-whoami.test.mjs +129 -0
  587. package/test/cli/codebaseindex-plan-ux.test.mjs +37 -0
  588. package/test/cli/eval-live.test.mjs +219 -0
  589. package/test/cli/go.test.mjs +128 -0
  590. package/test/cli/local-vault-and-provider-setup.test.mjs +268 -0
  591. package/test/cli/mcp-client.test.mjs +245 -0
  592. package/test/cli/runtime-ui.test.mjs +69 -2
  593. package/test/cli/skill-npm-and-env.test.mjs +52 -0
  594. package/test/cli/status-actions.test.mjs +88 -0
  595. package/test/cli/wireframes-go-registry.test.mjs +139 -0
  596. package/test/cloudflare-connector.test.mjs +3 -6
  597. package/test/cloudflare-runtime.test.mjs +8 -1
  598. package/test/context.test.mjs +15 -0
  599. package/test/error-diagnostics.test.mjs +9 -0
  600. package/test/fixtures/cad/courtyard-house.json +208 -0
  601. package/test/go/build-source-identity.test.mjs +31 -0
  602. package/test/go/cloudflare-probe.test.mjs +317 -0
  603. package/test/go/distribution.test.mjs +28 -0
  604. package/test/integration/ai-access-onboarding.test.mjs +47 -0
  605. package/test/integration/app-command.test.mjs +55 -0
  606. package/test/integration/cad-discovery.test.mjs +158 -0
  607. package/test/integration/cad-docker-executor.test.mjs +249 -0
  608. package/test/integration/cad-execution.test.mjs +184 -0
  609. package/test/integration/cad-project-app.test.mjs +31 -0
  610. package/test/integration/cad-project-d1.test.mjs +25 -0
  611. package/test/integration/cad-project-native.test.mjs +24 -0
  612. package/test/integration/cad-project-workflow.test.mjs +9 -0
  613. package/test/integration/cad-project.test.mjs +82 -0
  614. package/test/integration/cli-help.test.mjs +5 -1
  615. package/test/integration/cms-site-tenancy-contract.test.mjs +256 -0
  616. package/test/integration/codebaseindex-ingest.test.mjs +166 -0
  617. package/test/integration/core-client.integration.test.mjs +55 -0
  618. package/test/integration/error-runtime-rpc.test.mjs +71 -0
  619. package/test/integration/features-resolve.test.mjs +128 -0
  620. package/test/integration/icon-registry.test.mjs +67 -0
  621. package/test/integration/ingest-discover-models.test.mjs +30 -0
  622. package/test/integration/install-script.test.mjs +110 -0
  623. package/test/integration/inventory-core.test.mjs +53 -0
  624. package/test/integration/local-fs.test.mjs +113 -0
  625. package/test/integration/plugins-cloudflare.integration.test.mjs +28 -0
  626. package/test/integration/provider-env-cli.test.mjs +3 -2
  627. package/test/integration/runtime-migrations.test.mjs +6 -1
  628. package/test/integration/runtime-status.integration.test.mjs +211 -0
  629. package/test/integration/sam-activity-recovery.test.mjs +147 -0
  630. package/test/integration/sam-decision.test.mjs +584 -0
  631. package/test/integration/sam-kernel.test.mjs +99 -0
  632. package/test/integration/sam-planning-astar.test.mjs +279 -0
  633. package/test/integration/scaffold-cloudflare.test.mjs +46 -0
  634. package/test/integration/skill-runtime.test.mjs +240 -0
  635. package/test/integration/storage-architecture.test.mjs +154 -0
  636. package/test/integration/store-discovery.test.mjs +44 -0
  637. package/test/integration/studio-fs-pty-e2e.test.mjs +294 -0
  638. package/test/integration/terminal-exec.integration.test.mjs +86 -0
  639. package/test/integration/tool-runtime.test.mjs +124 -0
  640. package/test/integration/tool-schema.test.mjs +59 -0
  641. package/test/knowledge-service.test.mjs +4 -0
  642. package/test/local-sessions.test.mjs +11 -2
  643. package/test/local-studio-deploy.test.mjs +1 -1
  644. package/test/model-catalog.test.mjs +28 -1
  645. package/test/models.test.mjs +172 -11
  646. package/test/openai-responses.test.mjs +60 -0
  647. package/test/provider-credentials.test.mjs +15 -5
  648. package/test/responses-runner.test.mjs +321 -6
  649. package/test/shell.test.mjs +151 -6
  650. package/test/smoke.mjs +2 -2
  651. package/test/tools-search.test.mjs +33 -0
  652. package/test/unit/website-assets-bindings.test.mjs +60 -0
  653. package/test/whoami-resume.test.mjs +82 -3
  654. package/examples/gorilla-shell/README.md +0 -15
  655. package/src/lib/gorilla-template.js +0 -54
  656. package/templates/gorilla-shell/App.tsx +0 -639
  657. package/templates/gorilla-shell/README.md +0 -34
  658. package/templates/gorilla-shell/index.html +0 -15
  659. package/templates/gorilla-shell/main.jsx +0 -9
  660. package/templates/gorilla-shell/package.json +0 -19
  661. package/templates/gorilla-shell/vite.config.js +0 -21
@@ -0,0 +1,67 @@
1
+ -- 0012_agentsam_tools_required_seed.sql
2
+ -- Registers required tool_key stubs for new projects.
3
+ -- Full handler schemas live in the host agentsam_tools registry; this seed
4
+ -- guarantees GOAP / search_tools / multitask can resolve the required set.
5
+ -- Idempotent: skips rows that already exist by tool_key.
6
+
7
+ INSERT INTO agentsam_tools (
8
+ id, tool_name, tool_key, tool_code, display_name, tool_category,
9
+ handler_type, description, is_active, risk_level, domain, account_id
10
+ )
11
+ SELECT
12
+ 'ast_req_' || lower(hex(randomblob(6))),
13
+ key,
14
+ key,
15
+ key,
16
+ key,
17
+ 'platform',
18
+ 'terminal',
19
+ 'Required AgentSam tool seed · see registry/tools/required-seed.json',
20
+ 1,
21
+ 'low',
22
+ 'general',
23
+ '*'
24
+ FROM (
25
+ SELECT 'fs_read_file' AS key UNION ALL SELECT 'fs_write_file' UNION ALL SELECT 'fs_edit_file'
26
+ UNION ALL SELECT 'fs_list_dir' UNION ALL SELECT 'fs_search_files'
27
+ UNION ALL SELECT 'agentsam_filesystem_walk' UNION ALL SELECT 'agentsam_filesystem_stat_many'
28
+ UNION ALL SELECT 'agentsam_filesystem_hash_many' UNION ALL SELECT 'agentsam_filesystem_git_status'
29
+ UNION ALL SELECT 'agentsam_github_read' UNION ALL SELECT 'agentsam_github_write'
30
+ UNION ALL SELECT 'agentsam_github_pr' UNION ALL SELECT 'agentsam_github_pr_merge'
31
+ UNION ALL SELECT 'agentsam_github_issue' UNION ALL SELECT 'agentsam_github_search'
32
+ UNION ALL SELECT 'agentsam_github_tree' UNION ALL SELECT 'agentsam_github_read_many'
33
+ UNION ALL SELECT 'agentsam_github_patch' UNION ALL SELECT 'agentsam_github_grep'
34
+ UNION ALL SELECT 'agentsam_github_create_repo' UNION ALL SELECT 'agentsam_grep'
35
+ UNION ALL SELECT 'browser_navigate'
36
+ UNION ALL SELECT 'agentsam_memory_search' UNION ALL SELECT 'agentsam_memory_manager'
37
+ UNION ALL SELECT 'agentsam_memory_commit'
38
+ UNION ALL SELECT 'agentsam_d1_query' UNION ALL SELECT 'agentsam_d1_write'
39
+ UNION ALL SELECT 'agentsam_supabase_query' UNION ALL SELECT 'agentsam_supabase_write'
40
+ UNION ALL SELECT 'agentsam_supabase_vector'
41
+ UNION ALL SELECT 'agentsam_r2_get' UNION ALL SELECT 'agentsam_r2_put' UNION ALL SELECT 'agentsam_r2_delete'
42
+ UNION ALL SELECT 'agentsam_cf_vectorize' UNION ALL SELECT 'agentsam_cf_d1_list'
43
+ UNION ALL SELECT 'agentsam_cf_workers_list' UNION ALL SELECT 'agentsam_cf_worker_get'
44
+ UNION ALL SELECT 'agentsam_cf_worker_code'
45
+ UNION ALL SELECT 'agentsam_autorag'
46
+ UNION ALL SELECT 'agentsam_terminal_local' UNION ALL SELECT 'agentsam_terminal_sandbox'
47
+ UNION ALL SELECT 'agentsam_terminal_remote'
48
+ UNION ALL SELECT 'agentsam_create_subagent' UNION ALL SELECT 'agentsam_container_exec'
49
+ UNION ALL SELECT 'search_cloudflare_documentation' UNION ALL SELECT 'agentsam_spawn_tree'
50
+ UNION ALL SELECT 'agentsam_run_agent'
51
+ UNION ALL SELECT 'agentsam_ticket_list' UNION ALL SELECT 'agentsam_ticket_get'
52
+ UNION ALL SELECT 'agentsam_ticket_create' UNION ALL SELECT 'agentsam_ticket_set_status'
53
+ UNION ALL SELECT 'agentsam_code_interpreter'
54
+ UNION ALL SELECT 'cad_generate' UNION ALL SELECT 'cad_job_cancel' UNION ALL SELECT 'cad_job_status'
55
+ UNION ALL SELECT 'agentsam_search_tools'
56
+ UNION ALL SELECT 'agentsam_codebase_retrieve' UNION ALL SELECT 'agentsam_knowledge_ingest_segment'
57
+ UNION ALL SELECT 'agentsam_multitask_spawn' UNION ALL SELECT 'agentsam_multitask_status'
58
+ UNION ALL SELECT 'agentsam_multitask_cancel'
59
+ UNION ALL SELECT 'agentsam_merkle_build' UNION ALL SELECT 'agentsam_merkle_get'
60
+ UNION ALL SELECT 'agentsam_merkle_compare' UNION ALL SELECT 'agentsam_merkle_explain'
61
+ UNION ALL SELECT 'agentsam_merkle_delete'
62
+ UNION ALL SELECT 'agentsam_repo_intelligence' UNION ALL SELECT 'agentsam_code_index_build'
63
+ UNION ALL SELECT 'agentsam_repository_snapshot'
64
+ ) AS required
65
+ WHERE NOT EXISTS (
66
+ SELECT 1 FROM agentsam_tools t WHERE t.tool_key = required.key OR t.tool_name = required.key
67
+ );
@@ -0,0 +1,15 @@
1
+ -- identity_oauth_states — PKCE state for /api/oauth/{provider}/start (identity login).
2
+ -- Deliberately NOT named oauth_states (collides with Stripe Connect schema on this D1).
3
+ -- Required for Sign in with Cloudflare on agentsam.inneranimalmedia.com.
4
+
5
+ CREATE TABLE IF NOT EXISTS identity_oauth_states (
6
+ state TEXT PRIMARY KEY NOT NULL,
7
+ provider TEXT NOT NULL,
8
+ code_verifier TEXT NOT NULL,
9
+ redirect_to TEXT,
10
+ expires_at INTEGER NOT NULL,
11
+ created_at INTEGER NOT NULL
12
+ );
13
+
14
+ CREATE INDEX IF NOT EXISTS idx_identity_oauth_states_expires
15
+ ON identity_oauth_states(expires_at);
@@ -0,0 +1,20 @@
1
+ -- auth_event_log — append-only auth audit (identity package).
2
+ -- status remains outcome-only (ok|failed). Rich context lives in metadata_json.
3
+
4
+ CREATE TABLE IF NOT EXISTS auth_event_log (
5
+ id TEXT PRIMARY KEY NOT NULL,
6
+ user_id TEXT,
7
+ event_type TEXT NOT NULL,
8
+ status TEXT NOT NULL DEFAULT 'ok',
9
+ provider TEXT,
10
+ metadata_json TEXT NOT NULL DEFAULT '{}',
11
+ ip_hash TEXT,
12
+ user_agent_hash TEXT,
13
+ created_at INTEGER NOT NULL DEFAULT (unixepoch())
14
+ );
15
+
16
+ CREATE INDEX IF NOT EXISTS idx_auth_event_log_user_created
17
+ ON auth_event_log(user_id, created_at DESC);
18
+
19
+ CREATE INDEX IF NOT EXISTS idx_auth_event_log_type_created
20
+ ON auth_event_log(event_type, created_at DESC);
@@ -0,0 +1,3 @@
1
+ -- Optional app_id on OAuth PKCE state so post-login resumes the initiating app.
2
+
3
+ ALTER TABLE identity_oauth_states ADD COLUMN app_id TEXT;
@@ -0,0 +1,16 @@
1
+ # Portable control-plane schemas (tickets · memory · skills · tools)
2
+
3
+ Apply from the repo that owns the SQL (agentsam-sdk `migrations/d1/`).
4
+
5
+ | File | Purpose |
6
+ |------|---------|
7
+ | `0010_portable_tickets_memory.sql` | Account-owned `agentsam_tickets` + events + `agentsam_memory` + outbox. `account_id` + `repository_id` **NOT NULL**. |
8
+ | `0011_agentsam_skill_v2.sql` | Skill identity · metrics · retrieval (3-table redesign). Legacy hosts: rename old → `agentsam_skill_legacy`, backfill, verify. |
9
+ | `0012_agentsam_tools_required_seed.sql` | Idempotent seed of required `tool_key` rows for GOAP / multitask. Manifest: `registry/tools/required-seed.json`. |
10
+
11
+ ## Law
12
+
13
+ - **NULL `repository_id` on memory/ticket writes = broken implementation.** Resolve repo identity from `agentsam inspect` / snapshot before insert.
14
+ - Customer tickets use **their** D1/SQLite — never IAM host ticket rows.
15
+ - `agentsam_autorag` stays registered for A* planning even while multi-level retrieval is incomplete.
16
+ - Skill publish uniqueness: partial unique on `slash_trigger WHERE is_published = 1` is included.
@@ -191,6 +191,48 @@ CREATE TABLE IF NOT EXISTS agentsam_plans (
191
191
  updated_at_unix INTEGER NOT NULL DEFAULT (unixepoch())
192
192
  );
193
193
 
194
+ -- GOAP ticket authority. Existing hosted deployments may already own this
195
+ -- table; these columns mirror the live contract and let fresh SDK installs
196
+ -- create portable, repository-scoped goals without a singleton fallback.
197
+ CREATE TABLE IF NOT EXISTS agentsam_tickets (
198
+ id TEXT PRIMARY KEY,
199
+ title TEXT NOT NULL,
200
+ description TEXT,
201
+ status TEXT NOT NULL DEFAULT 'backlog'
202
+ CHECK(status IN ('backlog','active','blocked','shipped','abandoned')),
203
+ status_reason TEXT,
204
+ project TEXT,
205
+ subsystem TEXT,
206
+ tags TEXT,
207
+ priority TEXT NOT NULL DEFAULT 'P2',
208
+ doc_path TEXT,
209
+ blocks TEXT,
210
+ blocked_by TEXT,
211
+ supersedes TEXT,
212
+ created_at INTEGER NOT NULL DEFAULT (unixepoch()),
213
+ updated_at INTEGER NOT NULL DEFAULT (unixepoch()),
214
+ closed_at INTEGER,
215
+ dedup_key TEXT,
216
+ description_json TEXT,
217
+ surface TEXT NOT NULL DEFAULT 'platform',
218
+ owner_kind TEXT NOT NULL DEFAULT 'unassigned',
219
+ owner_ref TEXT,
220
+ account_id TEXT,
221
+ repository_id TEXT,
222
+ parent_ticket_id TEXT,
223
+ agent_run_id TEXT REFERENCES agentsam_agent_run(id) ON DELETE SET NULL,
224
+ worktree TEXT,
225
+ linked_commit TEXT,
226
+ source TEXT NOT NULL DEFAULT 'manual'
227
+ );
228
+
229
+ CREATE INDEX IF NOT EXISTS idx_agentsam_tickets_owner_updated
230
+ ON agentsam_tickets(owner_ref, updated_at DESC);
231
+ CREATE INDEX IF NOT EXISTS idx_agentsam_tickets_account_repository
232
+ ON agentsam_tickets(account_id, repository_id, updated_at DESC);
233
+ CREATE INDEX IF NOT EXISTS idx_agentsam_tickets_status_priority
234
+ ON agentsam_tickets(status, priority, updated_at DESC);
235
+
194
236
  CREATE TABLE IF NOT EXISTS agentsam_todo (
195
237
  id TEXT PRIMARY KEY,
196
238
  account_id TEXT,
@@ -296,3 +338,28 @@ CREATE TABLE IF NOT EXISTS agentsam_cron_runs (
296
338
 
297
339
  CREATE INDEX IF NOT EXISTS idx_agentsam_cron_runs_job_started
298
340
  ON agentsam_cron_runs(job_name, started_at DESC);
341
+
342
+ CREATE TABLE IF NOT EXISTS agentsam_workspace_state (
343
+ id TEXT PRIMARY KEY DEFAULT ('wss_' || lower(hex(randomblob(8)))),
344
+ repository_id TEXT UNIQUE,
345
+ workspace_id TEXT,
346
+ conversation_id TEXT,
347
+ workspace_type TEXT NOT NULL DEFAULT 'ide',
348
+ active_file TEXT,
349
+ files_open TEXT NOT NULL DEFAULT '[]',
350
+ state_json TEXT NOT NULL DEFAULT '{}',
351
+ locked_by TEXT,
352
+ lock_expires_at INTEGER,
353
+ lock_reason TEXT,
354
+ agent_session_id TEXT,
355
+ current_task_id TEXT,
356
+ last_agent_action TEXT,
357
+ agent_id TEXT,
358
+ checkpoint_label TEXT,
359
+ checkpoint_sha TEXT,
360
+ created_at INTEGER NOT NULL DEFAULT (unixepoch()),
361
+ updated_at INTEGER NOT NULL DEFAULT (unixepoch())
362
+ );
363
+
364
+ CREATE INDEX IF NOT EXISTS idx_agentsam_workspace_state_repo
365
+ ON agentsam_workspace_state(repository_id);
@@ -0,0 +1,15 @@
1
+ -- Resumable local ProjectSession state shares the canonical project database.
2
+ -- Session JSON is bounded operational state, not a transcript or credential vault.
3
+ CREATE TABLE IF NOT EXISTS agentsam_project_sessions (
4
+ id TEXT PRIMARY KEY NOT NULL,
5
+ project_root TEXT NOT NULL,
6
+ cwd TEXT NOT NULL,
7
+ status TEXT NOT NULL CHECK (status IN ('active','paused','interrupted','completed')),
8
+ title TEXT NOT NULL DEFAULT 'Agent Sam session',
9
+ state_json TEXT NOT NULL,
10
+ lifecycle TEXT NOT NULL DEFAULT 'session' CHECK (lifecycle = 'session'),
11
+ created_at TEXT NOT NULL,
12
+ updated_at TEXT NOT NULL
13
+ );
14
+ CREATE INDEX IF NOT EXISTS idx_agentsam_project_sessions_updated
15
+ ON agentsam_project_sessions(updated_at DESC);
@@ -0,0 +1,8 @@
1
+ -- Session-scoped provider continuation, separate from generic state and knowledge.
2
+ -- Replaced by each compaction and deleted after a successful provider continuation.
3
+ CREATE TABLE IF NOT EXISTS agentsam_provider_continuations (
4
+ session_id TEXT PRIMARY KEY REFERENCES agentsam_project_sessions(id) ON DELETE CASCADE,
5
+ provider TEXT NOT NULL,
6
+ output_json TEXT NOT NULL,
7
+ updated_at TEXT NOT NULL
8
+ );
@@ -0,0 +1,42 @@
1
+ -- Portable local skill retrieval shape (NOT applied to IAM D1 as-is).
2
+ -- strategy ≠ provider_id ≠ driver_id ≠ accelerator_ref ≠ embedding_profile_id
3
+ -- Hyperdrive is accelerator_ref, never a provider.
4
+
5
+ CREATE TABLE IF NOT EXISTS agentsam_skill_retrieval (
6
+ id TEXT PRIMARY KEY,
7
+ skill_id TEXT NOT NULL,
8
+
9
+ strategy TEXT NOT NULL CHECK (
10
+ strategy IN (
11
+ 'relational',
12
+ 'object_store',
13
+ 'vector_index',
14
+ 'filesystem'
15
+ )
16
+ ),
17
+
18
+ provider_id TEXT NOT NULL,
19
+ driver_id TEXT NOT NULL,
20
+
21
+ connection_ref TEXT,
22
+ accelerator_ref TEXT,
23
+
24
+ embedding_profile_id TEXT,
25
+
26
+ index_name TEXT,
27
+ namespace TEXT,
28
+
29
+ is_primary INTEGER NOT NULL DEFAULT 0,
30
+
31
+ config_json TEXT NOT NULL DEFAULT '{}',
32
+
33
+ last_synced_at TEXT,
34
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
35
+ updated_at TEXT NOT NULL DEFAULT (datetime('now'))
36
+ );
37
+
38
+ CREATE INDEX IF NOT EXISTS idx_skill_retrieval_skill
39
+ ON agentsam_skill_retrieval(skill_id);
40
+
41
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_skill_retrieval_primary
42
+ ON agentsam_skill_retrieval(skill_id) WHERE is_primary = 1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inneranimalmedia/agentsam-sdk",
3
- "version": "2.6.2",
3
+ "version": "2.6.4",
4
4
  "description": "Portable AgentSam SDK and CLI kits for local scaffolding, repository intelligence, incremental indexing, identity adapters, and verified dependency maintenance.",
5
5
  "type": "module",
6
6
  "main": "./src/index.js",
@@ -14,10 +14,24 @@
14
14
  "./merkle": "./packages/agentsam-repository/src/merkle/index.js",
15
15
  "./deploy-receipt": "./src/lib/deploy-receipt/index.js",
16
16
  "./knowledge": "./src/knowledge/index.js",
17
+ "./autorag": "./packages/agentsam-knowledge/src/autorag/index.js",
17
18
  "./knowledge-service-client": "./src/knowledge/service/client.js",
18
19
  "./knowledge-service-grpc-client": "./src/knowledge/service/grpc-client.js",
19
20
  "./capabilities": "./src/capabilities/index.js",
20
21
  "./capability-manifest": "./protocol/capabilities/manifest.json",
22
+ "./sam": "./src/sam/index.js",
23
+ "./sam/operation-schema": "./protocol/sam/operation.schema.json",
24
+ "./sam/result-schema": "./protocol/sam/result.schema.json",
25
+ "./sam/registry-seed": "./protocol/sam/registry.seed.json",
26
+ "./sam/state-schema": "./protocol/sam/state.v1.schema.json",
27
+ "./sam/question-schema": "./protocol/sam/question.v1.schema.json",
28
+ "./sam/answer-schema": "./protocol/sam/answer.v1.schema.json",
29
+ "./sam/evaluation-schema": "./protocol/sam/evaluation.v1.schema.json",
30
+ "./sam/decision-receipt-schema": "./protocol/sam/decision-receipt.v1.schema.json",
31
+ "./sam/outcome-schema": "./protocol/sam/outcome.v1.schema.json",
32
+ "./sam/calibration-schema": "./protocol/sam/calibration.v1.schema.json",
33
+ "./sam/activity-schema": "./protocol/sam/activity.v1.schema.json",
34
+ "./errors/recovery-schema": "./protocol/errors/recovery.v1.schema.json",
21
35
  "./repository": "./src/repository/index.js",
22
36
  "./repository/contracts": "./packages/agentsam-repository/src/contracts.js",
23
37
  "./repository/identity-schema": "./protocol/repository/repository-identity.schema.json",
@@ -26,11 +40,14 @@
26
40
  "./agent": "./src/agent/index.js",
27
41
  "./presets": "./src/presets/index.js",
28
42
  "./preset-catalog": "./protocol/presets/catalog.json",
43
+ "./brand": "./packages/agentsam-brand/src/index.js",
44
+ "./progression": "./src/progression/index.js",
29
45
  "./identity": "./packages/identity/src/index.js",
30
46
  "./identity/providers": "./packages/identity/src/providers/index.js",
31
47
  "./identity/providers/google": "./packages/identity/src/providers/google/index.js",
32
48
  "./identity/providers/github": "./packages/identity/src/providers/github/index.js",
33
49
  "./identity/providers/iam": "./packages/identity/src/providers/iam/index.js",
50
+ "./identity/providers/cloudflare": "./packages/identity/src/providers/cloudflare/index.js",
34
51
  "./identity/providers/gcp": "./packages/identity/src/providers/gcp/index.js",
35
52
  "./identity/providers/email": "./packages/identity/src/providers/email/index.js",
36
53
  "./identity/contracts/identity": "./packages/identity/src/contracts/identity.js",
@@ -55,17 +72,38 @@
55
72
  "./context": "./src/context/index.js",
56
73
  "./indexing": "./src/indexing/index.js",
57
74
  "./tools": "./src/tools/index.js",
75
+ "./plugins": "./src/plugins/index.js",
58
76
  "./models": "./src/models/index.js",
59
77
  "./telemetry": "./src/telemetry/index.js",
60
78
  "./providers": "./src/providers/index.js",
79
+ "./work-graph": "./packages/work-graph/src/index.js",
80
+ "./queue-control": "./packages/agentsam-queue-control/src/index.js",
81
+ "./work-graph/renderers/timeline": "./packages/work-graph/src/renderers/timeline.js",
82
+ "./work-graph/renderers/gantt-model": "./packages/work-graph/src/renderers/gantt-model.js",
83
+ "./work-graph/adapters/engineering/git": "./packages/work-graph/src/adapters/engineering/git.js",
84
+ "./work-graph/adapters/engineering/mcp": "./packages/work-graph/src/adapters/engineering/mcp.js",
85
+ "./work-graph/adapters/business/projects": "./packages/work-graph/src/adapters/business/projects.js",
61
86
  "./errors": "./src/errors/index.js",
87
+ "./errors/schema": "./protocol/errors/error-envelope.schema.json",
88
+ "./errors/catalog": "./protocol/errors/error-catalog.json",
62
89
  "./cloudflare": "./src/cloudflare/index.js",
63
90
  "./eval": "./src/eval/index.js",
91
+ "./mcp": "./src/mcp/index.js",
64
92
  "./context/result-policy-schema": "./protocol/context/result-policy.schema.json",
65
93
  "./context/budget-schema": "./protocol/context/context-budget.schema.json",
66
94
  "./context/pack-schema": "./protocol/context/resolved-context-pack.schema.json",
67
95
  "./skills": "./src/skills/index.js",
68
- "./skills/catalog": "./skills/catalog.json"
96
+ "./skills/catalog": "./skills/catalog.json",
97
+ "./cad-project": "./src/lib/cad/project-cli.js",
98
+ "./providers/completeful": "./packages/providers/completeful/src/index.js",
99
+ "./theme/heuristic": "./packages/heuristic-theme/src/index.js",
100
+ "./theme/church-site": "./packages/theme-church-site/src/index.js",
101
+ "./theme/companions-site": "./packages/theme-companions-site/src/index.js",
102
+ "./theme/floors-site": "./packages/theme-floors-site/src/index.js",
103
+ "./theme/fuelnfree-site": "./packages/theme-fuelnfree-site/src/index.js",
104
+ "./theme/handyman-site": "./packages/theme-handyman-site/src/index.js",
105
+ "./theme/insurance-site": "./packages/theme-insurance-site/src/index.js",
106
+ "./theme/shinshu-site": "./packages/theme-shinshu-site/src/index.js"
69
107
  },
70
108
  "bin": {
71
109
  "agentsam": "bin/agentsam",
@@ -76,8 +114,18 @@
76
114
  "files": [
77
115
  "src",
78
116
  "packages/identity",
117
+ "packages/agentsam-brand",
118
+ "packages/agentsam-contracts",
119
+ "packages/agentsam-errors",
79
120
  "packages/agentsam-repository",
121
+ "packages/agentsam-knowledge",
122
+ "packages/agentsam-nav/package.json",
123
+ "packages/agentsam-nav/README.md",
124
+ "packages/agentsam-nav/dist",
125
+ "packages/work-graph",
126
+ "packages/agentsam-queue-control",
80
127
  "packages/connectors/cloudflare",
128
+ "packages/providers/completeful",
81
129
  "templates",
82
130
  "docs",
83
131
  "examples",
@@ -94,17 +142,43 @@
94
142
  "README.md",
95
143
  "LICENSE",
96
144
  "DEVELOPMENT.md",
97
- "AGENTSAM.md"
145
+ "AGENTSAM.md",
146
+ "apps/cad-creator/shared/cad",
147
+ "packages/heuristic-theme",
148
+ "packages/theme-church-site",
149
+ "packages/theme-companions-site",
150
+ "packages/theme-floors-site",
151
+ "packages/theme-fuelnfree-site",
152
+ "packages/theme-handyman-site",
153
+ "packages/theme-insurance-site",
154
+ "packages/theme-shinshu-site"
98
155
  ],
99
156
  "workspaces": [
100
157
  "packages/agentsam-shell-kit",
101
158
  "packages/identity",
159
+ "packages/agentsam-brand",
102
160
  "packages/agentsam-contracts",
161
+ "packages/agentsam-errors",
103
162
  "packages/agentsam-repository",
104
- "packages/agentsam-workbench"
163
+ "packages/agentsam-knowledge",
164
+ "packages/agentsam-nav",
165
+ "packages/work-graph",
166
+ "packages/agentsam-queue-control",
167
+ "packages/agentsam-workbench",
168
+ "packages/providers/completeful",
169
+ "packages/agentsam-desktop-shell",
170
+ "packages/heuristic-theme",
171
+ "packages/theme-church-site",
172
+ "packages/theme-companions-site",
173
+ "packages/theme-floors-site",
174
+ "packages/theme-fuelnfree-site",
175
+ "packages/theme-handyman-site",
176
+ "packages/theme-insurance-site",
177
+ "packages/theme-shinshu-site"
105
178
  ],
106
179
  "scripts": {
107
- "test": "npm run test:standard && npm --prefix packages/identity test && npm run test:connectors",
180
+ "test": "npm run test:standard && npm --prefix packages/identity test && npm --prefix packages/agentsam-brand test && npm run test:connectors && npm run test:providers",
181
+ "test:brand": "npm --prefix packages/agentsam-brand test",
108
182
  "test:standard": "node test/smoke.mjs && npm run test:unit && npm run test:cli && npm run test:integration:mock && npm run test:terminal:mock",
109
183
  "test:unit": "node --test test/*.test.mjs",
110
184
  "test:cli": "node --test test/cli/*.test.mjs",
@@ -112,28 +186,40 @@
112
186
  "test:terminal:mock": "node --test test/terminal/*.test.mjs",
113
187
  "test:live:terminal": "node --test test/live/*.live.test.mjs",
114
188
  "test:identity": "npm --prefix packages/identity test",
115
- "test:workspaces": "npm --prefix packages/agentsam-contracts test && npm --prefix packages/agentsam-contracts run typecheck && npm --prefix packages/agentsam-repository test && npm --prefix packages/agentsam-workbench test && npm --prefix packages/agentsam-workbench run typecheck && npm --prefix packages/agentsam-shell-kit run typecheck",
189
+ "test:workspaces": "npm --prefix packages/agentsam-contracts test && npm --prefix packages/agentsam-contracts run typecheck && npm --prefix packages/agentsam-errors test && npm --prefix packages/agentsam-repository test && npm --prefix packages/agentsam-workbench test && npm --prefix packages/agentsam-workbench run typecheck && npm --prefix packages/agentsam-nav run typecheck && npm --prefix packages/agentsam-shell-kit run typecheck && npm --prefix packages/work-graph test && npm --prefix packages/agentsam-queue-control test",
190
+ "test:autorag": "npm --prefix packages/agentsam-knowledge test",
116
191
  "smoke": "node test/smoke.mjs",
117
192
  "verify:package": "node scripts/verify-package.mjs",
118
193
  "verify:boundaries": "node scripts/verify-source-boundaries.mjs",
119
194
  "verify:bootstrap": "node scripts/verify-bootstrap.mjs",
120
- "verify:knowledge-package": "node scripts/verify-knowledge-package.mjs",
195
+ "verify:knowledge-package": "node scripts/verify-knowledge-package.mjs && npm run test:autorag",
121
196
  "test:python": "node scripts/verify-python.mjs",
122
197
  "verify:release": "npm run verify && npm run verify:knowledge-package && npm run test:python && npm run security:check",
123
- "pack:check": "npm pack --dry-run --json",
124
- "verify": "npm run proto:check && npm test && npm run test:workspaces && npm run verify:boundaries && npm run verify:package && npm run verify:bootstrap && npm run pack:check",
198
+ "pack:check": "node scripts/verify-pack.mjs",
199
+ "verify": "npm run errors:check && npm run proto:check && npm test && npm run test:workspaces && npm run cad:registry:check && npm run verify:boundaries && npm run verify:package && npm run verify:bootstrap && npm run pack:check",
125
200
  "publish:identity-alpha": "bash scripts/publish-identity-alpha.sh",
126
201
  "publish:identity-alpha:dry-run": "bash scripts/publish-identity-alpha.sh --dry-run",
127
202
  "publish:identity-alpha:publish-only": "bash scripts/publish-identity-alpha.sh --publish-only",
128
203
  "preview:auth-portal": "node packages/identity/scripts/preview-auth-portal.mjs --open",
129
- "prepublishOnly": "npm run verify:release",
204
+ "prepublishOnly": "npm run site:sync && npm run verify:release",
205
+ "site:sync": "node scripts/sync-public-site.mjs",
206
+ "site:learn": "node scripts/build-learn-site.mjs",
207
+ "site:sam-docs": "node scripts/build-sam-docs.mjs",
208
+ "site:publish": "node scripts/publish-website-assets.mjs",
130
209
  "security:check": "node src/security/cli.mjs scan",
131
210
  "security:repair": "node src/security/cli.mjs repair",
132
211
  "ui:preview": "node scripts/ui-preview.mjs",
133
212
  "test:connectors": "node --test packages/connectors/cloudflare/tests/**/*.test.mjs",
134
213
  "verify:npm10-lock": "node apps/local-studio/scripts/verify-npm10-lock.mjs",
135
214
  "proto:generate": "node scripts/generate-proto.mjs",
136
- "proto:check": "node scripts/verify-proto.mjs"
215
+ "proto:check": "node scripts/verify-proto.mjs",
216
+ "errors:generate": "node scripts/generate-error-contracts.mjs",
217
+ "errors:check": "node scripts/verify-error-contracts.mjs",
218
+ "cad:registry:check": "node scripts/cad-registry.mjs --check",
219
+ "test:providers": "node --test packages/providers/completeful/test/*.test.mjs",
220
+ "test:themes": "npm --prefix packages/heuristic-theme test && npm --prefix packages/theme-church-site test && npm --prefix packages/theme-companions-site test && npm --prefix packages/theme-floors-site test && npm --prefix packages/theme-fuelnfree-site test && npm --prefix packages/theme-handyman-site test && npm --prefix packages/theme-insurance-site test && npm --prefix packages/theme-shinshu-site test",
221
+ "theme:harvest": "python3 scripts/theme-refinery/harvest.py",
222
+ "verify:go-distribution": "node scripts/verify-go-distribution.mjs"
137
223
  },
138
224
  "engines": {
139
225
  "node": ">=22 <25",
@@ -142,11 +228,13 @@
142
228
  "dependencies": {
143
229
  "@clack/prompts": "^1.7.0",
144
230
  "@grpc/grpc-js": "^1.14.4",
231
+ "@modelcontextprotocol/sdk": "^1.30.0",
145
232
  "google-protobuf": "^3.21.4",
146
233
  "node-pty": "^1.0.0",
147
234
  "pg": "8.16.3",
148
235
  "picocolors": "^1.1.1",
149
236
  "typescript": "5.9.3",
237
+ "wrangler": "4.140.0",
150
238
  "ws": "^8.18.0"
151
239
  },
152
240
  "publishConfig": {
@@ -172,9 +260,16 @@
172
260
  },
173
261
  "homepage": "https://github.com/SamPrimeaux/agentsam-sdk#readme",
174
262
  "allowScripts": {
175
- "node-pty@1.1.0": true
263
+ "node-pty@1.1.0": true,
264
+ "grpc-tools@1.13.1": true,
265
+ "protobufjs@7.6.6": true,
266
+ "esbuild@0.28.1": true,
267
+ "fsevents@2.3.3": true,
268
+ "workerd@1.20260923.1": true
176
269
  },
177
270
  "devDependencies": {
271
+ "@changesets/changelog-github": "^1.0.1",
272
+ "@changesets/cli": "^3.0.3",
178
273
  "@electric-sql/pglite": "0.5.8",
179
274
  "@electric-sql/pglite-pgvector": "0.0.9",
180
275
  "grpc-tools": "^1.13.1"
@@ -0,0 +1,21 @@
1
+ # @inneranimalmedia/agentsam-sdk-brand
2
+
3
+ Deterministic **Brand Intelligence** for AgentSam.
4
+
5
+ ```text
6
+ repository.snapshot → brand.scan → brand.resolve → brand.plan → (apply/verify)
7
+ ```
8
+
9
+ - **Brand ≠ Theme.** Theme is a projection; Brand is authority.
10
+ - **No LLM required** for scan/resolve/plan skeleton.
11
+ - **Same file authority** as security/knowledge (Merkle + gitignore via snapshot).
12
+ - States stay separated: `observed` → `inferred` → `declared` → `resolved`.
13
+
14
+ ```bash
15
+ agentsam brand scan --json
16
+ agentsam brand resolve
17
+ agentsam plan brand --goap
18
+ agentsam brand --write # writes .agentsam/brand/{evidence,resolved,contract}.json
19
+ ```
20
+
21
+ Progression (generic, not brand-only): `@inneranimalmedia/agentsam-sdk/progression`
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "@inneranimalmedia/agentsam-sdk-brand",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "type": "module",
6
+ "description": "Deterministic Brand Intelligence for AgentSam — scan/resolve/contract evidence on shared repository.snapshot authority",
7
+ "main": "./src/index.js",
8
+ "exports": {
9
+ ".": "./src/index.js",
10
+ "./scan": "./src/scan.js",
11
+ "./resolve": "./src/resolve.js",
12
+ "./contract": "./src/contract.js",
13
+ "./plan": "./src/plan.js",
14
+ "./goap-actions": "./src/goap-actions.js"
15
+ },
16
+ "scripts": {
17
+ "test": "node --test test/*.test.mjs"
18
+ },
19
+ "engines": {
20
+ "node": ">=22 <25"
21
+ }
22
+ }
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Draft Brand Contract from scan + resolve (observed/inferred; declared empty until user answers).
3
+ */
4
+ export function buildBrandContractDraft({ scan, resolved, brandId = 'brand:inferred' } = {}) {
5
+ if (!scan || scan.capability !== 'brand.scan') throw new Error('contract_requires_scan');
6
+ if (!resolved || resolved.capability !== 'brand.resolve') throw new Error('contract_requires_resolve');
7
+
8
+ return {
9
+ schema: 'agentsam.contract/v1',
10
+ kind: 'brand',
11
+ id: brandId,
12
+ version: '0.1.0',
13
+ status: 'draft',
14
+ extends: [],
15
+ origin: {
16
+ mode: 'inferred',
17
+ repository_snapshot: scan.repository?.snapshot_id || null,
18
+ scan_content_hash: scan.content_hash,
19
+ resolve_from: resolved.scan_content_hash,
20
+ },
21
+ confidence: resolved.confidence,
22
+ preservation: resolved.preservation,
23
+ visual_system: {
24
+ colors: {
25
+ observed: resolved.observed.colors,
26
+ inferred: resolved.inferred.colors,
27
+ declared: resolved.declared,
28
+ resolved: resolved.resolved.colors,
29
+ },
30
+ typography: {
31
+ observed: resolved.observed.typography,
32
+ inferred: resolved.inferred.typography,
33
+ },
34
+ },
35
+ components: {
36
+ patterns: scan.patterns,
37
+ inventory: Object.keys(scan.components || {}),
38
+ },
39
+ assets: scan.assets,
40
+ ambiguities: resolved.ambiguities,
41
+ metadata: {
42
+ generated_by: 'brand.scan+brand.resolve',
43
+ deterministic: true,
44
+ },
45
+ };
46
+ }
47
+
48
+ export function writeBrandArtifacts(rootFs, rootPath, { evidence, resolved, contract }) {
49
+ const path = rootFs.path || null;
50
+ // caller passes node:fs + path — keep pure write helper
51
+ const fs = rootFs.fs || rootFs;
52
+ const join = rootFs.join || ((...parts) => parts.join('/'));
53
+ const dir = join(rootPath, '.agentsam', 'brand');
54
+ fs.mkdirSync(dir, { recursive: true });
55
+ if (evidence) fs.writeFileSync(join(dir, 'evidence.json'), `${JSON.stringify(evidence, null, 2)}\n`);
56
+ if (resolved) fs.writeFileSync(join(dir, 'resolved.json'), `${JSON.stringify(resolved, null, 2)}\n`);
57
+ if (contract) fs.writeFileSync(join(dir, 'contract.json'), `${JSON.stringify(contract, null, 2)}\n`);
58
+ return { dir, files: ['evidence.json', 'resolved.json', 'contract.json'].filter(Boolean) };
59
+ }