@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,371 @@
1
+ ---
2
+ name: using-agent-skills
3
+ description: "Meta-skill for discovering and routing to the right skill. Auto-load when editing .pi/skills/ or when user asks 'which skill' / 'what should I use' / 'how do I do X'. Use when starting a session, when task phase changes, or when intent is ambiguous. Provides routing tree, multi-skill composition (pipeline/parallel/compose), disambiguation protocol, and fallback behavior."
4
+ ---
5
+
6
+ # Using Agent Skills
7
+
8
+ ## Overview
9
+
10
+ Agent Skills is a collection of 67 engineering workflow skills organized by development phase. Each skill encodes a specific process that senior engineers follow. This meta-skill helps you discover and apply the right skill for your current task.
11
+
12
+ ## When to Use
13
+
14
+ - Starting a session and unsure which skill applies
15
+ - Task phase changes (Define → Plan → Build → Verify → Ship)
16
+ - Intent is ambiguous across multiple candidate skills
17
+ - You are editing `.pi/skills/*/SKILL.md` (auto-load trigger)
18
+ - User asks "which skill", "what should I use", "how do I do X"
19
+
20
+ ## When NOT to Use
21
+
22
+ - A single skill clearly matches the task — load it directly instead of routing
23
+ - The task is too small to warrant any skill (trivial one-liner)
24
+ - You need the deep content of a specific skill — jump straight to it; this skill only routes
25
+
26
+ ---
27
+
28
+ ## Skill Discovery (Routing Tree)
29
+
30
+ When a task arrives, identify the development phase and apply the corresponding skill:
31
+
32
+ ```
33
+ Task arrives
34
+
35
+ ├── Don't know what you want yet? ──────→ brainstorming
36
+ ├── Have a rough concept, need structure? → spec-driven-development
37
+ ├── New project/feature/change? ─────────→ spec-driven-development
38
+ ├── Have a spec, need tasks? ────────────→ planning-and-task-breakdown
39
+ ├── Implementing code? ──────────────────→ incremental-implementation
40
+ │ ├── UI work? ────────────────────────→ frontend-design
41
+ │ │ ├── Need aesthetic baseline? ────→ design-taste-frontend
42
+ │ │ ├── Premium/luxury look? ────────→ high-end-visual-design
43
+ │ │ ├── Minimalist? ────────────────→ minimalist-ui
44
+ │ │ └── Brutalist/industrial? ──────→ industrial-brutalist-ui
45
+ │ ├── API work? ───────────────────────→ api-and-interface-design
46
+ │ ├── React/Next.js specific? ─────────→ react-best-practices
47
+ │ ├── Module design/structure? ────────→ deep-module-design
48
+ │ ├── Need better context? ────────────→ context-engineering
49
+ │ ├── Need doc-verified code? ─────────→ source-driven-development
50
+ │ └── Stakes high / unfamiliar code? ──→ doubt-driven-development
51
+ ├── Writing/running tests? ──────────────→ test-driven-development
52
+ │ ├── Avoiding test anti-patterns? ────→ testing-anti-patterns
53
+ │ └── Browser-based testing? ──────────→ browser-testing-with-devtools | playwright
54
+ ├── Something broke? ────────────────────→ debugging-and-error-recovery
55
+ │ └── Need to trace root cause? ───────→ root-cause-tracing
56
+ ├── Reviewing code? ─────────────────────→ code-review-and-quality
57
+ │ ├── Too complex? ────────────────────→ code-simplification | code-cleanup
58
+ │ ├── Security concerns? ─────────────→ security-and-hardening
59
+ │ └── Performance concerns? ───────────→ performance-optimization
60
+ ├── Committing/branching? ───────────────→ git-workflow-and-versioning
61
+ │ └── Need isolated workspace? ────────→ using-git-worktrees
62
+ ├── CI/CD pipeline work? ────────────────→ ci-cd-and-automation
63
+ ├── Deprecating/migrating? ──────────────→ deprecation-and-migration
64
+ ├── Writing docs/ADRs? ──────────────────→ documentation-and-adrs
65
+ ├── Adding logs/metrics/alerts? ─────────→ observability-and-instrumentation
66
+ ├── Deploying/launching? ────────────────→ shipping-and-launch
67
+ │ ├── To Cloudflare? ──────────────────→ cloudflare
68
+ │ └── To Vercel? ──────────────────────→ vercel-deploy-claimable
69
+ ├── Working with Supabase? ─────────────→ supabase | supabase-postgres-best-practices
70
+ ├── Sending emails? ────────────────────→ resend
71
+ ├── Handling payments? ──────────────────→ polar
72
+ ├── Figma/mockup to code? ───────────────→ figma → mockup-to-code → frontend-design
73
+ ├── Accessibility audit? ────────────────→ accessibility-audit
74
+ ├── Creating/editing skills? ────────────→ writing-skills
75
+ ├── Codebase health check? ──────────────→ fallow
76
+ └── Large codebase analysis? ────────────→ gemini-large-context
77
+ ```
78
+
79
+ ---
80
+
81
+ ## Multi-Skill Composition
82
+
83
+ Not every task fits one skill. Use these composition patterns to combine skills effectively:
84
+
85
+ ### Sequential Pipeline (`→`)
86
+ Execute skills in order — each phase's output feeds the next. Typical for full features.
87
+
88
+ ```
89
+ brainstorming → spec-driven-development → planning-and-task-breakdown → incremental-implementation → test-driven-development → code-review-and-quality → shipping-and-launch
90
+ ```
91
+
92
+ ### Parallel Load (`+`)
93
+ Load multiple skills simultaneously when concerns are independent. Reduces context round-trips.
94
+
95
+ ```
96
+ # Code review from multiple angles
97
+ code-review-and-quality + performance-optimization + security-and-hardening
98
+
99
+ # UI with accessibility
100
+ frontend-design + design-taste-frontend + accessibility-audit
101
+
102
+ # Database work
103
+ supabase + supabase-postgres-best-practices
104
+ ```
105
+
106
+ ### Compose (Pipeline + Parallel)
107
+ Mix sequential phases with parallel execution within each phase.
108
+
109
+ ```
110
+ Phase 1 (Define): brainstorming + spec-driven-development [parallel]
111
+ Phase 2 (Plan): planning-and-task-breakdown [sequential]
112
+ Phase 3 (Build): incremental-implementation + test-driven-development [parallel]
113
+ Phase 4 (Review): code-review-and-quality + code-simplification [parallel]
114
+ Phase 5 (Ship): verification-before-completion → shipping-and-launch [sequential]
115
+ ```
116
+
117
+ ### Conditional (`|`)
118
+ Pick one based on context. The agent evaluates and selects the best fit.
119
+
120
+ ```
121
+ # Hosting
122
+ cloudflare | vercel-deploy-claimable
123
+
124
+ # Testing tool
125
+ playwright | chrome-devtools | browser-testing-with-devtools
126
+
127
+ # Visual style
128
+ high-end-visual-design | minimalist-ui | industrial-brutalist-ui
129
+
130
+ # Code quality
131
+ code-simplification | code-cleanup
132
+ ```
133
+
134
+ ---
135
+
136
+ ## Risk Gating
137
+
138
+ Skills have risk levels that determine invocation behavior:
139
+
140
+ | Risk | Meaning | Auto-invoke? | Examples |
141
+ |------|---------|-------------|----------|
142
+ | **Low** | Safe — reads code, provides guidance, no side effects | Yes, automatically | `brainstorming`, `srcwalk`, `documentation-and-adrs`, `code-simplification` |
143
+ | **Medium** | Writes code, modifies files — verify before committing | Auto-load but confirm writes | `test-driven-development`, `frontend-design`, `git-workflow-and-versioning` |
144
+ | **High** | Infrastructure, deployment, payments, security — requires user approval | Manual invoke only | `shipping-and-launch`, `cloudflare`, `polar`, `security-and-hardening`, `deprecation-and-migration` |
145
+
146
+ **Rule**: High-risk skills must have `user-invocable: true` (user types `/skill` explicitly). Never auto-invoke a High-risk skill.
147
+
148
+ ---
149
+
150
+ ## Disambiguation Protocol
151
+
152
+ When intent maps to **multiple candidate skills** and none is clearly the best match:
153
+
154
+ ```
155
+ 1. Narrow by Phase
156
+ ├── Is the task in Define, Plan, Build, Verify, Review, or Ship phase?
157
+ └── Filter to skills matching that phase.
158
+
159
+ 2. Narrow by Risk
160
+ ├── Prefer lower-risk skills for exploration/analysis tasks.
161
+ └── Only involve High-risk skills when the task explicitly requires infrastructure changes.
162
+
163
+ 3. Check File Context
164
+ ├── What files are currently open or being edited?
165
+ └── Does a File Match trigger point to a specific skill?
166
+
167
+ 4. Count Keyword Overlap
168
+ ├── Which skill's description has the most keyword matches with the user's request?
169
+ └── Highest overlap wins.
170
+
171
+ 5. Check Composition
172
+ ├── Can the skills compose? (See Composition section above)
173
+ └── If complementary, load both in parallel.
174
+
175
+ 6. STILL ambiguous? → Ask ONE question:
176
+ "I see [Skill A] and [Skill B] could apply here.
177
+ [Skill A] handles [X concern]. [Skill B] handles [Y concern].
178
+ Which fits better for this task?"
179
+
180
+ Do NOT guess. Do NOT load all candidates speculatively.
181
+ ```
182
+
183
+ ---
184
+
185
+ ## Fallback Behavior
186
+
187
+ When no skill matches the user's intent:
188
+
189
+ ```
190
+ 1. Check Quick Routing Table in .pi/skills/INDEX.md
191
+ └── User intent might be phrased differently than expected.
192
+
193
+ 2. Try behavioral-kernel
194
+ └── If the issue is about process, methodology, or "how to approach"
195
+
196
+ 3. Try using-agent-skills (this skill)
197
+ └── Re-run the routing tree with fresh interpretation of user intent.
198
+
199
+ 4. Surface to user:
200
+ "I don't have a specific skill for [task]. I can:
201
+ a) Handle this without a skill (general approach)
202
+ b) Help you create a new skill for this pattern (→ writing-skills)
203
+ c) Point you to relevant documentation
204
+ Which would you prefer?"
205
+
206
+ 5. Skill gap detected?
207
+ └── Flag for future skill creation. Common repeated gaps should become new skills.
208
+ ```
209
+
210
+ ---
211
+
212
+ ## Core Operating Behaviors
213
+
214
+ These behaviors apply at all times, across all skills. They are non-negotiable.
215
+
216
+ ### 1. Surface Assumptions
217
+
218
+ Before implementing anything non-trivial, explicitly state your assumptions:
219
+
220
+ ```
221
+ ASSUMPTIONS I'M MAKING:
222
+ 1. [assumption about requirements]
223
+ 2. [assumption about architecture]
224
+ 3. [assumption about scope]
225
+ → Correct me now or I'll proceed with these.
226
+ ```
227
+
228
+ Don't silently fill in ambiguous requirements. The most common failure mode is making wrong assumptions and running with them unchecked. Surface uncertainty early — it's cheaper than rework.
229
+
230
+ ### 2. Manage Confusion Actively
231
+
232
+ When you encounter inconsistencies, conflicting requirements, or unclear specifications:
233
+
234
+ 1. **STOP.** Do not proceed with a guess.
235
+ 2. Name the specific confusion.
236
+ 3. Present the tradeoff or ask the clarifying question.
237
+ 4. Wait for resolution before continuing.
238
+
239
+ **Bad:** Silently picking one interpretation and hoping it's right.
240
+ **Good:** "I see X in the spec but Y in the existing code. Which takes precedence?"
241
+
242
+ ### 3. Push Back When Warranted
243
+
244
+ You are not a yes-machine. When an approach has clear problems:
245
+
246
+ - Point out the issue directly
247
+ - Explain the concrete downside (quantify when possible — "this adds ~200ms latency" not "this might be slower")
248
+ - Propose an alternative
249
+ - Accept the human's decision if they override with full information
250
+
251
+ Sycophancy is a failure mode. "Of course!" followed by implementing a bad idea helps no one. Honest technical disagreement is more valuable than false agreement.
252
+
253
+ ### 4. Enforce Simplicity
254
+
255
+ Your natural tendency is to overcomplicate. Actively resist it.
256
+
257
+ Before finishing any implementation, ask:
258
+ - Can this be done in fewer lines?
259
+ - Are these abstractions earning their complexity?
260
+ - Would a staff engineer look at this and say "why didn't you just..."?
261
+
262
+ If you build 1000 lines and 100 would suffice, you have failed. Prefer the boring, obvious solution. Cleverness is expensive.
263
+
264
+ ### 5. Maintain Scope Discipline
265
+
266
+ Touch only what you're asked to touch.
267
+
268
+ Do NOT:
269
+ - Remove comments you don't understand
270
+ - "Clean up" code orthogonal to the task
271
+ - Refactor adjacent systems as a side effect
272
+ - Delete code that seems unused without explicit approval
273
+ - Add features not in the spec because they "seem useful"
274
+
275
+ Your job is surgical precision, not unsolicited renovation.
276
+
277
+ ### 6. Verify, Don't Assume
278
+
279
+ Every skill includes a verification step. A task is not complete until verification passes. "Seems right" is never sufficient — there must be evidence (passing tests, build output, runtime data).
280
+
281
+ ---
282
+
283
+ ## Failure Modes to Avoid
284
+
285
+ These are the subtle errors that look like productivity but create problems:
286
+
287
+ 1. Making wrong assumptions without checking
288
+ 2. Not managing your own confusion — plowing ahead when lost
289
+ 3. Not surfacing inconsistencies you notice
290
+ 4. Not presenting tradeoffs on non-obvious decisions
291
+ 5. Being sycophantic ("Of course!") to approaches with clear problems
292
+ 6. Overcomplicating code and APIs
293
+ 7. Modifying code or comments orthogonal to the task
294
+ 8. Removing things you don't fully understand
295
+ 9. Building without a spec because "it's obvious"
296
+ 10. Skipping verification because "it looks right"
297
+
298
+ ---
299
+
300
+ ## Skill Rules
301
+
302
+ 1. **Check INDEX.md first.** The Quick Routing Table in `.pi/skills/INDEX.md` provides intent → skill mappings. Use it before running the routing tree.
303
+
304
+ 2. **File Match > Keyword Match > Intent Match.** The strongest routing signal is the file being edited. Second is the user's explicit keywords. Third is inferred intent.
305
+
306
+ 3. **Skills are workflows, not suggestions.** Follow the steps in order. Don't skip verification steps.
307
+
308
+ 4. **Multiple skills can apply.** Use composition patterns (Pipeline, Parallel, Compose, Conditional) — don't force one-skill-per-task.
309
+
310
+ 5. **When in doubt, start with a spec.** If the task is non-trivial and there's no spec, begin with `spec-driven-development`.
311
+
312
+ 6. **High-risk = manual invoke only.** Shipping, deployment, security, and payment skills require explicit user invocation. Never auto-load them.
313
+
314
+ ---
315
+
316
+ ## Lifecycle Sequence
317
+
318
+ For a complete feature, the typical skill sequence is:
319
+
320
+ ```
321
+ 1. brainstorming → Extract and refine what the user actually wants
322
+ 2. spec-driven-development → Define what we're building
323
+ 3. planning-and-task-breakdown → Break into verifiable chunks
324
+ 4. context-engineering → Load the right context
325
+ 5. source-driven-development → Verify against official docs
326
+ 6. incremental-implementation → Build slice by slice
327
+ 7. observability-and-instrumentation → Instrument as you build (runs parallel with 6-8)
328
+ 8. doubt-driven-development → Cross-examine non-trivial decisions in-flight
329
+ 9. test-driven-development → Prove each slice works
330
+ 10. code-review-and-quality → Review before merge
331
+ 11. code-simplification → Reduce complexity while preserving behavior
332
+ 12. git-workflow-and-versioning → Clean commit history
333
+ 13. documentation-and-adrs → Document decisions
334
+ 14. deprecation-and-migration → Retire old systems safely when needed
335
+ 15. shipping-and-launch → Deploy safely
336
+ ```
337
+
338
+ Not every task needs every skill. A bug fix might only need: `debugging-and-error-recovery` → `test-driven-development` → `code-review-and-quality`.
339
+
340
+ ---
341
+
342
+ ## Quick Reference
343
+
344
+ | Phase | Skill | Risk | One-Line Summary |
345
+ |-------|-------|------|-----------------|
346
+ | Define | brainstorming | Low | Surface what the user actually wants before any plan, spec, or code exists |
347
+ | Define | spec-driven-development | Low | Requirements and acceptance criteria before code |
348
+ | Define | grill-me | Low | Adversarial interrogation of ideas before implementation |
349
+ | Plan | planning-and-task-breakdown | Low | Decompose into small, verifiable tasks |
350
+ | Plan | source-driven-development | Low | Verify against official docs before implementing |
351
+ | Build | incremental-implementation | Low | Thin vertical slices, test each before expanding |
352
+ | Build | doubt-driven-development | Medium | Adversarial fresh-context review of every non-trivial decision |
353
+ | Build | context-engineering | Low | Right context at the right time |
354
+ | Build | frontend-design | Medium | Production-quality UI with accessibility |
355
+ | Build | api-and-interface-design | Medium | Stable interfaces with clear contracts |
356
+ | Build | deep-module-design | Low | Deep modules with small interfaces |
357
+ | Verify | test-driven-development | Medium | Failing test first, then make it pass |
358
+ | Verify | browser-testing-with-devtools | Medium | Chrome DevTools for runtime verification |
359
+ | Verify | debugging-and-error-recovery | Medium | Reproduce → localize → fix → guard |
360
+ | Verify | root-cause-tracing | Medium | Trace backward through call stack to origin |
361
+ | Review | code-review-and-quality | Medium | Multi-axis review with quality gates |
362
+ | Review | code-simplification | Low | Preserve behavior while reducing unnecessary complexity |
363
+ | Review | security-and-hardening | High | OWASP prevention, input validation, least privilege |
364
+ | Review | performance-optimization | Medium | Measure first, optimize only what matters |
365
+ | Review | accessibility-audit | Medium | WCAG conformance, keyboard nav, color contrast |
366
+ | Ship | git-workflow-and-versioning | Medium | Atomic commits, clean history |
367
+ | Ship | ci-cd-and-automation | High | Automated quality gates on every change |
368
+ | Ship | deprecation-and-migration | High | Remove old systems and migrate users safely |
369
+ | Ship | documentation-and-adrs | Low | Document the why, not just the what |
370
+ | Ship | observability-and-instrumentation | Medium | Structured logs, RED metrics, traces, alerts |
371
+ | Ship | shipping-and-launch | High | Pre-launch checklist, monitoring, rollback plan |
@@ -0,0 +1,275 @@
1
+ ---
2
+ name: using-git-worktrees
3
+ description: Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification
4
+ ---
5
+
6
+ # Using Git Worktrees
7
+
8
+ ## When to Use
9
+
10
+ - When starting feature work that needs an isolated workspace or before executing an implementation plan.
11
+
12
+ ## When NOT to Use
13
+
14
+ - When a simple change can safely be done in the current working tree or the repo does not allow worktrees.
15
+
16
+ ## Overview
17
+
18
+ Git worktrees create isolated workspaces sharing the same repository, allowing work on multiple branches simultaneously without switching.
19
+
20
+ **Core principle:** Systematic directory selection + safety verification = reliable isolation.
21
+
22
+ **Announce at start:** "I'm using the using-git-worktrees skill to set up an isolated workspace."
23
+
24
+ ## Directory Selection Process
25
+
26
+ Follow this priority order:
27
+
28
+ ### 1. Check Existing Directories
29
+
30
+ ```bash
31
+ # Check in priority order
32
+ ls -d .worktrees 2>/dev/null # Preferred (hidden)
33
+ ls -d worktrees 2>/dev/null # Alternative
34
+ ```
35
+
36
+ **If found:** Use that directory. If both exist, `.worktrees` wins.
37
+
38
+ ### 2. Check AGENTS.md
39
+
40
+ ```bash
41
+ grep -i "worktree.*director" AGENTS.md 2>/dev/null
42
+ ```
43
+
44
+ **If preference specified:** Use it without asking.
45
+
46
+ ### 3. Ask User
47
+
48
+ If no directory exists and no AGENTS.md preference:
49
+
50
+ ```
51
+ No worktree directory found. Where should I create worktrees?
52
+
53
+ 1. .worktrees/ (project-local, hidden)
54
+ 2. ~/.pi/worktrees/<project-name>/ (global location)
55
+
56
+ Which would you prefer?
57
+ ```
58
+
59
+ ## Safety Verification
60
+
61
+ ### For Project-Local Directories (.worktrees or worktrees)
62
+
63
+ **MUST verify .gitignore before creating worktree:**
64
+
65
+ ```bash
66
+ # Check if directory pattern in .gitignore
67
+ grep -q "^\.worktrees/$" .gitignore || grep -q "^worktrees/$" .gitignore
68
+ ```
69
+
70
+ **If NOT in .gitignore:**
71
+
72
+ Per Jesse's rule "Fix broken things immediately":
73
+
74
+ 1. Add appropriate line to .gitignore
75
+ 2. Commit the change
76
+ 3. Proceed with worktree creation
77
+
78
+ **Why critical:** Prevents accidentally committing worktree contents to repository.
79
+
80
+ ### For Global Directory (~/.pi/worktrees)
81
+
82
+ No .gitignore verification needed - outside project entirely.
83
+
84
+ ## Creation Steps
85
+
86
+ ### 1. Detect Project Name
87
+
88
+ ```bash
89
+ project=$(basename "$(git rev-parse --show-toplevel)")
90
+ ```
91
+
92
+ ### 2. Create Worktree
93
+
94
+ ```bash
95
+ # Determine full path
96
+ case $LOCATION in
97
+ .worktrees|worktrees)
98
+ path="$LOCATION/$BRANCH_NAME"
99
+ ;;
100
+ ~/.pi/worktrees/*)
101
+ path="~/.pi/worktrees/$project/$BRANCH_NAME"
102
+ ;;
103
+ esac
104
+
105
+ # Create worktree with new branch
106
+ git worktree add "$path" -b "$BRANCH_NAME"
107
+ cd "$path"
108
+ ```
109
+
110
+ ## Worktree Tracking
111
+
112
+ After creating a worktree, persist its absolute path for session resume:
113
+
114
+ ```bash
115
+ # After creating worktree
116
+ mkdir -p .pi/artifacts/
117
+ echo "/absolute/path/to/worktree" > .pi/artifacts/worktree.txt
118
+ ```
119
+
120
+ On session resume, restore the active worktree if tracking exists:
121
+
122
+ ```bash
123
+ # Check if worktree exists for active plan
124
+ if [ -f .pi/artifacts/worktree.txt ]; then
125
+ WORKTREE_PATH=$(cat .pi/artifacts/worktree.txt)
126
+ cd "$WORKTREE_PATH"
127
+ fi
128
+ ```
129
+
130
+ On worktree cleanup (after merge), remove the tracking file:
131
+
132
+ ```bash
133
+ rm -f .pi/artifacts/worktree.txt
134
+ ```
135
+
136
+ ### 3. Run Project Setup
137
+
138
+ Auto-detect and run appropriate setup:
139
+
140
+ ```bash
141
+ # Node.js
142
+ if [ -f package.json ]; then npm install; fi
143
+
144
+ # Rust
145
+ if [ -f Cargo.toml ]; then cargo build; fi
146
+
147
+ # Python
148
+ if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
149
+ if [ -f pyproject.toml ]; then poetry install; fi
150
+
151
+ # Go
152
+ if [ -f go.mod ]; then go mod download; fi
153
+ ```
154
+
155
+ ### 4. Verify Clean Baseline
156
+
157
+ Run tests to ensure worktree starts clean:
158
+
159
+ ```bash
160
+ # Examples - use project-appropriate command
161
+ npm test
162
+ cargo test
163
+ pytest
164
+ go test ./...
165
+ ```
166
+
167
+ **If tests fail:** Report failures, ask whether to proceed or investigate.
168
+
169
+ **If tests pass:** Report ready.
170
+
171
+ ### 5. Report Location
172
+
173
+ ```
174
+ Worktree ready at <full-path>
175
+ Tests passing (<N> tests, 0 failures)
176
+ Ready to implement <feature-name>
177
+ ```
178
+
179
+ ## Quick Reference
180
+
181
+ | Situation | Action |
182
+ | --------------------------- | --------------------------- |
183
+ | `.worktrees/` exists | Use it (verify .gitignore) |
184
+ | `worktrees/` exists | Use it (verify .gitignore) |
185
+ | Both exist | Use `.worktrees/` |
186
+ | Neither exists | Check AGENTS.md → Ask user |
187
+ | Directory not in .gitignore | Add it immediately + commit |
188
+ | Tests fail during baseline | Report failures + ask |
189
+ | No package.json/Cargo.toml | Skip dependency install |
190
+
191
+ ## Common Mistakes
192
+
193
+ **Skipping .gitignore verification**
194
+
195
+ - **Problem:** Worktree contents get tracked, pollute git status
196
+ - **Fix:** Always grep .gitignore before creating project-local worktree
197
+
198
+ **Assuming directory location**
199
+
200
+ - **Problem:** Creates inconsistency, violates project conventions
201
+ - **Fix:** Follow priority: existing > AGENTS.md > ask
202
+
203
+ **Proceeding with failing tests**
204
+
205
+ - **Problem:** Can't distinguish new bugs from pre-existing issues
206
+ - **Fix:** Report failures, get explicit permission to proceed
207
+
208
+ **Hardcoding setup commands**
209
+
210
+ - **Problem:** Breaks on projects using different tools
211
+ - **Fix:** Auto-detect from project files (package.json, etc.)
212
+
213
+ ## Example Workflow
214
+
215
+ ```
216
+ You: I'm using the using-git-worktrees skill to set up an isolated workspace.
217
+
218
+ [Check .worktrees/ - exists]
219
+ [Verify .gitignore - contains .worktrees/]
220
+ [Create worktree: git worktree add .worktrees/auth -b feature/auth]
221
+ [Run npm install]
222
+ [Run npm test - 47 passing]
223
+
224
+ Worktree ready at /Users/jesse/myproject/.worktrees/auth
225
+ Tests passing (47 tests, 0 failures)
226
+ Ready to implement auth feature
227
+ ```
228
+
229
+ ## Red Flags
230
+
231
+ **Never:**
232
+
233
+ - Create worktree without .gitignore verification (project-local)
234
+ - Skip baseline test verification
235
+ - Proceed with failing tests without asking
236
+ - Assume directory location when ambiguous
237
+ - Skip AGENTS.md check
238
+
239
+ **Always:**
240
+
241
+ - Follow directory priority: existing > AGENTS.md > ask
242
+ - Verify .gitignore for project-local
243
+ - Auto-detect and run project setup
244
+ - Verify clean test baseline
245
+
246
+ ## Integration
247
+
248
+ **Called by:**
249
+
250
+ - **brainstorming** (Phase 4) - REQUIRED when design is approved and implementation follows
251
+ - Any skill needing isolated workspace
252
+
253
+ **Pairs with:**
254
+
255
+ - **shipping-and-launch** - REQUIRED for cleanup after work complete
256
+ - **incremental-implementation** or **subagent-driven-development** - Work happens in this worktree
257
+
258
+ ## Common Rationalizations
259
+
260
+ | Rationalization | Reality |
261
+ |---|---|
262
+ | "I'll just switch branches" | Branch switching with dirty state loses context. Worktrees provide clean isolation. |
263
+ | "Worktrees are overkill for one feature" | One feature today, three tomorrow. Worktrees scale with your parallelism. |
264
+ | "I don't need isolation, I'm careful" | Accidental cross-contamination between branches is silent and hard to detect. |
265
+ | "I'll clean up old worktrees later" | Stale worktrees consume disk and cause confusion. Clean up after every merge. |
266
+
267
+ ## Verification
268
+
269
+ After using git worktrees:
270
+
271
+ - [ ] Worktree was created in an appropriate directory
272
+ - [ ] Work was committed before leaving the worktree
273
+ - [ ] `git worktree remove` was run after merge (no orphaned worktrees)
274
+ - [ ] No cross-contamination between worktrees
275
+ - [ ] Main worktree is clean after all feature worktrees are merged