@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
@@ -0,0 +1,177 @@
1
+ # GitHub REST API Cheatsheet
2
+
3
+ > Prismer scope: read auth.md first. All mutations below are examples for an
4
+ > explicitly authorized target/action, never an automatic checklist. Preserve the
5
+ > current dirty tree and long-lived branch; resolve the actual base branch and
6
+ > do not switch, commit, push, publish, merge, delete branches or send reviews
7
+ > unless requested. Use structured JSON for dynamic payloads, not shell string
8
+ > interpolation. Public visibility requires explicit intent. Collection reads
9
+ > must use scripts/github-api.py (complete Link pagination) or gh api --paginate;
10
+ > porcelain list limits and single-page curl output are not a complete inventory.
11
+ > Run shell pipelines with pipefail, record each exit status, and read back writes.
12
+
13
+ Base URL: `https://api.github.com`
14
+
15
+ All requests need: `-H "Authorization: token $GITHUB_TOKEN"`
16
+
17
+ Use the `gh-env.sh` helper to set `$GITHUB_TOKEN`, `$GH_OWNER`, `$GH_REPO` automatically:
18
+ ```bash
19
+ # Resolve SKILL_ROOT from the installed prismer-github entry, not cwd.
20
+ source "$SKILL_ROOT/scripts/gh-env.sh"
21
+ AUTH="$GH_AUTH_METHOD"
22
+ OWNER="$GH_OWNER"
23
+ REPO="$GH_REPO"
24
+ OWNER_REPO="$GH_OWNER_REPO"
25
+ # token-unverified needs a successful API identity check before remote work.
26
+ ```
27
+
28
+ ## Repositories
29
+
30
+ | Action | Method | Endpoint |
31
+ |--------|--------|----------|
32
+ | Get repo info | GET | `/repos/{owner}/{repo}` |
33
+ | Create repo (user) | POST | `/user/repos` |
34
+ | Create repo (org) | POST | `/orgs/{org}/repos` |
35
+ | Update repo | PATCH | `/repos/{owner}/{repo}` |
36
+ | Delete repo | DELETE | `/repos/{owner}/{repo}` |
37
+ | List your repos | GET | `/user/repos?per_page=30&sort=updated` |
38
+ | List org repos | GET | `/orgs/{org}/repos` |
39
+ | Fork repo | POST | `/repos/{owner}/{repo}/forks` |
40
+ | Create from template | POST | `/repos/{owner}/{template}/generate` |
41
+ | Get topics | GET | `/repos/{owner}/{repo}/topics` |
42
+ | Set topics | PUT | `/repos/{owner}/{repo}/topics` |
43
+
44
+ ## Pull Requests
45
+
46
+ | Action | Method | Endpoint |
47
+ |--------|--------|----------|
48
+ | List PRs | GET | `/repos/{owner}/{repo}/pulls?state=open` |
49
+ | Create PR | POST | `/repos/{owner}/{repo}/pulls` |
50
+ | Get PR | GET | `/repos/{owner}/{repo}/pulls/{number}` |
51
+ | Update PR | PATCH | `/repos/{owner}/{repo}/pulls/{number}` |
52
+ | List PR files | GET | `/repos/{owner}/{repo}/pulls/{number}/files` |
53
+ | Merge PR | PUT | `/repos/{owner}/{repo}/pulls/{number}/merge` |
54
+ | Request reviewers | POST | `/repos/{owner}/{repo}/pulls/{number}/requested_reviewers` |
55
+ | Create review | POST | `/repos/{owner}/{repo}/pulls/{number}/reviews` |
56
+ | Inline comment | POST | `/repos/{owner}/{repo}/pulls/{number}/comments` |
57
+
58
+ ### PR Merge Body
59
+
60
+ ```json
61
+ {"merge_method": "squash", "commit_title": "feat: description (#N)"}
62
+ ```
63
+
64
+ Merge methods: `"merge"`, `"squash"`, `"rebase"`
65
+
66
+ ### PR Review Events
67
+
68
+ `"APPROVE"`, `"REQUEST_CHANGES"`, `"COMMENT"`
69
+
70
+ ## Issues
71
+
72
+ | Action | Method | Endpoint |
73
+ |--------|--------|----------|
74
+ | List issues | GET | `/repos/{owner}/{repo}/issues?state=open` |
75
+ | Create issue | POST | `/repos/{owner}/{repo}/issues` |
76
+ | Get issue | GET | `/repos/{owner}/{repo}/issues/{number}` |
77
+ | Update issue | PATCH | `/repos/{owner}/{repo}/issues/{number}` |
78
+ | Add comment | POST | `/repos/{owner}/{repo}/issues/{number}/comments` |
79
+ | Add labels | POST | `/repos/{owner}/{repo}/issues/{number}/labels` |
80
+ | Remove label | DELETE | `/repos/{owner}/{repo}/issues/{number}/labels/{name}` |
81
+ | Add assignees | POST | `/repos/{owner}/{repo}/issues/{number}/assignees` |
82
+ | List labels | GET | `/repos/{owner}/{repo}/labels` |
83
+ | Search issues | GET | `/search/issues?q={query}+repo:{owner}/{repo}` |
84
+
85
+ Note: The Issues API also returns PRs. Filter with `"pull_request" not in item` when parsing.
86
+
87
+ ## CI / GitHub Actions
88
+
89
+ | Action | Method | Endpoint |
90
+ |--------|--------|----------|
91
+ | List workflows | GET | `/repos/{owner}/{repo}/actions/workflows` |
92
+ | List runs | GET | `/repos/{owner}/{repo}/actions/runs?per_page=10` |
93
+ | List runs (branch) | GET | `/repos/{owner}/{repo}/actions/runs?branch={branch}` |
94
+ | Get run | GET | `/repos/{owner}/{repo}/actions/runs/{run_id}` |
95
+ | Download logs | GET | `/repos/{owner}/{repo}/actions/runs/{run_id}/logs` |
96
+ | Re-run | POST | `/repos/{owner}/{repo}/actions/runs/{run_id}/rerun` |
97
+ | Re-run failed | POST | `/repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs` |
98
+ | Trigger dispatch | POST | `/repos/{owner}/{repo}/actions/workflows/{id}/dispatches` |
99
+ | Commit status | GET | `/repos/{owner}/{repo}/commits/{sha}/status` |
100
+ | Check runs | GET | `/repos/{owner}/{repo}/commits/{sha}/check-runs` |
101
+
102
+ ## Releases
103
+
104
+ | Action | Method | Endpoint |
105
+ |--------|--------|----------|
106
+ | List releases | GET | `/repos/{owner}/{repo}/releases` |
107
+ | Create release | POST | `/repos/{owner}/{repo}/releases` |
108
+ | Get release | GET | `/repos/{owner}/{repo}/releases/{id}` |
109
+ | Delete release | DELETE | `/repos/{owner}/{repo}/releases/{id}` |
110
+ | Upload asset | POST | `https://uploads.github.com/repos/{owner}/{repo}/releases/{id}/assets?name={filename}` |
111
+
112
+ ## Secrets
113
+
114
+ | Action | Method | Endpoint |
115
+ |--------|--------|----------|
116
+ | List secrets | GET | `/repos/{owner}/{repo}/actions/secrets` |
117
+ | Get public key | GET | `/repos/{owner}/{repo}/actions/secrets/public-key` |
118
+ | Set secret | PUT | `/repos/{owner}/{repo}/actions/secrets/{name}` |
119
+ | Delete secret | DELETE | `/repos/{owner}/{repo}/actions/secrets/{name}` |
120
+
121
+ ## Branch Protection
122
+
123
+ | Action | Method | Endpoint |
124
+ |--------|--------|----------|
125
+ | Get protection | GET | `/repos/{owner}/{repo}/branches/{branch}/protection` |
126
+ | Set protection | PUT | `/repos/{owner}/{repo}/branches/{branch}/protection` |
127
+ | Delete protection | DELETE | `/repos/{owner}/{repo}/branches/{branch}/protection` |
128
+
129
+ ## User / Auth
130
+
131
+ | Action | Method | Endpoint |
132
+ |--------|--------|----------|
133
+ | Get current user | GET | `/user` |
134
+ | List user repos | GET | `/user/repos` |
135
+ | List user gists | GET | `/gists` |
136
+ | Create gist | POST | `/gists` |
137
+ | Search repos | GET | `/search/repositories?q={query}` |
138
+
139
+ ## Pagination
140
+
141
+ Most list endpoints support:
142
+ - `?per_page=100` (max 100)
143
+ - `?page=2` for next page
144
+ - Check `Link` header for `rel="next"` URL
145
+
146
+ ## Rate Limits
147
+
148
+ - Authenticated: 5,000 requests/hour
149
+ - Check remaining: `python3 "$SKILL_ROOT/scripts/github-api.py" https://api.github.com/rate_limit`
150
+
151
+ ## Common curl Patterns
152
+
153
+ ```bash
154
+ # GET
155
+ curl --fail-with-body -sS --max-time 30 -H "Authorization: token $GITHUB_TOKEN" \
156
+ https://api.github.com/repos/$GH_OWNER/$GH_REPO
157
+
158
+ # POST with JSON body
159
+ curl --fail-with-body -sS --max-time 30 -X POST \
160
+ -H "Authorization: token $GITHUB_TOKEN" \
161
+ https://api.github.com/repos/$GH_OWNER/$GH_REPO/issues \
162
+ -d '{"title": "...", "body": "..."}'
163
+
164
+ # PATCH (update)
165
+ curl --fail-with-body -sS --max-time 30 -X PATCH \
166
+ -H "Authorization: token $GITHUB_TOKEN" \
167
+ https://api.github.com/repos/$GH_OWNER/$GH_REPO/issues/42 \
168
+ -d '{"state": "closed"}'
169
+
170
+ # DELETE
171
+ curl --fail-with-body -sS --max-time 30 -X DELETE \
172
+ -H "Authorization: token $GITHUB_TOKEN" \
173
+ https://api.github.com/repos/$GH_OWNER/$GH_REPO/issues/42/labels/bug
174
+
175
+ # Parse JSON response with python3
176
+ curl --fail-with-body -sS --max-time 30 ... | python3 -c "import sys,json; data=json.load(sys.stdin); print(data['field'])"
177
+ ```
@@ -0,0 +1,74 @@
1
+ # GitHub Issue to Pull Request
2
+
3
+ > Prismer scope: read auth.md first. All mutations below are examples for an
4
+ > explicitly authorized target/action, never an automatic checklist. Preserve the
5
+ > current dirty tree and long-lived branch; resolve the actual base branch and
6
+ > do not switch, commit, push, publish, merge, delete branches or send reviews
7
+ > unless requested. Use structured JSON for dynamic payloads, not shell string
8
+ > interpolation. Public visibility requires explicit intent. Collection reads
9
+ > must use scripts/github-api.py (complete Link pagination) or gh api --paginate;
10
+ > porcelain list limits and single-page curl output are not a complete inventory.
11
+ > Run shell pipelines with pipefail, record each exit status, and read back writes.
12
+
13
+ Turn a GitHub issue into a tested, verified PR. This skill owns the end-to-end discipline — premise validation, duplicate sweeps, class-level fixes, and honest CI reporting; the sibling GitHub and development skills own their own mechanics.
14
+
15
+ ## When to Use
16
+
17
+ - "Fix issue #123 and open a PR."
18
+ - "Implement this GitHub feature request."
19
+ - "Take this bug from issue to green CI."
20
+
21
+ Don't use for: reviewing an existing PR, or answering a code question with no requested change.
22
+
23
+ ## Procedure
24
+
25
+ ### 1. Read the live issue — body AND full thread
26
+
27
+ Use `terminal` to run `gh issue view <N> --comments`. The body is a snapshot from filing time; the newest comments carry the live state: partial fixes already merged, new root-cause analyses, maintainer decisions, or questions directed at you that change the task. Also read repository instructions (`AGENTS.md`, contribution docs) with `read_file`. Done when the currently requested behavior, non-goals, and any unanswered thread questions are known.
28
+
29
+ ### 2. Sweep for existing and duplicate work
30
+
31
+ Before writing anything, run `gh pr list --search "#<N>" --state all` plus at least two keyword/synonym variants of the symptom (`gh pr list --search "<subsystem> <symptom>" --state open`). Popular issues attract multiple independent fixes; building a duplicate wastes the work and the credit. Also check whether a recent commit already fixed it: `git log --oneline -20 -- <relevant files>`. Done when you know every open PR and recent commit touching this issue, or that none exist.
32
+
33
+ ### 3. Validate the premise against current code — and against design intent
34
+
35
+ Reproduce the bug or demonstrate the missing behavior on the current default branch with a failing test or fixture, using `search_files` and `read_file` to trace the reported path. Then check the second question: is the "bug" actually deliberate design? Run `git log -p -S "<symbol>"` on the code the issue wants changed and read the original commit's intent — a missing link or restriction is often the feature. Challenge stale or flawed issue prose instead of implementing it blindly. Done when the root cause or feature gap is demonstrated in current code AND the change doesn't fight an intentional design.
36
+
37
+ ### 4. Define acceptance and risk
38
+
39
+ List acceptance criteria, interfaces, migrations/state changes, compatibility, security/privacy, rollout, and rollback. Map every criterion to a test or explicit verification. Done when review has a finite contract.
40
+
41
+ ### 5. Implement the smallest complete change — and fix the class
42
+
43
+ Work on an isolated branch or worktree, loading `systematic-debugging` or `test-driven-development` when the bug class calls for them. Add regression tests first, then implement. When the fix is in hand, `search_files` for the same bug shape at sibling call sites and fix the whole class in this PR — an incomplete fix that leaves known siblings broken is worse than none. Every changed line must trace to the issue; no drive-by cleanup. Done when targeted tests pass, the original failure no longer reproduces, and sibling sites are fixed or explicitly ruled out.
44
+
45
+ ### 6. Prove the regression test bites (sabotage run)
46
+
47
+ Temporarily restore the old behavior of the exact function under test, run the new test, and confirm it FAILS; then restore the fix and confirm it passes. A regression test that passes with and without the fix proves nothing. Done when the test demonstrably fails on pre-fix code.
48
+
49
+ ### 7. Run repository quality gates, then open the PR immediately
50
+
51
+ Run the formatter, lint, typecheck, and the repo's canonical test entrypoint on affected areas; use the native `codebase-design` review method on the diff. Then push and open the PR right away — the PR is what dispatches CI, and CI latency is the long pole; do not sit on finished work. Load `pr-workflow.md` for PR mechanics: conventional branch/commit, body linking the issue with problem, approach, tests, risk, and exclusions. Read the PR back and verify head SHA, base, title, and files. Done when the PR exists with the intended diff and CI is running.
52
+
53
+ ### 8. Shepherd CI honestly and close the loop
54
+
55
+ Inspect live checks and failure logs via `gh pr checks` / `gh run view --log-failed`. Distinguish failures introduced by your diff from pre-existing baseline or infrastructure failures — reproduce on the default branch when unsure, and rerun once only for genuine infra flakes. Never say "green," "merged," or "released" without live evidence of that exact state. When the PR lands, comment on the issue with the PR link and a one-line explanation so the reporter gets a traceable resolution. Done when CI state, remaining blockers, and the issue thread all reflect reality.
56
+
57
+ ## Pitfalls
58
+
59
+ - Coding before reading issue comments, sweeping for duplicate PRs, or reading current code.
60
+ - "Fixing" behavior that the original commit shows is intentional design.
61
+ - Fixing a symptom at one call site while sibling sites keep the same bug.
62
+ - Shipping a regression test that also passes without the fix.
63
+ - Opening a PR with unrun tests or unrelated formatting churn.
64
+ - Claiming the issue is delivered because a PR exists.
65
+
66
+ ## Verification
67
+
68
+ - [ ] Full issue thread read; newest comment state reflected in the plan.
69
+ - [ ] Duplicate-PR sweep run with issue number + 2 keyword variants.
70
+ - [ ] Premise reproduced on current code; design intent checked via git history.
71
+ - [ ] Regression test proven to fail without the fix.
72
+ - [ ] Sibling call sites fixed or explicitly ruled out.
73
+ - [ ] Every changed line traces to the issue.
74
+ - [ ] CI state reported from live evidence only; issue commented with the PR link.
@@ -0,0 +1,336 @@
1
+ # GitHub Issues Management
2
+
3
+ > Prismer scope: read auth.md first. All mutations below are examples for an
4
+ > explicitly authorized target/action, never an automatic checklist. Preserve the
5
+ > current dirty tree and long-lived branch; resolve the actual base branch and
6
+ > do not switch, commit, push, publish, merge, delete branches or send reviews
7
+ > unless requested. Use structured JSON for dynamic payloads, not shell string
8
+ > interpolation. Public visibility requires explicit intent. Collection reads
9
+ > must use scripts/github-api.py (complete Link pagination) or gh api --paginate;
10
+ > porcelain list limits and single-page curl output are not a complete inventory.
11
+ > Run shell pipelines with pipefail, record each exit status, and read back writes.
12
+
13
+ Create, search, triage, and manage GitHub issues. Each section shows `gh` first, then the `curl` fallback.
14
+
15
+ ## Prerequisites
16
+
17
+ - Authenticated with GitHub (see `auth.md` reference)
18
+ - Inside a git repo with a GitHub remote, or specify the repo explicitly
19
+
20
+ ### Setup
21
+
22
+ ```bash
23
+ # Resolve SKILL_ROOT from the installed prismer-github entry, not cwd.
24
+ source "$SKILL_ROOT/scripts/gh-env.sh"
25
+ AUTH="$GH_AUTH_METHOD"
26
+ OWNER="$GH_OWNER"
27
+ REPO="$GH_REPO"
28
+ OWNER_REPO="$GH_OWNER_REPO"
29
+ # token-unverified needs a successful API identity check before remote work.
30
+ ```
31
+
32
+ ---
33
+
34
+ ## 1. Viewing Issues
35
+
36
+ **With gh:**
37
+
38
+ ```bash
39
+ gh issue list
40
+ gh issue list --state open --label "bug"
41
+ gh issue list --assignee @me
42
+ gh issue list --search "authentication error" --state all
43
+ gh issue view 42
44
+ ```
45
+
46
+ **With curl:**
47
+
48
+ ```bash
49
+ # List open issues
50
+ python3 "$SKILL_ROOT/scripts/github-api.py" "https://api.github.com/repos/$OWNER/$REPO/issues?state=open&per_page=20" \
51
+ | python -c "
52
+ import sys, json
53
+ for i in json.load(sys.stdin):
54
+ if 'pull_request' not in i: # GitHub API returns PRs in /issues too
55
+ labels = ', '.join(l['name'] for l in i['labels'])
56
+ print(f\"#{i['number']:5} {i['state']:6} {labels:30} {i['title']}\")"
57
+
58
+ # Filter by label
59
+ python3 "$SKILL_ROOT/scripts/github-api.py" "https://api.github.com/repos/$OWNER/$REPO/issues?state=open&labels=bug&per_page=20" \
60
+ | python -c "
61
+ import sys, json
62
+ for i in json.load(sys.stdin):
63
+ if 'pull_request' not in i:
64
+ print(f\"#{i['number']} {i['title']}\")"
65
+
66
+ # View a specific issue
67
+ python3 "$SKILL_ROOT/scripts/github-api.py" https://api.github.com/repos/$OWNER/$REPO/issues/42 \
68
+ | python -c "
69
+ import sys, json
70
+ i = json.load(sys.stdin)
71
+ labels = ', '.join(l['name'] for l in i['labels'])
72
+ assignees = ', '.join(a['login'] for a in i['assignees'])
73
+ print(f\"#{i['number']}: {i['title']}\")
74
+ print(f\"State: {i['state']} Labels: {labels} Assignees: {assignees}\")
75
+ print(f\"Author: {i['user']['login']} Created: {i['created_at']}\")
76
+ print(f\"\n{i['body']}\")"
77
+
78
+ # Search issues
79
+ python3 "$SKILL_ROOT/scripts/github-api.py" "https://api.github.com/search/issues?q=authentication+error+repo:$OWNER/$REPO" \
80
+ | python -c "
81
+ import sys, json
82
+ for i in json.load(sys.stdin)['items']:
83
+ print(f\"#{i['number']} {i['state']:6} {i['title']}\")"
84
+ ```
85
+
86
+ ## 2. Creating Issues
87
+
88
+ **With gh:**
89
+
90
+ ```bash
91
+ gh issue create \
92
+ --title "Login redirect ignores ?next= parameter" \
93
+ --body "## Description
94
+ After logging in, users always land on /dashboard.
95
+
96
+ ## Steps to Reproduce
97
+ 1. Navigate to /settings while logged out
98
+ 2. Get redirected to /login?next=/settings
99
+ 3. Log in
100
+ 4. Actual: redirected to /dashboard (should go to /settings)
101
+
102
+ ## Expected Behavior
103
+ Respect the ?next= query parameter." \
104
+ --label "bug,backend" \
105
+ --assignee "username"
106
+ ```
107
+
108
+ **With curl:**
109
+
110
+ ```bash
111
+ curl --fail-with-body -sS --max-time 30 -X POST \
112
+ -H "Authorization: token $GITHUB_TOKEN" \
113
+ https://api.github.com/repos/$OWNER/$REPO/issues \
114
+ -d '{
115
+ "title": "Login redirect ignores ?next= parameter",
116
+ "body": "## Description\nAfter logging in, users always land on /dashboard.\n\n## Steps to Reproduce\n1. Navigate to /settings while logged out\n2. Get redirected to /login?next=/settings\n3. Log in\n4. Actual: redirected to /dashboard\n\n## Expected Behavior\nRespect the ?next= query parameter.",
117
+ "labels": ["bug", "backend"],
118
+ "assignees": ["username"]
119
+ }'
120
+ ```
121
+
122
+ ### Bug Report Template
123
+
124
+ ```
125
+ ## Bug Description
126
+ <What's happening>
127
+
128
+ ## Steps to Reproduce
129
+ 1. <step>
130
+ 2. <step>
131
+
132
+ ## Expected Behavior
133
+ <What should happen>
134
+
135
+ ## Actual Behavior
136
+ <What actually happens>
137
+
138
+ ## Environment
139
+ - OS: <os>
140
+ - Version: <version>
141
+ ```
142
+
143
+ ### Feature Request Template
144
+
145
+ ```
146
+ ## Feature Description
147
+ <What you want>
148
+
149
+ ## Motivation
150
+ <Why this would be useful>
151
+
152
+ ## Proposed Solution
153
+ <How it could work>
154
+
155
+ ## Alternatives Considered
156
+ <Other approaches>
157
+ ```
158
+
159
+ ## 3. Managing Issues
160
+
161
+ ### Add/Remove Labels
162
+
163
+ **With gh:**
164
+
165
+ ```bash
166
+ gh issue edit 42 --add-label "priority:high,bug"
167
+ gh issue edit 42 --remove-label "needs-triage"
168
+ ```
169
+
170
+ **With curl:**
171
+
172
+ ```bash
173
+ # Add labels
174
+ curl --fail-with-body -sS --max-time 30 -X POST \
175
+ -H "Authorization: token $GITHUB_TOKEN" \
176
+ https://api.github.com/repos/$OWNER/$REPO/issues/42/labels \
177
+ -d '{"labels": ["priority:high", "bug"]}'
178
+
179
+ # Remove a label
180
+ curl --fail-with-body -sS --max-time 30 -X DELETE \
181
+ -H "Authorization: token $GITHUB_TOKEN" \
182
+ https://api.github.com/repos/$OWNER/$REPO/issues/42/labels/needs-triage
183
+
184
+ # List available labels in the repo
185
+ python3 "$SKILL_ROOT/scripts/github-api.py" https://api.github.com/repos/$OWNER/$REPO/labels \
186
+ | python -c "
187
+ import sys, json
188
+ for l in json.load(sys.stdin):
189
+ print(f\" {l['name']:30} {l.get('description', '')}\")"
190
+ ```
191
+
192
+ ### Assignment
193
+
194
+ **With gh:**
195
+
196
+ ```bash
197
+ gh issue edit 42 --add-assignee username
198
+ gh issue edit 42 --add-assignee @me
199
+ ```
200
+
201
+ **With curl:**
202
+
203
+ ```bash
204
+ curl --fail-with-body -sS --max-time 30 -X POST \
205
+ -H "Authorization: token $GITHUB_TOKEN" \
206
+ https://api.github.com/repos/$OWNER/$REPO/issues/42/assignees \
207
+ -d '{"assignees": ["username"]}'
208
+ ```
209
+
210
+ ### Commenting
211
+
212
+ **With gh:**
213
+
214
+ ```bash
215
+ gh issue comment 42 --body "Investigated — root cause is in auth middleware. Working on a fix."
216
+ ```
217
+
218
+ **With curl:**
219
+
220
+ ```bash
221
+ curl --fail-with-body -sS --max-time 30 -X POST \
222
+ -H "Authorization: token $GITHUB_TOKEN" \
223
+ https://api.github.com/repos/$OWNER/$REPO/issues/42/comments \
224
+ -d '{"body": "Investigated — root cause is in auth middleware. Working on a fix."}'
225
+ ```
226
+
227
+ ### Closing and Reopening
228
+
229
+ **With gh:**
230
+
231
+ ```bash
232
+ gh issue close 42
233
+ gh issue close 42 --reason "not planned"
234
+ gh issue reopen 42
235
+ ```
236
+
237
+ **With curl:**
238
+
239
+ ```bash
240
+ # Close
241
+ curl --fail-with-body -sS --max-time 30 -X PATCH \
242
+ -H "Authorization: token $GITHUB_TOKEN" \
243
+ https://api.github.com/repos/$OWNER/$REPO/issues/42 \
244
+ -d '{"state": "closed", "state_reason": "completed"}'
245
+
246
+ # Reopen
247
+ curl --fail-with-body -sS --max-time 30 -X PATCH \
248
+ -H "Authorization: token $GITHUB_TOKEN" \
249
+ https://api.github.com/repos/$OWNER/$REPO/issues/42 \
250
+ -d '{"state": "open"}'
251
+ ```
252
+
253
+ ### Linking Issues to PRs
254
+
255
+ Issues are automatically closed when a PR merges with the right keywords in the body:
256
+
257
+ ```
258
+ Closes #42
259
+ Fixes #42
260
+ Resolves #42
261
+ ```
262
+
263
+ To create a branch from an issue:
264
+
265
+ **With gh:**
266
+
267
+ ```bash
268
+ gh issue develop 42 --checkout
269
+ ```
270
+
271
+ **With git (manual equivalent):**
272
+
273
+ ```bash
274
+ # Preserve the current branch/worktree. Sync only via the repository-approved branch procedure.
275
+ git checkout -b fix/issue-42-login-redirect
276
+ ```
277
+
278
+ ## 4. Issue Triage Workflow
279
+
280
+ When asked to triage issues:
281
+
282
+ 1. **List untriaged issues:**
283
+
284
+ ```bash
285
+ # With gh
286
+ gh issue list --label "needs-triage" --state open
287
+
288
+ # With curl
289
+ python3 "$SKILL_ROOT/scripts/github-api.py" "https://api.github.com/repos/$OWNER/$REPO/issues?labels=needs-triage&state=open" \
290
+ | python -c "
291
+ import sys, json
292
+ for i in json.load(sys.stdin):
293
+ if 'pull_request' not in i:
294
+ print(f\"#{i['number']} {i['title']}\")"
295
+ ```
296
+
297
+ 2. **Read and categorize** each issue (view details, understand the bug/feature)
298
+
299
+ 3. **Apply labels and priority** (see Managing Issues above)
300
+
301
+ 4. **Assign** if the owner is clear
302
+
303
+ 5. **Comment with triage notes** if needed
304
+
305
+ ## 5. Bulk Operations
306
+
307
+ For batch operations, combine API calls with shell scripting:
308
+
309
+ **With gh:**
310
+
311
+ ```bash
312
+ # Enumerate completely before authorizing a specific set of issue IDs.
313
+ gh api --paginate "repos/$OWNER/$REPO/issues?labels=wontfix&state=open" --jq '.[] | select(.pull_request == null) | .number'
314
+ # Close only explicitly authorized IDs; read back each result.
315
+ ```
316
+
317
+ **With curl:**
318
+
319
+ ```bash
320
+ # Complete list only; review the exact IDs before any write.
321
+ python3 "$SKILL_ROOT/scripts/github-api.py" "https://api.github.com/repos/$OWNER/$REPO/issues?labels=wontfix&state=open" | python3 -c "import sys,json; [print(i['number']) for i in json.load(sys.stdin) if 'pull_request' not in i]"
322
+ # Verify each resulting state before claiming closure; never close PR entries.
323
+ ```
324
+
325
+ ## Quick Reference Table
326
+
327
+ | Action | gh | curl endpoint |
328
+ |--------|-----|--------------|
329
+ | List issues | `gh issue list` | `GET /repos/{o}/{r}/issues` |
330
+ | View issue | `gh issue view N` | `GET /repos/{o}/{r}/issues/N` |
331
+ | Create issue | `gh issue create ...` | `POST /repos/{o}/{r}/issues` |
332
+ | Add labels | `gh issue edit N --add-label ...` | `POST /repos/{o}/{r}/issues/N/labels` |
333
+ | Assign | `gh issue edit N --add-assignee ...` | `POST /repos/{o}/{r}/issues/N/assignees` |
334
+ | Comment | `gh issue comment N --body ...` | `POST /repos/{o}/{r}/issues/N/comments` |
335
+ | Close | `gh issue close N` | `PATCH /repos/{o}/{r}/issues/N` |
336
+ | Search | `gh issue list --search "..."` | `GET /search/issues?q=...` |