@prismer/runtime 2.2.55 → 2.2.63

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 (563) hide show
  1. package/CHANGELOG.md +574 -0
  2. package/apc/skills/releasing-test/SKILL.md +9 -0
  3. package/built-in-skills/agent-coordination/SKILL.md +21 -4
  4. package/built-in-skills/agent-meta/SKILL.md +11 -0
  5. package/built-in-skills/assets/SKILL.md +1 -1
  6. package/built-in-skills/canvas-design/SKILL.md +3 -3
  7. package/built-in-skills/canvas-design/canvas-fonts/IBMPlexSerif-OFL.txt +93 -0
  8. package/built-in-skills/canvas-design/canvas-fonts/InstrumentSerif-OFL.txt +93 -0
  9. package/built-in-skills/canvas-design/canvas-fonts/LICENSE-SOURCES.md +16 -0
  10. package/built-in-skills/claim-agent-ownership/SKILL.md +7 -3
  11. package/built-in-skills/claude-api/SKILL.md +1 -1
  12. package/built-in-skills/claude-api/python/claude-api/README.md +2 -2
  13. package/built-in-skills/claude-api/python/claude-api/tool-use.md +9 -5
  14. package/built-in-skills/claude-api/python/managed-agents/README.md +11 -1
  15. package/built-in-skills/claude-api/shared/error-codes.md +4 -4
  16. package/built-in-skills/claude-api/shared/managed-agents-client-patterns.md +4 -2
  17. package/built-in-skills/claude-api/shared/managed-agents-core.md +1 -2
  18. package/built-in-skills/claude-api/shared/managed-agents-events.md +41 -22
  19. package/built-in-skills/claude-api/shared/managed-agents-multiagent.md +5 -3
  20. package/built-in-skills/claude-api/shared/managed-agents-self-hosted-sandboxes.md +1 -1
  21. package/built-in-skills/claude-api/shared/managed-agents-tools.md +2 -3
  22. package/built-in-skills/claude-api/shared/model-migration.md +3 -3
  23. package/built-in-skills/claude-api/shared/models.md +1 -1
  24. package/built-in-skills/claude-api/typescript/claude-api/batches.md +1 -1
  25. package/built-in-skills/claude-api/typescript/claude-api/files-api.md +3 -1
  26. package/built-in-skills/claude-api/typescript/claude-api/tool-use.md +8 -2
  27. package/built-in-skills/claude-api/typescript/managed-agents/README.md +8 -2
  28. package/built-in-skills/codebase-design/SKILL.md +15 -1
  29. package/built-in-skills/codebase-design/references/requesting-code-review/GUIDE.md +291 -0
  30. package/built-in-skills/codebase-design/references/requesting-code-review/LICENSE +21 -0
  31. package/built-in-skills/codebase-design/references/requesting-code-review/LICENSE.superpowers +21 -0
  32. package/built-in-skills/codebase-design/references/requesting-code-review/NOTICE.md +37 -0
  33. package/built-in-skills/codebase-design/references/sdlc-review/GUIDE.md +130 -0
  34. package/built-in-skills/codebase-design/references/sdlc-review/LICENSE +21 -0
  35. package/built-in-skills/codebase-design/references/sdlc-review/NOTICE.md +17 -0
  36. package/built-in-skills/codebase-design/references/simplify-code/GUIDE.md +269 -0
  37. package/built-in-skills/codebase-design/references/simplify-code/LICENSE +21 -0
  38. package/built-in-skills/codebase-design/references/simplify-code/NOTICE.md +37 -0
  39. package/built-in-skills/competitor-intelligence/LICENSE +21 -0
  40. package/built-in-skills/competitor-intelligence/NOTICE.md +6 -0
  41. package/built-in-skills/competitor-intelligence/SKILL.md +125 -0
  42. package/built-in-skills/competitor-intelligence/scripts/watch_state.py +160 -0
  43. package/built-in-skills/conversation-compaction/SKILL.md +3 -0
  44. package/built-in-skills/council-creator/SKILL.md +4 -3
  45. package/built-in-skills/diagnosing-bugs/SKILL.md +12 -0
  46. package/built-in-skills/diagnosing-bugs/references/desktop-dom/GUIDE.md +64 -0
  47. package/built-in-skills/diagnosing-bugs/references/desktop-dom/LICENSE +21 -0
  48. package/built-in-skills/diagnosing-bugs/references/desktop-dom/NOTICE.md +17 -0
  49. package/built-in-skills/diagnosing-bugs/references/systematic-debugging/GUIDE.md +410 -0
  50. package/built-in-skills/diagnosing-bugs/references/systematic-debugging/LICENSE +21 -0
  51. package/built-in-skills/diagnosing-bugs/references/systematic-debugging/LICENSE.superpowers +21 -0
  52. package/built-in-skills/diagnosing-bugs/references/systematic-debugging/NOTICE.md +37 -0
  53. package/built-in-skills/doc-coauthoring/SKILL.md +6 -0
  54. package/built-in-skills/doc-coauthoring/references/humanizer/GUIDE.md +647 -0
  55. package/built-in-skills/doc-coauthoring/references/humanizer/LICENSE +21 -0
  56. package/built-in-skills/doc-coauthoring/references/humanizer/LICENSE.hermes +21 -0
  57. package/built-in-skills/doc-coauthoring/references/humanizer/PROVENANCE.md +7 -0
  58. package/built-in-skills/document-actions/LICENSE +21 -0
  59. package/built-in-skills/document-actions/NOTICE.md +21 -0
  60. package/built-in-skills/document-actions/SKILL.md +46 -0
  61. package/built-in-skills/evidence-citations/LICENSE +21 -0
  62. package/built-in-skills/evidence-citations/NOTICE.md +21 -0
  63. package/built-in-skills/evidence-citations/SKILL.md +46 -0
  64. package/built-in-skills/evidence-citations/references/citation-formats.md +68 -0
  65. package/built-in-skills/evidence-citations/references/grounding-rationale.md +64 -0
  66. package/built-in-skills/evidence-citations/scripts/sources.py +720 -0
  67. package/built-in-skills/frontend-design/SKILL.md +6 -0
  68. package/built-in-skills/frontend-design/references/claude-design/GUIDE.md +650 -0
  69. package/built-in-skills/frontend-design/references/claude-design/LICENSE +21 -0
  70. package/built-in-skills/frontend-design/references/claude-design/LICENSE.hermes +21 -0
  71. package/built-in-skills/frontend-design/references/claude-design/PROVENANCE.md +7 -0
  72. package/built-in-skills/image-generate/SKILL.md +5 -0
  73. package/built-in-skills/image-generate/scripts/generate-and-deliver.mjs +24 -3
  74. package/built-in-skills/mcp-builder/reference/evaluation.md +11 -2
  75. package/built-in-skills/mcp-builder/reference/node_mcp_server.md +34 -5
  76. package/built-in-skills/mcp-builder/reference/python_mcp_server.md +6 -2
  77. package/built-in-skills/mcp-builder/scripts/connections.py +1 -1
  78. package/built-in-skills/mcp-builder/scripts/evaluation.py +52 -34
  79. package/built-in-skills/mcp-builder/scripts/requirements.txt +2 -2
  80. package/built-in-skills/meeting-actions/LICENSE +21 -0
  81. package/built-in-skills/meeting-actions/NOTICE.md +21 -0
  82. package/built-in-skills/meeting-actions/SKILL.md +48 -0
  83. package/built-in-skills/memory/SKILL.md +27 -3
  84. package/built-in-skills/memory/references/llm-wiki/GUIDE.md +468 -0
  85. package/built-in-skills/memory/references/llm-wiki/LICENSE +21 -0
  86. package/built-in-skills/memory/references/llm-wiki/NOTICE.md +4 -0
  87. package/built-in-skills/memory/references/llm-wiki/scripts/lint_wiki.py +84 -0
  88. package/built-in-skills/memory/references/llm-wiki/scripts/requirements.txt +1 -0
  89. package/built-in-skills/memory/references/llm-wiki/templates/SCHEMA.md +19 -0
  90. package/built-in-skills/memory/references/llm-wiki/templates/index.md +9 -0
  91. package/built-in-skills/memory/references/llm-wiki/templates/log.md +4 -0
  92. package/built-in-skills/memory-dream/SKILL.md +8 -15
  93. package/built-in-skills/memory-import/SKILL.md +51 -0
  94. package/built-in-skills/office-artifacts/NOTICE.md +15 -0
  95. package/built-in-skills/office-artifacts/SKILL.md +20 -0
  96. package/built-in-skills/office-artifacts/references/RESOURCE-LIMITS.md +44 -0
  97. package/built-in-skills/office-artifacts/references/docx/GUIDE.md +196 -0
  98. package/built-in-skills/office-artifacts/references/docx/LICENSE +21 -0
  99. package/built-in-skills/office-artifacts/references/docx/NOTICE.md +21 -0
  100. package/built-in-skills/office-artifacts/references/docx/references/revisions-and-comments.md +88 -0
  101. package/built-in-skills/office-artifacts/references/docx/scripts/docx_comments.py +292 -0
  102. package/built-in-skills/office-artifacts/references/docx/scripts/docx_common.py +93 -0
  103. package/built-in-skills/office-artifacts/references/docx/scripts/docx_create.py +177 -0
  104. package/built-in-skills/office-artifacts/references/docx/scripts/docx_edit.py +250 -0
  105. package/built-in-skills/office-artifacts/references/docx/scripts/docx_read.py +169 -0
  106. package/built-in-skills/office-artifacts/references/docx/scripts/docx_revisions.py +149 -0
  107. package/built-in-skills/office-artifacts/references/docx/scripts/docx_template.py +70 -0
  108. package/built-in-skills/office-artifacts/references/docx/scripts/docx_validate.py +155 -0
  109. package/built-in-skills/office-artifacts/references/docx/tests/test_docx_skill.py +525 -0
  110. package/built-in-skills/office-artifacts/references/pdf/GUIDE.md +125 -0
  111. package/built-in-skills/office-artifacts/references/pdf/LICENSE +21 -0
  112. package/built-in-skills/office-artifacts/references/pdf/NOTICE.md +21 -0
  113. package/built-in-skills/office-artifacts/references/pdf/references/forms.md +99 -0
  114. package/built-in-skills/office-artifacts/references/pdf/references/nano-pdf-editing.md +40 -0
  115. package/built-in-skills/office-artifacts/references/pdf/references/ocr-extraction.md +165 -0
  116. package/built-in-skills/office-artifacts/references/pdf/scripts/_raster.py +87 -0
  117. package/built-in-skills/office-artifacts/references/pdf/scripts/extract_marker.py +95 -0
  118. package/built-in-skills/office-artifacts/references/pdf/scripts/extract_pymupdf.py +107 -0
  119. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_create.py +153 -0
  120. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_fill_form.py +97 -0
  121. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_form_layout.py +168 -0
  122. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_make_form.py +145 -0
  123. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_merge.py +50 -0
  124. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_meta.py +123 -0
  125. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_page_image.py +101 -0
  126. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_read.py +153 -0
  127. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_secure.py +71 -0
  128. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_split.py +86 -0
  129. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_stamp.py +145 -0
  130. package/built-in-skills/office-artifacts/references/pdf/scripts/pdf_watermark.py +51 -0
  131. package/built-in-skills/office-artifacts/references/pdf/tests/test_pdf_skill.py +414 -0
  132. package/built-in-skills/office-artifacts/references/powerpoint/GUIDE.md +220 -0
  133. package/built-in-skills/office-artifacts/references/powerpoint/LICENSE +21 -0
  134. package/built-in-skills/office-artifacts/references/powerpoint/NOTICE.md +21 -0
  135. package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_create.py +214 -0
  136. package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_edit.py +442 -0
  137. package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_from_template.py +88 -0
  138. package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_read.py +131 -0
  139. package/built-in-skills/office-artifacts/references/powerpoint/scripts/pptx_render.py +104 -0
  140. package/built-in-skills/office-artifacts/references/powerpoint/tests/test_powerpoint_skill.py +478 -0
  141. package/built-in-skills/office-artifacts/references/xlsx/GUIDE.md +196 -0
  142. package/built-in-skills/office-artifacts/references/xlsx/LICENSE +21 -0
  143. package/built-in-skills/office-artifacts/references/xlsx/NOTICE.md +21 -0
  144. package/built-in-skills/office-artifacts/references/xlsx/references/restructuring.md +74 -0
  145. package/built-in-skills/office-artifacts/references/xlsx/scripts/csv_to_xlsx.py +108 -0
  146. package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_create.py +259 -0
  147. package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_edit.py +269 -0
  148. package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_read.py +160 -0
  149. package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_recalc.py +111 -0
  150. package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_restructure.py +418 -0
  151. package/built-in-skills/office-artifacts/references/xlsx/scripts/xlsx_to_csv.py +69 -0
  152. package/built-in-skills/office-artifacts/references/xlsx/tests/test_xlsx_skill.py +542 -0
  153. package/built-in-skills/office-artifacts/tests/test_resource_regressions.py +272 -0
  154. package/built-in-skills/persona-generator/SKILL.md +9 -9
  155. package/built-in-skills/pkf-svg/SKILL.md +5 -0
  156. package/built-in-skills/pkf-svg/references/architecture-diagram/GUIDE.md +148 -0
  157. package/built-in-skills/pkf-svg/references/architecture-diagram/LICENSE +21 -0
  158. package/built-in-skills/pkf-svg/references/architecture-diagram/LICENSE.hermes +21 -0
  159. package/built-in-skills/pkf-svg/references/architecture-diagram/PROVENANCE.md +7 -0
  160. package/built-in-skills/pkf-svg/references/architecture-diagram/templates/template.html +345 -0
  161. package/built-in-skills/pkf-writing/SKILL.md +36 -14
  162. package/built-in-skills/prismer-airtable/LICENSE +21 -0
  163. package/built-in-skills/prismer-airtable/NOTICE.md +11 -0
  164. package/built-in-skills/prismer-airtable/SKILL.md +248 -0
  165. package/built-in-skills/prismer-airtable/scripts/airtable_client.py +76 -0
  166. package/built-in-skills/prismer-apple-notes/LICENSE +21 -0
  167. package/built-in-skills/prismer-apple-notes/NOTICE.md +17 -0
  168. package/built-in-skills/prismer-apple-notes/SKILL.md +118 -0
  169. package/built-in-skills/prismer-apple-notes/scripts/readiness.py +47 -0
  170. package/built-in-skills/prismer-apple-reminders/LICENSE +21 -0
  171. package/built-in-skills/prismer-apple-reminders/NOTICE.md +17 -0
  172. package/built-in-skills/prismer-apple-reminders/SKILL.md +155 -0
  173. package/built-in-skills/prismer-apple-reminders/scripts/readiness.py +47 -0
  174. package/built-in-skills/prismer-ascii-video/LICENSE +21 -0
  175. package/built-in-skills/prismer-ascii-video/LICENSE.hermes +21 -0
  176. package/built-in-skills/prismer-ascii-video/PROVENANCE.md +7 -0
  177. package/built-in-skills/prismer-ascii-video/README.md +290 -0
  178. package/built-in-skills/prismer-ascii-video/SKILL.md +252 -0
  179. package/built-in-skills/prismer-ascii-video/provenance/category-DESCRIPTION.md +3 -0
  180. package/built-in-skills/prismer-ascii-video/references/architecture.md +807 -0
  181. package/built-in-skills/prismer-ascii-video/references/composition.md +900 -0
  182. package/built-in-skills/prismer-ascii-video/references/effects.md +1877 -0
  183. package/built-in-skills/prismer-ascii-video/references/inputs.md +693 -0
  184. package/built-in-skills/prismer-ascii-video/references/optimization.md +688 -0
  185. package/built-in-skills/prismer-ascii-video/references/scenes.md +1018 -0
  186. package/built-in-skills/prismer-ascii-video/references/shaders.md +1408 -0
  187. package/built-in-skills/prismer-ascii-video/references/troubleshooting.md +360 -0
  188. package/built-in-skills/prismer-baoyu-infographic/LICENSE +21 -0
  189. package/built-in-skills/prismer-baoyu-infographic/LICENSE.hermes +21 -0
  190. package/built-in-skills/prismer-baoyu-infographic/LICENSE.origin +21 -0
  191. package/built-in-skills/prismer-baoyu-infographic/PORT_NOTES.md +37 -0
  192. package/built-in-skills/prismer-baoyu-infographic/PROVENANCE.md +7 -0
  193. package/built-in-skills/prismer-baoyu-infographic/SKILL.md +240 -0
  194. package/built-in-skills/prismer-baoyu-infographic/references/analysis-framework.md +182 -0
  195. package/built-in-skills/prismer-baoyu-infographic/references/base-prompt.md +43 -0
  196. package/built-in-skills/prismer-baoyu-infographic/references/layouts/bento-grid.md +41 -0
  197. package/built-in-skills/prismer-baoyu-infographic/references/layouts/binary-comparison.md +48 -0
  198. package/built-in-skills/prismer-baoyu-infographic/references/layouts/bridge.md +41 -0
  199. package/built-in-skills/prismer-baoyu-infographic/references/layouts/circular-flow.md +41 -0
  200. package/built-in-skills/prismer-baoyu-infographic/references/layouts/comic-strip.md +41 -0
  201. package/built-in-skills/prismer-baoyu-infographic/references/layouts/comparison-matrix.md +41 -0
  202. package/built-in-skills/prismer-baoyu-infographic/references/layouts/dashboard.md +41 -0
  203. package/built-in-skills/prismer-baoyu-infographic/references/layouts/dense-modules.md +72 -0
  204. package/built-in-skills/prismer-baoyu-infographic/references/layouts/funnel.md +41 -0
  205. package/built-in-skills/prismer-baoyu-infographic/references/layouts/hierarchical-layers.md +48 -0
  206. package/built-in-skills/prismer-baoyu-infographic/references/layouts/hub-spoke.md +41 -0
  207. package/built-in-skills/prismer-baoyu-infographic/references/layouts/iceberg.md +41 -0
  208. package/built-in-skills/prismer-baoyu-infographic/references/layouts/isometric-map.md +41 -0
  209. package/built-in-skills/prismer-baoyu-infographic/references/layouts/jigsaw.md +41 -0
  210. package/built-in-skills/prismer-baoyu-infographic/references/layouts/linear-progression.md +48 -0
  211. package/built-in-skills/prismer-baoyu-infographic/references/layouts/periodic-table.md +41 -0
  212. package/built-in-skills/prismer-baoyu-infographic/references/layouts/story-mountain.md +41 -0
  213. package/built-in-skills/prismer-baoyu-infographic/references/layouts/structural-breakdown.md +48 -0
  214. package/built-in-skills/prismer-baoyu-infographic/references/layouts/tree-branching.md +41 -0
  215. package/built-in-skills/prismer-baoyu-infographic/references/layouts/venn-diagram.md +41 -0
  216. package/built-in-skills/prismer-baoyu-infographic/references/layouts/winding-roadmap.md +41 -0
  217. package/built-in-skills/prismer-baoyu-infographic/references/structured-content-template.md +244 -0
  218. package/built-in-skills/prismer-baoyu-infographic/references/styles/aged-academia.md +36 -0
  219. package/built-in-skills/prismer-baoyu-infographic/references/styles/bold-graphic.md +36 -0
  220. package/built-in-skills/prismer-baoyu-infographic/references/styles/chalkboard.md +61 -0
  221. package/built-in-skills/prismer-baoyu-infographic/references/styles/claymation.md +29 -0
  222. package/built-in-skills/prismer-baoyu-infographic/references/styles/corporate-memphis.md +29 -0
  223. package/built-in-skills/prismer-baoyu-infographic/references/styles/craft-handmade.md +44 -0
  224. package/built-in-skills/prismer-baoyu-infographic/references/styles/cyberpunk-neon.md +29 -0
  225. package/built-in-skills/prismer-baoyu-infographic/references/styles/hand-drawn-edu.md +63 -0
  226. package/built-in-skills/prismer-baoyu-infographic/references/styles/ikea-manual.md +29 -0
  227. package/built-in-skills/prismer-baoyu-infographic/references/styles/kawaii.md +29 -0
  228. package/built-in-skills/prismer-baoyu-infographic/references/styles/knolling.md +29 -0
  229. package/built-in-skills/prismer-baoyu-infographic/references/styles/lego-brick.md +29 -0
  230. package/built-in-skills/prismer-baoyu-infographic/references/styles/morandi-journal.md +60 -0
  231. package/built-in-skills/prismer-baoyu-infographic/references/styles/origami.md +29 -0
  232. package/built-in-skills/prismer-baoyu-infographic/references/styles/pixel-art.md +29 -0
  233. package/built-in-skills/prismer-baoyu-infographic/references/styles/pop-laboratory.md +48 -0
  234. package/built-in-skills/prismer-baoyu-infographic/references/styles/retro-pop-grid.md +47 -0
  235. package/built-in-skills/prismer-baoyu-infographic/references/styles/storybook-watercolor.md +29 -0
  236. package/built-in-skills/prismer-baoyu-infographic/references/styles/subway-map.md +29 -0
  237. package/built-in-skills/prismer-baoyu-infographic/references/styles/technical-schematic.md +36 -0
  238. package/built-in-skills/prismer-baoyu-infographic/references/styles/ui-wireframe.md +29 -0
  239. package/built-in-skills/prismer-blocked-page-recovery/LICENSE +21 -0
  240. package/built-in-skills/prismer-blocked-page-recovery/NOTICE.md +17 -0
  241. package/built-in-skills/prismer-blocked-page-recovery/SKILL.md +158 -0
  242. package/built-in-skills/prismer-blocked-page-recovery/scripts/recover_page.py +311 -0
  243. package/built-in-skills/prismer-box/LICENSE +21 -0
  244. package/built-in-skills/prismer-box/NOTICE.md +11 -0
  245. package/built-in-skills/prismer-box/SKILL.md +147 -0
  246. package/built-in-skills/prismer-box/references/bulk-operations.md +43 -0
  247. package/built-in-skills/prismer-box/references/cli-guide.md +133 -0
  248. package/built-in-skills/prismer-box/references/content-workflows.md +86 -0
  249. package/built-in-skills/prismer-box/references/hubs.md +77 -0
  250. package/built-in-skills/prismer-box/references/oauth-setup.md +92 -0
  251. package/built-in-skills/prismer-box/references/rest-api.md +37 -0
  252. package/built-in-skills/prismer-box/references/sdk-development.md +85 -0
  253. package/built-in-skills/prismer-box/references/search-and-ai.md +147 -0
  254. package/built-in-skills/prismer-box/references/troubleshooting.md +33 -0
  255. package/built-in-skills/prismer-box/references/webhooks-and-events.md +43 -0
  256. package/built-in-skills/prismer-codebase-inspection/LICENSE +21 -0
  257. package/built-in-skills/prismer-codebase-inspection/NOTICE.md +17 -0
  258. package/built-in-skills/prismer-codebase-inspection/SKILL.md +141 -0
  259. package/built-in-skills/prismer-computer-use/LICENSE +21 -0
  260. package/built-in-skills/prismer-computer-use/NOTICE.md +17 -0
  261. package/built-in-skills/prismer-computer-use/SKILL.md +372 -0
  262. package/built-in-skills/prismer-design-md/LICENSE +21 -0
  263. package/built-in-skills/prismer-design-md/LICENSE.hermes +21 -0
  264. package/built-in-skills/prismer-design-md/PROVENANCE.md +7 -0
  265. package/built-in-skills/prismer-design-md/SKILL.md +227 -0
  266. package/built-in-skills/prismer-design-md/templates/starter.md +99 -0
  267. package/built-in-skills/prismer-email-inbox-triage/LICENSE +21 -0
  268. package/built-in-skills/prismer-email-inbox-triage/NOTICE.md +11 -0
  269. package/built-in-skills/prismer-email-inbox-triage/SKILL.md +116 -0
  270. package/built-in-skills/prismer-findmy/LICENSE +21 -0
  271. package/built-in-skills/prismer-findmy/NOTICE.md +17 -0
  272. package/built-in-skills/prismer-findmy/SKILL.md +150 -0
  273. package/built-in-skills/prismer-findmy/scripts/readiness.py +47 -0
  274. package/built-in-skills/prismer-gif-search/LICENSE +21 -0
  275. package/built-in-skills/prismer-gif-search/LICENSE.hermes +21 -0
  276. package/built-in-skills/prismer-gif-search/PROVENANCE.md +7 -0
  277. package/built-in-skills/prismer-gif-search/SKILL.md +97 -0
  278. package/built-in-skills/prismer-gif-search/scripts/tenor.py +81 -0
  279. package/built-in-skills/prismer-github/LICENSE +21 -0
  280. package/built-in-skills/prismer-github/NOTICE.md +17 -0
  281. package/built-in-skills/prismer-github/SKILL.md +74 -0
  282. package/built-in-skills/prismer-github/references/auth.md +91 -0
  283. package/built-in-skills/prismer-github/references/ci-troubleshooting.md +193 -0
  284. package/built-in-skills/prismer-github/references/code-review.md +465 -0
  285. package/built-in-skills/prismer-github/references/conventional-commits.md +81 -0
  286. package/built-in-skills/prismer-github/references/github-api-cheatsheet.md +177 -0
  287. package/built-in-skills/prismer-github/references/issue-to-pr.md +74 -0
  288. package/built-in-skills/prismer-github/references/issues.md +336 -0
  289. package/built-in-skills/prismer-github/references/pr-workflow.md +346 -0
  290. package/built-in-skills/prismer-github/references/repo-management.md +484 -0
  291. package/built-in-skills/prismer-github/references/review-output-template.md +84 -0
  292. package/built-in-skills/prismer-github/scripts/ensure-gh.py +132 -0
  293. package/built-in-skills/prismer-github/scripts/gh-env.sh +25 -0
  294. package/built-in-skills/prismer-github/scripts/git-credential-token.py +68 -0
  295. package/built-in-skills/prismer-github/scripts/github-api.py +71 -0
  296. package/built-in-skills/prismer-github/scripts/github-context.py +28 -0
  297. package/built-in-skills/prismer-github/templates/bug-report.md +35 -0
  298. package/built-in-skills/prismer-github/templates/feature-request.md +31 -0
  299. package/built-in-skills/prismer-github/templates/pr-body-bugfix.md +35 -0
  300. package/built-in-skills/prismer-github/templates/pr-body-feature.md +33 -0
  301. package/built-in-skills/prismer-google-workspace/LICENSE +21 -0
  302. package/built-in-skills/prismer-google-workspace/NOTICE.md +11 -0
  303. package/built-in-skills/prismer-google-workspace/SKILL.md +369 -0
  304. package/built-in-skills/prismer-google-workspace/references/daily-brief.md +65 -0
  305. package/built-in-skills/prismer-google-workspace/references/gmail-search-syntax.md +63 -0
  306. package/built-in-skills/prismer-google-workspace/scripts/_hermes_home.py +17 -0
  307. package/built-in-skills/prismer-google-workspace/scripts/_private_state.py +39 -0
  308. package/built-in-skills/prismer-google-workspace/scripts/google_api.py +1339 -0
  309. package/built-in-skills/prismer-google-workspace/scripts/gws_bridge.py +121 -0
  310. package/built-in-skills/prismer-google-workspace/scripts/setup.py +563 -0
  311. package/built-in-skills/prismer-google-workspace/tests/test_productivity_regressions.py +214 -0
  312. package/built-in-skills/prismer-hermes-agent/LICENSE +21 -0
  313. package/built-in-skills/prismer-hermes-agent/NOTICE.md +17 -0
  314. package/built-in-skills/prismer-hermes-agent/SKILL.md +247 -0
  315. package/built-in-skills/prismer-hermes-agent/references/background-systems.md +108 -0
  316. package/built-in-skills/prismer-hermes-agent/references/cli-reference.md +158 -0
  317. package/built-in-skills/prismer-hermes-agent/references/configuration.md +96 -0
  318. package/built-in-skills/prismer-hermes-agent/references/contributor-guide.md +151 -0
  319. package/built-in-skills/prismer-hermes-agent/references/delegate-task-concurrency-diagnosis.md +47 -0
  320. package/built-in-skills/prismer-hermes-agent/references/desktop-plugins.md +215 -0
  321. package/built-in-skills/prismer-hermes-agent/references/native-mcp.md +351 -0
  322. package/built-in-skills/prismer-hermes-agent/references/petdex.md +82 -0
  323. package/built-in-skills/prismer-hermes-agent/references/portal-auth-for-third-party-apps.md +135 -0
  324. package/built-in-skills/prismer-hermes-agent/references/project-context-files.md +55 -0
  325. package/built-in-skills/prismer-hermes-agent/references/providers-and-models.md +81 -0
  326. package/built-in-skills/prismer-hermes-agent/references/security-privacy.md +73 -0
  327. package/built-in-skills/prismer-hermes-agent/references/slash-commands.md +119 -0
  328. package/built-in-skills/prismer-hermes-agent/references/themes.md +134 -0
  329. package/built-in-skills/prismer-hermes-agent/references/troubleshooting.md +87 -0
  330. package/built-in-skills/prismer-hermes-agent/references/tui-widgets.md +144 -0
  331. package/built-in-skills/prismer-hermes-agent/references/webhooks.md +219 -0
  332. package/built-in-skills/prismer-hermes-agent/references/windows-quirks.md +64 -0
  333. package/built-in-skills/prismer-hermes-agent/templates/clock.mjs +51 -0
  334. package/built-in-skills/prismer-hermes-agent/templates/plugin.js +97 -0
  335. package/built-in-skills/prismer-hermes-agent/templates/skin.yaml +49 -0
  336. package/built-in-skills/prismer-himalaya/LICENSE +21 -0
  337. package/built-in-skills/prismer-himalaya/NOTICE.md +11 -0
  338. package/built-in-skills/prismer-himalaya/SKILL.md +340 -0
  339. package/built-in-skills/prismer-himalaya/references/configuration.md +227 -0
  340. package/built-in-skills/prismer-himalaya/references/message-composition.md +206 -0
  341. package/built-in-skills/prismer-himalaya/scripts/compose_draft.py +48 -0
  342. package/built-in-skills/prismer-im-collab/SKILL.md +1 -1
  343. package/built-in-skills/prismer-imessage/LICENSE +21 -0
  344. package/built-in-skills/prismer-imessage/NOTICE.md +17 -0
  345. package/built-in-skills/prismer-imessage/SKILL.md +128 -0
  346. package/built-in-skills/prismer-imessage/scripts/readiness.py +47 -0
  347. package/built-in-skills/prismer-manim-video/LICENSE +21 -0
  348. package/built-in-skills/prismer-manim-video/LICENSE.hermes +21 -0
  349. package/built-in-skills/prismer-manim-video/PROVENANCE.md +7 -0
  350. package/built-in-skills/prismer-manim-video/README.md +23 -0
  351. package/built-in-skills/prismer-manim-video/SKILL.md +279 -0
  352. package/built-in-skills/prismer-manim-video/references/animation-design-thinking.md +161 -0
  353. package/built-in-skills/prismer-manim-video/references/animations.md +282 -0
  354. package/built-in-skills/prismer-manim-video/references/camera-and-3d.md +135 -0
  355. package/built-in-skills/prismer-manim-video/references/decorations.md +202 -0
  356. package/built-in-skills/prismer-manim-video/references/equations.md +216 -0
  357. package/built-in-skills/prismer-manim-video/references/graphs-and-data.md +163 -0
  358. package/built-in-skills/prismer-manim-video/references/mobjects.md +333 -0
  359. package/built-in-skills/prismer-manim-video/references/paper-explainer.md +255 -0
  360. package/built-in-skills/prismer-manim-video/references/production-quality.md +190 -0
  361. package/built-in-skills/prismer-manim-video/references/rendering.md +187 -0
  362. package/built-in-skills/prismer-manim-video/references/scene-planning.md +118 -0
  363. package/built-in-skills/prismer-manim-video/references/troubleshooting.md +135 -0
  364. package/built-in-skills/prismer-manim-video/references/updaters-and-trackers.md +260 -0
  365. package/built-in-skills/prismer-manim-video/references/visual-design.md +124 -0
  366. package/built-in-skills/prismer-manim-video/scripts/setup.sh +15 -0
  367. package/built-in-skills/prismer-maps/LICENSE +21 -0
  368. package/built-in-skills/prismer-maps/NOTICE.md +11 -0
  369. package/built-in-skills/prismer-maps/SKILL.md +240 -0
  370. package/built-in-skills/prismer-maps/scripts/maps_client.py +1324 -0
  371. package/built-in-skills/prismer-node-inspect-debugger/LICENSE +21 -0
  372. package/built-in-skills/prismer-node-inspect-debugger/NOTICE.md +17 -0
  373. package/built-in-skills/prismer-node-inspect-debugger/SKILL.md +347 -0
  374. package/built-in-skills/prismer-notion/LICENSE +21 -0
  375. package/built-in-skills/prismer-notion/NOTICE.md +11 -0
  376. package/built-in-skills/prismer-notion/SKILL.md +495 -0
  377. package/built-in-skills/prismer-notion/references/block-types.md +112 -0
  378. package/built-in-skills/prismer-obsidian/LICENSE +21 -0
  379. package/built-in-skills/prismer-obsidian/LICENSE.hermes +21 -0
  380. package/built-in-skills/prismer-obsidian/PROVENANCE.md +7 -0
  381. package/built-in-skills/prismer-obsidian/SKILL.md +80 -0
  382. package/built-in-skills/prismer-obsidian/provenance/category-DESCRIPTION.md +3 -0
  383. package/built-in-skills/prismer-obsidian/scripts/write_note.py +84 -0
  384. package/built-in-skills/prismer-p5js/LICENSE +21 -0
  385. package/built-in-skills/prismer-p5js/LICENSE.hermes +21 -0
  386. package/built-in-skills/prismer-p5js/PROVENANCE.md +7 -0
  387. package/built-in-skills/prismer-p5js/README.md +64 -0
  388. package/built-in-skills/prismer-p5js/SKILL.md +574 -0
  389. package/built-in-skills/prismer-p5js/references/animation.md +439 -0
  390. package/built-in-skills/prismer-p5js/references/color-systems.md +355 -0
  391. package/built-in-skills/prismer-p5js/references/core-api.md +410 -0
  392. package/built-in-skills/prismer-p5js/references/export-pipeline.md +534 -0
  393. package/built-in-skills/prismer-p5js/references/interaction.md +398 -0
  394. package/built-in-skills/prismer-p5js/references/shapes-and-geometry.md +300 -0
  395. package/built-in-skills/prismer-p5js/references/troubleshooting.md +532 -0
  396. package/built-in-skills/prismer-p5js/references/typography.md +302 -0
  397. package/built-in-skills/prismer-p5js/references/visual-effects.md +905 -0
  398. package/built-in-skills/prismer-p5js/references/webgl-and-3d.md +423 -0
  399. package/built-in-skills/prismer-p5js/scripts/export-frames.js +91 -0
  400. package/built-in-skills/prismer-p5js/scripts/render.sh +113 -0
  401. package/built-in-skills/prismer-p5js/scripts/serve.sh +25 -0
  402. package/built-in-skills/prismer-p5js/scripts/setup.sh +87 -0
  403. package/built-in-skills/prismer-p5js/templates/viewer.html +401 -0
  404. package/built-in-skills/prismer-popular-web-designs/LICENSE +21 -0
  405. package/built-in-skills/prismer-popular-web-designs/LICENSE.hermes +21 -0
  406. package/built-in-skills/prismer-popular-web-designs/LICENSE.origin +21 -0
  407. package/built-in-skills/prismer-popular-web-designs/PROVENANCE.md +7 -0
  408. package/built-in-skills/prismer-popular-web-designs/SKILL.md +218 -0
  409. package/built-in-skills/prismer-popular-web-designs/templates/airbnb.md +259 -0
  410. package/built-in-skills/prismer-popular-web-designs/templates/airtable.md +102 -0
  411. package/built-in-skills/prismer-popular-web-designs/templates/apple.md +326 -0
  412. package/built-in-skills/prismer-popular-web-designs/templates/bmw.md +193 -0
  413. package/built-in-skills/prismer-popular-web-designs/templates/cal.md +272 -0
  414. package/built-in-skills/prismer-popular-web-designs/templates/claude.md +325 -0
  415. package/built-in-skills/prismer-popular-web-designs/templates/clay.md +317 -0
  416. package/built-in-skills/prismer-popular-web-designs/templates/clickhouse.md +294 -0
  417. package/built-in-skills/prismer-popular-web-designs/templates/cohere.md +279 -0
  418. package/built-in-skills/prismer-popular-web-designs/templates/coinbase.md +142 -0
  419. package/built-in-skills/prismer-popular-web-designs/templates/composio.md +320 -0
  420. package/built-in-skills/prismer-popular-web-designs/templates/cursor.md +322 -0
  421. package/built-in-skills/prismer-popular-web-designs/templates/elevenlabs.md +278 -0
  422. package/built-in-skills/prismer-popular-web-designs/templates/expo.md +294 -0
  423. package/built-in-skills/prismer-popular-web-designs/templates/figma.md +233 -0
  424. package/built-in-skills/prismer-popular-web-designs/templates/framer.md +259 -0
  425. package/built-in-skills/prismer-popular-web-designs/templates/hashicorp.md +291 -0
  426. package/built-in-skills/prismer-popular-web-designs/templates/ibm.md +345 -0
  427. package/built-in-skills/prismer-popular-web-designs/templates/intercom.md +159 -0
  428. package/built-in-skills/prismer-popular-web-designs/templates/kraken.md +138 -0
  429. package/built-in-skills/prismer-popular-web-designs/templates/linear.app.md +380 -0
  430. package/built-in-skills/prismer-popular-web-designs/templates/lovable.md +311 -0
  431. package/built-in-skills/prismer-popular-web-designs/templates/minimax.md +270 -0
  432. package/built-in-skills/prismer-popular-web-designs/templates/mintlify.md +339 -0
  433. package/built-in-skills/prismer-popular-web-designs/templates/miro.md +121 -0
  434. package/built-in-skills/prismer-popular-web-designs/templates/mistral.ai.md +274 -0
  435. package/built-in-skills/prismer-popular-web-designs/templates/mongodb.md +279 -0
  436. package/built-in-skills/prismer-popular-web-designs/templates/notion.md +322 -0
  437. package/built-in-skills/prismer-popular-web-designs/templates/nvidia.md +306 -0
  438. package/built-in-skills/prismer-popular-web-designs/templates/ollama.md +280 -0
  439. package/built-in-skills/prismer-popular-web-designs/templates/opencode.ai.md +294 -0
  440. package/built-in-skills/prismer-popular-web-designs/templates/pinterest.md +243 -0
  441. package/built-in-skills/prismer-popular-web-designs/templates/posthog.md +269 -0
  442. package/built-in-skills/prismer-popular-web-designs/templates/raycast.md +281 -0
  443. package/built-in-skills/prismer-popular-web-designs/templates/replicate.md +274 -0
  444. package/built-in-skills/prismer-popular-web-designs/templates/resend.md +316 -0
  445. package/built-in-skills/prismer-popular-web-designs/templates/revolut.md +198 -0
  446. package/built-in-skills/prismer-popular-web-designs/templates/runwayml.md +257 -0
  447. package/built-in-skills/prismer-popular-web-designs/templates/sanity.md +370 -0
  448. package/built-in-skills/prismer-popular-web-designs/templates/sentry.md +275 -0
  449. package/built-in-skills/prismer-popular-web-designs/templates/spacex.md +207 -0
  450. package/built-in-skills/prismer-popular-web-designs/templates/spotify.md +259 -0
  451. package/built-in-skills/prismer-popular-web-designs/templates/stripe.md +335 -0
  452. package/built-in-skills/prismer-popular-web-designs/templates/supabase.md +268 -0
  453. package/built-in-skills/prismer-popular-web-designs/templates/superhuman.md +265 -0
  454. package/built-in-skills/prismer-popular-web-designs/templates/together.ai.md +276 -0
  455. package/built-in-skills/prismer-popular-web-designs/templates/uber.md +308 -0
  456. package/built-in-skills/prismer-popular-web-designs/templates/vercel.md +323 -0
  457. package/built-in-skills/prismer-popular-web-designs/templates/voltagent.md +336 -0
  458. package/built-in-skills/prismer-popular-web-designs/templates/warp.md +266 -0
  459. package/built-in-skills/prismer-popular-web-designs/templates/webflow.md +105 -0
  460. package/built-in-skills/prismer-popular-web-designs/templates/wise.md +186 -0
  461. package/built-in-skills/prismer-popular-web-designs/templates/x.ai.md +270 -0
  462. package/built-in-skills/prismer-popular-web-designs/templates/zapier.md +341 -0
  463. package/built-in-skills/prismer-product-price-monitor/LICENSE +21 -0
  464. package/built-in-skills/prismer-product-price-monitor/NOTICE.md +11 -0
  465. package/built-in-skills/prismer-product-price-monitor/SKILL.md +97 -0
  466. package/built-in-skills/prismer-product-price-monitor/scripts/watch_state.py +116 -0
  467. package/built-in-skills/prismer-python-debugpy/LICENSE +21 -0
  468. package/built-in-skills/prismer-python-debugpy/NOTICE.md +17 -0
  469. package/built-in-skills/prismer-python-debugpy/SKILL.md +377 -0
  470. package/built-in-skills/prismer-python-debugpy/scripts/dap_client.py +68 -0
  471. package/built-in-skills/prismer-songsee/LICENSE +21 -0
  472. package/built-in-skills/prismer-songsee/LICENSE.hermes +21 -0
  473. package/built-in-skills/prismer-songsee/PROVENANCE.md +7 -0
  474. package/built-in-skills/prismer-songsee/SKILL.md +91 -0
  475. package/built-in-skills/prismer-songwriting-and-ai-music/LICENSE +21 -0
  476. package/built-in-skills/prismer-songwriting-and-ai-music/LICENSE.hermes +21 -0
  477. package/built-in-skills/prismer-songwriting-and-ai-music/PROVENANCE.md +7 -0
  478. package/built-in-skills/prismer-songwriting-and-ai-music/SKILL.md +317 -0
  479. package/built-in-skills/prismer-spike/LICENSE +21 -0
  480. package/built-in-skills/prismer-spike/LICENSE.gsd +21 -0
  481. package/built-in-skills/prismer-spike/NOTICE.md +17 -0
  482. package/built-in-skills/prismer-spike/SKILL.md +212 -0
  483. package/built-in-skills/prismer-teams-meeting-pipeline/LICENSE +21 -0
  484. package/built-in-skills/prismer-teams-meeting-pipeline/NOTICE.md +11 -0
  485. package/built-in-skills/prismer-teams-meeting-pipeline/SKILL.md +156 -0
  486. package/built-in-skills/prismer-xurl/LICENSE +21 -0
  487. package/built-in-skills/prismer-xurl/LICENSE.hermes +21 -0
  488. package/built-in-skills/prismer-xurl/PROVENANCE.md +7 -0
  489. package/built-in-skills/prismer-xurl/SKILL.md +444 -0
  490. package/built-in-skills/prismer-xurl/provenance/category-DESCRIPTION.md +3 -0
  491. package/built-in-skills/prismer-youtube-content/LICENSE +21 -0
  492. package/built-in-skills/prismer-youtube-content/LICENSE.hermes +21 -0
  493. package/built-in-skills/prismer-youtube-content/PROVENANCE.md +7 -0
  494. package/built-in-skills/prismer-youtube-content/SKILL.md +86 -0
  495. package/built-in-skills/prismer-youtube-content/provenance/category-DESCRIPTION.md +3 -0
  496. package/built-in-skills/prismer-youtube-content/references/output-formats.md +56 -0
  497. package/built-in-skills/prismer-youtube-content/scripts/fetch_transcript.py +146 -0
  498. package/built-in-skills/research-arxiv/LICENSE +21 -0
  499. package/built-in-skills/research-arxiv/NOTICE.md +4 -0
  500. package/built-in-skills/research-arxiv/SKILL.md +263 -0
  501. package/built-in-skills/research-arxiv/scripts/search_arxiv.py +111 -0
  502. package/built-in-skills/role-builder/SKILL.md +7 -1
  503. package/built-in-skills/role-builder/scripts/author-role.mjs +23 -7
  504. package/built-in-skills/role-builder/scripts/ingest-role.mjs +15 -117
  505. package/built-in-skills/role-builder/scripts/instantiate-and-run.mjs +15 -1
  506. package/built-in-skills/role-builder/scripts/operation-harness.mjs +6 -4
  507. package/built-in-skills/skill-creator/LICENSE.prismer +21 -0
  508. package/built-in-skills/skill-creator/NOTICE.md +18 -0
  509. package/built-in-skills/skill-creator/SKILL.md +20 -1
  510. package/built-in-skills/skill-creator/eval-viewer/generate_review.py +20 -31
  511. package/built-in-skills/skill-creator/eval-viewer/viewer.html +35 -23
  512. package/built-in-skills/skill-creator/references/hermes-agent-skill-authoring/GUIDE.md +220 -0
  513. package/built-in-skills/skill-creator/references/hermes-agent-skill-authoring/LICENSE +21 -0
  514. package/built-in-skills/{skill-authoring/SKILL.md → skill-creator/references/skill-authoring/GUIDE.md} +1 -1
  515. package/built-in-skills/{skill-builder/SKILL.md → skill-creator/references/skill-builder/GUIDE.md} +8 -12
  516. package/built-in-skills/skill-creator/references/skill-builder/scripts/ingest.mjs +93 -0
  517. package/built-in-skills/skill-creator/scripts/aggregate_benchmark.py +3 -2
  518. package/built-in-skills/skill-creator/scripts/import-library.mjs +30 -7
  519. package/built-in-skills/skill-creator/scripts/improve_description.py +14 -16
  520. package/built-in-skills/skill-creator/scripts/package_skill.py +16 -9
  521. package/built-in-skills/skill-creator/scripts/quick_validate.py +22 -5
  522. package/built-in-skills/skill-creator/scripts/run_eval.py +63 -144
  523. package/built-in-skills/skill-creator/scripts/run_loop.py +24 -16
  524. package/built-in-skills/slack-gif-creator/core/gif_builder.py +13 -2
  525. package/built-in-skills/slack-gif-creator/core/validators.py +17 -7
  526. package/built-in-skills/tasks/SKILL.md +2 -2
  527. package/built-in-skills/tdd/SKILL.md +7 -0
  528. package/built-in-skills/tdd/references/test-driven-development/GUIDE.md +356 -0
  529. package/built-in-skills/tdd/references/test-driven-development/LICENSE +21 -0
  530. package/built-in-skills/tdd/references/test-driven-development/LICENSE.superpowers +21 -0
  531. package/built-in-skills/tdd/references/test-driven-development/NOTICE.md +37 -0
  532. package/built-in-skills/team/SKILL.md +1 -1
  533. package/built-in-skills/web-artifacts-builder/SKILL.md +3 -3
  534. package/built-in-skills/web-artifacts-builder/scripts/bundle-artifact.sh +9 -7
  535. package/built-in-skills/web-artifacts-builder/scripts/init-artifact.sh +28 -55
  536. package/built-in-skills/webapp-qa/LICENSE +21 -0
  537. package/built-in-skills/webapp-qa/NOTICE.md +37 -0
  538. package/built-in-skills/webapp-qa/SKILL.md +41 -0
  539. package/built-in-skills/webapp-qa/references/dogfood/GUIDE.md +161 -0
  540. package/built-in-skills/webapp-qa/references/issue-taxonomy.md +109 -0
  541. package/built-in-skills/webapp-qa/templates/dogfood-report-template.md +86 -0
  542. package/built-in-skills/webapp-testing/SKILL.md +9 -2
  543. package/built-in-skills/webapp-testing/examples/console_logging.py +10 -4
  544. package/built-in-skills/webapp-testing/examples/element_discovery.py +11 -4
  545. package/built-in-skills/webapp-testing/examples/static_html_automation.py +14 -9
  546. package/built-in-skills/webapp-testing/scripts/with_server.py +34 -10
  547. package/built-in-skills/weekly-review/LICENSE +21 -0
  548. package/built-in-skills/weekly-review/NOTICE.md +21 -0
  549. package/built-in-skills/weekly-review/SKILL.md +49 -0
  550. package/components/eaas-pi-components.manifest.json +37 -0
  551. package/dist/cli.cjs +7017 -3340
  552. package/dist/cli.js +6631 -2936
  553. package/dist/index.cjs +7863 -3830
  554. package/dist/index.d.cts +459 -5
  555. package/dist/index.d.ts +459 -5
  556. package/dist/index.js +7106 -3064
  557. package/package.json +7 -2
  558. package/plugins/memory/prismer/__init__.py +4 -0
  559. package/plugins/memory/prismer/tool-schemas.generated.json +8 -0
  560. package/built-in-skills/skill-builder/scripts/ingest.mjs +0 -265
  561. package/built-in-skills/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  562. /package/built-in-skills/{document-generation/SKILL.md → office-artifacts/references/document-generation/GUIDE.md} +0 -0
  563. /package/built-in-skills/{skill-authoring/skill.json → skill-creator/references/skill-authoring/draft-contract.json} +0 -0
