@minhduydev/mdpi 0.3.0

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 (561) hide show
  1. package/README.md +31 -0
  2. package/dist/index.js +1187 -0
  3. package/dist/template/.pi/.env.example +28 -0
  4. package/dist/template/.pi/AGENTS.md +226 -0
  5. package/dist/template/.pi/QUALITY.md +13 -0
  6. package/dist/template/.pi/README.md +452 -0
  7. package/dist/template/.pi/VERSION +1 -0
  8. package/dist/template/.pi/agents/INDEX.md +54 -0
  9. package/dist/template/.pi/agents/build.md +194 -0
  10. package/dist/template/.pi/agents/explore.md +85 -0
  11. package/dist/template/.pi/agents/general.md +189 -0
  12. package/dist/template/.pi/agents/plan.md +407 -0
  13. package/dist/template/.pi/agents/review.md +198 -0
  14. package/dist/template/.pi/agents/scout.md +142 -0
  15. package/dist/template/.pi/agents/vision.md +157 -0
  16. package/dist/template/.pi/artifacts/example/plan.md +12 -0
  17. package/dist/template/.pi/artifacts/example/progress.md +4 -0
  18. package/dist/template/.pi/artifacts/example/research.md +4 -0
  19. package/dist/template/.pi/artifacts/example/spec.md +16 -0
  20. package/dist/template/.pi/context/architecture.md +141 -0
  21. package/dist/template/.pi/context/fallow.md +137 -0
  22. package/dist/template/.pi/extensions/templates-injector.ts +76 -0
  23. package/dist/template/.pi/extensions/workflows-runner.ts +301 -0
  24. package/dist/template/.pi/guard.example.json +75 -0
  25. package/dist/template/.pi/prompts/INDEX.md +78 -0
  26. package/dist/template/.pi/prompts/audit.md +109 -0
  27. package/dist/template/.pi/prompts/close.md +88 -0
  28. package/dist/template/.pi/prompts/create.md +197 -0
  29. package/dist/template/.pi/prompts/fix.md +117 -0
  30. package/dist/template/.pi/prompts/gc.md +112 -0
  31. package/dist/template/.pi/prompts/init.md +206 -0
  32. package/dist/template/.pi/prompts/loop-check.md +87 -0
  33. package/dist/template/.pi/prompts/loop-init.md +157 -0
  34. package/dist/template/.pi/prompts/loop-review.md +90 -0
  35. package/dist/template/.pi/prompts/plan.md +254 -0
  36. package/dist/template/.pi/prompts/research.md +136 -0
  37. package/dist/template/.pi/prompts/ship.md +219 -0
  38. package/dist/template/.pi/prompts/status.md +92 -0
  39. package/dist/template/.pi/prompts/verify.md +154 -0
  40. package/dist/template/.pi/scripts/gc-check.sh +86 -0
  41. package/dist/template/.pi/settings.json +15 -0
  42. package/dist/template/.pi/skills/INDEX.md +331 -0
  43. package/dist/template/.pi/skills/accessibility-audit/SKILL.md +205 -0
  44. package/dist/template/.pi/skills/accessibility-audit/references/accessibility-checklist.md +109 -0
  45. package/dist/template/.pi/skills/agent-code-quality-gate/SKILL.md +131 -0
  46. package/dist/template/.pi/skills/api-and-interface-design/SKILL.md +159 -0
  47. package/dist/template/.pi/skills/behavioral-kernel/SKILL.md +92 -0
  48. package/dist/template/.pi/skills/brainstorming/SKILL.md +138 -0
  49. package/dist/template/.pi/skills/browser-testing-with-devtools/SKILL.md +90 -0
  50. package/dist/template/.pi/skills/chrome-devtools/SKILL.md +129 -0
  51. package/dist/template/.pi/skills/ci-cd-and-automation/SKILL.md +199 -0
  52. package/dist/template/.pi/skills/cloudflare/SKILL.md +271 -0
  53. package/dist/template/.pi/skills/cloudflare/references/agents-sdk/README.md +35 -0
  54. package/dist/template/.pi/skills/cloudflare/references/agents-sdk/api.md +100 -0
  55. package/dist/template/.pi/skills/cloudflare/references/agents-sdk/configuration.md +99 -0
  56. package/dist/template/.pi/skills/cloudflare/references/agents-sdk/gotchas.md +59 -0
  57. package/dist/template/.pi/skills/cloudflare/references/agents-sdk/patterns.md +89 -0
  58. package/dist/template/.pi/skills/cloudflare/references/ai-gateway/README.md +695 -0
  59. package/dist/template/.pi/skills/cloudflare/references/ai-search/README.md +14 -0
  60. package/dist/template/.pi/skills/cloudflare/references/ai-search/api.md +38 -0
  61. package/dist/template/.pi/skills/cloudflare/references/ai-search/configuration.md +52 -0
  62. package/dist/template/.pi/skills/cloudflare/references/ai-search/gotchas.md +41 -0
  63. package/dist/template/.pi/skills/cloudflare/references/ai-search/patterns.md +45 -0
  64. package/dist/template/.pi/skills/cloudflare/references/analytics-engine/README.md +14 -0
  65. package/dist/template/.pi/skills/cloudflare/references/analytics-engine/api.md +27 -0
  66. package/dist/template/.pi/skills/cloudflare/references/analytics-engine/configuration.md +45 -0
  67. package/dist/template/.pi/skills/cloudflare/references/analytics-engine/gotchas.md +3 -0
  68. package/dist/template/.pi/skills/cloudflare/references/analytics-engine/patterns.md +36 -0
  69. package/dist/template/.pi/skills/cloudflare/references/api/README.md +21 -0
  70. package/dist/template/.pi/skills/cloudflare/references/api/api.md +31 -0
  71. package/dist/template/.pi/skills/cloudflare/references/api/configuration.md +20 -0
  72. package/dist/template/.pi/skills/cloudflare/references/api/gotchas.md +28 -0
  73. package/dist/template/.pi/skills/cloudflare/references/api/patterns.md +47 -0
  74. package/dist/template/.pi/skills/cloudflare/references/api-shield/README.md +20 -0
  75. package/dist/template/.pi/skills/cloudflare/references/api-shield/api.md +78 -0
  76. package/dist/template/.pi/skills/cloudflare/references/api-shield/configuration.md +128 -0
  77. package/dist/template/.pi/skills/cloudflare/references/api-shield/gotchas.md +51 -0
  78. package/dist/template/.pi/skills/cloudflare/references/api-shield/patterns.md +145 -0
  79. package/dist/template/.pi/skills/cloudflare/references/argo-smart-routing/README.md +16 -0
  80. package/dist/template/.pi/skills/cloudflare/references/argo-smart-routing/api.md +50 -0
  81. package/dist/template/.pi/skills/cloudflare/references/argo-smart-routing/configuration.md +53 -0
  82. package/dist/template/.pi/skills/cloudflare/references/argo-smart-routing/gotchas.md +16 -0
  83. package/dist/template/.pi/skills/cloudflare/references/argo-smart-routing/patterns.md +45 -0
  84. package/dist/template/.pi/skills/cloudflare/references/bindings/README.md +14 -0
  85. package/dist/template/.pi/skills/cloudflare/references/bindings/api.md +3 -0
  86. package/dist/template/.pi/skills/cloudflare/references/bindings/configuration.md +58 -0
  87. package/dist/template/.pi/skills/cloudflare/references/bindings/gotchas.md +35 -0
  88. package/dist/template/.pi/skills/cloudflare/references/bindings/patterns.md +37 -0
  89. package/dist/template/.pi/skills/cloudflare/references/bot-management/README.md +71 -0
  90. package/dist/template/.pi/skills/cloudflare/references/bot-management/api.md +168 -0
  91. package/dist/template/.pi/skills/cloudflare/references/bot-management/configuration.md +114 -0
  92. package/dist/template/.pi/skills/cloudflare/references/bot-management/gotchas.md +99 -0
  93. package/dist/template/.pi/skills/cloudflare/references/bot-management/patterns.md +125 -0
  94. package/dist/template/.pi/skills/cloudflare/references/browser-rendering/README.md +16 -0
  95. package/dist/template/.pi/skills/cloudflare/references/browser-rendering/api.md +54 -0
  96. package/dist/template/.pi/skills/cloudflare/references/browser-rendering/configuration.md +47 -0
  97. package/dist/template/.pi/skills/cloudflare/references/browser-rendering/gotchas.md +29 -0
  98. package/dist/template/.pi/skills/cloudflare/references/browser-rendering/patterns.md +29 -0
  99. package/dist/template/.pi/skills/cloudflare/references/c3/README.md +264 -0
  100. package/dist/template/.pi/skills/cloudflare/references/cache-reserve/README.md +93 -0
  101. package/dist/template/.pi/skills/cloudflare/references/cache-reserve/api.md +176 -0
  102. package/dist/template/.pi/skills/cloudflare/references/cache-reserve/configuration.md +164 -0
  103. package/dist/template/.pi/skills/cloudflare/references/cache-reserve/gotchas.md +203 -0
  104. package/dist/template/.pi/skills/cloudflare/references/cache-reserve/patterns.md +180 -0
  105. package/dist/template/.pi/skills/cloudflare/references/containers/README.md +16 -0
  106. package/dist/template/.pi/skills/cloudflare/references/containers/api.md +43 -0
  107. package/dist/template/.pi/skills/cloudflare/references/containers/configuration.md +56 -0
  108. package/dist/template/.pi/skills/cloudflare/references/containers/gotchas.md +21 -0
  109. package/dist/template/.pi/skills/cloudflare/references/containers/patterns.md +40 -0
  110. package/dist/template/.pi/skills/cloudflare/references/cron-triggers/README.md +85 -0
  111. package/dist/template/.pi/skills/cloudflare/references/cron-triggers/api.md +198 -0
  112. package/dist/template/.pi/skills/cloudflare/references/cron-triggers/configuration.md +151 -0
  113. package/dist/template/.pi/skills/cloudflare/references/cron-triggers/gotchas.md +129 -0
  114. package/dist/template/.pi/skills/cloudflare/references/cron-triggers/patterns.md +122 -0
  115. package/dist/template/.pi/skills/cloudflare/references/d1/README.md +92 -0
  116. package/dist/template/.pi/skills/cloudflare/references/d1/api.md +141 -0
  117. package/dist/template/.pi/skills/cloudflare/references/d1/configuration.md +127 -0
  118. package/dist/template/.pi/skills/cloudflare/references/d1/gotchas.md +70 -0
  119. package/dist/template/.pi/skills/cloudflare/references/d1/patterns.md +144 -0
  120. package/dist/template/.pi/skills/cloudflare/references/ddos/README.md +34 -0
  121. package/dist/template/.pi/skills/cloudflare/references/ddos/api.md +136 -0
  122. package/dist/template/.pi/skills/cloudflare/references/ddos/configuration.md +67 -0
  123. package/dist/template/.pi/skills/cloudflare/references/ddos/gotchas.md +114 -0
  124. package/dist/template/.pi/skills/cloudflare/references/ddos/patterns.md +158 -0
  125. package/dist/template/.pi/skills/cloudflare/references/do-storage/README.md +62 -0
  126. package/dist/template/.pi/skills/cloudflare/references/do-storage/api.md +89 -0
  127. package/dist/template/.pi/skills/cloudflare/references/do-storage/configuration.md +116 -0
  128. package/dist/template/.pi/skills/cloudflare/references/do-storage/gotchas.md +93 -0
  129. package/dist/template/.pi/skills/cloudflare/references/do-storage/patterns.md +112 -0
  130. package/dist/template/.pi/skills/cloudflare/references/durable-objects/README.md +125 -0
  131. package/dist/template/.pi/skills/cloudflare/references/durable-objects/api.md +152 -0
  132. package/dist/template/.pi/skills/cloudflare/references/durable-objects/configuration.md +148 -0
  133. package/dist/template/.pi/skills/cloudflare/references/durable-objects/gotchas.md +158 -0
  134. package/dist/template/.pi/skills/cloudflare/references/durable-objects/patterns.md +255 -0
  135. package/dist/template/.pi/skills/cloudflare/references/email-routing/README.md +18 -0
  136. package/dist/template/.pi/skills/cloudflare/references/email-routing/api.md +46 -0
  137. package/dist/template/.pi/skills/cloudflare/references/email-routing/configuration.md +63 -0
  138. package/dist/template/.pi/skills/cloudflare/references/email-routing/gotchas.md +16 -0
  139. package/dist/template/.pi/skills/cloudflare/references/email-routing/patterns.md +46 -0
  140. package/dist/template/.pi/skills/cloudflare/references/email-workers/README.md +598 -0
  141. package/dist/template/.pi/skills/cloudflare/references/hyperdrive/README.md +62 -0
  142. package/dist/template/.pi/skills/cloudflare/references/hyperdrive/api.md +137 -0
  143. package/dist/template/.pi/skills/cloudflare/references/hyperdrive/configuration.md +133 -0
  144. package/dist/template/.pi/skills/cloudflare/references/hyperdrive/gotchas.md +184 -0
  145. package/dist/template/.pi/skills/cloudflare/references/hyperdrive/patterns.md +176 -0
  146. package/dist/template/.pi/skills/cloudflare/references/images/README.md +14 -0
  147. package/dist/template/.pi/skills/cloudflare/references/images/api.md +3 -0
  148. package/dist/template/.pi/skills/cloudflare/references/images/configuration.md +45 -0
  149. package/dist/template/.pi/skills/cloudflare/references/images/gotchas.md +23 -0
  150. package/dist/template/.pi/skills/cloudflare/references/images/patterns.md +31 -0
  151. package/dist/template/.pi/skills/cloudflare/references/kv/README.md +60 -0
  152. package/dist/template/.pi/skills/cloudflare/references/kv/api.md +114 -0
  153. package/dist/template/.pi/skills/cloudflare/references/kv/configuration.md +92 -0
  154. package/dist/template/.pi/skills/cloudflare/references/kv/gotchas.md +117 -0
  155. package/dist/template/.pi/skills/cloudflare/references/kv/patterns.md +139 -0
  156. package/dist/template/.pi/skills/cloudflare/references/miniflare/README.md +64 -0
  157. package/dist/template/.pi/skills/cloudflare/references/miniflare/api.md +144 -0
  158. package/dist/template/.pi/skills/cloudflare/references/miniflare/configuration.md +203 -0
  159. package/dist/template/.pi/skills/cloudflare/references/miniflare/gotchas.md +187 -0
  160. package/dist/template/.pi/skills/cloudflare/references/miniflare/patterns.md +211 -0
  161. package/dist/template/.pi/skills/cloudflare/references/network-interconnect/README.md +60 -0
  162. package/dist/template/.pi/skills/cloudflare/references/network-interconnect/api.md +240 -0
  163. package/dist/template/.pi/skills/cloudflare/references/network-interconnect/configuration.md +127 -0
  164. package/dist/template/.pi/skills/cloudflare/references/network-interconnect/gotchas.md +171 -0
  165. package/dist/template/.pi/skills/cloudflare/references/network-interconnect/patterns.md +171 -0
  166. package/dist/template/.pi/skills/cloudflare/references/observability/README.md +18 -0
  167. package/dist/template/.pi/skills/cloudflare/references/observability/api.md +51 -0
  168. package/dist/template/.pi/skills/cloudflare/references/observability/configuration.md +60 -0
  169. package/dist/template/.pi/skills/cloudflare/references/observability/gotchas.md +36 -0
  170. package/dist/template/.pi/skills/cloudflare/references/observability/patterns.md +42 -0
  171. package/dist/template/.pi/skills/cloudflare/references/pages/README.md +76 -0
  172. package/dist/template/.pi/skills/cloudflare/references/pages/api.md +200 -0
  173. package/dist/template/.pi/skills/cloudflare/references/pages/configuration.md +228 -0
  174. package/dist/template/.pi/skills/cloudflare/references/pages/gotchas.md +161 -0
  175. package/dist/template/.pi/skills/cloudflare/references/pages/patterns.md +145 -0
  176. package/dist/template/.pi/skills/cloudflare/references/pages-functions/README.md +57 -0
  177. package/dist/template/.pi/skills/cloudflare/references/pages-functions/api.md +201 -0
  178. package/dist/template/.pi/skills/cloudflare/references/pages-functions/configuration.md +159 -0
  179. package/dist/template/.pi/skills/cloudflare/references/pages-functions/gotchas.md +151 -0
  180. package/dist/template/.pi/skills/cloudflare/references/pages-functions/patterns.md +190 -0
  181. package/dist/template/.pi/skills/cloudflare/references/pipelines/README.md +664 -0
  182. package/dist/template/.pi/skills/cloudflare/references/pulumi/README.md +107 -0
  183. package/dist/template/.pi/skills/cloudflare/references/pulumi/api.md +194 -0
  184. package/dist/template/.pi/skills/cloudflare/references/pulumi/configuration.md +216 -0
  185. package/dist/template/.pi/skills/cloudflare/references/pulumi/gotchas.md +223 -0
  186. package/dist/template/.pi/skills/cloudflare/references/pulumi/patterns.md +139 -0
  187. package/dist/template/.pi/skills/cloudflare/references/queues/README.md +69 -0
  188. package/dist/template/.pi/skills/cloudflare/references/queues/api.md +138 -0
  189. package/dist/template/.pi/skills/cloudflare/references/queues/configuration.md +125 -0
  190. package/dist/template/.pi/skills/cloudflare/references/queues/gotchas.md +112 -0
  191. package/dist/template/.pi/skills/cloudflare/references/queues/patterns.md +155 -0
  192. package/dist/template/.pi/skills/cloudflare/references/r2/README.md +61 -0
  193. package/dist/template/.pi/skills/cloudflare/references/r2/api.md +127 -0
  194. package/dist/template/.pi/skills/cloudflare/references/r2/configuration.md +76 -0
  195. package/dist/template/.pi/skills/cloudflare/references/r2/gotchas.md +94 -0
  196. package/dist/template/.pi/skills/cloudflare/references/r2/patterns.md +127 -0
  197. package/dist/template/.pi/skills/cloudflare/references/r2-data-catalog/README.md +18 -0
  198. package/dist/template/.pi/skills/cloudflare/references/r2-data-catalog/api.md +29 -0
  199. package/dist/template/.pi/skills/cloudflare/references/r2-data-catalog/configuration.md +39 -0
  200. package/dist/template/.pi/skills/cloudflare/references/r2-data-catalog/gotchas.md +20 -0
  201. package/dist/template/.pi/skills/cloudflare/references/r2-data-catalog/patterns.md +46 -0
  202. package/dist/template/.pi/skills/cloudflare/references/r2-sql/README.md +512 -0
  203. package/dist/template/.pi/skills/cloudflare/references/realtime-sfu/README.md +21 -0
  204. package/dist/template/.pi/skills/cloudflare/references/realtime-sfu/api.md +135 -0
  205. package/dist/template/.pi/skills/cloudflare/references/realtime-sfu/configuration.md +63 -0
  206. package/dist/template/.pi/skills/cloudflare/references/realtime-sfu/gotchas.md +75 -0
  207. package/dist/template/.pi/skills/cloudflare/references/realtime-sfu/patterns.md +102 -0
  208. package/dist/template/.pi/skills/cloudflare/references/realtimekit/README.md +81 -0
  209. package/dist/template/.pi/skills/cloudflare/references/realtimekit/api.md +164 -0
  210. package/dist/template/.pi/skills/cloudflare/references/realtimekit/configuration.md +147 -0
  211. package/dist/template/.pi/skills/cloudflare/references/realtimekit/gotchas.md +172 -0
  212. package/dist/template/.pi/skills/cloudflare/references/realtimekit/patterns.md +155 -0
  213. package/dist/template/.pi/skills/cloudflare/references/sandbox/README.md +90 -0
  214. package/dist/template/.pi/skills/cloudflare/references/sandbox/api.md +178 -0
  215. package/dist/template/.pi/skills/cloudflare/references/sandbox/configuration.md +131 -0
  216. package/dist/template/.pi/skills/cloudflare/references/sandbox/gotchas.md +156 -0
  217. package/dist/template/.pi/skills/cloudflare/references/sandbox/patterns.md +203 -0
  218. package/dist/template/.pi/skills/cloudflare/references/secrets-store/README.md +58 -0
  219. package/dist/template/.pi/skills/cloudflare/references/secrets-store/api.md +182 -0
  220. package/dist/template/.pi/skills/cloudflare/references/secrets-store/configuration.md +140 -0
  221. package/dist/template/.pi/skills/cloudflare/references/secrets-store/gotchas.md +129 -0
  222. package/dist/template/.pi/skills/cloudflare/references/secrets-store/patterns.md +218 -0
  223. package/dist/template/.pi/skills/cloudflare/references/smart-placement/README.md +91 -0
  224. package/dist/template/.pi/skills/cloudflare/references/smart-placement/api.md +139 -0
  225. package/dist/template/.pi/skills/cloudflare/references/smart-placement/configuration.md +129 -0
  226. package/dist/template/.pi/skills/cloudflare/references/smart-placement/gotchas.md +87 -0
  227. package/dist/template/.pi/skills/cloudflare/references/smart-placement/patterns.md +135 -0
  228. package/dist/template/.pi/skills/cloudflare/references/snippets/README.md +15 -0
  229. package/dist/template/.pi/skills/cloudflare/references/snippets/api.md +47 -0
  230. package/dist/template/.pi/skills/cloudflare/references/snippets/configuration.md +33 -0
  231. package/dist/template/.pi/skills/cloudflare/references/snippets/gotchas.md +21 -0
  232. package/dist/template/.pi/skills/cloudflare/references/snippets/patterns.md +34 -0
  233. package/dist/template/.pi/skills/cloudflare/references/spectrum/README.md +16 -0
  234. package/dist/template/.pi/skills/cloudflare/references/spectrum/api.md +24 -0
  235. package/dist/template/.pi/skills/cloudflare/references/spectrum/configuration.md +43 -0
  236. package/dist/template/.pi/skills/cloudflare/references/spectrum/gotchas.md +42 -0
  237. package/dist/template/.pi/skills/cloudflare/references/spectrum/patterns.md +40 -0
  238. package/dist/template/.pi/skills/cloudflare/references/static-assets/README.md +14 -0
  239. package/dist/template/.pi/skills/cloudflare/references/static-assets/api.md +3 -0
  240. package/dist/template/.pi/skills/cloudflare/references/static-assets/configuration.md +47 -0
  241. package/dist/template/.pi/skills/cloudflare/references/static-assets/gotchas.md +44 -0
  242. package/dist/template/.pi/skills/cloudflare/references/static-assets/patterns.md +42 -0
  243. package/dist/template/.pi/skills/cloudflare/references/stream/README.md +103 -0
  244. package/dist/template/.pi/skills/cloudflare/references/stream/api.md +204 -0
  245. package/dist/template/.pi/skills/cloudflare/references/stream/configuration.md +127 -0
  246. package/dist/template/.pi/skills/cloudflare/references/stream/gotchas.md +131 -0
  247. package/dist/template/.pi/skills/cloudflare/references/stream/patterns.md +152 -0
  248. package/dist/template/.pi/skills/cloudflare/references/tail-workers/README.md +640 -0
  249. package/dist/template/.pi/skills/cloudflare/references/terraform/README.md +76 -0
  250. package/dist/template/.pi/skills/cloudflare/references/terraform/api.md +159 -0
  251. package/dist/template/.pi/skills/cloudflare/references/terraform/configuration.md +156 -0
  252. package/dist/template/.pi/skills/cloudflare/references/terraform/gotchas.md +207 -0
  253. package/dist/template/.pi/skills/cloudflare/references/terraform/patterns.md +135 -0
  254. package/dist/template/.pi/skills/cloudflare/references/tunnel/README.md +82 -0
  255. package/dist/template/.pi/skills/cloudflare/references/tunnel/api.md +105 -0
  256. package/dist/template/.pi/skills/cloudflare/references/tunnel/configuration.md +113 -0
  257. package/dist/template/.pi/skills/cloudflare/references/tunnel/gotchas.md +115 -0
  258. package/dist/template/.pi/skills/cloudflare/references/tunnel/patterns.md +157 -0
  259. package/dist/template/.pi/skills/cloudflare/references/turn/README.md +699 -0
  260. package/dist/template/.pi/skills/cloudflare/references/turnstile/README.md +14 -0
  261. package/dist/template/.pi/skills/cloudflare/references/turnstile/api.md +3 -0
  262. package/dist/template/.pi/skills/cloudflare/references/turnstile/configuration.md +19 -0
  263. package/dist/template/.pi/skills/cloudflare/references/turnstile/gotchas.md +27 -0
  264. package/dist/template/.pi/skills/cloudflare/references/turnstile/patterns.md +41 -0
  265. package/dist/template/.pi/skills/cloudflare/references/vectorize/README.md +682 -0
  266. package/dist/template/.pi/skills/cloudflare/references/waf/README.md +14 -0
  267. package/dist/template/.pi/skills/cloudflare/references/waf/api.md +3 -0
  268. package/dist/template/.pi/skills/cloudflare/references/waf/configuration.md +44 -0
  269. package/dist/template/.pi/skills/cloudflare/references/waf/gotchas.md +24 -0
  270. package/dist/template/.pi/skills/cloudflare/references/waf/patterns.md +29 -0
  271. package/dist/template/.pi/skills/cloudflare/references/web-analytics/README.md +19 -0
  272. package/dist/template/.pi/skills/cloudflare/references/web-analytics/api.md +52 -0
  273. package/dist/template/.pi/skills/cloudflare/references/web-analytics/configuration.md +31 -0
  274. package/dist/template/.pi/skills/cloudflare/references/web-analytics/gotchas.md +28 -0
  275. package/dist/template/.pi/skills/cloudflare/references/web-analytics/patterns.md +52 -0
  276. package/dist/template/.pi/skills/cloudflare/references/workerd/README.md +47 -0
  277. package/dist/template/.pi/skills/cloudflare/references/workerd/api.md +199 -0
  278. package/dist/template/.pi/skills/cloudflare/references/workerd/configuration.md +185 -0
  279. package/dist/template/.pi/skills/cloudflare/references/workerd/gotchas.md +203 -0
  280. package/dist/template/.pi/skills/cloudflare/references/workerd/patterns.md +216 -0
  281. package/dist/template/.pi/skills/cloudflare/references/workers/README.md +96 -0
  282. package/dist/template/.pi/skills/cloudflare/references/workers/api.md +137 -0
  283. package/dist/template/.pi/skills/cloudflare/references/workers/configuration.md +147 -0
  284. package/dist/template/.pi/skills/cloudflare/references/workers/gotchas.md +99 -0
  285. package/dist/template/.pi/skills/cloudflare/references/workers/patterns.md +149 -0
  286. package/dist/template/.pi/skills/cloudflare/references/workers-ai/README.md +116 -0
  287. package/dist/template/.pi/skills/cloudflare/references/workers-for-platforms/README.md +48 -0
  288. package/dist/template/.pi/skills/cloudflare/references/workers-for-platforms/api.md +169 -0
  289. package/dist/template/.pi/skills/cloudflare/references/workers-for-platforms/configuration.md +136 -0
  290. package/dist/template/.pi/skills/cloudflare/references/workers-for-platforms/gotchas.md +130 -0
  291. package/dist/template/.pi/skills/cloudflare/references/workers-for-platforms/patterns.md +170 -0
  292. package/dist/template/.pi/skills/cloudflare/references/workers-playground/README.md +16 -0
  293. package/dist/template/.pi/skills/cloudflare/references/workers-playground/api.md +20 -0
  294. package/dist/template/.pi/skills/cloudflare/references/workers-playground/configuration.md +3 -0
  295. package/dist/template/.pi/skills/cloudflare/references/workers-playground/gotchas.md +35 -0
  296. package/dist/template/.pi/skills/cloudflare/references/workers-playground/patterns.md +42 -0
  297. package/dist/template/.pi/skills/cloudflare/references/workers-vpc/README.md +579 -0
  298. package/dist/template/.pi/skills/cloudflare/references/workflows/README.md +62 -0
  299. package/dist/template/.pi/skills/cloudflare/references/workflows/api.md +125 -0
  300. package/dist/template/.pi/skills/cloudflare/references/workflows/configuration.md +177 -0
  301. package/dist/template/.pi/skills/cloudflare/references/workflows/gotchas.md +136 -0
  302. package/dist/template/.pi/skills/cloudflare/references/workflows/patterns.md +132 -0
  303. package/dist/template/.pi/skills/cloudflare/references/wrangler/README.md +90 -0
  304. package/dist/template/.pi/skills/cloudflare/references/wrangler/api.md +140 -0
  305. package/dist/template/.pi/skills/cloudflare/references/wrangler/configuration.md +128 -0
  306. package/dist/template/.pi/skills/cloudflare/references/wrangler/gotchas.md +93 -0
  307. package/dist/template/.pi/skills/cloudflare/references/wrangler/patterns.md +150 -0
  308. package/dist/template/.pi/skills/cloudflare/references/zaraz/README.md +360 -0
  309. package/dist/template/.pi/skills/code-cleanup/SKILL.md +232 -0
  310. package/dist/template/.pi/skills/code-review-and-quality/SKILL.md +344 -0
  311. package/dist/template/.pi/skills/code-simplification/SKILL.md +348 -0
  312. package/dist/template/.pi/skills/context-engineering/SKILL.md +296 -0
  313. package/dist/template/.pi/skills/core-data-expert/SKILL.md +117 -0
  314. package/dist/template/.pi/skills/core-data-expert/references/batch-operations.md +543 -0
  315. package/dist/template/.pi/skills/core-data-expert/references/cloudkit-integration.md +259 -0
  316. package/dist/template/.pi/skills/core-data-expert/references/concurrency.md +522 -0
  317. package/dist/template/.pi/skills/core-data-expert/references/fetch-requests.md +643 -0
  318. package/dist/template/.pi/skills/core-data-expert/references/glossary.md +233 -0
  319. package/dist/template/.pi/skills/core-data-expert/references/migration.md +393 -0
  320. package/dist/template/.pi/skills/core-data-expert/references/model-configuration.md +597 -0
  321. package/dist/template/.pi/skills/core-data-expert/references/performance.md +300 -0
  322. package/dist/template/.pi/skills/core-data-expert/references/persistent-history.md +553 -0
  323. package/dist/template/.pi/skills/core-data-expert/references/project-audit.md +60 -0
  324. package/dist/template/.pi/skills/core-data-expert/references/saving.md +574 -0
  325. package/dist/template/.pi/skills/core-data-expert/references/stack-setup.md +625 -0
  326. package/dist/template/.pi/skills/core-data-expert/references/testing.md +300 -0
  327. package/dist/template/.pi/skills/core-data-expert/references/threading.md +589 -0
  328. package/dist/template/.pi/skills/debugging-and-error-recovery/SKILL.md +274 -0
  329. package/dist/template/.pi/skills/deep-module-design/SKILL.md +218 -0
  330. package/dist/template/.pi/skills/defense-in-depth/SKILL.md +161 -0
  331. package/dist/template/.pi/skills/deprecation-and-migration/SKILL.md +186 -0
  332. package/dist/template/.pi/skills/design-system-audit/SKILL.md +176 -0
  333. package/dist/template/.pi/skills/design-taste-frontend/SKILL.md +255 -0
  334. package/dist/template/.pi/skills/development-lifecycle/SKILL.md +285 -0
  335. package/dist/template/.pi/skills/documentation-and-adrs/SKILL.md +217 -0
  336. package/dist/template/.pi/skills/doubt-driven-development/SKILL.md +207 -0
  337. package/dist/template/.pi/skills/fallow/SKILL.md +457 -0
  338. package/dist/template/.pi/skills/fallow/references/cli-reference.md +1905 -0
  339. package/dist/template/.pi/skills/fallow/references/gotchas.md +644 -0
  340. package/dist/template/.pi/skills/fallow/references/patterns.md +791 -0
  341. package/dist/template/.pi/skills/figma/SKILL.md +241 -0
  342. package/dist/template/.pi/skills/frontend-design/SKILL.md +262 -0
  343. package/dist/template/.pi/skills/frontend-design/references/animation/motion-advanced.md +224 -0
  344. package/dist/template/.pi/skills/frontend-design/references/animation/motion-core.md +181 -0
  345. package/dist/template/.pi/skills/frontend-design/references/canvas/execution.md +90 -0
  346. package/dist/template/.pi/skills/frontend-design/references/canvas/philosophy.md +94 -0
  347. package/dist/template/.pi/skills/frontend-design/references/design/color-system.md +111 -0
  348. package/dist/template/.pi/skills/frontend-design/references/design/interaction.md +149 -0
  349. package/dist/template/.pi/skills/frontend-design/references/design/typography-rules.md +106 -0
  350. package/dist/template/.pi/skills/frontend-design/references/design/ux-writing.md +99 -0
  351. package/dist/template/.pi/skills/frontend-design/references/shadcn/accessibility.md +132 -0
  352. package/dist/template/.pi/skills/frontend-design/references/shadcn/core-components.md +153 -0
  353. package/dist/template/.pi/skills/frontend-design/references/shadcn/form-components.md +158 -0
  354. package/dist/template/.pi/skills/frontend-design/references/shadcn/setup.md +69 -0
  355. package/dist/template/.pi/skills/frontend-design/references/shadcn/theming.md +152 -0
  356. package/dist/template/.pi/skills/frontend-design/references/tailwind/responsive.md +112 -0
  357. package/dist/template/.pi/skills/frontend-design/references/tailwind/utilities-layout.md +134 -0
  358. package/dist/template/.pi/skills/frontend-design/references/tailwind/utilities-styling.md +165 -0
  359. package/dist/template/.pi/skills/frontend-design/references/tailwind/v4-config.md +147 -0
  360. package/dist/template/.pi/skills/frontend-design/references/tailwind/v4-features.md +128 -0
  361. package/dist/template/.pi/skills/frontend-ui-engineering/SKILL.md +217 -0
  362. package/dist/template/.pi/skills/gemini-large-context/SKILL.md +238 -0
  363. package/dist/template/.pi/skills/git-workflow-and-versioning/SKILL.md +217 -0
  364. package/dist/template/.pi/skills/grill-me/SKILL.md +162 -0
  365. package/dist/template/.pi/skills/high-end-visual-design/SKILL.md +128 -0
  366. package/dist/template/.pi/skills/idea-refine/SKILL.md +195 -0
  367. package/dist/template/.pi/skills/idea-refine/examples.md +62 -0
  368. package/dist/template/.pi/skills/idea-refine/frameworks.md +63 -0
  369. package/dist/template/.pi/skills/idea-refine/refinement-criteria.md +56 -0
  370. package/dist/template/.pi/skills/incremental-implementation/SKILL.md +190 -0
  371. package/dist/template/.pi/skills/industrial-brutalist-ui/SKILL.md +131 -0
  372. package/dist/template/.pi/skills/interview-me/SKILL.md +227 -0
  373. package/dist/template/.pi/skills/jira/SKILL.md +306 -0
  374. package/dist/template/.pi/skills/loop-audit/SKILL.md +141 -0
  375. package/dist/template/.pi/skills/loop-cost/SKILL.md +130 -0
  376. package/dist/template/.pi/skills/loop-engineering/SKILL.md +175 -0
  377. package/dist/template/.pi/skills/minimalist-ui/SKILL.md +124 -0
  378. package/dist/template/.pi/skills/mockup-to-code/SKILL.md +197 -0
  379. package/dist/template/.pi/skills/observability-and-instrumentation/SKILL.md +202 -0
  380. package/dist/template/.pi/skills/opensrc/SKILL.md +297 -0
  381. package/dist/template/.pi/skills/opensrc/references/architecture.md +176 -0
  382. package/dist/template/.pi/skills/opensrc/references/cli-usage.md +176 -0
  383. package/dist/template/.pi/skills/opensrc/references/registry-support.md +137 -0
  384. package/dist/template/.pi/skills/pdf-extract/SKILL.md +461 -0
  385. package/dist/template/.pi/skills/performance-optimization/SKILL.md +233 -0
  386. package/dist/template/.pi/skills/performance-optimization/references/performance-checklist.md +85 -0
  387. package/dist/template/.pi/skills/planning-and-task-breakdown/SKILL.md +204 -0
  388. package/dist/template/.pi/skills/playwright/SKILL.md +404 -0
  389. package/dist/template/.pi/skills/playwright/references/agent-browser-cli.md +405 -0
  390. package/dist/template/.pi/skills/polar/SKILL.md +125 -0
  391. package/dist/template/.pi/skills/react-best-practices/SKILL.md +156 -0
  392. package/dist/template/.pi/skills/react-best-practices/rules/_sections.md +46 -0
  393. package/dist/template/.pi/skills/react-best-practices/rules/_template.md +28 -0
  394. package/dist/template/.pi/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  395. package/dist/template/.pi/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  396. package/dist/template/.pi/skills/react-best-practices/rules/async-api-routes.md +38 -0
  397. package/dist/template/.pi/skills/react-best-practices/rules/async-defer-await.md +80 -0
  398. package/dist/template/.pi/skills/react-best-practices/rules/async-dependencies.md +36 -0
  399. package/dist/template/.pi/skills/react-best-practices/rules/async-parallel.md +28 -0
  400. package/dist/template/.pi/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  401. package/dist/template/.pi/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  402. package/dist/template/.pi/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  403. package/dist/template/.pi/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  404. package/dist/template/.pi/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  405. package/dist/template/.pi/skills/react-best-practices/rules/bundle-preload.md +50 -0
  406. package/dist/template/.pi/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  407. package/dist/template/.pi/skills/react-best-practices/rules/client-localstorage-schema.md +71 -0
  408. package/dist/template/.pi/skills/react-best-practices/rules/client-passive-event-listeners.md +48 -0
  409. package/dist/template/.pi/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  410. package/dist/template/.pi/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  411. package/dist/template/.pi/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  412. package/dist/template/.pi/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  413. package/dist/template/.pi/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  414. package/dist/template/.pi/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  415. package/dist/template/.pi/skills/react-best-practices/rules/js-early-exit.md +50 -0
  416. package/dist/template/.pi/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  417. package/dist/template/.pi/skills/react-best-practices/rules/js-index-maps.md +37 -0
  418. package/dist/template/.pi/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  419. package/dist/template/.pi/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  420. package/dist/template/.pi/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  421. package/dist/template/.pi/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  422. package/dist/template/.pi/skills/react-best-practices/rules/rendering-activity.md +26 -0
  423. package/dist/template/.pi/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  424. package/dist/template/.pi/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  425. package/dist/template/.pi/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  426. package/dist/template/.pi/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  427. package/dist/template/.pi/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  428. package/dist/template/.pi/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  429. package/dist/template/.pi/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  430. package/dist/template/.pi/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  431. package/dist/template/.pi/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  432. package/dist/template/.pi/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  433. package/dist/template/.pi/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  434. package/dist/template/.pi/skills/react-best-practices/rules/rerender-memo.md +44 -0
  435. package/dist/template/.pi/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  436. package/dist/template/.pi/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  437. package/dist/template/.pi/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  438. package/dist/template/.pi/skills/react-best-practices/rules/server-cache-react.md +76 -0
  439. package/dist/template/.pi/skills/react-best-practices/rules/server-parallel-fetching.md +83 -0
  440. package/dist/template/.pi/skills/react-best-practices/rules/server-serialization.md +38 -0
  441. package/dist/template/.pi/skills/redesign-existing-projects/SKILL.md +217 -0
  442. package/dist/template/.pi/skills/resend/SKILL.md +196 -0
  443. package/dist/template/.pi/skills/resend/references/react-email.md +287 -0
  444. package/dist/template/.pi/skills/resend/references/receive-email.md +248 -0
  445. package/dist/template/.pi/skills/resend/references/send-email.md +318 -0
  446. package/dist/template/.pi/skills/root-cause-tracing/SKILL.md +216 -0
  447. package/dist/template/.pi/skills/security-and-hardening/SKILL.md +293 -0
  448. package/dist/template/.pi/skills/security-and-hardening/references/security-checklist.md +105 -0
  449. package/dist/template/.pi/skills/shipping-and-launch/SKILL.md +101 -0
  450. package/dist/template/.pi/skills/source-driven-development/SKILL.md +108 -0
  451. package/dist/template/.pi/skills/spec-driven-development/SKILL.md +177 -0
  452. package/dist/template/.pi/skills/srcwalk/SKILL.md +182 -0
  453. package/dist/template/.pi/skills/subagent-driven-development/SKILL.md +253 -0
  454. package/dist/template/.pi/skills/supabase/SKILL.md +153 -0
  455. package/dist/template/.pi/skills/supabase-postgres-best-practices/SKILL.md +88 -0
  456. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/advanced-full-text-search.md +55 -0
  457. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
  458. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/conn-idle-timeout.md +46 -0
  459. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/conn-limits.md +44 -0
  460. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/conn-pooling.md +41 -0
  461. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/conn-prepared-statements.md +46 -0
  462. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/data-batch-inserts.md +54 -0
  463. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/data-n-plus-one.md +53 -0
  464. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/data-pagination.md +50 -0
  465. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/data-upsert.md +50 -0
  466. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/lock-advisory.md +56 -0
  467. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
  468. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/lock-short-transactions.md +50 -0
  469. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/lock-skip-locked.md +54 -0
  470. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
  471. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
  472. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
  473. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/query-composite-indexes.md +44 -0
  474. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/query-covering-indexes.md +40 -0
  475. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/query-index-types.md +45 -0
  476. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/query-missing-indexes.md +43 -0
  477. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/query-partial-indexes.md +45 -0
  478. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/schema-data-types.md +46 -0
  479. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
  480. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
  481. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/schema-partitioning.md +55 -0
  482. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/schema-primary-keys.md +61 -0
  483. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/security-privileges.md +54 -0
  484. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/security-rls-basics.md +50 -0
  485. package/dist/template/.pi/skills/supabase-postgres-best-practices/rules/security-rls-performance.md +57 -0
  486. package/dist/template/.pi/skills/swift-concurrency/SKILL.md +290 -0
  487. package/dist/template/.pi/skills/swift-concurrency/references/actors.md +640 -0
  488. package/dist/template/.pi/skills/swift-concurrency/references/async-algorithms.md +822 -0
  489. package/dist/template/.pi/skills/swift-concurrency/references/async-await-basics.md +249 -0
  490. package/dist/template/.pi/skills/swift-concurrency/references/async-sequences.md +670 -0
  491. package/dist/template/.pi/skills/swift-concurrency/references/core-data.md +533 -0
  492. package/dist/template/.pi/skills/swift-concurrency/references/glossary.md +128 -0
  493. package/dist/template/.pi/skills/swift-concurrency/references/linting.md +142 -0
  494. package/dist/template/.pi/skills/swift-concurrency/references/memory-management.md +542 -0
  495. package/dist/template/.pi/skills/swift-concurrency/references/migration.md +1076 -0
  496. package/dist/template/.pi/skills/swift-concurrency/references/performance.md +574 -0
  497. package/dist/template/.pi/skills/swift-concurrency/references/sendable.md +578 -0
  498. package/dist/template/.pi/skills/swift-concurrency/references/tasks.md +604 -0
  499. package/dist/template/.pi/skills/swift-concurrency/references/testing.md +565 -0
  500. package/dist/template/.pi/skills/swift-concurrency/references/threading.md +452 -0
  501. package/dist/template/.pi/skills/swiftui-expert-skill/SKILL.md +343 -0
  502. package/dist/template/.pi/skills/swiftui-expert-skill/references/animation-advanced.md +351 -0
  503. package/dist/template/.pi/skills/swiftui-expert-skill/references/animation-basics.md +284 -0
  504. package/dist/template/.pi/skills/swiftui-expert-skill/references/animation-transitions.md +326 -0
  505. package/dist/template/.pi/skills/swiftui-expert-skill/references/image-optimization.md +286 -0
  506. package/dist/template/.pi/skills/swiftui-expert-skill/references/layout-best-practices.md +312 -0
  507. package/dist/template/.pi/skills/swiftui-expert-skill/references/liquid-glass.md +377 -0
  508. package/dist/template/.pi/skills/swiftui-expert-skill/references/list-patterns.md +153 -0
  509. package/dist/template/.pi/skills/swiftui-expert-skill/references/modern-apis.md +400 -0
  510. package/dist/template/.pi/skills/swiftui-expert-skill/references/performance-patterns.md +377 -0
  511. package/dist/template/.pi/skills/swiftui-expert-skill/references/scroll-patterns.md +305 -0
  512. package/dist/template/.pi/skills/swiftui-expert-skill/references/sheet-navigation-patterns.md +292 -0
  513. package/dist/template/.pi/skills/swiftui-expert-skill/references/state-management.md +447 -0
  514. package/dist/template/.pi/skills/swiftui-expert-skill/references/text-formatting.md +285 -0
  515. package/dist/template/.pi/skills/swiftui-expert-skill/references/view-structure.md +276 -0
  516. package/dist/template/.pi/skills/test-driven-development/SKILL.md +400 -0
  517. package/dist/template/.pi/skills/test-driven-development/references/testing-patterns.md +155 -0
  518. package/dist/template/.pi/skills/testing-anti-patterns/SKILL.md +339 -0
  519. package/dist/template/.pi/skills/using-agent-skills/SKILL.md +371 -0
  520. package/dist/template/.pi/skills/using-git-worktrees/SKILL.md +275 -0
  521. package/dist/template/.pi/skills/vercel-deploy-claimable/SKILL.md +144 -0
  522. package/dist/template/.pi/skills/vercel-deploy-claimable/scripts/deploy.sh +249 -0
  523. package/dist/template/.pi/skills/verification-before-completion/SKILL.md +348 -0
  524. package/dist/template/.pi/skills/webclaw/SKILL.md +188 -0
  525. package/dist/template/.pi/skills/writing-skills/SKILL.md +329 -0
  526. package/dist/template/.pi/skills/writing-skills/references/anti-patterns.md +25 -0
  527. package/dist/template/.pi/skills/writing-skills/references/claude-search-optimization.md +140 -0
  528. package/dist/template/.pi/skills/writing-skills/references/discovery-workflow.md +11 -0
  529. package/dist/template/.pi/skills/writing-skills/references/file-organization.md +32 -0
  530. package/dist/template/.pi/skills/writing-skills/references/flowcharts-and-examples.md +57 -0
  531. package/dist/template/.pi/skills/writing-skills/references/rationalization-hardening.md +75 -0
  532. package/dist/template/.pi/skills/writing-skills/references/testing-methodology.md +397 -0
  533. package/dist/template/.pi/skills/writing-skills/references/testing-skill-types.md +52 -0
  534. package/dist/template/.pi/subagents.json +10 -0
  535. package/dist/template/.pi/templates/adr.md +47 -0
  536. package/dist/template/.pi/templates/design.md +61 -0
  537. package/dist/template/.pi/templates/loop-github-action.yml +162 -0
  538. package/dist/template/.pi/templates/loop-orchestrator.sh +514 -0
  539. package/dist/template/.pi/templates/loop-orchestrator.test.ts +332 -0
  540. package/dist/template/.pi/templates/loop-orchestrator.ts +936 -0
  541. package/dist/template/.pi/templates/loop-state.json +24 -0
  542. package/dist/template/.pi/templates/loop-state.md +98 -0
  543. package/dist/template/.pi/templates/loop-vision.md +110 -0
  544. package/dist/template/.pi/templates/prd.md +204 -0
  545. package/dist/template/.pi/templates/progress.md +55 -0
  546. package/dist/template/.pi/templates/project.md +58 -0
  547. package/dist/template/.pi/templates/proposal.md +40 -0
  548. package/dist/template/.pi/templates/review-state.json +20 -0
  549. package/dist/template/.pi/templates/roadmap.md +93 -0
  550. package/dist/template/.pi/templates/state.md +97 -0
  551. package/dist/template/.pi/templates/tasks.md +202 -0
  552. package/dist/template/.pi/templates/tech-stack.md +85 -0
  553. package/dist/template/.pi/templates/user.md +26 -0
  554. package/dist/template/.pi/workflows/INDEX.md +63 -0
  555. package/dist/template/.pi/workflows/audit-pattern.md +84 -0
  556. package/dist/template/.pi/workflows/batch-implement.md +121 -0
  557. package/dist/template/.pi/workflows/deep-research.md +89 -0
  558. package/dist/template/.pi/workflows/development-lifecycle-workflow.md +175 -0
  559. package/dist/template/.pi/workflows/garbage-collection.md +144 -0
  560. package/dist/template/.pi/workflows/quality-loop.md +211 -0
  561. package/package.json +57 -0
