@codyswann/lisa 2.195.4 → 2.195.6

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 (808) hide show
  1. package/README.md +17 -3
  2. package/all/copy-contents/gitignore +10 -4
  3. package/dist/cli/print-update-warning.d.ts +1 -1
  4. package/dist/cli/print-update-warning.js +2 -2
  5. package/dist/cli/print-update-warning.js.map +1 -1
  6. package/dist/cli/update-check.d.ts +6 -0
  7. package/dist/cli/update-check.d.ts.map +1 -1
  8. package/dist/cli/update-check.js +3 -3
  9. package/dist/cli/update-check.js.map +1 -1
  10. package/dist/cli/update-cmd.d.ts +1 -1
  11. package/dist/cli/update-cmd.d.ts.map +1 -1
  12. package/dist/cli/update-cmd.js +8 -7
  13. package/dist/cli/update-cmd.js.map +1 -1
  14. package/dist/codex/hooks-installer.d.ts +4 -1
  15. package/dist/codex/hooks-installer.d.ts.map +1 -1
  16. package/dist/codex/hooks-installer.js +109 -30
  17. package/dist/codex/hooks-installer.js.map +1 -1
  18. package/dist/codex/mcp-installer.d.ts +22 -0
  19. package/dist/codex/mcp-installer.d.ts.map +1 -0
  20. package/dist/codex/mcp-installer.js +135 -0
  21. package/dist/codex/mcp-installer.js.map +1 -0
  22. package/dist/codex/plugin-marketplace-installer.d.ts +19 -13
  23. package/dist/codex/plugin-marketplace-installer.d.ts.map +1 -1
  24. package/dist/codex/plugin-marketplace-installer.js +69 -72
  25. package/dist/codex/plugin-marketplace-installer.js.map +1 -1
  26. package/dist/codex/project-hooks-cleanup.d.ts +12 -0
  27. package/dist/codex/project-hooks-cleanup.d.ts.map +1 -0
  28. package/dist/codex/project-hooks-cleanup.js +31 -0
  29. package/dist/codex/project-hooks-cleanup.js.map +1 -0
  30. package/dist/codex/project-overlay.d.ts +23 -0
  31. package/dist/codex/project-overlay.d.ts.map +1 -0
  32. package/dist/codex/project-overlay.js +64 -0
  33. package/dist/codex/project-overlay.js.map +1 -0
  34. package/dist/codex/scripts/inject-rules.sh +4 -0
  35. package/dist/codex/scripts/install-pkgs.sh +4 -0
  36. package/dist/codex/scripts/setup-jira-cli.sh +5 -1
  37. package/dist/codex/settings-installer.d.ts.map +1 -1
  38. package/dist/codex/settings-installer.js +16 -3
  39. package/dist/codex/settings-installer.js.map +1 -1
  40. package/dist/codex/skills-installer.d.ts +15 -19
  41. package/dist/codex/skills-installer.d.ts.map +1 -1
  42. package/dist/codex/skills-installer.js +47 -140
  43. package/dist/codex/skills-installer.js.map +1 -1
  44. package/dist/core/lisa-plugin-selection.d.ts +16 -0
  45. package/dist/core/lisa-plugin-selection.d.ts.map +1 -0
  46. package/dist/core/lisa-plugin-selection.js +59 -0
  47. package/dist/core/lisa-plugin-selection.js.map +1 -0
  48. package/dist/core/lisa-rules-mirror.d.ts +2 -1
  49. package/dist/core/lisa-rules-mirror.d.ts.map +1 -1
  50. package/dist/core/lisa-rules-mirror.js +19 -3
  51. package/dist/core/lisa-rules-mirror.js.map +1 -1
  52. package/dist/core/lisa-skill-sources.d.ts.map +1 -1
  53. package/dist/core/lisa-skill-sources.js +16 -1
  54. package/dist/core/lisa-skill-sources.js.map +1 -1
  55. package/dist/core/lisa.d.ts +4 -6
  56. package/dist/core/lisa.d.ts.map +1 -1
  57. package/dist/core/lisa.js +12 -38
  58. package/dist/core/lisa.js.map +1 -1
  59. package/dist/migrations/ensure-lisa-postinstall.d.ts.map +1 -1
  60. package/dist/migrations/ensure-lisa-postinstall.js +4 -3
  61. package/dist/migrations/ensure-lisa-postinstall.js.map +1 -1
  62. package/dist/opencode/plugin-templates/lisa-session-bootstrap.ts +2 -3
  63. package/npm-package/create-only/.github/workflows/publish-to-npm.yml +2 -1
  64. package/package.json +2 -3
  65. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  66. package/plugins/lisa/.codex-plugin/plugin.json +2 -2
  67. package/plugins/lisa/.codex-plugin/skills/lisa-acceptance-criteria/SKILL.md +71 -0
  68. package/plugins/lisa/.codex-plugin/skills/lisa-acceptance-criteria/agents/openai.yaml +4 -0
  69. package/plugins/lisa/.codex-plugin/skills/lisa-agent-design-best-practices/SKILL.md +219 -0
  70. package/plugins/lisa/.codex-plugin/skills/lisa-agent-design-best-practices/agents/openai.yaml +4 -0
  71. package/plugins/lisa/.codex-plugin/skills/lisa-analyze-claude-remote/SKILL.md +429 -0
  72. package/plugins/lisa/.codex-plugin/skills/lisa-analyze-claude-remote/agents/openai.yaml +4 -0
  73. package/plugins/lisa/.codex-plugin/skills/lisa-atlassian-access/SKILL.md +361 -0
  74. package/plugins/lisa/.codex-plugin/skills/lisa-atlassian-access/agents/openai.yaml +4 -0
  75. package/plugins/lisa/.codex-plugin/skills/lisa-atlassian-access/scripts/markdown-to-adf.mjs +214 -0
  76. package/plugins/lisa/.codex-plugin/skills/lisa-automation-status/SKILL.md +111 -0
  77. package/plugins/lisa/.codex-plugin/skills/lisa-automation-status/agents/openai.yaml +4 -0
  78. package/plugins/lisa/.codex-plugin/skills/lisa-bug-triage/SKILL.md +23 -0
  79. package/plugins/lisa/.codex-plugin/skills/lisa-bug-triage/agents/openai.yaml +4 -0
  80. package/plugins/lisa/.codex-plugin/skills/lisa-codebase-research/SKILL.md +87 -0
  81. package/plugins/lisa/.codex-plugin/skills/lisa-codebase-research/agents/openai.yaml +4 -0
  82. package/plugins/lisa/.codex-plugin/skills/lisa-codify-verification/SKILL.md +162 -0
  83. package/plugins/lisa/.codex-plugin/skills/lisa-codify-verification/agents/openai.yaml +4 -0
  84. package/plugins/lisa/.codex-plugin/skills/lisa-confluence-prd-intake/SKILL.md +417 -0
  85. package/plugins/lisa/.codex-plugin/skills/lisa-confluence-prd-intake/agents/openai.yaml +4 -0
  86. package/plugins/lisa/.codex-plugin/skills/lisa-confluence-to-tracker/SKILL.md +356 -0
  87. package/plugins/lisa/.codex-plugin/skills/lisa-confluence-to-tracker/agents/openai.yaml +4 -0
  88. package/plugins/lisa/.codex-plugin/skills/lisa-confluence-write-prd/SKILL.md +109 -0
  89. package/plugins/lisa/.codex-plugin/skills/lisa-confluence-write-prd/agents/openai.yaml +4 -0
  90. package/plugins/lisa/.codex-plugin/skills/lisa-cross-pollinate/SKILL.md +175 -0
  91. package/plugins/lisa/.codex-plugin/skills/lisa-cross-pollinate/agents/openai.yaml +4 -0
  92. package/plugins/lisa/.codex-plugin/skills/lisa-debrief/SKILL.md +94 -0
  93. package/plugins/lisa/.codex-plugin/skills/lisa-debrief/agents/openai.yaml +4 -0
  94. package/plugins/lisa/.codex-plugin/skills/lisa-debrief-apply/SKILL.md +63 -0
  95. package/plugins/lisa/.codex-plugin/skills/lisa-debrief-apply/agents/openai.yaml +4 -0
  96. package/plugins/lisa/.codex-plugin/skills/lisa-doctor/SKILL.md +336 -0
  97. package/plugins/lisa/.codex-plugin/skills/lisa-doctor/agents/openai.yaml +4 -0
  98. package/plugins/lisa/.codex-plugin/skills/lisa-drive-pr-to-merge/SKILL.md +179 -0
  99. package/plugins/lisa/.codex-plugin/skills/lisa-drive-pr-to-merge/agents/openai.yaml +4 -0
  100. package/plugins/lisa/.codex-plugin/skills/lisa-epic-triage/SKILL.md +28 -0
  101. package/plugins/lisa/.codex-plugin/skills/lisa-epic-triage/agents/openai.yaml +4 -0
  102. package/plugins/lisa/.codex-plugin/skills/lisa-exploratory-qa/SKILL.md +91 -0
  103. package/plugins/lisa/.codex-plugin/skills/lisa-exploratory-qa/agents/openai.yaml +4 -0
  104. package/plugins/lisa/.codex-plugin/skills/lisa-fix-linter-error/SKILL.md +45 -0
  105. package/plugins/lisa/.codex-plugin/skills/lisa-fix-linter-error/agents/openai.yaml +4 -0
  106. package/plugins/lisa/.codex-plugin/skills/lisa-generate-claude-remote-build-script/SKILL.md +224 -0
  107. package/plugins/lisa/.codex-plugin/skills/lisa-generate-claude-remote-build-script/agents/openai.yaml +4 -0
  108. package/plugins/lisa/.codex-plugin/skills/lisa-git-commit/SKILL.md +48 -0
  109. package/plugins/lisa/.codex-plugin/skills/lisa-git-commit/agents/openai.yaml +4 -0
  110. package/plugins/lisa/.codex-plugin/skills/lisa-git-prune/SKILL.md +35 -0
  111. package/plugins/lisa/.codex-plugin/skills/lisa-git-prune/agents/openai.yaml +4 -0
  112. package/plugins/lisa/.codex-plugin/skills/lisa-git-submit-pr/SKILL.md +113 -0
  113. package/plugins/lisa/.codex-plugin/skills/lisa-git-submit-pr/agents/openai.yaml +4 -0
  114. package/plugins/lisa/.codex-plugin/skills/lisa-github-add-journey/SKILL.md +115 -0
  115. package/plugins/lisa/.codex-plugin/skills/lisa-github-add-journey/agents/openai.yaml +4 -0
  116. package/plugins/lisa/.codex-plugin/skills/lisa-github-build-intake/SKILL.md +446 -0
  117. package/plugins/lisa/.codex-plugin/skills/lisa-github-build-intake/agents/openai.yaml +4 -0
  118. package/plugins/lisa/.codex-plugin/skills/lisa-github-create/SKILL.md +101 -0
  119. package/plugins/lisa/.codex-plugin/skills/lisa-github-create/agents/openai.yaml +4 -0
  120. package/plugins/lisa/.codex-plugin/skills/lisa-github-evidence/SKILL.md +110 -0
  121. package/plugins/lisa/.codex-plugin/skills/lisa-github-evidence/agents/openai.yaml +4 -0
  122. package/plugins/lisa/.codex-plugin/skills/lisa-github-journey/SKILL.md +121 -0
  123. package/plugins/lisa/.codex-plugin/skills/lisa-github-journey/agents/openai.yaml +4 -0
  124. package/plugins/lisa/.codex-plugin/skills/lisa-github-prd-intake/SKILL.md +432 -0
  125. package/plugins/lisa/.codex-plugin/skills/lisa-github-prd-intake/agents/openai.yaml +4 -0
  126. package/plugins/lisa/.codex-plugin/skills/lisa-github-project-v2/SKILL.md +227 -0
  127. package/plugins/lisa/.codex-plugin/skills/lisa-github-project-v2/agents/openai.yaml +4 -0
  128. package/plugins/lisa/.codex-plugin/skills/lisa-github-read-issue/SKILL.md +248 -0
  129. package/plugins/lisa/.codex-plugin/skills/lisa-github-read-issue/agents/openai.yaml +4 -0
  130. package/plugins/lisa/.codex-plugin/skills/lisa-github-sync/SKILL.md +132 -0
  131. package/plugins/lisa/.codex-plugin/skills/lisa-github-sync/agents/openai.yaml +4 -0
  132. package/plugins/lisa/.codex-plugin/skills/lisa-github-to-tracker/SKILL.md +339 -0
  133. package/plugins/lisa/.codex-plugin/skills/lisa-github-to-tracker/agents/openai.yaml +4 -0
  134. package/plugins/lisa/.codex-plugin/skills/lisa-github-validate-issue/SKILL.md +330 -0
  135. package/plugins/lisa/.codex-plugin/skills/lisa-github-validate-issue/agents/openai.yaml +4 -0
  136. package/plugins/lisa/.codex-plugin/skills/lisa-github-verify/SKILL.md +29 -0
  137. package/plugins/lisa/.codex-plugin/skills/lisa-github-verify/agents/openai.yaml +4 -0
  138. package/plugins/lisa/.codex-plugin/skills/lisa-github-write-issue/SKILL.md +339 -0
  139. package/plugins/lisa/.codex-plugin/skills/lisa-github-write-issue/agents/openai.yaml +4 -0
  140. package/plugins/lisa/.codex-plugin/skills/lisa-github-write-prd/SKILL.md +157 -0
  141. package/plugins/lisa/.codex-plugin/skills/lisa-github-write-prd/agents/openai.yaml +4 -0
  142. package/plugins/lisa/.codex-plugin/skills/lisa-implement/SKILL.md +202 -0
  143. package/plugins/lisa/.codex-plugin/skills/lisa-implement/agents/openai.yaml +4 -0
  144. package/plugins/lisa/.codex-plugin/skills/lisa-improve-code-complexity/SKILL.md +44 -0
  145. package/plugins/lisa/.codex-plugin/skills/lisa-improve-code-complexity/agents/openai.yaml +4 -0
  146. package/plugins/lisa/.codex-plugin/skills/lisa-improve-max-lines/SKILL.md +45 -0
  147. package/plugins/lisa/.codex-plugin/skills/lisa-improve-max-lines/agents/openai.yaml +4 -0
  148. package/plugins/lisa/.codex-plugin/skills/lisa-improve-max-lines-per-function/SKILL.md +46 -0
  149. package/plugins/lisa/.codex-plugin/skills/lisa-improve-max-lines-per-function/agents/openai.yaml +4 -0
  150. package/plugins/lisa/.codex-plugin/skills/lisa-improve-test-coverage/SKILL.md +44 -0
  151. package/plugins/lisa/.codex-plugin/skills/lisa-improve-test-coverage/agents/openai.yaml +4 -0
  152. package/plugins/lisa/.codex-plugin/skills/lisa-improve-tests/SKILL.md +47 -0
  153. package/plugins/lisa/.codex-plugin/skills/lisa-improve-tests/agents/openai.yaml +4 -0
  154. package/plugins/lisa/.codex-plugin/skills/lisa-intake/SKILL.md +133 -0
  155. package/plugins/lisa/.codex-plugin/skills/lisa-intake/agents/openai.yaml +4 -0
  156. package/plugins/lisa/.codex-plugin/skills/lisa-intake-explain/SKILL.md +279 -0
  157. package/plugins/lisa/.codex-plugin/skills/lisa-intake-explain/agents/openai.yaml +4 -0
  158. package/plugins/lisa/.codex-plugin/skills/lisa-jam-access/SKILL.md +52 -0
  159. package/plugins/lisa/.codex-plugin/skills/lisa-jam-access/agents/openai.yaml +4 -0
  160. package/plugins/lisa/.codex-plugin/skills/lisa-jira-add-journey/SKILL.md +121 -0
  161. package/plugins/lisa/.codex-plugin/skills/lisa-jira-add-journey/agents/openai.yaml +4 -0
  162. package/plugins/lisa/.codex-plugin/skills/lisa-jira-build-intake/SKILL.md +368 -0
  163. package/plugins/lisa/.codex-plugin/skills/lisa-jira-build-intake/agents/openai.yaml +4 -0
  164. package/plugins/lisa/.codex-plugin/skills/lisa-jira-create/SKILL.md +154 -0
  165. package/plugins/lisa/.codex-plugin/skills/lisa-jira-create/agents/openai.yaml +4 -0
  166. package/plugins/lisa/.codex-plugin/skills/lisa-jira-evidence/SKILL.md +90 -0
  167. package/plugins/lisa/.codex-plugin/skills/lisa-jira-evidence/agents/openai.yaml +4 -0
  168. package/plugins/lisa/.codex-plugin/skills/lisa-jira-evidence/scripts/post-evidence.sh +180 -0
  169. package/plugins/lisa/.codex-plugin/skills/lisa-jira-journey/SKILL.md +127 -0
  170. package/plugins/lisa/.codex-plugin/skills/lisa-jira-journey/agents/openai.yaml +4 -0
  171. package/plugins/lisa/.codex-plugin/skills/lisa-jira-journey/scripts/generate-templates.py +233 -0
  172. package/plugins/lisa/.codex-plugin/skills/lisa-jira-journey/scripts/parse-plan.py +368 -0
  173. package/plugins/lisa/.codex-plugin/skills/lisa-jira-read-ticket/SKILL.md +198 -0
  174. package/plugins/lisa/.codex-plugin/skills/lisa-jira-read-ticket/agents/openai.yaml +4 -0
  175. package/plugins/lisa/.codex-plugin/skills/lisa-jira-read-ticket/scripts/download-attachment.sh +110 -0
  176. package/plugins/lisa/.codex-plugin/skills/lisa-jira-sync/SKILL.md +108 -0
  177. package/plugins/lisa/.codex-plugin/skills/lisa-jira-sync/agents/openai.yaml +4 -0
  178. package/plugins/lisa/.codex-plugin/skills/lisa-jira-validate-ticket/SKILL.md +317 -0
  179. package/plugins/lisa/.codex-plugin/skills/lisa-jira-validate-ticket/agents/openai.yaml +4 -0
  180. package/plugins/lisa/.codex-plugin/skills/lisa-jira-verify/SKILL.md +30 -0
  181. package/plugins/lisa/.codex-plugin/skills/lisa-jira-verify/agents/openai.yaml +4 -0
  182. package/plugins/lisa/.codex-plugin/skills/lisa-jira-write-ticket/SKILL.md +267 -0
  183. package/plugins/lisa/.codex-plugin/skills/lisa-jira-write-ticket/agents/openai.yaml +4 -0
  184. package/plugins/lisa/.codex-plugin/skills/lisa-jsdoc-best-practices/SKILL.md +432 -0
  185. package/plugins/lisa/.codex-plugin/skills/lisa-jsdoc-best-practices/agents/openai.yaml +4 -0
  186. package/plugins/lisa/.codex-plugin/skills/lisa-linear-access/SKILL.md +90 -0
  187. package/plugins/lisa/.codex-plugin/skills/lisa-linear-access/agents/openai.yaml +4 -0
  188. package/plugins/lisa/.codex-plugin/skills/lisa-linear-add-journey/SKILL.md +105 -0
  189. package/plugins/lisa/.codex-plugin/skills/lisa-linear-add-journey/agents/openai.yaml +4 -0
  190. package/plugins/lisa/.codex-plugin/skills/lisa-linear-build-intake/SKILL.md +346 -0
  191. package/plugins/lisa/.codex-plugin/skills/lisa-linear-build-intake/agents/openai.yaml +4 -0
  192. package/plugins/lisa/.codex-plugin/skills/lisa-linear-create/SKILL.md +146 -0
  193. package/plugins/lisa/.codex-plugin/skills/lisa-linear-create/agents/openai.yaml +4 -0
  194. package/plugins/lisa/.codex-plugin/skills/lisa-linear-evidence/SKILL.md +103 -0
  195. package/plugins/lisa/.codex-plugin/skills/lisa-linear-evidence/agents/openai.yaml +4 -0
  196. package/plugins/lisa/.codex-plugin/skills/lisa-linear-journey/SKILL.md +134 -0
  197. package/plugins/lisa/.codex-plugin/skills/lisa-linear-journey/agents/openai.yaml +4 -0
  198. package/plugins/lisa/.codex-plugin/skills/lisa-linear-prd-intake/SKILL.md +383 -0
  199. package/plugins/lisa/.codex-plugin/skills/lisa-linear-prd-intake/agents/openai.yaml +4 -0
  200. package/plugins/lisa/.codex-plugin/skills/lisa-linear-read-issue/SKILL.md +200 -0
  201. package/plugins/lisa/.codex-plugin/skills/lisa-linear-read-issue/agents/openai.yaml +4 -0
  202. package/plugins/lisa/.codex-plugin/skills/lisa-linear-sync/SKILL.md +127 -0
  203. package/plugins/lisa/.codex-plugin/skills/lisa-linear-sync/agents/openai.yaml +4 -0
  204. package/plugins/lisa/.codex-plugin/skills/lisa-linear-to-tracker/SKILL.md +339 -0
  205. package/plugins/lisa/.codex-plugin/skills/lisa-linear-to-tracker/agents/openai.yaml +4 -0
  206. package/plugins/lisa/.codex-plugin/skills/lisa-linear-validate-issue/SKILL.md +314 -0
  207. package/plugins/lisa/.codex-plugin/skills/lisa-linear-validate-issue/agents/openai.yaml +4 -0
  208. package/plugins/lisa/.codex-plugin/skills/lisa-linear-verify/SKILL.md +51 -0
  209. package/plugins/lisa/.codex-plugin/skills/lisa-linear-verify/agents/openai.yaml +4 -0
  210. package/plugins/lisa/.codex-plugin/skills/lisa-linear-write-issue/SKILL.md +292 -0
  211. package/plugins/lisa/.codex-plugin/skills/lisa-linear-write-issue/agents/openai.yaml +4 -0
  212. package/plugins/lisa/.codex-plugin/skills/lisa-linear-write-prd/SKILL.md +96 -0
  213. package/plugins/lisa/.codex-plugin/skills/lisa-linear-write-prd/agents/openai.yaml +4 -0
  214. package/plugins/lisa/.codex-plugin/skills/lisa-monitor/SKILL.md +69 -0
  215. package/plugins/lisa/.codex-plugin/skills/lisa-monitor/agents/openai.yaml +4 -0
  216. package/plugins/lisa/.codex-plugin/skills/lisa-nightly-add-test-coverage/SKILL.md +40 -0
  217. package/plugins/lisa/.codex-plugin/skills/lisa-nightly-add-test-coverage/agents/openai.yaml +4 -0
  218. package/plugins/lisa/.codex-plugin/skills/lisa-nightly-improve-tests/SKILL.md +29 -0
  219. package/plugins/lisa/.codex-plugin/skills/lisa-nightly-improve-tests/agents/openai.yaml +4 -0
  220. package/plugins/lisa/.codex-plugin/skills/lisa-nightly-lower-code-complexity/SKILL.md +28 -0
  221. package/plugins/lisa/.codex-plugin/skills/lisa-nightly-lower-code-complexity/agents/openai.yaml +4 -0
  222. package/plugins/lisa/.codex-plugin/skills/lisa-notion-access/SKILL.md +226 -0
  223. package/plugins/lisa/.codex-plugin/skills/lisa-notion-access/agents/openai.yaml +4 -0
  224. package/plugins/lisa/.codex-plugin/skills/lisa-notion-prd-intake/SKILL.md +360 -0
  225. package/plugins/lisa/.codex-plugin/skills/lisa-notion-prd-intake/agents/openai.yaml +4 -0
  226. package/plugins/lisa/.codex-plugin/skills/lisa-notion-to-tracker/SKILL.md +353 -0
  227. package/plugins/lisa/.codex-plugin/skills/lisa-notion-to-tracker/agents/openai.yaml +4 -0
  228. package/plugins/lisa/.codex-plugin/skills/lisa-notion-write-prd/SKILL.md +109 -0
  229. package/plugins/lisa/.codex-plugin/skills/lisa-notion-write-prd/agents/openai.yaml +4 -0
  230. package/plugins/lisa/.codex-plugin/skills/lisa-parity-code-review/SKILL.md +83 -0
  231. package/plugins/lisa/.codex-plugin/skills/lisa-parity-code-review/agents/openai.yaml +4 -0
  232. package/plugins/lisa/.codex-plugin/skills/lisa-parity-code-simplifier/SKILL.md +76 -0
  233. package/plugins/lisa/.codex-plugin/skills/lisa-parity-code-simplifier/agents/openai.yaml +4 -0
  234. package/plugins/lisa/.codex-plugin/skills/lisa-parity-coderabbit/SKILL.md +77 -0
  235. package/plugins/lisa/.codex-plugin/skills/lisa-parity-coderabbit/agents/openai.yaml +4 -0
  236. package/plugins/lisa/.codex-plugin/skills/lisa-parity-safety-net-rules/SKILL.md +144 -0
  237. package/plugins/lisa/.codex-plugin/skills/lisa-parity-safety-net-rules/agents/openai.yaml +4 -0
  238. package/plugins/lisa/.codex-plugin/skills/lisa-parity-sentry-sdk-setup/SKILL.md +211 -0
  239. package/plugins/lisa/.codex-plugin/skills/lisa-parity-sentry-sdk-setup/agents/openai.yaml +4 -0
  240. package/plugins/lisa/.codex-plugin/skills/lisa-parity-sentry-seer/SKILL.md +135 -0
  241. package/plugins/lisa/.codex-plugin/skills/lisa-parity-sentry-seer/agents/openai.yaml +4 -0
  242. package/plugins/lisa/.codex-plugin/skills/lisa-parity-skill-creator/SKILL.md +151 -0
  243. package/plugins/lisa/.codex-plugin/skills/lisa-parity-skill-creator/agents/openai.yaml +4 -0
  244. package/plugins/lisa/.codex-plugin/skills/lisa-performance-review/SKILL.md +94 -0
  245. package/plugins/lisa/.codex-plugin/skills/lisa-performance-review/agents/openai.yaml +4 -0
  246. package/plugins/lisa/.codex-plugin/skills/lisa-plan/SKILL.md +60 -0
  247. package/plugins/lisa/.codex-plugin/skills/lisa-plan/agents/openai.yaml +4 -0
  248. package/plugins/lisa/.codex-plugin/skills/lisa-plugin-sync-explain/SKILL.md +53 -0
  249. package/plugins/lisa/.codex-plugin/skills/lisa-plugin-sync-explain/agents/openai.yaml +4 -0
  250. package/plugins/lisa/.codex-plugin/skills/lisa-posthog-access/SKILL.md +60 -0
  251. package/plugins/lisa/.codex-plugin/skills/lisa-posthog-access/agents/openai.yaml +4 -0
  252. package/plugins/lisa/.codex-plugin/skills/lisa-prd-backlink/SKILL.md +265 -0
  253. package/plugins/lisa/.codex-plugin/skills/lisa-prd-backlink/agents/openai.yaml +4 -0
  254. package/plugins/lisa/.codex-plugin/skills/lisa-prd-source-write/SKILL.md +101 -0
  255. package/plugins/lisa/.codex-plugin/skills/lisa-prd-source-write/agents/openai.yaml +4 -0
  256. package/plugins/lisa/.codex-plugin/skills/lisa-prd-ticket-coverage/SKILL.md +170 -0
  257. package/plugins/lisa/.codex-plugin/skills/lisa-prd-ticket-coverage/agents/openai.yaml +4 -0
  258. package/plugins/lisa/.codex-plugin/skills/lisa-product-walkthrough/SKILL.md +104 -0
  259. package/plugins/lisa/.codex-plugin/skills/lisa-product-walkthrough/agents/openai.yaml +4 -0
  260. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/SKILL.md +315 -0
  261. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/agents/openai.yaml +4 -0
  262. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/examples/evidence-card-format.md +21 -0
  263. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/examples/host-project-only.md +22 -0
  264. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +57 -0
  265. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/examples/public-external-inspiration.md +22 -0
  266. package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/examples/unavailable-data-rejection.md +22 -0
  267. package/plugins/lisa/.codex-plugin/skills/lisa-pull-request-review/SKILL.md +84 -0
  268. package/plugins/lisa/.codex-plugin/skills/lisa-pull-request-review/agents/openai.yaml +4 -0
  269. package/plugins/lisa/.codex-plugin/skills/lisa-quality-review/SKILL.md +54 -0
  270. package/plugins/lisa/.codex-plugin/skills/lisa-quality-review/agents/openai.yaml +4 -0
  271. package/plugins/lisa/.codex-plugin/skills/lisa-queue-status/SKILL.md +133 -0
  272. package/plugins/lisa/.codex-plugin/skills/lisa-queue-status/agents/openai.yaml +4 -0
  273. package/plugins/lisa/.codex-plugin/skills/lisa-repair-intake/SKILL.md +1030 -0
  274. package/plugins/lisa/.codex-plugin/skills/lisa-repair-intake/agents/openai.yaml +4 -0
  275. package/plugins/lisa/.codex-plugin/skills/lisa-reproduce-bug/SKILL.md +96 -0
  276. package/plugins/lisa/.codex-plugin/skills/lisa-reproduce-bug/agents/openai.yaml +4 -0
  277. package/plugins/lisa/.codex-plugin/skills/lisa-research/SKILL.md +68 -0
  278. package/plugins/lisa/.codex-plugin/skills/lisa-research/agents/openai.yaml +4 -0
  279. package/plugins/lisa/.codex-plugin/skills/lisa-review-implementation/SKILL.md +209 -0
  280. package/plugins/lisa/.codex-plugin/skills/lisa-review-implementation/agents/openai.yaml +4 -0
  281. package/plugins/lisa/.codex-plugin/skills/lisa-review-local/SKILL.md +88 -0
  282. package/plugins/lisa/.codex-plugin/skills/lisa-review-local/agents/openai.yaml +4 -0
  283. package/plugins/lisa/.codex-plugin/skills/lisa-root-cause-analysis/SKILL.md +155 -0
  284. package/plugins/lisa/.codex-plugin/skills/lisa-root-cause-analysis/agents/openai.yaml +4 -0
  285. package/plugins/lisa/.codex-plugin/skills/lisa-security-review/SKILL.md +57 -0
  286. package/plugins/lisa/.codex-plugin/skills/lisa-security-review/agents/openai.yaml +4 -0
  287. package/plugins/lisa/.codex-plugin/skills/lisa-security-zap-scan/SKILL.md +33 -0
  288. package/plugins/lisa/.codex-plugin/skills/lisa-security-zap-scan/agents/openai.yaml +4 -0
  289. package/plugins/lisa/.codex-plugin/skills/lisa-sentry-access/SKILL.md +56 -0
  290. package/plugins/lisa/.codex-plugin/skills/lisa-sentry-access/agents/openai.yaml +4 -0
  291. package/plugins/lisa/.codex-plugin/skills/lisa-setup-atlassian/SKILL.md +347 -0
  292. package/plugins/lisa/.codex-plugin/skills/lisa-setup-atlassian/agents/openai.yaml +4 -0
  293. package/plugins/lisa/.codex-plugin/skills/lisa-setup-automations/SKILL.md +103 -0
  294. package/plugins/lisa/.codex-plugin/skills/lisa-setup-automations/agents/openai.yaml +4 -0
  295. package/plugins/lisa/.codex-plugin/skills/lisa-setup-confluence/SKILL.md +254 -0
  296. package/plugins/lisa/.codex-plugin/skills/lisa-setup-confluence/agents/openai.yaml +4 -0
  297. package/plugins/lisa/.codex-plugin/skills/lisa-setup-github/SKILL.md +268 -0
  298. package/plugins/lisa/.codex-plugin/skills/lisa-setup-github/agents/openai.yaml +4 -0
  299. package/plugins/lisa/.codex-plugin/skills/lisa-setup-jira/SKILL.md +198 -0
  300. package/plugins/lisa/.codex-plugin/skills/lisa-setup-jira/agents/openai.yaml +4 -0
  301. package/plugins/lisa/.codex-plugin/skills/lisa-setup-linear/SKILL.md +251 -0
  302. package/plugins/lisa/.codex-plugin/skills/lisa-setup-linear/agents/openai.yaml +4 -0
  303. package/plugins/lisa/.codex-plugin/skills/lisa-setup-notion/SKILL.md +316 -0
  304. package/plugins/lisa/.codex-plugin/skills/lisa-setup-notion/agents/openai.yaml +4 -0
  305. package/plugins/lisa/.codex-plugin/skills/lisa-sonarcloud-access/SKILL.md +71 -0
  306. package/plugins/lisa/.codex-plugin/skills/lisa-sonarcloud-access/agents/openai.yaml +4 -0
  307. package/plugins/lisa/.codex-plugin/skills/lisa-spec-conformance/SKILL.md +159 -0
  308. package/plugins/lisa/.codex-plugin/skills/lisa-spec-conformance/agents/openai.yaml +4 -0
  309. package/plugins/lisa/.codex-plugin/skills/lisa-sync-down/SKILL.md +171 -0
  310. package/plugins/lisa/.codex-plugin/skills/lisa-sync-down/agents/openai.yaml +4 -0
  311. package/plugins/lisa/.codex-plugin/skills/lisa-task-decomposition/SKILL.md +127 -0
  312. package/plugins/lisa/.codex-plugin/skills/lisa-task-decomposition/agents/openai.yaml +4 -0
  313. package/plugins/lisa/.codex-plugin/skills/lisa-task-triage/SKILL.md +23 -0
  314. package/plugins/lisa/.codex-plugin/skills/lisa-task-triage/agents/openai.yaml +4 -0
  315. package/plugins/lisa/.codex-plugin/skills/lisa-tdd-implementation/SKILL.md +86 -0
  316. package/plugins/lisa/.codex-plugin/skills/lisa-tdd-implementation/agents/openai.yaml +4 -0
  317. package/plugins/lisa/.codex-plugin/skills/lisa-tear-down-automations/SKILL.md +34 -0
  318. package/plugins/lisa/.codex-plugin/skills/lisa-tear-down-automations/agents/openai.yaml +4 -0
  319. package/plugins/lisa/.codex-plugin/skills/lisa-test-strategy/SKILL.md +63 -0
  320. package/plugins/lisa/.codex-plugin/skills/lisa-test-strategy/agents/openai.yaml +4 -0
  321. package/plugins/lisa/.codex-plugin/skills/lisa-ticket-triage/SKILL.md +186 -0
  322. package/plugins/lisa/.codex-plugin/skills/lisa-ticket-triage/agents/openai.yaml +4 -0
  323. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-add-journey/SKILL.md +27 -0
  324. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-add-journey/agents/openai.yaml +4 -0
  325. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-build-intake/SKILL.md +86 -0
  326. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-build-intake/agents/openai.yaml +4 -0
  327. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-create/SKILL.md +27 -0
  328. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-create/agents/openai.yaml +4 -0
  329. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-evidence/SKILL.md +53 -0
  330. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-evidence/agents/openai.yaml +4 -0
  331. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-journey/SKILL.md +27 -0
  332. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-journey/agents/openai.yaml +4 -0
  333. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-read/SKILL.md +28 -0
  334. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-read/agents/openai.yaml +4 -0
  335. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-source-artifacts/SKILL.md +107 -0
  336. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-source-artifacts/agents/openai.yaml +4 -0
  337. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-sync/SKILL.md +65 -0
  338. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-sync/agents/openai.yaml +4 -0
  339. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-validate/SKILL.md +37 -0
  340. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-validate/agents/openai.yaml +4 -0
  341. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-verify/SKILL.md +29 -0
  342. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-verify/agents/openai.yaml +4 -0
  343. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-write/SKILL.md +54 -0
  344. package/plugins/lisa/.codex-plugin/skills/lisa-tracker-write/agents/openai.yaml +4 -0
  345. package/plugins/lisa/.codex-plugin/skills/lisa-usage-accounting/SKILL.md +170 -0
  346. package/plugins/lisa/.codex-plugin/skills/lisa-usage-accounting/agents/openai.yaml +4 -0
  347. package/plugins/lisa/.codex-plugin/skills/lisa-use-the-product/SKILL.md +86 -0
  348. package/plugins/lisa/.codex-plugin/skills/lisa-use-the-product/agents/openai.yaml +4 -0
  349. package/plugins/lisa/.codex-plugin/skills/lisa-validate-tracker-mapping/SKILL.md +195 -0
  350. package/plugins/lisa/.codex-plugin/skills/lisa-validate-tracker-mapping/agents/openai.yaml +4 -0
  351. package/plugins/lisa/.codex-plugin/skills/lisa-verification-lifecycle/SKILL.md +365 -0
  352. package/plugins/lisa/.codex-plugin/skills/lisa-verification-lifecycle/agents/openai.yaml +4 -0
  353. package/plugins/lisa/.codex-plugin/skills/lisa-verify/SKILL.md +52 -0
  354. package/plugins/lisa/.codex-plugin/skills/lisa-verify/agents/openai.yaml +4 -0
  355. package/plugins/lisa/.codex-plugin/skills/lisa-verify-prd/SKILL.md +392 -0
  356. package/plugins/lisa/.codex-plugin/skills/lisa-verify-prd/agents/openai.yaml +4 -0
  357. package/plugins/lisa/.codex-plugin/skills/lisa-wiki-install/SKILL.md +101 -0
  358. package/plugins/lisa/.codex-plugin/skills/lisa-wiki-install/agents/openai.yaml +4 -0
  359. package/plugins/lisa/hooks/inject-rules.sh +3 -2
  360. package/plugins/lisa/hooks/install-pkgs.sh +4 -45
  361. package/plugins/lisa/hooks/setup-jira-cli.sh +4 -12
  362. package/plugins/lisa/skills/lisa-setup-linear/SKILL.md +1 -1
  363. package/plugins/lisa-agy/plugin.json +1 -1
  364. package/plugins/lisa-agy/skills/lisa-setup-linear/SKILL.md +1 -1
  365. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  366. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  367. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  368. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  369. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  370. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  371. package/plugins/lisa-copilot/hooks/inject-rules.sh +3 -2
  372. package/plugins/lisa-copilot/hooks/install-pkgs.sh +4 -45
  373. package/plugins/lisa-copilot/hooks/setup-jira-cli.sh +4 -12
  374. package/plugins/lisa-copilot/skills/lisa-setup-linear/SKILL.md +1 -1
  375. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  376. package/plugins/lisa-cursor/hooks/install-pkgs.sh +4 -45
  377. package/plugins/lisa-cursor/hooks/setup-jira-cli.sh +4 -12
  378. package/plugins/lisa-cursor/skills/lisa-setup-linear/SKILL.md +1 -1
  379. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  380. package/plugins/lisa-expo/.codex-plugin/plugin.json +2 -2
  381. package/plugins/lisa-expo/.codex-plugin/skills/add-app-clip/SKILL.md +280 -0
  382. package/plugins/lisa-expo/.codex-plugin/skills/add-app-clip/agents/openai.yaml +4 -0
  383. package/plugins/lisa-expo/.codex-plugin/skills/add-app-clip/references/native-module.md +96 -0
  384. package/plugins/lisa-expo/.codex-plugin/skills/apollo-client/SKILL.md +238 -0
  385. package/plugins/lisa-expo/.codex-plugin/skills/apollo-client/agents/openai.yaml +4 -0
  386. package/plugins/lisa-expo/.codex-plugin/skills/apollo-client/references/mutation-patterns.md +360 -0
  387. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/SKILL.md +367 -0
  388. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/agents/openai.yaml +4 -0
  389. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/references/atomic-levels.md +417 -0
  390. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/references/folder-structure.md +257 -0
  391. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/references/gluestack-mapping.md +233 -0
  392. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/scripts/test_validate_atomic_structure.py +240 -0
  393. package/plugins/lisa-expo/.codex-plugin/skills/atomic-design-gluestack/scripts/validate_atomic_structure.py +438 -0
  394. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/SKILL.md +321 -0
  395. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/agents/openai.yaml +4 -0
  396. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/animations.md +220 -0
  397. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/controls.md +272 -0
  398. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/form-sheet.md +253 -0
  399. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/gradients.md +106 -0
  400. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/icons.md +213 -0
  401. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/media.md +198 -0
  402. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/route-structure.md +229 -0
  403. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/search.md +248 -0
  404. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/storage.md +121 -0
  405. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/tabs.md +433 -0
  406. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/toolbar-and-headers.md +284 -0
  407. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/visual-effects.md +197 -0
  408. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/webgpu-three.md +605 -0
  409. package/plugins/lisa-expo/.codex-plugin/skills/building-native-ui/references/zoom-transitions.md +158 -0
  410. package/plugins/lisa-expo/.codex-plugin/skills/container-view-pattern/SKILL.md +299 -0
  411. package/plugins/lisa-expo/.codex-plugin/skills/container-view-pattern/agents/openai.yaml +4 -0
  412. package/plugins/lisa-expo/.codex-plugin/skills/container-view-pattern/references/examples.md +749 -0
  413. package/plugins/lisa-expo/.codex-plugin/skills/container-view-pattern/references/patterns.md +318 -0
  414. package/plugins/lisa-expo/.codex-plugin/skills/container-view-pattern/scripts/create_component.py +200 -0
  415. package/plugins/lisa-expo/.codex-plugin/skills/container-view-pattern/scripts/validate_component.py +209 -0
  416. package/plugins/lisa-expo/.codex-plugin/skills/cross-platform-compatibility/SKILL.md +268 -0
  417. package/plugins/lisa-expo/.codex-plugin/skills/cross-platform-compatibility/agents/openai.yaml +4 -0
  418. package/plugins/lisa-expo/.codex-plugin/skills/cross-platform-compatibility/references/common-issues.md +619 -0
  419. package/plugins/lisa-expo/.codex-plugin/skills/cross-platform-compatibility/references/file-extensions.md +340 -0
  420. package/plugins/lisa-expo/.codex-plugin/skills/cross-platform-compatibility/references/platform-api.md +276 -0
  421. package/plugins/lisa-expo/.codex-plugin/skills/cross-platform-compatibility/scripts/validate_cross_platform.py +416 -0
  422. package/plugins/lisa-expo/.codex-plugin/skills/directory-structure/SKILL.md +214 -0
  423. package/plugins/lisa-expo/.codex-plugin/skills/directory-structure/agents/openai.yaml +4 -0
  424. package/plugins/lisa-expo/.codex-plugin/skills/directory-structure/scripts/validate_structure.py +454 -0
  425. package/plugins/lisa-expo/.codex-plugin/skills/e2e-coverage-gaps/SKILL.md +105 -0
  426. package/plugins/lisa-expo/.codex-plugin/skills/e2e-coverage-gaps/agents/openai.yaml +4 -0
  427. package/plugins/lisa-expo/.codex-plugin/skills/eas-update-insights/SKILL.md +228 -0
  428. package/plugins/lisa-expo/.codex-plugin/skills/eas-update-insights/agents/openai.yaml +4 -0
  429. package/plugins/lisa-expo/.codex-plugin/skills/eas-update-insights/references/channel-insights-schema.md +47 -0
  430. package/plugins/lisa-expo/.codex-plugin/skills/eas-update-insights/references/update-insights-schema.md +69 -0
  431. package/plugins/lisa-expo/.codex-plugin/skills/expo-api-routes/SKILL.md +369 -0
  432. package/plugins/lisa-expo/.codex-plugin/skills/expo-api-routes/agents/openai.yaml +4 -0
  433. package/plugins/lisa-expo/.codex-plugin/skills/expo-brownfield/SKILL.md +54 -0
  434. package/plugins/lisa-expo/.codex-plugin/skills/expo-brownfield/agents/openai.yaml +4 -0
  435. package/plugins/lisa-expo/.codex-plugin/skills/expo-brownfield/references/brownfield-integrated.md +526 -0
  436. package/plugins/lisa-expo/.codex-plugin/skills/expo-brownfield/references/brownfield-isolated.md +402 -0
  437. package/plugins/lisa-expo/.codex-plugin/skills/expo-brownfield/references/comparison.md +63 -0
  438. package/plugins/lisa-expo/.codex-plugin/skills/expo-brownfield/references/troubleshooting.md +88 -0
  439. package/plugins/lisa-expo/.codex-plugin/skills/expo-cicd-workflows/SKILL.md +92 -0
  440. package/plugins/lisa-expo/.codex-plugin/skills/expo-cicd-workflows/agents/openai.yaml +4 -0
  441. package/plugins/lisa-expo/.codex-plugin/skills/expo-cicd-workflows/scripts/fetch.js +113 -0
  442. package/plugins/lisa-expo/.codex-plugin/skills/expo-cicd-workflows/scripts/package.json +11 -0
  443. package/plugins/lisa-expo/.codex-plugin/skills/expo-cicd-workflows/scripts/validate.js +85 -0
  444. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/SKILL.md +193 -0
  445. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/agents/openai.yaml +4 -0
  446. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/references/app-store-metadata.md +479 -0
  447. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/references/ios-app-store.md +355 -0
  448. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/references/play-store.md +264 -0
  449. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/references/testflight.md +58 -0
  450. package/plugins/lisa-expo/.codex-plugin/skills/expo-deployment/references/workflows.md +200 -0
  451. package/plugins/lisa-expo/.codex-plugin/skills/expo-dev-client/SKILL.md +164 -0
  452. package/plugins/lisa-expo/.codex-plugin/skills/expo-dev-client/agents/openai.yaml +4 -0
  453. package/plugins/lisa-expo/.codex-plugin/skills/expo-env-config/SKILL.md +309 -0
  454. package/plugins/lisa-expo/.codex-plugin/skills/expo-env-config/agents/openai.yaml +4 -0
  455. package/plugins/lisa-expo/.codex-plugin/skills/expo-env-config/references/validation-patterns.md +417 -0
  456. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/SKILL.md +141 -0
  457. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/agents/openai.yaml +4 -0
  458. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/references/config-plugin.md +90 -0
  459. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/references/create-expo-module.md +206 -0
  460. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/references/lifecycle.md +127 -0
  461. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/references/module-config.md +48 -0
  462. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/references/native-module.md +286 -0
  463. package/plugins/lisa-expo/.codex-plugin/skills/expo-module/references/native-view.md +171 -0
  464. package/plugins/lisa-expo/.codex-plugin/skills/expo-router-best-practices/SKILL.md +431 -0
  465. package/plugins/lisa-expo/.codex-plugin/skills/expo-router-best-practices/agents/openai.yaml +4 -0
  466. package/plugins/lisa-expo/.codex-plugin/skills/expo-router-best-practices/references/official-docs.md +290 -0
  467. package/plugins/lisa-expo/.codex-plugin/skills/expo-router-best-practices/scripts/generate-route.py +171 -0
  468. package/plugins/lisa-expo/.codex-plugin/skills/expo-tailwind-setup/SKILL.md +480 -0
  469. package/plugins/lisa-expo/.codex-plugin/skills/expo-tailwind-setup/agents/openai.yaml +4 -0
  470. package/plugins/lisa-expo/.codex-plugin/skills/expo-ui-jetpack-compose/SKILL.md +40 -0
  471. package/plugins/lisa-expo/.codex-plugin/skills/expo-ui-jetpack-compose/agents/openai.yaml +4 -0
  472. package/plugins/lisa-expo/.codex-plugin/skills/expo-ui-swift-ui/SKILL.md +39 -0
  473. package/plugins/lisa-expo/.codex-plugin/skills/expo-ui-swift-ui/agents/openai.yaml +4 -0
  474. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/SKILL.md +419 -0
  475. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/agents/openai.yaml +4 -0
  476. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/references/color-tokens.md +343 -0
  477. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/references/component-mapping.md +307 -0
  478. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/references/spacing-scale.md +300 -0
  479. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/scripts/test_validate_styling.py +240 -0
  480. package/plugins/lisa-expo/.codex-plugin/skills/gluestack-nativewind/scripts/validate_styling.py +424 -0
  481. package/plugins/lisa-expo/.codex-plugin/skills/jira-add-journey/SKILL.md +126 -0
  482. package/plugins/lisa-expo/.codex-plugin/skills/jira-add-journey/agents/openai.yaml +4 -0
  483. package/plugins/lisa-expo/.codex-plugin/skills/jira-create/SKILL.md +161 -0
  484. package/plugins/lisa-expo/.codex-plugin/skills/jira-create/agents/openai.yaml +4 -0
  485. package/plugins/lisa-expo/.codex-plugin/skills/jira-evidence/SKILL.md +78 -0
  486. package/plugins/lisa-expo/.codex-plugin/skills/jira-evidence/agents/openai.yaml +4 -0
  487. package/plugins/lisa-expo/.codex-plugin/skills/jira-evidence/scripts/post-evidence.sh +180 -0
  488. package/plugins/lisa-expo/.codex-plugin/skills/jira-journey/SKILL.md +190 -0
  489. package/plugins/lisa-expo/.codex-plugin/skills/jira-journey/agents/openai.yaml +4 -0
  490. package/plugins/lisa-expo/.codex-plugin/skills/jira-journey/scripts/generate-templates.py +281 -0
  491. package/plugins/lisa-expo/.codex-plugin/skills/jira-journey/scripts/parse-plan.py +368 -0
  492. package/plugins/lisa-expo/.codex-plugin/skills/jira-verify/SKILL.md +27 -0
  493. package/plugins/lisa-expo/.codex-plugin/skills/jira-verify/agents/openai.yaml +4 -0
  494. package/plugins/lisa-expo/.codex-plugin/skills/lisa-e2e-coverage-gaps/SKILL.md +13 -0
  495. package/plugins/lisa-expo/.codex-plugin/skills/lisa-e2e-coverage-gaps/agents/openai.yaml +4 -0
  496. package/plugins/lisa-expo/.codex-plugin/skills/local-state/SKILL.md +362 -0
  497. package/plugins/lisa-expo/.codex-plugin/skills/local-state/agents/openai.yaml +4 -0
  498. package/plugins/lisa-expo/.codex-plugin/skills/local-state/references/async-storage.md +505 -0
  499. package/plugins/lisa-expo/.codex-plugin/skills/local-state/references/persistence-patterns.md +711 -0
  500. package/plugins/lisa-expo/.codex-plugin/skills/local-state/references/reactive-variables.md +446 -0
  501. package/plugins/lisa-expo/.codex-plugin/skills/native-data-fetching/SKILL.md +507 -0
  502. package/plugins/lisa-expo/.codex-plugin/skills/native-data-fetching/agents/openai.yaml +4 -0
  503. package/plugins/lisa-expo/.codex-plugin/skills/native-data-fetching/references/expo-router-loaders.md +344 -0
  504. package/plugins/lisa-expo/.codex-plugin/skills/ops-browser-uat/SKILL.md +124 -0
  505. package/plugins/lisa-expo/.codex-plugin/skills/ops-browser-uat/agents/openai.yaml +4 -0
  506. package/plugins/lisa-expo/.codex-plugin/skills/ops-check-logs/SKILL.md +217 -0
  507. package/plugins/lisa-expo/.codex-plugin/skills/ops-check-logs/agents/openai.yaml +4 -0
  508. package/plugins/lisa-expo/.codex-plugin/skills/ops-db-ops/SKILL.md +123 -0
  509. package/plugins/lisa-expo/.codex-plugin/skills/ops-db-ops/agents/openai.yaml +4 -0
  510. package/plugins/lisa-expo/.codex-plugin/skills/ops-deploy/SKILL.md +123 -0
  511. package/plugins/lisa-expo/.codex-plugin/skills/ops-deploy/agents/openai.yaml +4 -0
  512. package/plugins/lisa-expo/.codex-plugin/skills/ops-monitor-errors/SKILL.md +99 -0
  513. package/plugins/lisa-expo/.codex-plugin/skills/ops-monitor-errors/agents/openai.yaml +4 -0
  514. package/plugins/lisa-expo/.codex-plugin/skills/ops-performance/SKILL.md +165 -0
  515. package/plugins/lisa-expo/.codex-plugin/skills/ops-performance/agents/openai.yaml +4 -0
  516. package/plugins/lisa-expo/.codex-plugin/skills/ops-run-local/SKILL.md +169 -0
  517. package/plugins/lisa-expo/.codex-plugin/skills/ops-run-local/agents/openai.yaml +4 -0
  518. package/plugins/lisa-expo/.codex-plugin/skills/ops-verify-health/SKILL.md +101 -0
  519. package/plugins/lisa-expo/.codex-plugin/skills/ops-verify-health/agents/openai.yaml +4 -0
  520. package/plugins/lisa-expo/.codex-plugin/skills/owasp-zap/SKILL.md +61 -0
  521. package/plugins/lisa-expo/.codex-plugin/skills/owasp-zap/agents/openai.yaml +4 -0
  522. package/plugins/lisa-expo/.codex-plugin/skills/play-store-access/SKILL.md +226 -0
  523. package/plugins/lisa-expo/.codex-plugin/skills/play-store-access/agents/openai.yaml +4 -0
  524. package/plugins/lisa-expo/.codex-plugin/skills/playwright-ci-debugging/SKILL.md +140 -0
  525. package/plugins/lisa-expo/.codex-plugin/skills/playwright-ci-debugging/agents/openai.yaml +4 -0
  526. package/plugins/lisa-expo/.codex-plugin/skills/playwright-selectors/SKILL.md +455 -0
  527. package/plugins/lisa-expo/.codex-plugin/skills/playwright-selectors/agents/openai.yaml +4 -0
  528. package/plugins/lisa-expo/.codex-plugin/skills/reduce-complexity/SKILL.md +251 -0
  529. package/plugins/lisa-expo/.codex-plugin/skills/reduce-complexity/agents/openai.yaml +4 -0
  530. package/plugins/lisa-expo/.codex-plugin/skills/reduce-complexity/references/extraction-strategies.md +456 -0
  531. package/plugins/lisa-expo/.codex-plugin/skills/reduce-complexity/references/refactoring-patterns.md +557 -0
  532. package/plugins/lisa-expo/.codex-plugin/skills/testing-library/SKILL.md +314 -0
  533. package/plugins/lisa-expo/.codex-plugin/skills/testing-library/agents/openai.yaml +4 -0
  534. package/plugins/lisa-expo/.codex-plugin/skills/testing-library/references/async-patterns.md +420 -0
  535. package/plugins/lisa-expo/.codex-plugin/skills/testing-library/references/expo-router-testing.md +556 -0
  536. package/plugins/lisa-expo/.codex-plugin/skills/testing-library/references/mocking-patterns.md +590 -0
  537. package/plugins/lisa-expo/.codex-plugin/skills/testing-library/references/query-priority.md +291 -0
  538. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/SKILL.md +134 -0
  539. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/agents/openai.yaml +4 -0
  540. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/expo-av-to-audio.md +132 -0
  541. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/expo-av-to-video.md +160 -0
  542. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/native-tabs.md +124 -0
  543. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/new-architecture.md +79 -0
  544. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/react-19.md +79 -0
  545. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/react-compiler.md +59 -0
  546. package/plugins/lisa-expo/.codex-plugin/skills/upgrading-expo/references/react-navigation-to-expo-router.md +61 -0
  547. package/plugins/lisa-expo/.codex-plugin/skills/use-dom/SKILL.md +417 -0
  548. package/plugins/lisa-expo/.codex-plugin/skills/use-dom/agents/openai.yaml +4 -0
  549. package/plugins/lisa-expo/skills/building-native-ui/SKILL.md +1 -1
  550. package/plugins/lisa-expo-agy/plugin.json +1 -1
  551. package/plugins/lisa-expo-agy/skills/building-native-ui/SKILL.md +1 -1
  552. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  553. package/plugins/lisa-expo-copilot/skills/building-native-ui/SKILL.md +1 -1
  554. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  555. package/plugins/lisa-expo-cursor/skills/building-native-ui/SKILL.md +1 -1
  556. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  557. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +2 -2
  558. package/plugins/lisa-harper-fabric/.codex-plugin/skills/e2e-coverage-gaps/SKILL.md +105 -0
  559. package/plugins/lisa-harper-fabric/.codex-plugin/skills/e2e-coverage-gaps/agents/openai.yaml +4 -0
  560. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-auth/SKILL.md +368 -0
  561. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-auth/agents/openai.yaml +4 -0
  562. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-build-and-deploy/SKILL.md +198 -0
  563. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-build-and-deploy/agents/openai.yaml +4 -0
  564. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-caching/SKILL.md +265 -0
  565. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-caching/agents/openai.yaml +4 -0
  566. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-component-model/SKILL.md +87 -0
  567. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-component-model/agents/openai.yaml +4 -0
  568. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-config-yaml/SKILL.md +283 -0
  569. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-config-yaml/agents/openai.yaml +4 -0
  570. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-operations/SKILL.md +239 -0
  571. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-operations/agents/openai.yaml +4 -0
  572. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-realtime/SKILL.md +187 -0
  573. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-realtime/agents/openai.yaml +4 -0
  574. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-resources/SKILL.md +142 -0
  575. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-resources/agents/openai.yaml +4 -0
  576. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-rest-queries/SKILL.md +403 -0
  577. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-rest-queries/agents/openai.yaml +4 -0
  578. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-schema-graphql/SKILL.md +123 -0
  579. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-schema-graphql/agents/openai.yaml +4 -0
  580. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-testing/SKILL.md +254 -0
  581. package/plugins/lisa-harper-fabric/.codex-plugin/skills/harper-testing/agents/openai.yaml +4 -0
  582. package/plugins/lisa-harper-fabric/.codex-plugin/skills/lisa-e2e-coverage-gaps/SKILL.md +13 -0
  583. package/plugins/lisa-harper-fabric/.codex-plugin/skills/lisa-e2e-coverage-gaps/agents/openai.yaml +4 -0
  584. package/plugins/lisa-harper-fabric/hooks/block-generated-artifact-edits.sh +42 -24
  585. package/plugins/lisa-harper-fabric/hooks/enforce-config-extensions.mjs +12 -14
  586. package/plugins/lisa-harper-fabric/hooks/enforce-config-extensions.sh +30 -3
  587. package/plugins/lisa-harper-fabric/hooks/inject-rules.sh +1 -1
  588. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  589. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  590. package/plugins/lisa-harper-fabric-copilot/hooks/block-generated-artifact-edits.sh +42 -24
  591. package/plugins/lisa-harper-fabric-copilot/hooks/enforce-config-extensions.mjs +12 -14
  592. package/plugins/lisa-harper-fabric-copilot/hooks/enforce-config-extensions.sh +30 -3
  593. package/plugins/lisa-harper-fabric-copilot/hooks/inject-rules.sh +1 -1
  594. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  595. package/plugins/lisa-harper-fabric-cursor/hooks/block-generated-artifact-edits.sh +42 -24
  596. package/plugins/lisa-harper-fabric-cursor/hooks/enforce-config-extensions.mjs +12 -14
  597. package/plugins/lisa-harper-fabric-cursor/hooks/enforce-config-extensions.sh +30 -3
  598. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  599. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +2 -2
  600. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/SKILL.md +176 -0
  601. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/agents/openai.yaml +4 -0
  602. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/references/advanced-features.md +527 -0
  603. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/references/project-patterns.md +531 -0
  604. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/references/quick-start.md +257 -0
  605. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/references/resolvers-mutations.md +413 -0
  606. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-graphql/references/types-scalars.md +513 -0
  607. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-rules/SKILL.md +565 -0
  608. package/plugins/lisa-nestjs/.codex-plugin/skills/nestjs-rules/agents/openai.yaml +4 -0
  609. package/plugins/lisa-nestjs/.codex-plugin/skills/typeorm-patterns/SKILL.md +275 -0
  610. package/plugins/lisa-nestjs/.codex-plugin/skills/typeorm-patterns/agents/openai.yaml +4 -0
  611. package/plugins/lisa-nestjs/.codex-plugin/skills/typeorm-patterns/references/configuration-patterns.md +487 -0
  612. package/plugins/lisa-nestjs/.codex-plugin/skills/typeorm-patterns/references/entity-patterns.md +450 -0
  613. package/plugins/lisa-nestjs/.codex-plugin/skills/typeorm-patterns/references/observability-patterns.md +536 -0
  614. package/plugins/lisa-nestjs/skills/typeorm-patterns/references/configuration-patterns.md +5 -5
  615. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  616. package/plugins/lisa-nestjs-agy/skills/typeorm-patterns/references/configuration-patterns.md +5 -5
  617. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  618. package/plugins/lisa-nestjs-copilot/skills/typeorm-patterns/references/configuration-patterns.md +5 -5
  619. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  620. package/plugins/lisa-nestjs-cursor/skills/typeorm-patterns/references/configuration-patterns.md +5 -5
  621. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  622. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +2 -2
  623. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-connect-repo-topic/SKILL.md +13 -0
  624. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-connect-repo-topic/agents/openai.yaml +4 -0
  625. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-connect-staff-slack/SKILL.md +13 -0
  626. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-connect-staff-slack/agents/openai.yaml +4 -0
  627. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-connect-staff-telegram/SKILL.md +13 -0
  628. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-connect-staff-telegram/agents/openai.yaml +4 -0
  629. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-repo-topic/SKILL.md +163 -0
  630. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-repo-topic/agents/openai.yaml +4 -0
  631. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-repo-topic/references/repo-topic-config.md +185 -0
  632. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-staff/SKILL.md +175 -0
  633. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-staff/agents/openai.yaml +4 -0
  634. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-staff/references/platform-routing.md +123 -0
  635. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-connect-staff/references/prompts.md +78 -0
  636. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-setup/SKILL.md +141 -0
  637. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-openclaw-setup/agents/openai.yaml +4 -0
  638. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-setup-openclaw/SKILL.md +13 -0
  639. package/plugins/lisa-openclaw/.codex-plugin/skills/lisa-setup-openclaw/agents/openai.yaml +4 -0
  640. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  641. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  642. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  643. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  644. package/plugins/lisa-phaser/.codex-plugin/plugin.json +2 -2
  645. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-accessibility/SKILL.md +135 -0
  646. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-accessibility/agents/openai.yaml +4 -0
  647. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-asset-pipeline/SKILL.md +222 -0
  648. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-asset-pipeline/agents/openai.yaml +4 -0
  649. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-asset-sourcing/SKILL.md +151 -0
  650. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-asset-sourcing/agents/openai.yaml +4 -0
  651. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-build-deploy/SKILL.md +153 -0
  652. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-build-deploy/agents/openai.yaml +4 -0
  653. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-i18n/SKILL.md +122 -0
  654. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-i18n/agents/openai.yaml +4 -0
  655. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-project-structure/SKILL.md +89 -0
  656. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-project-structure/agents/openai.yaml +4 -0
  657. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-services/SKILL.md +208 -0
  658. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-services/agents/openai.yaml +4 -0
  659. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-testing/SKILL.md +192 -0
  660. package/plugins/lisa-phaser/.codex-plugin/skills/phaser-testing/agents/openai.yaml +4 -0
  661. package/plugins/lisa-phaser/hooks/inject-rules.sh +1 -1
  662. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  663. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  664. package/plugins/lisa-phaser-copilot/hooks/inject-rules.sh +1 -1
  665. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  666. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  667. package/plugins/lisa-rails/.codex-plugin/plugin.json +2 -2
  668. package/plugins/lisa-rails/.codex-plugin/skills/action-controller-best-practices/SKILL.md +374 -0
  669. package/plugins/lisa-rails/.codex-plugin/skills/action-controller-best-practices/agents/openai.yaml +4 -0
  670. package/plugins/lisa-rails/.codex-plugin/skills/action-view-best-practices/SKILL.md +335 -0
  671. package/plugins/lisa-rails/.codex-plugin/skills/action-view-best-practices/agents/openai.yaml +4 -0
  672. package/plugins/lisa-rails/.codex-plugin/skills/active-record-model-best-practices/SKILL.md +166 -0
  673. package/plugins/lisa-rails/.codex-plugin/skills/active-record-model-best-practices/agents/openai.yaml +4 -0
  674. package/plugins/lisa-rails/.codex-plugin/skills/e2e-coverage-gaps/SKILL.md +105 -0
  675. package/plugins/lisa-rails/.codex-plugin/skills/e2e-coverage-gaps/agents/openai.yaml +4 -0
  676. package/plugins/lisa-rails/.codex-plugin/skills/fix-linter-error/SKILL.md +45 -0
  677. package/plugins/lisa-rails/.codex-plugin/skills/fix-linter-error/agents/openai.yaml +4 -0
  678. package/plugins/lisa-rails/.codex-plugin/skills/improve-code-complexity/SKILL.md +48 -0
  679. package/plugins/lisa-rails/.codex-plugin/skills/improve-code-complexity/agents/openai.yaml +4 -0
  680. package/plugins/lisa-rails/.codex-plugin/skills/improve-max-lines/SKILL.md +46 -0
  681. package/plugins/lisa-rails/.codex-plugin/skills/improve-max-lines/agents/openai.yaml +4 -0
  682. package/plugins/lisa-rails/.codex-plugin/skills/improve-max-lines-per-function/SKILL.md +46 -0
  683. package/plugins/lisa-rails/.codex-plugin/skills/improve-max-lines-per-function/agents/openai.yaml +4 -0
  684. package/plugins/lisa-rails/.codex-plugin/skills/improve-test-coverage/SKILL.md +45 -0
  685. package/plugins/lisa-rails/.codex-plugin/skills/improve-test-coverage/agents/openai.yaml +4 -0
  686. package/plugins/lisa-rails/.codex-plugin/skills/jira-add-journey/SKILL.md +65 -0
  687. package/plugins/lisa-rails/.codex-plugin/skills/jira-add-journey/agents/openai.yaml +4 -0
  688. package/plugins/lisa-rails/.codex-plugin/skills/jira-create/SKILL.md +100 -0
  689. package/plugins/lisa-rails/.codex-plugin/skills/jira-create/agents/openai.yaml +4 -0
  690. package/plugins/lisa-rails/.codex-plugin/skills/jira-evidence/SKILL.md +70 -0
  691. package/plugins/lisa-rails/.codex-plugin/skills/jira-evidence/agents/openai.yaml +4 -0
  692. package/plugins/lisa-rails/.codex-plugin/skills/jira-evidence/scripts/post-evidence.sh +180 -0
  693. package/plugins/lisa-rails/.codex-plugin/skills/jira-journey/SKILL.md +64 -0
  694. package/plugins/lisa-rails/.codex-plugin/skills/jira-journey/agents/openai.yaml +4 -0
  695. package/plugins/lisa-rails/.codex-plugin/skills/jira-verify/SKILL.md +26 -0
  696. package/plugins/lisa-rails/.codex-plugin/skills/jira-verify/agents/openai.yaml +4 -0
  697. package/plugins/lisa-rails/.codex-plugin/skills/lisa-e2e-coverage-gaps/SKILL.md +13 -0
  698. package/plugins/lisa-rails/.codex-plugin/skills/lisa-e2e-coverage-gaps/agents/openai.yaml +4 -0
  699. package/plugins/lisa-rails/.codex-plugin/skills/ops-check-logs/SKILL.md +191 -0
  700. package/plugins/lisa-rails/.codex-plugin/skills/ops-check-logs/agents/openai.yaml +4 -0
  701. package/plugins/lisa-rails/.codex-plugin/skills/ops-deploy/SKILL.md +153 -0
  702. package/plugins/lisa-rails/.codex-plugin/skills/ops-deploy/agents/openai.yaml +4 -0
  703. package/plugins/lisa-rails/.codex-plugin/skills/ops-run-local/SKILL.md +169 -0
  704. package/plugins/lisa-rails/.codex-plugin/skills/ops-run-local/agents/openai.yaml +4 -0
  705. package/plugins/lisa-rails/.codex-plugin/skills/ops-verify-jobs/SKILL.md +157 -0
  706. package/plugins/lisa-rails/.codex-plugin/skills/ops-verify-jobs/agents/openai.yaml +4 -0
  707. package/plugins/lisa-rails/.codex-plugin/skills/ops-verify-telemetry/SKILL.md +197 -0
  708. package/plugins/lisa-rails/.codex-plugin/skills/ops-verify-telemetry/agents/openai.yaml +4 -0
  709. package/plugins/lisa-rails/hooks/inject-rules.sh +2 -1
  710. package/plugins/lisa-rails-agy/plugin.json +1 -1
  711. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  712. package/plugins/lisa-rails-copilot/hooks/inject-rules.sh +2 -1
  713. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  714. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  715. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  716. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  717. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  718. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  719. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  720. package/plugins/lisa-wiki/.codex-plugin/plugin.json +2 -2
  721. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-add-ingest/SKILL.md +12 -0
  722. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-add-ingest/agents/openai.yaml +4 -0
  723. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-add-role/SKILL.md +12 -0
  724. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-add-role/agents/openai.yaml +4 -0
  725. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-ingest/SKILL.md +12 -0
  726. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-ingest/agents/openai.yaml +4 -0
  727. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-lint/SKILL.md +11 -0
  728. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-lint/agents/openai.yaml +4 -0
  729. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-migrate/SKILL.md +12 -0
  730. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-migrate/agents/openai.yaml +4 -0
  731. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-onboard-me/SKILL.md +12 -0
  732. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-onboard-me/agents/openai.yaml +4 -0
  733. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-query/SKILL.md +12 -0
  734. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-query/agents/openai.yaml +4 -0
  735. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-setup/SKILL.md +12 -0
  736. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-setup/agents/openai.yaml +4 -0
  737. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-setup-wiki/SKILL.md +12 -0
  738. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-setup-wiki/agents/openai.yaml +4 -0
  739. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-status/SKILL.md +12 -0
  740. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-status/agents/openai.yaml +4 -0
  741. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-add-ingest/SKILL.md +34 -0
  742. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-add-ingest/agents/openai.yaml +4 -0
  743. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-add-role/SKILL.md +30 -0
  744. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-add-role/agents/openai.yaml +4 -0
  745. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-confluence/SKILL.md +25 -0
  746. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-confluence/agents/openai.yaml +4 -0
  747. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-docs/SKILL.md +30 -0
  748. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-docs/agents/openai.yaml +4 -0
  749. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-git/SKILL.md +25 -0
  750. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-git/agents/openai.yaml +4 -0
  751. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-jira/SKILL.md +28 -0
  752. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-jira/agents/openai.yaml +4 -0
  753. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-memory/SKILL.md +28 -0
  754. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-memory/agents/openai.yaml +4 -0
  755. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-notion/SKILL.md +25 -0
  756. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-notion/agents/openai.yaml +4 -0
  757. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-roles/SKILL.md +22 -0
  758. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-roles/agents/openai.yaml +4 -0
  759. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-slack/SKILL.md +30 -0
  760. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-slack/agents/openai.yaml +4 -0
  761. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-web/SKILL.md +23 -0
  762. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-connector-web/agents/openai.yaml +4 -0
  763. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-doctor/SKILL.md +47 -0
  764. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-doctor/agents/openai.yaml +4 -0
  765. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-ingest/SKILL.md +99 -0
  766. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-ingest/agents/openai.yaml +4 -0
  767. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-lint/SKILL.md +32 -0
  768. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-lint/agents/openai.yaml +4 -0
  769. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-migrate/SKILL.md +43 -0
  770. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-migrate/agents/openai.yaml +4 -0
  771. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-onboard-me/SKILL.md +33 -0
  772. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-onboard-me/agents/openai.yaml +4 -0
  773. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-query/SKILL.md +36 -0
  774. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-query/agents/openai.yaml +4 -0
  775. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-setup/SKILL.md +75 -0
  776. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-setup/agents/openai.yaml +4 -0
  777. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-setup-automations/SKILL.md +83 -0
  778. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-setup-automations/agents/openai.yaml +4 -0
  779. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-status/SKILL.md +47 -0
  780. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-status/agents/openai.yaml +4 -0
  781. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-tear-down-automations/SKILL.md +34 -0
  782. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-tear-down-automations/agents/openai.yaml +4 -0
  783. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-usage/SKILL.md +50 -0
  784. package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-usage/agents/openai.yaml +4 -0
  785. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  786. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  787. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  788. package/plugins/src/base/hooks/inject-rules.sh +3 -2
  789. package/plugins/src/base/hooks/install-pkgs.sh +4 -45
  790. package/plugins/src/base/hooks/setup-jira-cli.sh +4 -12
  791. package/plugins/src/base/skills/lisa-setup-linear/SKILL.md +1 -1
  792. package/plugins/src/expo/skills/building-native-ui/SKILL.md +1 -1
  793. package/plugins/src/harper-fabric/hooks/block-generated-artifact-edits.sh +42 -24
  794. package/plugins/src/harper-fabric/hooks/enforce-config-extensions.mjs +12 -14
  795. package/plugins/src/harper-fabric/hooks/enforce-config-extensions.sh +30 -3
  796. package/plugins/src/harper-fabric/hooks/inject-rules.sh +1 -1
  797. package/plugins/src/nestjs/skills/typeorm-patterns/references/configuration-patterns.md +5 -5
  798. package/plugins/src/phaser/hooks/inject-rules.sh +1 -1
  799. package/plugins/src/rails/hooks/inject-rules.sh +2 -1
  800. package/scripts/clean-dist.mjs +7 -0
  801. package/scripts/generate-codex-plugin-artifacts.mjs +311 -20
  802. package/scripts/install-claude-plugins.sh +53 -40
  803. package/typescript/package-lisa/package.lisa.json +1 -1
  804. package/.agents/plugins/marketplace.json +0 -128
  805. package/dist/codex/lisa-plugin-detection.d.ts +0 -68
  806. package/dist/codex/lisa-plugin-detection.d.ts.map +0 -1
  807. package/dist/codex/lisa-plugin-detection.js +0 -139
  808. package/dist/codex/lisa-plugin-detection.js.map +0 -1