package/dist/index.d.ts CHANGED
@@ -3,7 +3,8 @@ import Database from 'better-sqlite3';
3
3
  import { Options } from '@anthropic-ai/claude-agent-sdk';
4
4
  import { EventEmitter } from 'node:events';
5
5
  import { IncomingMessage, ServerResponse } from 'node:http';
6
- import { Models, Model, Api } from '@earendil-works/pi-ai';
6
+ import { AgentTool } from '@earendil-works/pi-agent-core/node';
7
+ import { TextContent, ImageContent, Models, Model, Api } from '@earendil-works/pi-ai';
7
8
  import { Command } from 'commander';
8
9
 
9
10
  interface AssetRef {
@@ -402,6 +403,14 @@ interface ResolvedAssetRef extends AssetRef {
402
403
  base64?: string;
403
404
  reachable?: 'cdn' | 'base64' | 'unknown';
404
405
  }
406
+ /**
407
+ * spec 11 T4-2 — hand-maintained mirror of the cloud canon
408
+ * (`src/im/types/im-events.ts`). The field-NAME set (incl. `?`; field TYPES
409
+ * are NOT in the nail's scope) MUST match canon; the one named exception is
410
+ * the runtime-only `projectId?` below (cloud retired the project dimension —
411
+ * see its field comment). Drift is nailed by
412
+ * `scripts/__tests__/dispatch-wire-mirror-parity.test.ts` (T0 CI tier).
413
+ */
405
414
  interface TaskDispatchRequestPayload {
406
415
  taskId: string;
407
416
  /**
@@ -558,6 +567,13 @@ interface TaskDispatchRequestPayload {
558
567
  */
559
568
  sections?: IdentitySection[];
560
569
  };
570
+ /**
571
+ * S6/M1 — capability bit. Only a cloud that understands multi-frame replies
572
+ * sets this (chat agent-run dispatches). Legacy clouds never carry it, so the
573
+ * daemon must never send interim frames on their behalf — "legacy cloud only
574
+ * ever sees the final frame" is carried by THIS field, not by the frames.
575
+ */
576
+ interimReply?: boolean;
561
577
  }