@@ -0,0 +1,331 @@
1
+ ---
2
+ name: skill-index
3
+ description: "Task-to-skill routing table with File Match + Keyword triggers, Phase/Risk gating, and multi-skill composition patterns. Maps common tasks to their matching skills. Serves as a discovery index for the agent to find the right skill to load."
4
+ ---
5
+
6
+ # Skills Index — Task → Skill Mapping
7
+
8
+ This file helps the agent (and humans) discover which skill to load for a given task. Skills are auto-loaded into the system prompt at startup (Tier 1), triggered by File/Keyword Match rules, or loaded on-demand via `/skill:<name>` (Tier 2). All 70 skills are available directly in `.pi/skills/`.
9
+
10
+ **How routing works:** File Match → Keyword Match → Quick Routing Table → Decision Tree (if ambiguous).
11
+
12
+ ---
13
+
14
+ ## File Match Triggers (Auto-Load)
15
+
16
+ When the agent edits files matching these patterns, the listed skills auto-load. The agent should `read` the full SKILL.md when the trigger fires.
17
+
18
+ | File pattern | Auto-load skill(s) | Why |
19
+ |-------------|-------------------|-----|
20
+ | `*.ts,*.tsx,*.jsx` | `react-best-practices`, `deep-module-design` | TypeScript/React best practices + structural quality |
21
+ | `*.swift,*.swiftui` | `swift-concurrency`, `swiftui-expert-skill` | Swift patterns + concurrency safety |
22
+ | `*.test.*,*.spec.*,__tests__/**` | `test-driven-development`, `testing-anti-patterns` | Test-first discipline + mock hygiene |
23
+ | `*.sql,migrations/**` | `supabase-postgres-best-practices` | Query performance + RLS |
24
+ | `.github/workflows/**,Dockerfile,docker-compose*.yml` | `ci-cd-and-automation` | Pipeline design + caching |
25
+ | `.pi/skills/*/SKILL.md` | `writing-skills` | Skill authoring best practices |
26
+ | `.pi/loops/**`,`loop-orchestrator.*`,`loop-guard.ts` | `loop-engineering`, `loop-audit` | Loop design/qualification + readiness scoring |
27
+ | `*.css,*.scss,*.less` | `frontend-design`, `design-taste-frontend` | Design system consistency |
28
+ | `*.tsx,*.jsx` | `frontend-ui-engineering` | Production-quality UI standards |
29
+ | `*.md,docs/**,ADR*.md` | `documentation-and-adrs` | Doc structure + ADR format |
30
+
31
+ ---
32
+
33
+ ## Keyword Match Triggers
34
+
35
+ When the user's prompt contains these keywords (case-insensitive), the listed skills are candidates. The agent should check the Quick Routing Table to refine.
36
+
37
+ | Keywords | Candidate skill(s) |
38
+ |----------|-------------------|
39
+ | deploy, ship, release, launch, production | `shipping-and-launch`, `vercel-deploy-claimable`, `cloudflare` |
40
+ | security, auth, token, secret, credential, vulnerability, OWASP | `security-and-hardening` |
41
+ | performance, slow, latency, optimize, profile, bundle size | `performance-optimization` |
42
+ | bug, fix, error, crash, broken, debug, trace | `debugging-and-error-recovery`, `root-cause-tracing` |
43
+ | refactor, cleanup, simplify, clean code, complex | `code-cleanup`, `code-simplification`, `deep-module-design` |
44
+ | test, spec, verify, assert, coverage, TDD | `test-driven-development`, `testing-anti-patterns` |
45
+ | review, audit, quality, check, PR | `code-review-and-quality`, `agent-code-quality-gate` |
46
+ | design, UI, component, style, layout, CSS, tailwind | `frontend-design`, `design-taste-frontend` |
47
+ | database, query, SQL, postgres, supabase, RLS, migration | `supabase`, `supabase-postgres-best-practices` |
48
+ | docs, documentation, README, ADR, changelog | `documentation-and-adrs` |
49
+ | commit, branch, merge, rebase, git, worktree | `git-workflow-and-versioning`, `using-git-worktrees` |
50
+ | context, memory, token, agent quality, degraded | `context-engineering` |
51
+ | brainstorm, idea, design, concept, explore, ideate, refine | `brainstorming`, `idea-refine`, `spec-driven-development` |
52
+ | interview, grill, are we sure, what do you want | `interview-me` |
53
+ | plan, break down, decompose, tasks, roadmap | `planning-and-task-breakdown` |
54
+ | logs, metrics, traces, alerts, monitoring, observability | `observability-and-instrumentation` |
55
+ | email, send, transactional, template, Resend | `resend` |
56
+ | payment, subscription, license, billing, checkout | `polar` |
57
+ | Figma, design token, mockup, screenshot to code | `figma`, `mockup-to-code` |
58
+ | Jira, Confluence, Atlassian, issue, ticket | `jira` |
59
+ | browser, e2e, screenshot, playwright, chrome | `playwright`, `chrome-devtools`, `browser-testing-with-devtools` |
60
+ | dependency, package, library, npm, PyPI, source | `opensrc` |
61
+ | loop, unattended loop, nightly triage, loop-readiness, loop-cost, loop-check, loop-review | `loop-engineering`, `loop-audit`, `loop-cost` |
62
+ | Swift, iOS, macOS, actor, async/await, Sendable | `swift-concurrency`, `swiftui-expert-skill`, `core-data-expert` |
63
+
64
+ ---
65
+
66
+ ## Tier 1 — Essential (always loaded)
67
+
68
+ | Skill | Use when | Phase | Risk |
69
+ |-------|----------|-------|------|
70
+ | `behavioral-kernel` | Work is drifting into silent assumptions, overengineering, drive-by refactors, or vague completion claims | All | Low |
71
+ | `defense-in-depth` | A bug is caused by invalid data; need to validate at multiple system layers | Build | Low |
72
+ | `incremental-implementation` | Implementing features or fixes; enforce thin vertical slices with verify-after-each | Build | Low |
73
+ | `verification-before-completion` | About to claim work is complete, fixed, or passing — before committing or creating PRs | Verify | Low |
74
+
75
+ ---
76
+
77
+ ## Tier 2 — On-Demand (load when relevant)
78
+
79
+ ### Process / Workflow
80
+
81
+ | Skill | Use when | Phase | Risk |
82
+ |-------|----------|-------|------|
83
+ | `using-agent-skills` | Discovering which skill applies to the current task — meta-skill for skill routing | Define | Low |
84
+ | `interview-me` | One-question-at-a-time interview extracting what the user actually wants (not what they think they want) until ~95% confidence | Define | Low |
85
+ | `idea-refine` | Structured divergent/convergent thinking — turn vague ideas into concrete one-pagers with "Not Doing" list | Define | Low |
86
+ | `brainstorming` | Refining ideas into designs before coding | Define | Low |
87
+ | `spec-driven-development` | Vague request → concrete spec before implementation | Define | Low |
88
+ | `grill-me` | Adversarial interrogation of ideas before implementation | Define | Low |
89
+ | `planning-and-task-breakdown` | Decomposing spec into verifiable tasks | Plan | Low |
90
+ | `source-driven-development` | Grounding decisions in official docs, source code, and cited references | Plan | Low |
91
+ | `subagent-driven-development` | Dispatching fresh subagent per task with review gates | Build | Medium |
92
+ | `development-lifecycle` | Full feature development lifecycle (brainstorm → design → specify → plan → implement → verify) | All | Low |
93
+ | `documentation-and-adrs` | Writing technical docs, ADRs, READMEs | Ship | Low |
94
+ | `code-review-and-quality` | Reviewing for correctness, security, maintainability | Review | Medium |
95
+ | `agent-code-quality-gate` | Before claiming implementation work is complete — scope, duplication, verification gate | Review | Medium |
96
+ | `code-cleanup` | After behavior is working but diff is noisy, repetitive, or over-complicated | Review | Low |
97
+ | `code-simplification` | Refactoring code for clarity without changing behavior — Chesterton's Fence, preserve behavior | Review | Low |
98
+ | `deprecation-and-migration` | Deprecating APIs, migrating library versions, removing legacy code | Ship | High |
99
+ | `writing-skills` | Creating new skills, editing existing skills, verifying skills before deployment | Build | Low |
100
+ | `context-engineering` | Optimizing agent context setup — rules files, selective loading, confusion management | All | Low |
101
+ | `doubt-driven-development` | In-flight adversarial review of non-trivial decisions before they stand | Build | Medium |
102
+ | `loop-engineering` | Designing/qualifying/running unattended coding loops; 2-condition test + VISION/state + confidence-gated action | All | Medium |
103
+ | `loop-audit` | Scoring a project's loop-readiness 0-100 + L0/L1/L2/L3; L3 gated on proven run | Review | Low |
104
+ | `loop-cost` | Estimating tokens/day + daily cap + early-exit flag before approving a loop budget | Plan | Low |
105
+
106
+ ### Implementation
107
+
108
+ | Skill | Use when | Phase | Risk |
109
+ |-------|----------|-------|------|
110
+ | `test-driven-development` | Implementing any logic, fixing bugs, changing behavior (RED-GREEN-REFACTOR) | Build | Medium |
111
+ | `testing-anti-patterns` | Preventing mock-only tests, test pollution | Build | Low |
112
+ | `deep-module-design` | Applying Ousterhout's deep module principles — small interfaces, information hiding | Build | Low |
113
+ | `api-and-interface-design` | Designing REST/GraphQL APIs, SDK interfaces, or public module boundaries | Build | Medium |
114
+
115
+ ### Debugging
116
+
117
+ | Skill | Use when | Phase | Risk |
118
+ |-------|----------|-------|------|
119
+ | `debugging-and-error-recovery` | Systematic root-cause debugging and safe recovery | Verify | Medium |
120
+ | `root-cause-tracing` | Tracing bugs backward through call stack | Verify | Medium |
121
+
122
+ ### Git / Versioning
123
+
124
+ | Skill | Use when | Phase | Risk |
125
+ |-------|----------|-------|------|
126
+ | `git-workflow-and-versioning` | Atomic commits, branching, versioning | Ship | Medium |
127
+ | `using-git-worktrees` | Starting feature work that needs isolation from current workspace | Build | Low |
128
+
129
+ ### Frontend / UI
130
+
131
+ | Skill | Use when | Phase | Risk |
132
+ |-------|----------|-------|------|
133
+ | `frontend-ui-engineering` | Production-quality UIs — component architecture, design systems, WCAG 2.1 AA, avoid AI aesthetic | Build | Medium |
134
+ | `frontend-design` | Building any web UI with React-based frameworks | Build | Medium |
135
+ | `design-taste-frontend` | BASE aesthetic layer to override default LLM design biases | Build | Low |
136
+ | `high-end-visual-design` | Premium, agency-quality, or luxury visual design | Build | Low |
137
+ | `minimalist-ui` | Clean, editorial, or minimalist aesthetics | Build | Low |
138
+ | `industrial-brutalist-ui` | Brutalist, military-terminal, or raw mechanical aesthetics | Build | Low |
139
+ | `react-best-practices` | Writing, reviewing, or refactoring React/Next.js code for performance | Build | Medium |
140
+ | `redesign-existing-projects` | Upgrading an existing website or app's visual design | Build | High |
141
+ | `mockup-to-code` | Converting UI mockups, screenshots, Figma/Sketch designs into code | Build | Medium |
142
+ | `accessibility-audit` | Auditing UI components or pages for accessibility compliance | Review | Medium |
143
+ | `design-system-audit` | Auditing an existing design system for consistency | Review | Medium |
144
+
145
+ ### Platform / Infrastructure
146
+
147
+ | Skill | Use when | Phase | Risk |
148
+ |-------|----------|-------|------|
149
+ | `cloudflare` | Deploying to or configuring ANY Cloudflare service | Ship | High |
150
+ | `vercel-deploy-claimable` | Deploying applications and websites to Vercel | Ship | High |
151
+ | `supabase` | Working with any Supabase service | Build | High |
152
+ | `supabase-postgres-best-practices` | Writing, reviewing, or optimizing Postgres queries in Supabase | Build | High |
153
+ | `ci-cd-and-automation` | Setting up CI/CD pipelines, GitHub Actions workflows | Ship | High |
154
+ | `shipping-and-launch` | Final readiness checks, rollback planning, release handoff | Ship | High |
155
+ | `performance-optimization` | Profiling, optimizing, or adding performance budgets | Review | Medium |
156
+ | `security-and-hardening` | Auditing for security vulnerabilities, implementing auth/authz | Review | High |
157
+ | `observability-and-instrumentation` | Adding logging, metrics, tracing, or alerting to production features | Ship | Medium |
158
+
159
+ ### Mobile / Platform-Specific
160
+
161
+ | Skill | Use when | Phase | Risk |
162
+ |-------|----------|-------|------|
163
+ | `swift-concurrency` | Swift Concurrency, async/await, actors, or task patterns | Build | Medium |
164
+ | `swiftui-expert-skill` | Writing, reviewing, or improving SwiftUI code | Build | Medium |
165
+ | `core-data-expert` | Writing, debugging, or optimizing Core Data code on iOS/macOS | Build | Medium |
166
+
167
+ ### Tools / Integrations
168
+
169
+ | Skill | Use when | Phase | Risk |
170
+ |-------|----------|-------|------|
171
+ | `figma` | Implementing UI from Figma designs, extracting design tokens | Build | Low |
172
+ | `jira` | Interacting with Jira issues or Confluence docs | Plan | Low |
173
+ | `polar` | Implementing payment flows, subscriptions, license keys with Polar | Build | High |
174
+ | `resend` | Sending transactional emails, creating React Email templates | Build | Medium |
175
+ | `playwright` | Running automated browser tests, taking screenshots | Verify | Medium |
176
+ | `chrome-devtools` | Inspecting, screenshotting, verifying UI with Chrome DevTools | Verify | Low |
177
+ | `browser-testing-with-devtools` | Verifying or debugging browser behavior with live runtime evidence | Verify | Medium |
178
+ | `srcwalk` | Navigating code with srcwalk — repo maps, symbol search, callers/callees | All | Low |
179
+ | `opensrc` | Understanding how a library works internally, debugging dependency issues | Build | Low |
180
+ | `pdf-extract` | Extracting text, images, tables, or metadata from PDF files | Build | Low |
181
+ | `webclaw` | When webfetch returns 403 or bot protection errors | Build | Low |
182
+ | `gemini-large-context` | Analyzing large codebases, comparing multiple files exceeding typical context limits | Plan | Low |
183
+ | `fallow` | Codebase intelligence — quality, dead code, duplication, complexity hotspots | Review | Low |
184
+
185
+ ---
186
+
187
+ ## Quick Routing Table
188
+
189
+ Maps user intent to skill(s). `→` = sequential pipeline (execute in order). `+` = parallel load. `|` = choose one.
190
+
191
+ | User says | Skill(s) to load | Phase | Risk |
192
+ |-----------|-----------------|-------|------|
193
+ | "build X" / "implement X" (small) | `incremental-implementation` + `test-driven-development` | Build | Medium |
194
+ | "build X" (large, unclear) | `brainstorming` → `spec-driven-development` → `planning-and-task-breakdown` | Define→Plan | Low→Medium |
195
+ | "fix this bug" | `root-cause-tracing` → `debugging-and-error-recovery` + `verification-before-completion` | Verify | Medium |
196
+ | "review this code" / "audit this PR" | `code-review-and-quality` + `verification-before-completion` | Review | Medium |
197
+ | "research X" / "how does X work" | (Use `scout` subagent, no skill needed) | Define | Low |
198
+ | "design X" / "brainstorm X" / "ideate X" | `brainstorming` \| `idea-refine` | Define | Low |
199
+ | "interview me" / "grill me" / "what do I want" | `interview-me` | Define | Low |
200
+ | "refine this idea" / "stress-test my plan" | `idea-refine` | Define | Low |
201
+ | "build UI" / "build component" (production quality) | `frontend-ui-engineering` + `frontend-design` | Build | Medium |
202
+ | "write test" / "add coverage" / "TDD" | `test-driven-development` + `testing-anti-patterns` | Build | Medium |
203
+ | "ship this" / "deploy" / "release" | `verification-before-completion` → `shipping-and-launch` | Ship | High |
204
+ | "write docs" / "document this" / "ADR" | `documentation-and-adrs` | Ship | Low |
205
+ | "commit this" / "branch strategy" / "merge" | `git-workflow-and-versioning` | Ship | Medium |
206
+ | "refactor X" / "clean up X" | `deep-module-design` + `code-cleanup` + `incremental-implementation` | Review | Low |
207
+ | "simplify this code" / "too complex" | `code-simplification` + `code-review-and-quality` | Review | Low |
208
+ | "plan this" / "break this down" | `planning-and-task-breakdown` + `spec-driven-development` | Plan | Low |
209
+ | "I'm stuck" / "not sure what to do" | `behavioral-kernel` + `using-agent-skills` | All | Low |
210
+ | "which skill to use" / "what skill for" | `using-agent-skills` | Define | Low |
211
+ | "create UI" / "build component" / "design page" | `frontend-design` + `design-taste-frontend` | Build | Medium |
212
+ | "deploy to Cloudflare" | `cloudflare` | Ship | High |
213
+ | "deploy to Vercel" | `vercel-deploy-claimable` | Ship | High |
214
+ | "set up database" / "Supabase" | `supabase` + `supabase-postgres-best-practices` | Build | High |
215
+ | "add logging" / "monitoring" / "observability" | `observability-and-instrumentation` | Ship | Medium |
216
+ | "optimize context" / "agent quality degraded" / "too many tokens" | `context-engineering` | All | Low |
217
+ | "verify this approach" / "challenge this decision" / "doubt check" | `doubt-driven-development` | Build | Medium |
218
+ | "security audit" / "auth setup" / "vulnerability" | `security-and-hardening` | Review | High |
219
+ | "profile" / "too slow" / "bundle size" / "lighthouse" | `performance-optimization` | Review | Medium |
220
+ | "add email" / "send email" / "transactional" | `resend` | Build | Medium |
221
+ | "add payment" / "subscription" / "checkout" | `polar` | Build | High |
222
+ | "Figma to code" / "mockup to code" / "design to code" | `figma` → `mockup-to-code` → `frontend-design` | Build | Medium |
223
+ | "redisign" / "visual upgrade" / "restyle" | `redesign-existing-projects` | Build | High |
224
+ | "accessibility" / "a11y" / "WCAG" | `accessibility-audit` | Review | Medium |
225
+ | "dependency issue" / "how does library X work" | `opensrc` | Build | Low |
226
+ | "browser test" / "e2e test" / "playwright" | `playwright` \| `browser-testing-with-devtools` | Verify | Medium |
227
+ | "migrate" / "deprecate" / "remove old API" | `deprecation-and-migration` | Ship | High |
228
+ | "create skill" / "write skill" / "edit skill" | `writing-skills` | Build | Low |
229
+ | "codebase health" / "dead code" / "duplication" | `fallow` | Review | Low |
230
+ | "large codebase" / "compare repos" / "big picture" | `gemini-large-context` | Plan | Low |
231
+
232
+ ---
233
+
234
+ ## Skill Composition Patterns
235
+
236
+ ### Sequential Pipeline (`→`)
237
+ Execute skills in order — output of one feeds the next.
238
+
239
+ ```
240
+ brainstorming → spec-driven-development → planning-and-task-breakdown → incremental-implementation
241
+ figma → mockup-to-code → frontend-design
242
+ root-cause-tracing → debugging-and-error-recovery → verification-before-completion
243
+ ```
244
+
245
+ ### Parallel Load (`+`)
246
+ Load multiple skills simultaneously for independent concerns.
247
+
248
+ ```
249
+ code-review-and-quality + performance-optimization + security-and-hardening
250
+ frontend-design + design-taste-frontend + accessibility-audit
251
+ test-driven-development + testing-anti-patterns + defense-in-depth
252
+ ```
253
+
254
+ ### Compose (Pipeline + Parallel combined)
255
+ Mix sequential and parallel phases.
256
+
257
+ ```
258
+ Phase 1 (Define): brainstorming + spec-driven-development
259
+ Phase 2 (Build): incremental-implementation + test-driven-development
260
+ Phase 3 (Review): code-review-and-quality + code-simplification
261
+ Phase 4 (Ship): verification-before-completion → shipping-and-launch
262
+ ```
263
+
264
+ ### Choose One (`|`)
265
+ Pick the best single skill when options are context-dependent.
266
+
267
+ ```
268
+ cloudflare | vercel-deploy-claimable (depends on hosting platform)
269
+ playwright | chrome-devtools | browser-testing-with-devtools (depends on tool preference)
270
+ high-end-visual-design | minimalist-ui | industrial-brutalist-ui (depends on aesthetic)
271
+ ```
272
+
273
+ ---
274
+
275
+ ## Decision Tree for Ambiguous Intent
276
+
277
+ When user intent matches **multiple skills** and the Quick Routing Table doesn't disambiguate:
278
+
279
+ ```
280
+ 1. Is there a File Match trigger? → Use that. Done.
281
+
282
+ 2. Do keywords favor one skill? → Count keyword overlap. Highest overlap wins.
283
+
284
+ 3. Are the skills in the same phase?
285
+ ├── Yes → They may compose. Check Composition Patterns above. Load both if complementary.
286
+ └── No → Pick the earlier-phase skill first. Output of earlier phase informs later.
287
+
288
+ 4. Still ambiguous? → Ask ONE clarification question:
289
+ "I see [skill A] and [skill B] could apply. [Skill A] is for [X]. [Skill B] is for [Y]. Which fits better?"
290
+ Do NOT guess. Do NOT load both speculatively.
291
+
292
+ 5. No skill matches at all? → Fallback: `using-agent-skills` or `behavioral-kernel`.
293
+ If still no match, surface to user: "I don't have a skill for [task]. Should I handle this without a skill, or do you want to add one?"
294
+ ```
295
+
296
+ ---
297
+
298
+ ## How Skills Load
299
+
300
+ 1. **Tier 1**: Names + descriptions injected into system prompt at startup. Agent can `read` full SKILL.md on-demand.
301
+ 2. **File Match**: Automatically triggered when agent edits files matching the patterns in the table above. Agent should `read` the full SKILL.md.
302
+ 3. **Keyword Match**: Candidate skills surfaced when user prompt contains trigger keywords. Agent refines via Quick Routing Table + Decision Tree.
303
+ 4. **Tier 2 (all others)**: Loaded on-demand when intent matches. Agent should `read` the SKILL.md when a task calls for domain-specific expertise.
304
+ 5. **Force load**: Use `/skill:<name>` command to inject full skill into current session.
305
+
306
+ ---
307
+
308
+ ## How to Add New Skills
309
+
310
+ ```bash
311
+ mkdir -p .pi/skills/<name>
312
+ cat > .pi/skills/<name>/SKILL.md << 'EOF'
313
+ ---
314
+ name: <name>
315
+ description: <Use when...>
316
+ ---
317
+
318
+ # <Skill Name>
319
+
320
+ <body>
321
+ EOF
322
+ ```
323
+
324
+ Then add to this INDEX.md:
325
+ 1. Add to the appropriate Tier 2 category table (with Phase + Risk columns)
326
+ 2. Add File Match trigger if the skill targets specific file types
327
+ 3. Add Keyword Match entries for phrases users will say
328
+ 4. Add to Quick Routing Table with common user intents
329
+ 5. If it composes with existing skills, add a Composition Pattern
330
+
331
+ Then `/reload` in pi session.
@@ -0,0 +1,205 @@
1
+ ---
2
+ name: accessibility-audit
3
+ description: Use when auditing UI components or pages for accessibility compliance, checking WCAG conformance, identifying keyboard navigation issues, color contrast problems, and pre-launch accessibility verification
4
+ ---
5
+
6
+ # Accessibility Audit Skill
7
+
8
+ ## When to Use
9
+
10
+ - Reviewing UI components for accessibility compliance
11
+ - Auditing pages for WCAG conformance
12
+ - Identifying keyboard navigation issues
13
+ - Checking color contrast
14
+ - Pre-launch accessibility verification
15
+
16
+ ## When NOT to Use
17
+
18
+ - Non-UI work where accessibility isn't applicable.
19
+
20
+
21
+ ## Core Workflow
22
+
23
+ ### Phase 1: Visual Accessibility Analysis
24
+
25
+ ```
26
+ Perform a comprehensive accessibility audit:
27
+
28
+ 1. COLOR CONTRAST
29
+ - Check text/background contrast ratios
30
+ - WCAG AA: 4.5:1 normal text, 3:1 large text
31
+ - Identify failing elements
32
+
33
+ 2. VISUAL HIERARCHY
34
+ - Heading structure (logical H1-H6)
35
+ - Visual grouping of related elements
36
+ - Touch targets (44x44px minimum)
37
+
38
+ 3. CONTENT ACCESSIBILITY
39
+ - Images needing alt text
40
+ - Icons without text labels
41
+ - Color-only information
42
+
43
+ 4. INTERACTIVE ELEMENTS
44
+ - Buttons/links with unclear purpose
45
+ - Form fields without labels
46
+ - Missing error states
47
+
48
+ 5. MOTION
49
+ - Auto-playing content
50
+ - Potential vestibular triggers
51
+
52
+ Provide WCAG criterion references for each issue.
53
+ ```
54
+
55
+ ### Phase 2: Component Checklist
56
+
57
+ For each interactive component:
58
+
59
+ ```markdown
60
+ ## Component: [Name]
61
+
62
+ ### Keyboard Navigation
63
+
64
+ - [ ] Focusable with Tab
65
+ - [ ] Visible focus indicator
66
+ - [ ] Operable with Enter/Space
67
+ - [ ] Escape closes modals
68
+ - [ ] Arrow keys for menus
69
+
70
+ ### Screen Reader
71
+
72
+ - [ ] Meaningful accessible name
73
+ - [ ] Role announced correctly
74
+ - [ ] State changes announced
75
+ - [ ] Errors associated with inputs
76
+
77
+ ### Visual
78
+
79
+ - [ ] 4.5:1 contrast ratio (text)
80
+ - [ ] 3:1 contrast ratio (UI)
81
+ - [ ] 44x44px touch targets
82
+ - [ ] No color-only information
83
+
84
+ ### Motion
85
+
86
+ - [ ] Respects prefers-reduced-motion
87
+ - [ ] No auto-play >5 seconds
88
+ ```
89
+
90
+ ## WCAG Quick Reference
91
+
92
+ ### Level A (Minimum)
93
+
94
+ | Criterion | Description | Fix |
95
+ | --------- | ---------------------- | ----------------- |
96
+ | 1.1.1 | Non-text Content | Add alt text |
97
+ | 1.3.1 | Info and Relationships | Use semantic HTML |
98
+ | 2.1.1 | Keyboard | All via keyboard |
99
+ | 2.4.1 | Bypass Blocks | Skip links |
100
+ | 4.1.2 | Name, Role, Value | ARIA labels |
101
+
102
+ ### Level AA (Recommended)
103
+
104
+ | Criterion | Description | Fix |
105
+ | --------- | ------------- | ---------------------- |
106
+ | 1.4.3 | Contrast | 4.5:1 text, 3:1 UI |
107
+ | 1.4.4 | Resize Text | Support 200% zoom |
108
+ | 2.4.6 | Headings | Descriptive headings |
109
+ | 2.4.7 | Focus Visible | Clear focus indicators |
110
+
111
+ ## Common Fixes
112
+
113
+ ### Accessible Button
114
+
115
+ ```tsx
116
+ // Bad
117
+ <div onClick={handleClick}>Click me</div>
118
+
119
+ // Good
120
+ <button type="button" onClick={handleClick}>
121
+ Click me
122
+ </button>
123
+ ```
124
+
125
+ ### Accessible Icon Button
126
+
127
+ ```tsx
128
+ // Bad
129
+ <button><Icon /></button>
130
+
131
+ // Good
132
+ <button aria-label="Close dialog">
133
+ <Icon aria-hidden="true" />
134
+ </button>
135
+ ```
136
+
137
+ ### Form with Error
138
+
139
+ ```tsx
140
+ <label htmlFor="email">Email</label>
141
+ <input
142
+ id="email"
143
+ aria-describedby="email-error"
144
+ aria-invalid={hasError}
145
+ />
146
+ {hasError && (
147
+ <span id="email-error" role="alert">
148
+ Please enter a valid email
149
+ </span>
150
+ )}
151
+ ```
152
+
153
+ ## Report Template
154
+
155
+ ```markdown
156
+ # Accessibility Audit Report
157
+
158
+ **Date:** [Date]
159
+ **Page:** [Name]
160
+ **WCAG Level:** AA
161
+
162
+ ## Summary
163
+
164
+ - Critical Issues: X
165
+ - Major Issues: X
166
+ - Minor Issues: X
167
+
168
+ ## Issues
169
+
170
+ ### [Issue Title]
171
+
172
+ - **Severity:** Critical/Major/Minor
173
+ - **WCAG:** [X.X.X]
174
+ - **Element:** [selector]
175
+ - **Issue:** [Description]
176
+ - **Fix:** [Recommendation]
177
+ ```
178
+
179
+ ## Storage
180
+
181
+ Save audit reports to `.pi/artifacts/audits/`
182
+
183
+ ## Related Skills
184
+
185
+ | Need | Skill |
186
+ | -------------- | ----------------- |
187
+ | Design quality | `frontend-design` |
188
+ | UI research | `ui-ux-research` |
189
+
190
+ ## Common Rationalizations
191
+
192
+ | Rationalization | Reality |
193
+ |---|---|
194
+ | "The component library handles accessibility" | Component libraries provide the foundation. Application-level composition creates the gaps. |
195
+ | "We don't have disabled users" | 15% of the world has a disability. Accessibility is universal design, not niche accommodation. |
196
+ | "Manual testing takes too long" | Automated tools catch 30% of issues. Manual testing catches the other 70%. |
197
+ | "Color contrast is close enough" | WCAG AA ratios are minimums, not suggestions. Close enough fails audits. |
198
+
199
+ ## Red Flags
200
+
201
+ - Audit report with only automated findings (no manual testing)
202
+ - Color contrast issues flagged but not measured with tools
203
+ - Keyboard navigation not tested with Tab through entire page
204
+ - Screen reader testing skipped entirely
205
+ - WCAG violations categorized as "minor" with no remediation plan
@@ -0,0 +1,109 @@
1
+ # Accessibility Checklist
2
+
3
+ Quick reference for WCAG 2.1 AA compliance. Use alongside the `accessibility-audit` skill.
4
+
5
+ ## Essential Checks
6
+
7
+ ### Keyboard Navigation
8
+ - [ ] All interactive elements focusable via Tab key
9
+ - [ ] Focus order follows visual/logical order
10
+ - [ ] Focus is visible (outline/ring on focused elements)
11
+ - [ ] Custom widgets have keyboard support (Enter to activate, Escape to close)
12
+ - [ ] No keyboard traps (user can always Tab away)
13
+ - [ ] Skip-to-content link at top of page
14
+ - [ ] Modals trap focus while open, return focus on close
15
+
16
+ ### Screen Readers
17
+ - [ ] All images have `alt` text (or `alt=""` for decorative)
18
+ - [ ] All form inputs have associated labels
19
+ - [ ] Buttons and links have descriptive text (not "Click here")
20
+ - [ ] Icon-only buttons have `aria-label`
21
+ - [ ] Page has one `<h1>` and headings don't skip levels
22
+ - [ ] Dynamic content changes announced (`aria-live` regions)
23
+ - [ ] Tables have `<th>` headers with scope
24
+
25
+ ### Visual
26
+ - [ ] Text contrast ≥ 4.5:1 (normal) or ≥ 3:1 (large, 18px+)
27
+ - [ ] UI components contrast ≥ 3:1 against background
28
+ - [ ] Color is not the only way to convey information
29
+ - [ ] Text resizable to 200% without breaking layout
30
+ - [ ] No content that flashes more than 3 times per second
31
+
32
+ ### Forms
33
+ - [ ] Every input has a visible label
34
+ - [ ] Required fields indicated (not by color alone)
35
+ - [ ] Error messages specific and associated with the field
36
+ - [ ] Error state visible by more than color (icon, text, border)
37
+ - [ ] Form submission errors summarized and focusable
38
+ - [ ] Known fields use autocomplete
39
+
40
+ ### Content
41
+ - [ ] Language declared (`<html lang="en">`)
42
+ - [ ] Page has a descriptive `<title>`
43
+ - [ ] Links distinguish from surrounding text (not by color alone)
44
+ - [ ] Touch targets ≥ 44x44px on mobile
45
+ - [ ] Meaningful empty states (not blank screens)
46
+
47
+ ## Common HTML Patterns
48
+
49
+ ```html
50
+ <!-- Use <button> for actions, <a> for navigation -->
51
+ <button onClick={handleDelete}>Delete Task</button>
52
+ <a href="/tasks/123">View Task</a>
53
+
54
+ <!-- NEVER: div/span as buttons -->
55
+ <!-- <div onClick={handleDelete}>Delete</div> BAD -->
56
+
57
+ <!-- Form labels -->
58
+ <label htmlFor="email">Email address</label>
59
+ <input id="email" type="email" required />
60
+
61
+ <!-- ARIA live regions -->
62
+ <div role="status" aria-live="polite">Task saved</div>
63
+ <div role="alert">Error: Title is required</div>
64
+
65
+ <!-- Modal dialogs -->
66
+ <dialog aria-modal="true" aria-labelledby="dialog-title">
67
+ <h2 id="dialog-title">Confirm Delete</h2>
68
+ </dialog>
69
+
70
+ <!-- Loading states -->
71
+ <div aria-busy="true" aria-label="Loading tasks"><Spinner /></div>
72
+ ```
73
+
74
+ ## Quick Reference: ARIA Live Regions
75
+
76
+ | Value | Behavior | Use For |
77
+ |-------|----------|---------|
78
+ | `aria-live="polite"` | Announced at next pause | Status updates, saved confirmations |
79
+ | `aria-live="assertive"` | Announced immediately | Errors, time-sensitive alerts |
80
+ | `role="status"` | Same as `polite` | Status messages |
81
+ | `role="alert"` | Same as `assertive` | Error messages |
82
+
83
+ ## Testing Tools
84
+
85
+ ```bash
86
+ # Automated audit
87
+ npx axe-core # Programmatic accessibility testing
88
+ npx pa11y # CLI accessibility checker
89
+
90
+ # In browser
91
+ # Chrome DevTools → Lighthouse → Accessibility
92
+ # Chrome DevTools → Elements → Accessibility tree
93
+
94
+ # Screen reader testing
95
+ # macOS: VoiceOver (Cmd + F5)
96
+ # Windows: NVDA (free) or JAWS
97
+ ```
98
+
99
+ ## Common Anti-Patterns
100
+
101
+ | Anti-Pattern | Problem | Fix |
102
+ |---|---|---|
103
+ | `div` as button | Not focusable, no keyboard support | Use `<button>` |
104
+ | Missing `alt` text | Images invisible to screen readers | Add descriptive `alt` |
105
+ | Color-only states | Invisible to color-blind users | Add icons, text, or patterns |
106
+ | Autoplaying media | Disorienting, can't be stopped | Add controls, don't autoplay |
107
+ | Removing focus outlines | Users can't see where they are | Style outlines, don't remove |
108
+ | Empty links/buttons | "Link" announced with no description | Add text or `aria-label` |
109
+ | `tabindex > 0` | Breaks natural tab order | Use `tabindex="0"` or `-1` only |