@@ -0,0 +1,314 @@
1
+ ---
2
+ name: lisa-linear-validate-issue
3
+ description: "Validates a proposed Linear…"
4
+ allowed-tools: ["Skill", "Bash"]
5
+ ---
6
+
7
+ # Validate Linear Work Item: $ARGUMENTS
8
+
9
+ Run all organizational quality gates against a Linear work item spec OR an existing Linear item. **This skill is read-only — it never writes to Linear.** The output is a structured report consumed by callers (`lisa-linear-write-issue` for pre-write gating, `lisa-linear-to-tracker` for PRD dry-run, `lisa-linear-verify` for post-write checks).
10
+
11
+ ## Configuration
12
+
13
+ Reads `linear.workspace`, `linear.teamKey` from `.lisa.config.json` (with `.local` override) for any feasibility lookups.
14
+
15
+ ## Input
16
+
17
+ `$ARGUMENTS` is one of:
18
+
19
+ 1. **An existing Linear identifier** (e.g. `ENG-123` for an Issue, or `<workspace>/project/<slug>-<id>` for a Project): fetch and validate the live state.
20
+ 2. **A proposed item spec** (YAML block, see schema below): validate as-is without touching Linear.
21
+
22
+ ### Spec schema
23
+
24
+ ```yaml
25
+ issue_type: Story # Epic | Story | Task | Bug | Spike | Sub-task | Improvement
26
+ team_key: ENG
27
+ summary: "[CU-1.2] Upload contract PDF from settings"
28
+ priority: 3 # Linear native: 0=No priority, 1=Urgent, 2=High, 3=Medium, 4=Low
29
+ parent_project_id: <uuid> # Required for Story/Task/Improvement when in Epic context
30
+ parent_issue_id: <uuid> # Required for Sub-task (the Story Issue)
31
+ description: | # Full description text — every required section
32
+ ## Context / Business Value
33
+ ...
34
+
35
+ ## Technical Approach
36
+ ...
37
+
38
+ ## Acceptance Criteria
39
+ 1. Given <precondition>
40
+ When <action>
41
+ Then <observable outcome>
42
+
43
+ ## Out of Scope
44
+ ...
45
+
46
+ ## Target Backend Environment
47
+ dev
48
+
49
+ ## Sign-in Required
50
+ Account: ...
51
+
52
+ ## Repository
53
+ backend-api
54
+
55
+ ## Validation Journey
56
+ ...
57
+
58
+ # Behavioral flags — caller asserts these so the validator picks the right gates
59
+ runtime_behavior_change: true # → requires Target Backend Environment + Validation Journey
60
+ authenticated_surface: true # → requires Sign-in Required
61
+ artifacts_attached: true # → requires Source Precedence section
62
+ relations: [{ id: "ENG-99", type: "blocked_by" }] # known issue relations (may be empty)
63
+ remote_links: [{ url: "https://github.com/...", title: "PR #42" }]
64
+ build_ready: true # caller asserts the build-ready role (status:ready) is/would be applied — see S15
65
+ child_refs: ["ENG-601", "ENG-602"] # known child work (sub-issues / project-member issues / blocked_by parentage) — see S15
66
+ ```
67
+
68
+ If the caller passes only an identifier, fetch the item via `lisa-linear-access operation: get-issue` (Issue) or `lisa-linear-access operation: get-project` (Project), derive the same fields from the fetched data — including `build_ready` (label set contains `status:ready`) and `child_refs` (sub-issues, project-member issues, plus `blocked_by` parentage, resolved as in `lisa-linear-read-issue`) so S15 can classify the item — then run gates.
69
+
70
+ ## Gates
71
+
72
+ Gates are grouped into **Specification** (spec-only checks, no Linear lookups) and **Feasibility** (requires Linear lookups). The dry-run path may opt to run Specification gates only; the write path runs both.
73
+
74
+ Each gate is tagged with a fixed `category` and a `product_relevant` boolean. Categories drive how downstream callers (notably `lisa-linear-prd-intake`) translate failures into product-facing comments; `product_relevant=false` failures indicate internal data-quality problems the agent should fix itself rather than ask product to clarify.
75
+
76
+ | Gate | Category | Product-relevant |
77
+ |------|----------|------------------|
78
+ | S1 Required core fields | `structural` | false |
79
+ | S2 Summary format | `structural` | false |
80
+ | S3 Description three audiences | `product-clarity` | true |
81
+ | S4 Acceptance criteria in Gherkin | `acceptance-criteria` | true |
82
+ | S5 Bug-specific content | `product-clarity` | true |
83
+ | S6 Spike-specific content | `scope` | true |
84
+ | S7 Project parent declared | `structural` | false |
85
+ | S8 Target Backend Environment | `technical` | false |
86
+ | S9 Sign-in Required | `technical` | false |
87
+ | S10 Single-repo scope | `scope` | false |
88
+ | S11 Validation Journey | `acceptance-criteria` | true |
89
+ | S12 Source Precedence | `design-ux` | true |
90
+ | S13 Relationship Search | `dependency` | true |
91
+ | S14 Evidence manifest binding (leaf work units) | `acceptance-criteria` | true |
92
+ | S15 Leaf-only build-ready | `structural` | false |
93
+ | F1 Issue type valid in team | `structural` | false |
94
+ | F2 Project parent exists and is in same team | `structural` | false |
95
+ | F3 Linked items exist | `structural` | false |
96
+ | F4 Required labels exist (or can be created) | `structural` | false |
97
+
98
+ Category values are the same fixed set as `lisa-jira-validate-ticket`:
99
+
100
+ - `product-clarity` — feature behavior or user intent unclear in the PRD
101
+ - `acceptance-criteria` — pass/fail conditions missing or ambiguous
102
+ - `design-ux` — visual or interaction spec missing
103
+ - `scope` — boundary unclear, items overlap, split needed
104
+ - `dependency` — blocked by another team / system / decision
105
+ - `data` — data source / shape / volume unspecified
106
+ - `technical` — engineering decision required
107
+ - `structural` — internal data-quality problem the agent must fix itself, not surface to product
108
+
109
+ ### Specification Gates
110
+
111
+ #### S1 — Required core fields
112
+
113
+ `team_key`, `issue_type`, `summary`, `priority`, `description` must all be present and non-empty.
114
+
115
+ #### S2 — Summary format
116
+
117
+ - Single line, ≤ 100 characters
118
+ - Imperative voice ("Add X", "Fix Y", not "Adding X" or "X is broken")
119
+ - Bug / Task / Sub-task summaries SHOULD start with a `[repo-name]` prefix when the project convention uses one
120
+
121
+ #### S3 — Description has all three audiences
122
+
123
+ Description text must include all of these sections (case-insensitive `##` markdown headings):
124
+ - `Context / Business Value` — stakeholder-facing
125
+ - `Technical Approach` — developer-facing
126
+ - `Acceptance Criteria` — coding-assistant-facing
127
+ - `Out of Scope` — explicit non-coverage list
128
+
129
+ Missing any → FAIL with name of missing section.
130
+
131
+ #### S4 — Acceptance criteria in Gherkin
132
+
133
+ Applies when `issue_type ∈ {Story, Task, Bug, Sub-task, Improvement}`.
134
+
135
+ The `Acceptance Criteria` section must contain at least one criterion in `Given / When / Then` form. Reject prose-only criteria, "should work" language, or numbered lists without Given/When/Then verbs.
136
+
137
+ #### S5 — Bug-specific content
138
+
139
+ When `issue_type = Bug`, description must additionally include:
140
+ - Reproduction steps
141
+ - Expected vs. actual behavior
142
+ - Environment where reproduced
143
+
144
+ #### S6 — Spike-specific content
145
+
146
+ When `issue_type = Spike`, description must include:
147
+ - The question being answered
148
+ - Definition of done (decision doc / prototype / findings deliverable)
149
+
150
+ #### S7 — Project parent declared
151
+
152
+ When `issue_type ∈ {Story, Task, Improvement}` AND the item is part of an Epic context, `parent_project_id` must be set. When `issue_type = Sub-task`, `parent_issue_id` must be set. (Validity of the IDs is checked in feasibility gates.)
153
+
154
+ For top-level Bug / Spike not under an Epic, this gate is N/A.
155
+
156
+ A **build-ready leaf work unit** that is not part of an Epic context stands alone: a flat `Task` / `Improvement`, or a childless `Story` / `Spike` (no open child work) with `build_ready = true`, is an independently claimable leaf per `leaf-only-lifecycle` ("must not be stranded"), so a missing `parent_project_id` is `N/A`, not a FAIL. A `Sub-task` is exempt from this exception — it always requires `parent_issue_id`. This mirrors the leaf carve-out already in S10/S15.
157
+
158
+ #### S8 — Target Backend Environment
159
+
160
+ When `runtime_behavior_change = true`, description must contain `## Target Backend Environment` with one of `dev`, `staging`, `prod`. Skipped for doc-only / config-only / type-only / Epic.
161
+
162
+ #### S9 — Sign-in Required
163
+
164
+ When `authenticated_surface = true`, description must contain `## Sign-in Required` naming the account/role and credential source.
165
+
166
+ If the spec doesn't set `authenticated_surface`, infer it: scan the description and AC for sign-in / login / "as a {role} user" / authenticated route signals. If signals present and no `Sign-in Required` section: FAIL.
167
+
168
+ #### S10 — Repository section, single-repo scope
169
+
170
+ When `issue_type ∈ {Bug, Task, Sub-task, Improvement}` — or a **build-ready childless Story/Spike** (a claimable leaf per `leaf-only-lifecycle`) — description must contain `## Repository` naming exactly one repo. Multiple repos OR cross-repo references in AC: FAIL with recommendation `"Split into per-repo work units under a shared parent Story (see lisa-task-decomposition step 1.5)"`.
171
+
172
+ An **Epic** (a Linear Project), or a **Story/Spike that still holds child work** (or is not build-ready): skipped (may span repos — coordination containers, not claimable leaf work units).
173
+
174
+ This gate is `product_relevant: false` because cross-repo work units are not a product question — they are a decomposition error. Callers (`lisa-linear-to-tracker`, `lisa-notion-to-tracker`, etc.) MUST pre-split cross-repo work into per-repo work units during the decomposition phase per `lisa-task-decomposition` step 1.5; an S10 failure here indicates the agent skipped that step and must auto-split + revalidate before writing, not surface a clarifying comment to product.
175
+
176
+ #### S11 — Validation Journey present
177
+
178
+ When `runtime_behavior_change = true`, description must contain `## Validation Journey`. Skipped for doc-only / config-only / type-only / Epic.
179
+
180
+ The caller controls strictness via `journey_followup: "auto"` or `"none"`:
181
+ - `auto` (default): missing section returns `FAIL` with remediation `"Invoke lisa-linear-add-journey to append the section after create"`. The write path auto-fixes; dry-run path leaves it as a FAIL the caller must address.
182
+ - `none`: missing section is a `FAIL` the caller will not auto-fix.
183
+
184
+ #### S12 — Source Precedence (when artifacts attached)
185
+
186
+ When `artifacts_attached = true`, description must include source-precedence guidance covering: business rules → PRD body, visual treatment → mocks, flow → prototypes, API/data → data artifacts. Cross-axis conflicts surfaced under `## Open Questions`.
187
+
188
+ Accept either placement:
189
+ - A dedicated `## Source Precedence` subsection, OR
190
+ - A "Source Precedence" / "authoritative source" paragraph under `Technical Approach` covering the four axes.
191
+
192
+ Detect by scanning for the phrase `Source Precedence` (case-insensitive) anywhere in the description AND verifying the four axes are each named. Missing the phrase OR any axis: FAIL with remediation naming the missing axes.
193
+
194
+ #### S13 — Relationship Search documented
195
+
196
+ The item must EITHER have at least one entry in `relations`, OR the description / a comment must contain a `## Relationship Search` block listing the git history queries and Linear MCP queries that were run with their outcomes.
197
+
198
+ An item with zero relations and no documented search: FAIL.
199
+
200
+ #### S14 — Evidence manifest binding (leaf work units)
201
+
202
+ When `issue_type ∈ {Bug, Task, Sub-task, Improvement}` AND `runtime_behavior_change = true`, the `## Validation Journey` must declare at least one `[EVIDENCE: name]` marker. Each marker name must be kebab-case and unique within the item. These markers are the work unit's **evidence manifest** — the exact, enumerated set of artifacts that must be captured and attached before the item may be closed (see the "Per-Work-Unit Evidence Contract" section of the `verification` rule, the Definition of Done in `verification-lifecycle`, and the evidence-manifest gate in `tracker-evidence`).
203
+
204
+ FAIL when the Validation Journey is present but declares zero `[EVIDENCE: name]` markers, or when any marker name is empty, duplicated, or not kebab-case. A behavior-changing work unit SHOULD declare both a success marker and an error/edge marker; a journey with only one marker passes but the remediation should recommend adding the error/edge case.
205
+
206
+ This gate depends on S11. It is `N/A` for containers — a **Project** (the Epic equivalent), or any item with open child work (coordination containers, not work units) — and for leaf units with `runtime_behavior_change = false` (doc-only / config-only / type-only). If S11 fails because the Validation Journey is absent, S14 also FAILs (there is no manifest to bind) with remediation pointing back to `lisa-linear-add-journey`.
207
+
208
+ #### S15 — Leaf-only build-ready
209
+
210
+ Enforces the build-side of the vendor-neutral `leaf-only-lifecycle` rule: **only a leaf work unit may carry the build-ready role.** This is the symmetric write-side guard for the Linear validator — a stale or hand-applied `status:ready` label on a container is a lifecycle error and must FAIL here, regardless of how the item was produced. (Mirrors the "Build-ready label is leaf-only" rule that `lisa-linear-write-issue` applies at write time.)
211
+
212
+ **When the gate applies.** Run S15 whenever the item is build-ready — i.e. `build_ready = true`, or the spec/live labels include `status:ready`. If the item is not build-ready, S15 is `N/A` (nothing claims a non-ready item, so the invariant is vacuous).
213
+
214
+ **Resolve container vs. leaf — structural first, then nominal.** Per `leaf-only-lifecycle` the classification is structural: an item is a **container** if it has child work, whatever its declared type; otherwise the **issue type** decides. Determine child work from (in order) `child_refs`, native sub-issues, project-member issues (an Epic is modeled as a Linear Project), and `blocked_by` / parent references — the same hierarchy resolution `lisa-linear-read-issue` uses. When validating a live identifier, query sub-issues / project members alongside the item fetch.
215
+
216
+ Apply this decision and FAIL the two invariant-violating cases:
217
+
218
+ 1. **Container with child work + build-ready** — child work is present (any type that has open children), AND build-ready. FAIL. A parent organizes work; it is never claimed and implemented directly. Its lifecycle state rolls up from its children.
219
+ 2. **Childless Epic/Project + build-ready** — `issue_type = Epic` (a Linear Project) with **no** child work, AND build-ready. Still FAIL: an Epic/Project is a pure rollup container by design, and a childless one is an incomplete decomposition or a mis-applied role, not an implementable unit. (A childless Story or Spike is **not** failed here — the childless-parent exception in `leaf-only-lifecycle` promotes every childless non-Epic type to a build-ready leaf.)
220
+
221
+ PASS (the childless-parent exception) when the item is build-ready and is a **leaf work unit**: it has **no** open child work and `issue_type ≠ Epic` (i.e. `Bug, Task, Sub-task, Improvement`, or a childless `Story` / `Spike`). A flat Task/Bug, or a childless Story/Spike with no sub-issues, is a valid build-ready leaf and must not be stranded.
222
+
223
+ | issue_type | has child work | build-ready | S15 |
224
+ |---|---|---|---|
225
+ | Bug / Task / Sub-task / Improvement / Story / Spike | no | yes | **PASS** (leaf) |
226
+ | any type | yes | yes | **FAIL** (structurally a container) |
227
+ | Epic (Project) | no | yes | **FAIL** (childless Epic/Project — pure rollup container, exception does not apply) |
228
+ | any | any | no | **N/A** (not build-ready) |
229
+
230
+ Remediation: `"Build-ready (status:ready) is leaf-only per leaf-only-lifecycle. Move status:ready off this container onto its leaf children (or, for a childless Epic, decompose it into leaf children or reclassify it to a leaf type); a parent's lifecycle state rolls up from its children and is never set to ready directly."`
231
+
232
+ `product_relevant: false` — a build-ready container is a lifecycle/decomposition error for the caller to repair, not a product question.
233
+
234
+ ### Feasibility Gates (require Linear lookups; skip in dry-run if requested)
235
+
236
+ #### F1 — Issue type valid in team
237
+
238
+ For Issue types: confirm the team supports the issue type via `lisa-linear-access operation: get-team`. Linear issue types are typically per-team; check that the requested type exists.
239
+
240
+ For Epic (Project): confirm the team allows projects.
241
+
242
+ #### F2 — Project parent exists and is in same team
243
+
244
+ When `parent_project_id` is set: fetch via `lisa-linear-access operation: get-project`, confirm it exists and belongs to the configured team.
245
+
246
+ When `parent_issue_id` is set (Sub-task case): fetch via `lisa-linear-access operation: get-issue`, confirm the issue is non-Sub-task and in the same team / project.
247
+
248
+ #### F3 — Linked items exist
249
+
250
+ For each entry in `relations`, call `lisa-linear-access operation: get-issue` to confirm the identifier resolves. Flag broken identifiers.
251
+
252
+ #### F4 — Required labels exist (or can be created)
253
+
254
+ For each label referenced (`status:*`, `component:<name>`, `prd-*`), confirm via `lisa-linear-access operation: list-issue-labels` (or `lisa-linear-access operation: list-project-labels` for Project labels) that it exists OR is creatable. Linear labels are team-scoped or workspace-scoped; flag if the requested scope is wrong.
255
+
256
+ ## Execution
257
+
258
+ 1. Parse `$ARGUMENTS`. If it's an identifier, fetch the item and derive the spec from the fetched fields — including `build_ready` (label set contains `status:ready`) and `child_refs` (sub-issues, project-member issues, plus `blocked_by` parentage, resolved as in `lisa-linear-read-issue`) so S15 can classify the item. Otherwise parse the YAML spec.
259
+ 2. Resolve team ID via `lisa-linear-access operation: list-teams({query: <teamKey>})` if any feasibility gate will run.
260
+ 3. Run every Specification gate in order. Collect PASS / FAIL / N/A with a one-line reason.
261
+ 4. Unless the caller passed `--spec-only` (dry-run), run every Feasibility gate. Collect results.
262
+ 5. Emit the report below.
263
+
264
+ ## Output
265
+
266
+ Output is a single fenced text block. Callers parse it; do not add free-form prose around it.
267
+
268
+ ```text
269
+ ## linear-validate-issue: <IDENTIFIER-or-SUMMARY>
270
+
271
+ ### Specification Gates
272
+ - [PASS|FAIL|N/A] S1 Required core fields — <one-line reason>
273
+ - [PASS|FAIL|N/A] S2 Summary format — <one-line reason>
274
+ - [PASS|FAIL|N/A] S3 Description three audiences — <one-line reason>
275
+ - [PASS|FAIL|N/A] S4 Acceptance criteria in Gherkin — <one-line reason>
276
+ - [PASS|FAIL|N/A] S5 Bug-specific content — <one-line reason>
277
+ - [PASS|FAIL|N/A] S6 Spike-specific content — <one-line reason>
278
+ - [PASS|FAIL|N/A] S7 Project parent declared — <one-line reason>
279
+ - [PASS|FAIL|N/A] S8 Target Backend Environment — <one-line reason>
280
+ - [PASS|FAIL|N/A] S9 Sign-in Required — <one-line reason>
281
+ - [PASS|FAIL|N/A] S10 Single-repo scope — <one-line reason>
282
+ - [PASS|FAIL|N/A] S11 Validation Journey — <one-line reason>
283
+ - [PASS|FAIL|N/A] S12 Source Precedence — <one-line reason>
284
+ - [PASS|FAIL|N/A] S13 Relationship Search — <one-line reason>
285
+ - [PASS|FAIL|N/A] S14 Evidence manifest binding — <one-line reason>
286
+ - [PASS|FAIL|N/A] S15 Leaf-only build-ready — <one-line reason>
287
+
288
+ ### Feasibility Gates (omit when --spec-only)
289
+ - [PASS|FAIL|N/A] F1 Issue type valid in team — <one-line reason>
290
+ - [PASS|FAIL|N/A] F2 Project parent exists and is in same team — <one-line reason>
291
+ - [PASS|FAIL|N/A] F3 Linked items exist — <one-line reason>
292
+ - [PASS|FAIL|N/A] F4 Required labels exist (or can be created) — <one-line reason>
293
+
294
+ ### Verdict: PASS | FAIL
295
+ ### Failures: <count>
296
+ ### Failure details
297
+ - gate: <gate-id>
298
+ category: <category>
299
+ product_relevant: <true|false>
300
+ what: <plain-language description, no gate-IDs, no Linear jargon>
301
+ recommendation: <1–3 concrete options>
302
+ - gate: ...
303
+ ```
304
+
305
+ The verdict is `PASS` if and only if every applicable gate is `PASS`. Any `FAIL` makes the verdict `FAIL`. `N/A` does not affect the verdict.
306
+
307
+ ## Rules
308
+
309
+ - Never write to Linear. The `allowed-tools` list intentionally excludes any `save_*` tool.
310
+ - Never auto-fix the spec. This skill reports gaps; callers decide what to do.
311
+ - Never silently skip a gate. If a gate genuinely doesn't apply, return `N/A` with the reason.
312
+ - The `what` and `recommendation` fields must be concrete and product-readable — the dry-run path turns each failure into a Linear comment. Vague guidance is useless; always give 1–3 candidate resolutions.
313
+ - Never emit a category outside the fixed set.
314
+ - `product_relevant` is determined by the gate, not by the failure context.
@@ -0,0 +1,4 @@
1
+ display_name: "Linear Validate Issue"
2
+ short_description: "Validates a proposed Linear…"
3
+ default_prompt:
4
+ - "Use $lisa-linear-validate-issue: Validates a proposed Linear…."
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: lisa-linear-verify
3
+ description: "Verifies a Linear work item…"
4
+ allowed-tools: ["Bash", "Skill"]
5
+ ---
6
+
7
+ # Verify Linear Work Item: $ARGUMENTS
8
+
9
+ Fetch the live Linear work item and run it through `lisa-linear-validate-issue`. This catches any field that was dropped or reformatted between the pre-write spec and what Linear stored.
10
+
11
+ This skill is the destination of the `lisa-tracker-verify` shim when `tracker = "linear"`. Read-only — never writes.
12
+
13
+ ## Configuration
14
+
15
+ Reads `linear.workspace`, `linear.teamKey` from `.lisa.config.json` (with `.local` override).
16
+
17
+ ## Input
18
+
19
+ `$ARGUMENTS` is a Linear identifier:
20
+ - An Issue identifier (e.g. `ENG-123`)
21
+ - A Project URL or slug (e.g. `https://linear.app/<workspace>/project/<slug>-<id>`)
22
+
23
+ If `$ARGUMENTS` is not parseable, stop and report.
24
+
25
+ ## Phase 1 — Resolve Context
26
+
27
+ 1. Read `linear.workspace`, `linear.teamKey` from `.lisa.config.json` (with `.local` override).
28
+ 2. Resolve team ID via `lisa-linear-access operation: list-teams({query: <teamKey>})`.
29
+ 3. Determine entity type from the identifier shape:
30
+ - `<TEAM>-<n>` → Issue
31
+ - URL containing `/project/<slug>-<id>` → Project
32
+
33
+ ## Phase 2 — Fetch Live State
34
+
35
+ Call `lisa-linear-access operation: get-issue` (for Issues) or `lisa-linear-access operation: get-project` (for Projects). Capture every field, label, relation, comment, milestone, and project membership.
36
+
37
+ ## Phase 3 — Delegate to Validator
38
+
39
+ Pass the fetched item to `lisa-linear-validate-issue` (in identifier mode — let it derive the spec from the live state). The validator runs both Specification AND Feasibility gates against what Linear actually stored.
40
+
41
+ ## Phase 4 — Report
42
+
43
+ Return the validator's report verbatim — same structured format as `lisa-linear-validate-issue`. Callers (especially `lisa-linear-write-issue` Phase 7) parse the verdict to decide whether to declare success.
44
+
45
+ If the verdict is `FAIL`, the caller should fix the item and re-run verify. Never declare success on a `FAIL` verdict.
46
+
47
+ ## Rules
48
+
49
+ - Never write to Linear. Read-only.
50
+ - Never short-circuit the validator. Always run the full gate set.
51
+ - If `get_issue` / `get_project` returns an access error, surface it and exit — don't pretend the item is fine.
@@ -0,0 +1,4 @@
1
+ display_name: "Linear Verify"
2
+ short_description: "Verifies a Linear work item…"
3
+ default_prompt:
4
+ - "Use $lisa-linear-verify: Verifies a Linear work item…."