562
578
  /**
563
579
  * product204/07 Phase C — one named identityContext section. `content` is a
@@ -565,9 +581,13 @@ interface TaskDispatchRequestPayload {
565
581
  * does no templating, only order-sort + trim + join.
566
582
  */
567
583
  interface IdentitySection {
568
- /** kebab-case, globally unique ('platform-directives' | 'config-directives' | 'per-turn-voice' | …). */
584
+ /** kebab-case, globally unique ('platform-directives' | 'config-directives' | 'per-turn-voice' | 'org-collaboration' | …). */
569
585
  id: string;
570
- /** Owning product204 doc number ('07' | '09' | '03') — kept loose for forward compat. */
586
+ /**
587
+ * Owning doc number ('07' | '09' | '03' | 'product205/12' | 'bugfix211/B' |
588
+ * 'organization/04') — kept loose (cloud side is a closed union; this mirror
589
+ * stays `string` so an old daemon never rejects a section added later).
590
+ */
571
591
  owner: string;
572
592
  /** Render position; daemon stable-sorts ascending before joining. */
573
593
  order: number;
@@ -721,6 +741,10 @@ interface TaskDispatchReplyPayload {
721
741
  outboxRejections?: OutboxRejectionRecord[];
722
742
  /** product209 Phase 1: bounded pre-reply authoritative Memory outcome. */
723
743
  durability?: TaskDurabilityResult;
744
+ /** S6/M1 — 1-based position in this turn's reply stream; present on every frame of a multi-frame turn. */
745
+ seq?: number;
746
+ /** S6/M1 — false = interim commentary frame (I1 shape); true/absent = terminal frame. */
747
+ final?: boolean;
724
748
  }
725
749
  interface TaskCancelPayload {
726
750
  taskId: string;
@@ -2200,6 +2224,20 @@ interface AgentSessionConfig {
2200
2224
  sandboxMode?: string;
2201
2225
  networkAccess?: boolean;
2202
2226
  webSearch?: boolean;
2227
+ /**
2228
+ * Runtime turn tool declarations supplied by the cloud-side envelope.
2229
+ *
2230
+ * Omitted means provider default behavior. When present, runtime engines must
2231
+ * fail closed to the declared, enabled tool set.
2232
+ */
2233
+ runtimeTools?: Array<{
2234
+ name: string;
2235
+ kind: "builtin" | "component" | string;
2236
+ enabled?: boolean;
2237
+ version?: string;
2238
+ source?: string;
2239
+ config?: Record<string, unknown>;
2240
+ }>;
2203
2241
  extra?: {
2204
2242
  codex?: AgentMetadata;
2205
2243
  claude?: Partial<Options>;
@@ -2459,6 +2497,20 @@ interface TaskInput {
2459
2497
  message?: string;
2460
2498
  detail?: Record<string, unknown>;
2461
2499
  }) => void;
2500
+ /**
2501
+ * S6/M1 — mid-turn milestone narration relay (hermes v2026.9.14
2502
+ * `assistant.commentary` SSE events). Invoked once per non-empty commentary
2503
+ * segment, in stream order, with a per-turn 1-based `seq`. The final
2504
+ * `TaskResult.output` stays the last `assistant.completed` — narration is
2505
+ * never merged into it, and the callback is fire-and-forget: a throwing
2506
+ * consumer must never break the SSE loop. Optional — adapters that don't
2507
+ * relay commentary leave it undefined. Kill-switch:
2508
+ * `HERMES_COMMENTARY_RELAY` (default on, explicit `false|0|off` disables).
2509
+ */
2510
+ onInterimReply?: (segment: {
2511
+ text: string;
2512
+ seq: number;
2513
+ }) => void;
2462
2514
  signal?: AbortSignal;
2463
2515
  /**
2464
2516
  * Wave-3 D2 observability handles. Optional — pre-Wave-3 adapters that
@@ -2656,10 +2708,35 @@ interface TaskResult {
2656
2708
  * For Hermes this wraps an HTTP client to `hermes gateway`; for OpenClaw
2657
2709
  * (1.9.5+) it wraps an in-process TS worker.
2658
2710
  */
2711
+ /**
2712
+ * S7 (spec 07 Task 1 / 裁决 B) — options for ONE dispatch CALL.
2713
+ *
2714
+ * The daemon's P2 retry loop is a single dispatch call: a transient failure
2715
+ * retries the same intent. Anything the upstream uses to recognise a replay
2716
+ * must therefore be identical across those attempts — a re-minted value turns
2717
+ * the retry into a second, separately-billed execution.
2718
+ *
2719
+ * It is deliberately NOT the same axis as `TaskInput.metadata.attemptNo`,
2720
+ * which exists to make LLM-proxy cache keys differ per attempt.
2721
+ */
2722
+ interface DispatchCallOptions {
2723
+ /**
2724
+ * Minted ONCE by the daemon at the entry of a dispatch call and reused by
2725
+ * every P2 attempt. A genuinely NEW dispatch call (cloud requeue, a fresh
2726
+ * user action) mints a new one: replaying an already-closed run's terminal
2727
+ * result is worse than running it again.
2728
+ */
2729
+ idempotencyNonce?: string;
2730
+ }
2659
2731
  interface AdapterService {
2660
2732
  /** Service-specific identifier (e.g. 'http://127.0.0.1:8642' for hermes). */
2661
2733
  id: string;
2662
- dispatch(task: TaskInput): Promise<TaskResult>;
2734
+ /**
2735
+ * `opts` is per-CALL, not per-task: adapters that talk to a replay-aware
2736
+ * upstream read `idempotencyNonce` from it so every P2 retry of this call
2737
+ * presents the same identity (see DispatchCallOptions).
2738
+ */
2739
+ dispatch(task: TaskInput, opts?: DispatchCallOptions): Promise<TaskResult>;
2663
2740
  healthy(): Promise<boolean>;
2664
2741
  /** Optional: stop the service. May be no-op if user owns lifecycle. */
2665
2742
  shutdown?(): Promise<void>;
@@ -2816,6 +2893,171 @@ declare const HermesProfileConfigSchema: z.ZodObject<{
2816
2893
  type HermesProfileConfig = z.infer<typeof HermesProfileConfigSchema>;
2817
2894
  declare const hermesAdapter: AdapterDef;
2818
2895
 
2896
+ /** Loopback only — the plugin binds 127.0.0.1, never a routable interface. */
2897
+ declare const BRIDGE_DEFAULT_HOST = "127.0.0.1";
2898
+ /** Plugin default when `PRISMER_PLATFORM_PORT` is unset (adapter.py `_port()`). */
2899
+ declare const BRIDGE_DEFAULT_PORT = 8788;
2900
+ declare const BRIDGE_DEFAULT_CONNECT_TIMEOUT_MS = 5000;
2901
+ declare const BRIDGE_DEFAULT_RECONNECT_DELAY_MS = 1000;
2902
+ /**
2903
+ * Ceiling on the pending-line buffer. The plugin truncates content at 32 000
2904
+ * chars (≈32× headroom here), so a longer line means the peer is not speaking
2905
+ * this protocol — drop the buffer instead of growing it without bound.
2906
+ */
2907
+ declare const BRIDGE_MAX_LINE_CHARS = 1048576;
2908
+ interface BridgeInboundFrame {
2909
+ t: 'in';
2910
+ conversation_id: string;
2911
+ sender_id: string;
2912
+ sender_name: string;
2913
+ text: string;
2914
+ message_id: string;
2915
+ metadata: Record<string, unknown>;
2916
+ }
2917
+ interface BridgeOutboundFrame {
2918
+ t: 'out';
2919
+ chat_id: string;
2920
+ content: string;
2921
+ reply_to: string | null;
2922
+ metadata: Record<string, unknown>;
2923
+ message_id: string;
2924
+ /** Non-null when the gateway reports a delivery failure for this reply. */
2925
+ error: string | null;
2926
+ }
2927
+ interface BridgeInboundInput {
2928
+ conversationId: string;
2929
+ senderId: string;
2930
+ senderName: string;
2931
+ text: string;
2932
+ /** Defaults to a fresh uuid; the caller keeps it to anchor `reply_to`. */
2933
+ messageId?: string;
2934
+ metadata?: Record<string, unknown>;
2935
+ }
2936
+ type BridgeFrameParse = {
2937
+ ok: true;
2938
+ frame: BridgeOutboundFrame;
2939
+ } | {
2940
+ ok: false;
2941
+ error: string;
2942
+ };
2943
+ /**
2944
+ * Build the frame the plugin expects on the wire. Shape mirrors
2945
+ * `adapter.py::_on_inbound` field-for-field — snake_case keys, `t` first.
2946
+ */
2947
+ declare function buildInboundFrame(input: BridgeInboundInput): BridgeInboundFrame;
2948
+ /**
2949
+ * Parse one outbound line into a usable frame.
2950
+ *
2951
+ * Strict on the two fields a reply cannot be routed without (`chat_id`,
2952
+ * `content`); everything else normalises to its documented default. Gateway
2953
+ * field drift must degrade to a still-usable frame rather than a dropped reply
2954
+ * — `reply_to`/`metadata`/`message_id`/`error` are omitted defaults, not
2955
+ * errors.
2956
+ */
2957
+ declare function parseOutboundFrame(raw: string): BridgeFrameParse;
2958
+ interface BridgeProbeResult {
2959
+ reachable: boolean;
2960
+ host: string;
2961
+ port: number;
2962
+ latencyMs: number | null;
2963
+ /** Node errno (`ECONNREFUSED`, …) when the dial failed at the OS level. */
2964
+ code: string | null;
2965
+ error: string | null;
2966
+ }
2967
+ interface BridgeProbeOptions {
2968
+ port: number;
2969
+ host?: string;
2970
+ timeoutMs?: number;
2971
+ }
2972
+ /**
2973
+ * Liveness probe: open a TCP connection and close it. The bridge protocol has
2974
+ * no ping/pong frame, so reachability IS the health signal.
2975
+ *
2976
+ * NEVER rejects and never hangs — a missing bridge resolves
2977
+ * `{ reachable: false, code: 'ECONNREFUSED' | 'ETIMEDOUT', error }` so callers
2978
+ * get an explicit answer instead of an unhandled rejection.
2979
+ */
2980
+ declare function probeBridge(options: BridgeProbeOptions): Promise<BridgeProbeResult>;
2981
+ type BridgeConnectionState = 'idle' | 'connecting' | 'connected' | 'closed';
2982
+ type BridgeSendResult = {
2983
+ ok: true;
2984
+ messageId: string;
2985
+ } | {
2986
+ ok: false;
2987
+ error: string;
2988
+ };
2989
+ interface BridgeClientOptions {
2990
+ port: number;
2991
+ host?: string;
2992
+ connectTimeoutMs?: number;
2993
+ /** Delay between reconnect attempts after an unexpected drop. */
2994
+ reconnectDelayMs?: number;
2995
+ /** Reconnect after a drop. Default true; `close()` always stops the loop. */
2996
+ autoReconnect?: boolean;
2997
+ /** Called for every parsed outbound frame. */
2998
+ onOutbound: (frame: BridgeOutboundFrame) => void;
2999
+ /** Called for every unparseable / wrong-shaped line. Never throws. */
3000
+ onMalformed?: (raw: string, reason: string) => void;
3001
+ onStateChange?: (state: BridgeConnectionState) => void;
3002
+ }
3003
+ /**
3004
+ * Long-lived client for the bridge socket: dials, frames lines, reconnects on
3005
+ * drop and surfaces the outbound stream to `onOutbound`.
3006
+ *
3007
+ * Nothing here throws asynchronously — a dead bridge shows up as a state
3008
+ * change, a `log.warn`, a failed `sendInbound` result, or a rejected
3009
+ * `waitForConnected`. There is no path that silently swallows a failure.
3010
+ */
3011
+ declare class BridgeClient {
3012
+ readonly host: string;
3013
+ readonly port: number;
3014
+ private readonly connectTimeoutMs;
3015
+ private readonly reconnectDelayMs;
3016
+ private readonly autoReconnect;
3017
+ private readonly options;
3018
+ private socket;
3019
+ private started;
3020
+ private state;
3021
+ private reconnectTimer;
3022
+ private connectTimer;
3023
+ private lineBuffer;
3024
+ private lastError;
3025
+ private attempts;
3026
+ private readonly waiters;
3027
+ constructor(options: BridgeClientOptions);
3028
+ get connectionState(): BridgeConnectionState;
3029
+ get isConnected(): boolean;
3030
+ /** Dial attempts so far (initial + reconnects). Diagnostics/tests only. */
3031
+ get connectAttempts(): number;
3032
+ /** Last dial/socket error, human-readable. Null before any failure. */
3033
+ get lastConnectError(): string | null;
3034
+ /** Begin dialing. Idempotent while started. */
3035
+ start(): void;
3036
+ /**
3037
+ * Resolve once the socket is up, reject with an explicit error on timeout.
3038
+ * Rejects immediately if the client was closed while waiting.
3039
+ */
3040
+ waitForConnected(timeoutMs?: number): Promise<void>;
3041
+ /**
3042
+ * Write one inbound frame. Never throws: a detached socket, a blank `text`
3043
+ * (the gateway drops those silently) and a build failure all come back as
3044
+ * `{ ok: false, error }`.
3045
+ */
3046
+ sendInbound(input: BridgeInboundInput): BridgeSendResult;
3047
+ /**
3048
+ * Stop for good: drop the socket, cancel the reconnect loop, reject anything
3049
+ * still waiting on `waitForConnected`. Safe to call repeatedly.
3050
+ */
3051
+ close(): Promise<void>;
3052
+ private setState;
3053
+ private dial;
3054
+ private onData;
3055
+ private onLine;
3056
+ private reportMalformed;
3057
+ private clearReconnectTimer;
3058
+ private clearConnectTimer;
3059
+ }
3060
+
2819
3061
  /** Direct-connect provider families the daemon can route to (doc §2a). */
2820
3062
  declare const PROVIDER_PROFILE_TYPES: readonly ["anthropic", "openai", "deepseek", "ollama", "openai-compatible"];
2821
3063
  type ProviderProfileType = (typeof PROVIDER_PROFILE_TYPES)[number];
@@ -4541,6 +4783,17 @@ interface DispatchDeps {
4541
4783
  * in-flight run (the background path can't kill safely, so it only flags).
4542
4784
  */
4543
4785
  consumeSkillDirty?: (profileId: string) => boolean;
4786
+ /**
4787
+ * S5 §3.4-4b — re-arm a profile's skill-dirty flag. Counterpart of
4788
+ * `consumeSkillDirty`: when the skill-sync respawn is DEFERRED because a turn
4789
+ * is in flight, the pending change must survive to the next dispatch.
4790
+ */
4791
+ markSkillDirty?: (profileId: string) => void;
4792
+ /**
4793
+ * S5 §3.4-4b — does the profile's cached service have a turn in flight?
4794
+ * Wired to `ServicePool.peek(id) instanceof HermesService && svc.busy`.
4795
+ */
4796
+ peekServiceBusy?: (profileId: string) => boolean;
4544
4797
  /** Aborts the in-flight adapter dispatch when cloud sends task.cancel. */
4545
4798
  signal?: AbortSignal;
4546
4799
  /** Hook for tests / observability. */
@@ -6766,10 +7019,179 @@ type CodexConfig = z.infer<typeof CodexConfigSchema>;
6766
7019
  declare function parseCodexOutput(stdout: string): string;
6767
7020
  declare const codexAdapter: AdapterDef;
6768
7021
 
7022
+ interface ComponentStageRequest {
7023
+ schemaVersion: 1;
7024
+ environmentId: string;
7025
+ sandboxId: string;
7026
+ bindingHash: string;
7027
+ environmentEpoch: number;
7028
+ operationId: string;
7029
+ componentId: string;
7030
+ generation: string;
7031
+ attemptId: string;
7032
+ source: string;
7033
+ integrity: string;
7034
+ policyRevision: string;
7035
+ installerIdentity: string;
7036
+ packageName: string;
7037
+ version: string;
7038
+ archiveSha256: string;
7039
+ treeSha256: string;
7040
+ tools: string[];
7041
+ files: {
7042
+ path: string;
7043
+ bytes: number;
7044
+ sha256: string;
7045
+ contentBase64: string;
7046
+ }[];
7047
+ }
7048
+ interface ComponentStageReceipt {
7049
+ schemaVersion: 1;
7050
+ status: 'staged';
7051
+ environmentId: string;
7052
+ sandboxId: string;
7053
+ bindingHash: string;
7054
+ environmentEpoch: number;
7055
+ operationId: string;
7056
+ componentId: string;
7057
+ generation: string;
7058
+ attemptId: string;
7059
+ relativePath: string;
7060
+ archiveSha256: string;
7061
+ treeSha256: string;
7062
+ diskBytes: number;
7063
+ fileCount: number;
7064
+ loader: {
7065
+ kind: 'pi-extension';
7066
+ entrypoint: string;
7067
+ tools: string[];
7068
+ };
7069
+ }
7070
+ type ComponentStageManifest = Omit<ComponentStageRequest, 'files'> & {
7071
+ files: Array<Omit<ComponentStageRequest['files'][number], 'contentBase64'>>;
7072
+ };
7073
+
7074
+ type ActiveTenantComponent = ComponentStageManifest & {
7075
+ enabled: boolean;
7076
+ relativePath: string;
7077
+ loader: ComponentStageReceipt['loader'];
7078
+ };
7079
+ type TenantComponentContext = Pick<ComponentStageManifest, 'environmentId' | 'sandboxId' | 'bindingHash' | 'environmentEpoch'>;
7080
+
7081
+ /** Untrusted turn selection, never an executable path or load authority. */
7082
+ interface TenantComponentReference {
7083
+ componentId: string;
7084
+ generation: string;
7085
+ treeSha256: string;
7086
+ }
7087
+ /** Trusted host contract. Resolve from authenticated server state, never disk receipts/envelope config.
7088
+ * authorize must check current owner grant, enabled generation, expiry/deletion, epoch,
7089
+ * sandbox and binding on EVERY call. Offline/error/unknown must deny; no cached allow.
7090
+ * Cloud sender/authorization transport is a separate integration, not implemented here.
7091
+ */
7092
+ interface TenantComponentHost {
7093
+ root: string;
7094
+ context: TenantComponentContext;
7095
+ components: ActiveTenantComponent[];
7096
+ authorize(query: {
7097
+ turnId: string;
7098
+ context: TenantComponentContext;
7099
+ component: ActiveTenantComponent;
7100
+ phase: 'load' | 'invoke';
7101
+ tool?: string;
7102
+ }): Promise<boolean>;
7103
+ }
7104
+ interface TenantComponentSelection {
7105
+ turnId: string;
7106
+ components: TenantComponentReference[];
7107
+ }
7108
+ interface TenantComponentBinding extends TenantComponentSelection {
7109
+ host: TenantComponentHost;
7110
+ }
7111
+
7112
+ /**
7113
+ * TurnEnvelopeV1 / TurnEgressV1 / TurnResultV2 — 「一次 turn」的 in-pod 文件协议
7114
+ * (Gate B+ Task 7 design §2.4;MUST-1 起出口凭据走 `egress.json`;**v2** 起工具
7115
+ * 活动走同目录的 `events.jsonl`、结果带 `tools[]` 终态汇总)。
7116
+ *
7117
+ * 形态:cloud 侧把 envelope 写进 `<turnDir>/input.json`(0600,**不含密钥**);
7118
+ * LLM 出口凭据写进同目录的 `egress.json`(0600,**turn 作用域短 TTL token**,不是
7119
+ * owner 凭据——pod 内没有 provider key,模型调用经 cloud 的出口端点代理),本 CLI
7120
+ * 跑完一轮后把 TurnResultV2 写进 `<output.json>`,turn 进行中逐行追加
7121
+ * `events.jsonl`(0600)。投递文件**读完即删**。**stdout 不是数据通道**——引擎日志
7122
+ * 会污染它;结果只走文件。
7123
+ *
7124
+ * exit code 契约(cloud 侧 exec 包装器按此判定):
7125
+ * 0 = output.json 已写(turn 跑完;里面可能是 status:"error")
7126
+ * 70 = 基建失败(bundle 缺 / node 崩 / 无 output)→ 端口映射 runtime_unavailable
7127
+ *
7128
+ * 命名:`TurnEnvelopeV1` / `TurnEgressV1` 是**形态族名**(v2 未改这两个文件的字节
7129
+ * 形态,改动的是版本常量与结果面);`TurnResultV2` 与 `ToolEventV1` 是各自形态的
7130
+ * 版本——events 文件是 v2 新引入的产物,其行 schema 即该文件的首版(V1)。
7131
+ *
7132
+ * 校验纪律与 `src/tenant/contract.ts` 同族:手写 guard,违例抛
7133
+ * `TurnProtocolError`(不静默补默认值——坏输入必须可见)。
7134
+ */
7135
+ /**
7136
+ * 协议版本(唯一合法值;不匹配 = 明确拒绝,不做兼容推断)。
7137
+ *
7138
+ * v2 = 工具事件(`events.jsonl` + `result.tools[]`)。旧 bundle(常量 = 1)收到 v2
7139
+ * envelope 会在 `parseTurnEnvelope` 明确拒绝(exit 70 + 可见错误),不静默降级。
7140
+ */
7141
+
7142
+ /** 工具事件种类(§3.2:每工具调用两条)。 */
7143
+ type ToolEventKind = 'tool_started' | 'tool_finished';
7144
+ /**
7145
+ * `events.jsonl` 的一行(§3.2 逐字段)。`seq` / `at` **由写侧赋值**:hook 只上报
7146
+ * 原始测量值(`ToolEventInput`),seq 是「文件里的第几行」——由唯一写者按追加顺序
7147
+ * 赋 1-based 单调值并打 ISO 时间戳,故 seq 顺序 ≡ 行序,轮询器据此去重。
7148
+ */
7149
+ interface ToolEventV1 {
7150
+ /**
7151
+ * 1-based 单调序号(写侧赋值)。写侧达上限即**整条停写**(不跳号),故文件里恒为
7152
+ * 连续 1..N;消费方仍按「≤ 已见 seq 即重复」去重(对重放/截断天然安全)。
7153
+ */
7154
+ seq: number;
7155
+ /** 事件落盘时刻(写侧打戳,ISO)。 */
7156
+ at: string;
7157
+ kind: ToolEventKind;
7158
+ /** 工具名(read / write / edit / bash)。 */
7159
+ name: string;
7160
+ /** 入参摘要(≤500 字符,已剥凭据)。 */
7161
+ argsSummary?: string;
7162
+ /** 结果摘要(≤500 字符,已剥凭据)。 */
7163
+ resultSummary?: string;
7164
+ isError?: boolean;
7165
+ durationMs?: number;
7166
+ }
7167
+ /** 引擎 hook 上报的原始测量值——`seq` / `at` 归写侧(见 {@link ToolEventV1})。 */
7168
+ type ToolEventInput = Omit<ToolEventV1, 'seq' | 'at'>;
7169
+ /** 工具事件 sink(引擎 → 写侧);**只记录不拦截**,实现必须自吞异常。 */
7170
+ type ToolEventSink = (event: ToolEventInput) => void;
7171
+
6769
7172
  declare const PI_CORE_PROVIDER: "pi-core";
6770
7173
  declare const DEFAULT_PI_GATEWAY_PROVIDER: "prismer";
6771
7174
  declare const DEFAULT_PI_GATEWAY_MODEL: "gemini-3.1-flash-lite-preview";
7175
+ interface PiCoreToolPolicy {
7176
+ /** Exact bound tool names; absent allows all, an empty list allows none. */
7177
+ allow?: readonly string[];
7178
+ /** Exact bound tool names. Deny always wins over allow/authorize. */
7179
+ deny?: readonly string[];
7180
+ /** Trusted host authorization, checked per call. Only true permits execution. */
7181
+ authorize?: (call: {
7182
+ name: string;
7183
+ args: unknown;
7184
+ cwd: string;
7185
+ }, signal?: AbortSignal) => boolean | Promise<boolean>;
7186
+ }
7187
+ interface PiCoreHistoryEntry {
7188
+ role: "principal" | "agent";
7189
+ content: string | Array<TextContent | ImageContent>;
7190
+ }
6772
7191
  interface PiAgentCoreClientOptions {
7192
+ tenantComponents?: TenantComponentBinding;
7193
+ /** Trusted host replay data; never executable tool calls or system messages. */
7194
+ initialHistory?: readonly PiCoreHistoryEntry[];
6773
7195
  /** Test seam: callers can inject a scripted Models collection. */
6774
7196
  models?: Models;
6775
7197
  /** Test seam: pin a concrete model object instead of resolving by id. */
@@ -6778,12 +7200,35 @@ interface PiAgentCoreClientOptions {
6778
7200
  defaultProvider?: string;
6779
7201
  /** Preferred model when neither config.model nor gateway env chooses one. */
6780
7202
  defaultModelId?: string;
7203
+ /**
7204
+ * 会话级 shell 开关(design §3.1 修1,缺省 **false**):true 时该 client 建出的
7205
+ * 会话额外绑 bash 工具、解除 `exec()` 恒拒、放开 jail 内的 temp 文件。
7206
+ *
7207
+ * 缺省 false 是**刻意的爆炸半径控制**:pi-core 同时被 daemon(dispatch / runner /
7208
+ * skill-sync)与 engine registry(`createPiCoreAdapter`)使用,全局绑 bash 会外溢到
7209
+ * 桌面 / 本地 hosted agent。EaaS turn 显式传 true;daemon 侧是否解禁是独立决策。
7210
+ */
7211
+ allowShell?: boolean;
7212
+ /** Execution gate, not a shell sandbox. Allowed bash retains container-level access. */
7213
+ toolPolicy?: PiCoreToolPolicy;
7214
+ /**
7215
+ * 工具事件 sink(design §3.2;EaaS turn 注入)。只记录不授权;授权由独立的
7216
+ * toolPolicy 执行,sink 失败不得改变授权结果。未配置策略时保留原执行行为。
7217
+ */
7218
+ onToolEvent?: ToolEventSink;
6781
7219
  }
6782
7220
  interface PiAgentCoreSessionOptions {
7221
+ tenantTools?: AgentTool[];
7222
+ initialHistory?: readonly PiCoreHistoryEntry[];
6783
7223
  config: AgentSessionConfig;
6784
7224
  model: Model<Api>;
6785
7225
  models: Models;
6786
7226
  launchEnv?: Record<string, string>;
7227
+ /** 见 {@link PiAgentCoreClientOptions.allowShell}(缺省 false)。 */
7228
+ allowShell?: boolean;
7229
+ toolPolicy?: PiCoreToolPolicy;
7230
+ /** 见 {@link PiAgentCoreClientOptions.onToolEvent}。 */
7231
+ onToolEvent?: ToolEventSink;
6787
7232
  }
6788
7233
  declare class PiAgentCoreSession implements AgentSession {
6789
7234
  private readonly options;
@@ -6794,6 +7239,8 @@ declare class PiAgentCoreSession implements AgentSession {
6794
7239
  private readonly tools;
6795
7240
  private readonly subscribers;
6796
7241
  private readonly toolArgs;
7242
+ /** 工具事件面的起表(toolCallId → 开始时刻);与 `toolArgs`(timeline 用)互不依赖。 */
7243
+ private readonly toolStartedAt;
6797
7244
  private activeRun;
6798
7245
  constructor(options: PiAgentCoreSessionOptions);
6799
7246
  run(prompt: AgentPromptInput, options?: AgentRunOptions): Promise<AgentRunResult>;
@@ -6882,6 +7329,13 @@ interface HermesBundleConfig {
6882
7329
  model: string;
6883
7330
  /** Optional per-profile/per-role model overrides (desktop multi-workspace). */
6884
7331
  models?: Record<string, string>;
7332
+ /**
7333
+ * Model id → authoritative context window (tokens). Written to
7334
+ * `~/.hermes/config.yaml` as `custom_providers[].models.<id>.context_length`
7335
+ * — Hermes' step-0 config override, which short-circuits the per-turn
7336
+ * endpoint-probe pipeline for context-length resolution.
7337
+ */
7338
+ modelContextLengths?: Record<string, number>;
6885
7339
  }
6886
7340
  type MemoryRuntimeCapabilityV1 = 'memory-authority-snapshot-v1' | 'memory-replica-manifest-v1' | 'memory-replica-content-v1';
6887
7341
  /** Server-derived actor authority row. Cloud generates; daemon NEVER submits. */
@@ -7090,4 +7544,4 @@ interface DrainBeforeKillResult {
7090
7544
  */
7091
7545
  declare function drainBeforeGatewayKill(opts?: DrainBeforeKillOptions): Promise<DrainBeforeKillResult>;
7092
7546
 
7093
- export { ADMIN_OBSERVABILITY_REQUEST_MAX_BYTES, ADMIN_OBSERVABILITY_RESPONSE_MAX_BYTES, type AcquireResult, type AdapterDef, type AdapterKind, AdapterRegistry, type AdapterService, type AgentChangedPayload, type AgentDispatchReplyAttachment, type AgentDispatchReplyContentBlockInput, type AgentDispatchReplyContentBlockToolResultInput, type AgentDispatchReplyPayload, type AgentDispatchReplyPkfContentBlock, type AgentDispatchReplyPkfContentBlockInput, type AgentDispatchReplyStatus, type AgentDispatchRequest, type AgentDispatchResponse, type AgentHostDeclarePayload, type AgentProfile, type AgentProfileChangedPayload, type AgentStatusChangedPayload, AssetCache, type AssetCacheOptions, type AssetChangedPayload, type AssetDispatchObservation, type AssetDispatchStrategy, type AssetRef, type AttachAdminObservabilityRpcOptions, type AttachMirrorRpcOptions, BOOTSTRAP_BACKOFF_MS, BUILTIN_ROLE_TEMPLATES, type BootstrapFetchOptions, type BootstrapFetchResult, type BootstrapRequest, type BootstrapResponse, type BootstrapState, type BootstrapStopReason, type BundleApplyResult, type CachedAsset, type ClaudeCodeConfig, CloudClient, type CloudClientOptions, CloudError, type CloudResponse, type CodexConfig, type Config, type ConfigApplyState, type ConfigPaths, ConfigSchema, DEFAULT_PI_GATEWAY_MODEL, DEFAULT_PI_GATEWAY_PROVIDER, DEFAULT_REMOTE_ALLOWLIST, type DispatchDeps, type DrainBeforeKillOptions, type DrainBeforeKillResult, type EditCheckResult, type Envelope, type FlushFn, type FlushResult, GIT_RPC_OPS, type GatewayConfig, type GatewayDeps, type GitExecPayload, type GitExecReply, GitRpcError, type GitRpcErrorCode, type GitRpcOp, type GitRpcRequest, type GitRpcResult, type HealthStatus, type HermesBundleConfig, type HermesProfileConfig, type HermesProviderConfig, type HostAckedPayload, type HostedAgentDeclaration, type IMAgentStatus, type IMWSMessage, type KeyRefResolver, LOCAL_PROVIDER_PREFIX, type LocalDb, LocalGateway, LocalRelay, LocalServer, type LocalServerOptions, type LocalServerState, type LocalSyncEvent, type MaterializeResult$1 as MaterializeResult, Materializer, type MaterializerDeps, type MessageDispatchAgent, type MessageDispatchDeps, type MessageDispatchHandle, type MessageDispatchTaskInput, type MirrorAssetDescriptor, type MirrorEntry, MirrorManager, type MirrorManagerOptions, type NormalizedContent, type OllamaProbeResult, PI_CORE_PROVIDER, PROVIDER_PROFILE_TYPES, type PairOptions, type PairResult, type ParseClaim, ParseClaimController, type ParseClaimControllerOptions, type ParsedPrismerUri, PiAgentCoreClient, type PiAgentCoreClientOptions, PiAgentCoreSession, type PiCoreConfig, type PrismerUriType, type ProviderProfile, ProviderProfileSchema, type ProviderProfileType, RM_SCHEMA_VERSION, type RawWsEvent, type RejectedHostedAgent, type ResolvedLocalProvider, type RmDomain, type RmSyncStatus, type RoleTemplate, Runner, type RunnerOptions, type RuntimeConfigBundle, type AgentDispatchReplyPkfContentBlockInput as RuntimePkfContentBlockInput, SWR_TTL_MS, ServicePool, type SyncOperation, SyncQueue, type SyncQueueRow, type SyncResourceType, type SyncStatus, SyncWorker, type SyncWorkerOptions, TARGET_SCHEMA_VERSION, type TakeAdminObservabilityCloudInput, type TaskCancelPayload, type TaskDispatchContextEntry, type TaskDispatchProgressPayload, type TaskDispatchReplyPayload, type TaskDispatchRequestPayload, type TaskInput, type TaskResult, UriResolver, type UriResolverOptions, type UrlResolution, type ValidationResult, WS_CLOSE, type WorkspaceChangedPayload, type WorkspaceFileBinding, type WorkspaceFileChangedPayload, WorkspaceMirror, type WorkspaceMirrorOptions, type WorkspaceNameResolver, WsClient, type WsClientOptions, applyBundle, attachAdminObservabilityRpc, attachMirrorRpc, buildProgram, claudeCodeAdapter, codexAdapter, composePrompt, computeBootstrapErrorAction, configExists, createBootstrapState, createPiCoreAdapter, currentSchemaVersion, deriveWsUrl, drainBeforeGatewayKill, effectiveBaseUrl, envelope, extractHttpUrls, fetchBootstrapBundle, getLocalProviders, getRoleTemplate, gitRpc, handleAgentMessageDispatch, handleDispatch, hermesAdapter, isDaemonId, isLocalProviderSelector, isValidBundle, keyRefEnvVar, listRoleTemplates, loadConfig, localProviderProfileId, newDaemonId, nextBackoffMs, nextBootstrapBackoffMs, openLocalDb, openReadModel, pair, parseCodexOutput, parseUris, piCoreAdapter, probeOllama, providerTypeRequiresKey, remoteAllowlistFromEnv, resetBootstrapStopped, resolveGatewayConfig, resolveGitCwd, resolveKeyRef, resolveLocalProvider, resolvePaths, runCli, runGitExecRequest, runMigrations, sanitizeSegment, saveConfig, setKeyRefResolver, setLocalProviders, takeAdminObservabilityCloud, toApplyState };
7547
+ export { ADMIN_OBSERVABILITY_REQUEST_MAX_BYTES, ADMIN_OBSERVABILITY_RESPONSE_MAX_BYTES, type AcquireResult, type AdapterDef, type AdapterKind, AdapterRegistry, type AdapterService, type AgentChangedPayload, type AgentDispatchReplyAttachment, type AgentDispatchReplyContentBlockInput, type AgentDispatchReplyContentBlockToolResultInput, type AgentDispatchReplyPayload, type AgentDispatchReplyPkfContentBlock, type AgentDispatchReplyPkfContentBlockInput, type AgentDispatchReplyStatus, type AgentDispatchRequest, type AgentDispatchResponse, type AgentHostDeclarePayload, type AgentProfile, type AgentProfileChangedPayload, type AgentStatusChangedPayload, AssetCache, type AssetCacheOptions, type AssetChangedPayload, type AssetDispatchObservation, type AssetDispatchStrategy, type AssetRef, type AttachAdminObservabilityRpcOptions, type AttachMirrorRpcOptions, BOOTSTRAP_BACKOFF_MS, BRIDGE_DEFAULT_CONNECT_TIMEOUT_MS, BRIDGE_DEFAULT_HOST, BRIDGE_DEFAULT_PORT, BRIDGE_DEFAULT_RECONNECT_DELAY_MS, BRIDGE_MAX_LINE_CHARS, BUILTIN_ROLE_TEMPLATES, type BootstrapFetchOptions, type BootstrapFetchResult, type BootstrapRequest, type BootstrapResponse, type BootstrapState, type BootstrapStopReason, BridgeClient, type BridgeClientOptions, type BridgeConnectionState, type BridgeFrameParse, type BridgeInboundFrame, type BridgeInboundInput, type BridgeOutboundFrame, type BridgeProbeOptions, type BridgeProbeResult, type BridgeSendResult, type BundleApplyResult, type CachedAsset, type ClaudeCodeConfig, CloudClient, type CloudClientOptions, CloudError, type CloudResponse, type CodexConfig, type Config, type ConfigApplyState, type ConfigPaths, ConfigSchema, DEFAULT_PI_GATEWAY_MODEL, DEFAULT_PI_GATEWAY_PROVIDER, DEFAULT_REMOTE_ALLOWLIST, type DispatchDeps, type DrainBeforeKillOptions, type DrainBeforeKillResult, type EditCheckResult, type Envelope, type FlushFn, type FlushResult, GIT_RPC_OPS, type GatewayConfig, type GatewayDeps, type GitExecPayload, type GitExecReply, GitRpcError, type GitRpcErrorCode, type GitRpcOp, type GitRpcRequest, type GitRpcResult, type HealthStatus, type HermesBundleConfig, type HermesProfileConfig, type HermesProviderConfig, type HostAckedPayload, type HostedAgentDeclaration, type IMAgentStatus, type IMWSMessage, type KeyRefResolver, LOCAL_PROVIDER_PREFIX, type LocalDb, LocalGateway, LocalRelay, LocalServer, type LocalServerOptions, type LocalServerState, type LocalSyncEvent, type MaterializeResult$1 as MaterializeResult, Materializer, type MaterializerDeps, type MessageDispatchAgent, type MessageDispatchDeps, type MessageDispatchHandle, type MessageDispatchTaskInput, type MirrorAssetDescriptor, type MirrorEntry, MirrorManager, type MirrorManagerOptions, type NormalizedContent, type OllamaProbeResult, PI_CORE_PROVIDER, PROVIDER_PROFILE_TYPES, type PairOptions, type PairResult, type ParseClaim, ParseClaimController, type ParseClaimControllerOptions, type ParsedPrismerUri, PiAgentCoreClient, type PiAgentCoreClientOptions, PiAgentCoreSession, type PiCoreConfig, type PrismerUriType, type ProviderProfile, ProviderProfileSchema, type ProviderProfileType, RM_SCHEMA_VERSION, type RawWsEvent, type RejectedHostedAgent, type ResolvedLocalProvider, type RmDomain, type RmSyncStatus, type RoleTemplate, Runner, type RunnerOptions, type RuntimeConfigBundle, type AgentDispatchReplyPkfContentBlockInput as RuntimePkfContentBlockInput, SWR_TTL_MS, ServicePool, type SyncOperation, SyncQueue, type SyncQueueRow, type SyncResourceType, type SyncStatus, SyncWorker, type SyncWorkerOptions, TARGET_SCHEMA_VERSION, type TakeAdminObservabilityCloudInput, type TaskCancelPayload, type TaskDispatchContextEntry, type TaskDispatchProgressPayload, type TaskDispatchReplyPayload, type TaskDispatchRequestPayload, type TaskInput, type TaskResult, UriResolver, type UriResolverOptions, type UrlResolution, type ValidationResult, WS_CLOSE, type WorkspaceChangedPayload, type WorkspaceFileBinding, type WorkspaceFileChangedPayload, WorkspaceMirror, type WorkspaceMirrorOptions, type WorkspaceNameResolver, WsClient, type WsClientOptions, applyBundle, attachAdminObservabilityRpc, attachMirrorRpc, buildInboundFrame, buildProgram, claudeCodeAdapter, codexAdapter, composePrompt, computeBootstrapErrorAction, configExists, createBootstrapState, createPiCoreAdapter, currentSchemaVersion, deriveWsUrl, drainBeforeGatewayKill, effectiveBaseUrl, envelope, extractHttpUrls, fetchBootstrapBundle, getLocalProviders, getRoleTemplate, gitRpc, handleAgentMessageDispatch, handleDispatch, hermesAdapter, isDaemonId, isLocalProviderSelector, isValidBundle, keyRefEnvVar, listRoleTemplates, loadConfig, localProviderProfileId, newDaemonId, nextBackoffMs, nextBootstrapBackoffMs, openLocalDb, openReadModel, pair, parseCodexOutput, parseOutboundFrame, parseUris, piCoreAdapter, probeBridge, probeOllama, providerTypeRequiresKey, remoteAllowlistFromEnv, resetBootstrapStopped, resolveGatewayConfig, resolveGitCwd, resolveKeyRef, resolveLocalProvider, resolvePaths, runCli, runGitExecRequest, runMigrations, sanitizeSegment, saveConfig, setKeyRefResolver, setLocalProviders, takeAdminObservabilityCloud, toApplyState };