jfl 0.0.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 (381) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +313 -0
  3. package/clawdbot-skill/README.md +328 -0
  4. package/clawdbot-skill/SKILL.md +362 -0
  5. package/clawdbot-skill/index.ts +486 -0
  6. package/clawdbot-skill/package.json +28 -0
  7. package/clawdbot-skill/skill.json +28 -0
  8. package/dist/commands/agents.d.ts +5 -0
  9. package/dist/commands/agents.d.ts.map +1 -0
  10. package/dist/commands/agents.js +399 -0
  11. package/dist/commands/agents.js.map +1 -0
  12. package/dist/commands/context-hub.d.ts +12 -0
  13. package/dist/commands/context-hub.d.ts.map +1 -0
  14. package/dist/commands/context-hub.js +642 -0
  15. package/dist/commands/context-hub.js.map +1 -0
  16. package/dist/commands/deploy.d.ts +5 -0
  17. package/dist/commands/deploy.d.ts.map +1 -0
  18. package/dist/commands/deploy.js +370 -0
  19. package/dist/commands/deploy.js.map +1 -0
  20. package/dist/commands/feedback.d.ts +2 -0
  21. package/dist/commands/feedback.d.ts.map +1 -0
  22. package/dist/commands/feedback.js +178 -0
  23. package/dist/commands/feedback.js.map +1 -0
  24. package/dist/commands/hud.d.ts +4 -0
  25. package/dist/commands/hud.d.ts.map +1 -0
  26. package/dist/commands/hud.js +262 -0
  27. package/dist/commands/hud.js.map +1 -0
  28. package/dist/commands/init.d.ts +4 -0
  29. package/dist/commands/init.d.ts.map +1 -0
  30. package/dist/commands/init.js +553 -0
  31. package/dist/commands/init.js.map +1 -0
  32. package/dist/commands/login.d.ts +23 -0
  33. package/dist/commands/login.d.ts.map +1 -0
  34. package/dist/commands/login.js +818 -0
  35. package/dist/commands/login.js.map +1 -0
  36. package/dist/commands/ralph.d.ts +9 -0
  37. package/dist/commands/ralph.d.ts.map +1 -0
  38. package/dist/commands/ralph.js +67 -0
  39. package/dist/commands/ralph.js.map +1 -0
  40. package/dist/commands/repair.d.ts +7 -0
  41. package/dist/commands/repair.d.ts.map +1 -0
  42. package/dist/commands/repair.js +283 -0
  43. package/dist/commands/repair.js.map +1 -0
  44. package/dist/commands/session-mgmt.d.ts +33 -0
  45. package/dist/commands/session-mgmt.d.ts.map +1 -0
  46. package/dist/commands/session-mgmt.js +404 -0
  47. package/dist/commands/session-mgmt.js.map +1 -0
  48. package/dist/commands/session.d.ts +2 -0
  49. package/dist/commands/session.d.ts.map +1 -0
  50. package/dist/commands/session.js +639 -0
  51. package/dist/commands/session.js.map +1 -0
  52. package/dist/commands/skills.d.ts +31 -0
  53. package/dist/commands/skills.d.ts.map +1 -0
  54. package/dist/commands/skills.js +314 -0
  55. package/dist/commands/skills.js.map +1 -0
  56. package/dist/commands/status.d.ts +2 -0
  57. package/dist/commands/status.d.ts.map +1 -0
  58. package/dist/commands/status.js +127 -0
  59. package/dist/commands/status.js.map +1 -0
  60. package/dist/commands/synopsis.d.ts +10 -0
  61. package/dist/commands/synopsis.d.ts.map +1 -0
  62. package/dist/commands/synopsis.js +277 -0
  63. package/dist/commands/synopsis.js.map +1 -0
  64. package/dist/commands/update.d.ts +10 -0
  65. package/dist/commands/update.d.ts.map +1 -0
  66. package/dist/commands/update.js +165 -0
  67. package/dist/commands/update.js.map +1 -0
  68. package/dist/commands/voice.d.ts +410 -0
  69. package/dist/commands/voice.d.ts.map +1 -0
  70. package/dist/commands/voice.js +4763 -0
  71. package/dist/commands/voice.js.map +1 -0
  72. package/dist/index.d.ts +9 -0
  73. package/dist/index.d.ts.map +1 -0
  74. package/dist/index.js +512 -0
  75. package/dist/index.js.map +1 -0
  76. package/dist/mcp/context-hub-mcp.d.ts +11 -0
  77. package/dist/mcp/context-hub-mcp.d.ts.map +1 -0
  78. package/dist/mcp/context-hub-mcp.js +548 -0
  79. package/dist/mcp/context-hub-mcp.js.map +1 -0
  80. package/dist/telegram/voice.d.ts +146 -0
  81. package/dist/telegram/voice.d.ts.map +1 -0
  82. package/dist/telegram/voice.js +351 -0
  83. package/dist/telegram/voice.js.map +1 -0
  84. package/dist/types/skills.d.ts +44 -0
  85. package/dist/types/skills.d.ts.map +1 -0
  86. package/dist/types/skills.js +5 -0
  87. package/dist/types/skills.js.map +1 -0
  88. package/dist/ui/banner.d.ts +18 -0
  89. package/dist/ui/banner.d.ts.map +1 -0
  90. package/dist/ui/banner.js +323 -0
  91. package/dist/ui/banner.js.map +1 -0
  92. package/dist/ui/index.d.ts +8 -0
  93. package/dist/ui/index.d.ts.map +1 -0
  94. package/dist/ui/index.js +8 -0
  95. package/dist/ui/index.js.map +1 -0
  96. package/dist/ui/prompts.d.ts +52 -0
  97. package/dist/ui/prompts.d.ts.map +1 -0
  98. package/dist/ui/prompts.js +72 -0
  99. package/dist/ui/prompts.js.map +1 -0
  100. package/dist/ui/theme.d.ts +82 -0
  101. package/dist/ui/theme.d.ts.map +1 -0
  102. package/dist/ui/theme.js +142 -0
  103. package/dist/ui/theme.js.map +1 -0
  104. package/dist/utils/auth-guard.d.ts +66 -0
  105. package/dist/utils/auth-guard.d.ts.map +1 -0
  106. package/dist/utils/auth-guard.js +348 -0
  107. package/dist/utils/auth-guard.js.map +1 -0
  108. package/dist/utils/ensure-project.d.ts +11 -0
  109. package/dist/utils/ensure-project.d.ts.map +1 -0
  110. package/dist/utils/ensure-project.js +70 -0
  111. package/dist/utils/ensure-project.js.map +1 -0
  112. package/dist/utils/git.d.ts +73 -0
  113. package/dist/utils/git.d.ts.map +1 -0
  114. package/dist/utils/git.js +219 -0
  115. package/dist/utils/git.js.map +1 -0
  116. package/dist/utils/github-auth.d.ts +54 -0
  117. package/dist/utils/github-auth.d.ts.map +1 -0
  118. package/dist/utils/github-auth.js +375 -0
  119. package/dist/utils/github-auth.js.map +1 -0
  120. package/dist/utils/github-repo.d.ts +30 -0
  121. package/dist/utils/github-repo.d.ts.map +1 -0
  122. package/dist/utils/github-repo.js +219 -0
  123. package/dist/utils/github-repo.js.map +1 -0
  124. package/dist/utils/platform-auth.d.ts +81 -0
  125. package/dist/utils/platform-auth.d.ts.map +1 -0
  126. package/dist/utils/platform-auth.js +191 -0
  127. package/dist/utils/platform-auth.js.map +1 -0
  128. package/dist/utils/project-config.d.ts +43 -0
  129. package/dist/utils/project-config.d.ts.map +1 -0
  130. package/dist/utils/project-config.js +97 -0
  131. package/dist/utils/project-config.js.map +1 -0
  132. package/dist/utils/skill-registry.d.ts +49 -0
  133. package/dist/utils/skill-registry.d.ts.map +1 -0
  134. package/dist/utils/skill-registry.js +192 -0
  135. package/dist/utils/skill-registry.js.map +1 -0
  136. package/dist/utils/wallet.d.ts +62 -0
  137. package/dist/utils/wallet.d.ts.map +1 -0
  138. package/dist/utils/wallet.js +252 -0
  139. package/dist/utils/wallet.js.map +1 -0
  140. package/dist/utils/x402-client.d.ts +86 -0
  141. package/dist/utils/x402-client.d.ts.map +1 -0
  142. package/dist/utils/x402-client.js +265 -0
  143. package/dist/utils/x402-client.js.map +1 -0
  144. package/package.json +76 -0
  145. package/scripts/postinstall.js +116 -0
  146. package/scripts/test-onboarding.sh +121 -0
  147. package/scripts/voice-start.sh +128 -0
  148. package/scripts/voice-stop.sh +33 -0
  149. package/template/.claude/settings.json +92 -0
  150. package/template/.claude/skills/agent-browser/SKILL.md +116 -0
  151. package/template/.claude/skills/brand-architect/SKILL.md +240 -0
  152. package/template/.claude/skills/brand-architect/config.yaml +137 -0
  153. package/template/.claude/skills/campaign-hud/config.yaml +112 -0
  154. package/template/.claude/skills/content-creator/SKILL.md +294 -0
  155. package/template/.claude/skills/debug/MULTI_AGENT.md +360 -0
  156. package/template/.claude/skills/debug/SKILL.md +549 -0
  157. package/template/.claude/skills/fly-deploy/SKILL.md +676 -0
  158. package/template/.claude/skills/founder-video/SKILL.md +467 -0
  159. package/template/.claude/skills/hud/SKILL.md +157 -0
  160. package/template/.claude/skills/ralph-tui/SKILL.md +210 -0
  161. package/template/.claude/skills/react-best-practices/AGENTS.md +2249 -0
  162. package/template/.claude/skills/react-best-practices/README.md +123 -0
  163. package/template/.claude/skills/react-best-practices/SKILL.md +125 -0
  164. package/template/.claude/skills/react-best-practices/metadata.json +15 -0
  165. package/template/.claude/skills/react-best-practices/rules/_sections.md +46 -0
  166. package/template/.claude/skills/react-best-practices/rules/_template.md +28 -0
  167. package/template/.claude/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  168. package/template/.claude/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  169. package/template/.claude/skills/react-best-practices/rules/async-api-routes.md +38 -0
  170. package/template/.claude/skills/react-best-practices/rules/async-defer-await.md +80 -0
  171. package/template/.claude/skills/react-best-practices/rules/async-dependencies.md +36 -0
  172. package/template/.claude/skills/react-best-practices/rules/async-parallel.md +28 -0
  173. package/template/.claude/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  174. package/template/.claude/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  175. package/template/.claude/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  176. package/template/.claude/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  177. package/template/.claude/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  178. package/template/.claude/skills/react-best-practices/rules/bundle-preload.md +50 -0
  179. package/template/.claude/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  180. package/template/.claude/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  181. package/template/.claude/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  182. package/template/.claude/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  183. package/template/.claude/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  184. package/template/.claude/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  185. package/template/.claude/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  186. package/template/.claude/skills/react-best-practices/rules/js-early-exit.md +50 -0
  187. package/template/.claude/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  188. package/template/.claude/skills/react-best-practices/rules/js-index-maps.md +37 -0
  189. package/template/.claude/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  190. package/template/.claude/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  191. package/template/.claude/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  192. package/template/.claude/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  193. package/template/.claude/skills/react-best-practices/rules/rendering-activity.md +26 -0
  194. package/template/.claude/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  195. package/template/.claude/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  196. package/template/.claude/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  197. package/template/.claude/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  198. package/template/.claude/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  199. package/template/.claude/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  200. package/template/.claude/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  201. package/template/.claude/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  202. package/template/.claude/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  203. package/template/.claude/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  204. package/template/.claude/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  205. package/template/.claude/skills/react-best-practices/rules/rerender-memo.md +44 -0
  206. package/template/.claude/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  207. package/template/.claude/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  208. package/template/.claude/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  209. package/template/.claude/skills/react-best-practices/rules/server-cache-react.md +26 -0
  210. package/template/.claude/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  211. package/template/.claude/skills/react-best-practices/rules/server-serialization.md +38 -0
  212. package/template/.claude/skills/remotion-best-practices/SKILL.md +43 -0
  213. package/template/.claude/skills/remotion-best-practices/rules/3d.md +86 -0
  214. package/template/.claude/skills/remotion-best-practices/rules/animations.md +29 -0
  215. package/template/.claude/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
  216. package/template/.claude/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
  217. package/template/.claude/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +108 -0
  218. package/template/.claude/skills/remotion-best-practices/rules/assets.md +78 -0
  219. package/template/.claude/skills/remotion-best-practices/rules/audio.md +172 -0
  220. package/template/.claude/skills/remotion-best-practices/rules/calculate-metadata.md +104 -0
  221. package/template/.claude/skills/remotion-best-practices/rules/can-decode.md +75 -0
  222. package/template/.claude/skills/remotion-best-practices/rules/charts.md +58 -0
  223. package/template/.claude/skills/remotion-best-practices/rules/compositions.md +146 -0
  224. package/template/.claude/skills/remotion-best-practices/rules/display-captions.md +126 -0
  225. package/template/.claude/skills/remotion-best-practices/rules/extract-frames.md +229 -0
  226. package/template/.claude/skills/remotion-best-practices/rules/fonts.md +152 -0
  227. package/template/.claude/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
  228. package/template/.claude/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
  229. package/template/.claude/skills/remotion-best-practices/rules/get-video-duration.md +58 -0
  230. package/template/.claude/skills/remotion-best-practices/rules/gifs.md +138 -0
  231. package/template/.claude/skills/remotion-best-practices/rules/images.md +130 -0
  232. package/template/.claude/skills/remotion-best-practices/rules/import-srt-captions.md +67 -0
  233. package/template/.claude/skills/remotion-best-practices/rules/lottie.md +68 -0
  234. package/template/.claude/skills/remotion-best-practices/rules/measuring-dom-nodes.md +35 -0
  235. package/template/.claude/skills/remotion-best-practices/rules/measuring-text.md +143 -0
  236. package/template/.claude/skills/remotion-best-practices/rules/sequencing.md +106 -0
  237. package/template/.claude/skills/remotion-best-practices/rules/tailwind.md +11 -0
  238. package/template/.claude/skills/remotion-best-practices/rules/text-animations.md +20 -0
  239. package/template/.claude/skills/remotion-best-practices/rules/timing.md +179 -0
  240. package/template/.claude/skills/remotion-best-practices/rules/transcribe-captions.md +19 -0
  241. package/template/.claude/skills/remotion-best-practices/rules/transitions.md +122 -0
  242. package/template/.claude/skills/remotion-best-practices/rules/trimming.md +53 -0
  243. package/template/.claude/skills/remotion-best-practices/rules/videos.md +171 -0
  244. package/template/.claude/skills/search/SKILL.md +220 -0
  245. package/template/.claude/skills/spec/SKILL.md +377 -0
  246. package/template/.claude/skills/startup/SKILL.md +310 -0
  247. package/template/.claude/skills/web-architect/SKILL.md +309 -0
  248. package/template/.claude/skills/x-algorithm/SKILL.md +305 -0
  249. package/template/.jfl/config.json +8 -0
  250. package/template/.mcp.json +11 -0
  251. package/template/CLAUDE.md +960 -0
  252. package/template/content/.gitkeep +0 -0
  253. package/template/context-hub +3 -0
  254. package/template/knowledge/BRAND_BRIEF.md +124 -0
  255. package/template/knowledge/BRAND_DECISIONS.md +168 -0
  256. package/template/knowledge/NARRATIVE.md +114 -0
  257. package/template/knowledge/ROADMAP.md +128 -0
  258. package/template/knowledge/THESIS.md +108 -0
  259. package/template/knowledge/VISION.md +74 -0
  260. package/template/knowledge/VOICE_AND_TONE.md +146 -0
  261. package/template/previews/.gitkeep +0 -0
  262. package/template/scripts/session/auto-commit.sh +245 -0
  263. package/template/scripts/session/auto-merge.sh +325 -0
  264. package/template/scripts/session/jfl-doctor.sh +587 -0
  265. package/template/scripts/session/session-end.sh +194 -0
  266. package/template/scripts/session/session-init.sh +163 -0
  267. package/template/scripts/session/session-sync.sh +167 -0
  268. package/template/scripts/session/test-context-preservation.sh +160 -0
  269. package/template/skills/agent-browser/SKILL.md +116 -0
  270. package/template/skills/brand-architect/SKILL.md +240 -0
  271. package/template/skills/brand-architect/config.yaml +137 -0
  272. package/template/skills/campaign-hud/config.yaml +112 -0
  273. package/template/skills/content-creator/SKILL.md +294 -0
  274. package/template/skills/debug/MULTI_AGENT.md +360 -0
  275. package/template/skills/debug/SKILL.md +549 -0
  276. package/template/skills/fly-deploy/SKILL.md +676 -0
  277. package/template/skills/founder-video/SKILL.md +467 -0
  278. package/template/skills/hud/SKILL.md +204 -0
  279. package/template/skills/ralph-tui/SKILL.md +210 -0
  280. package/template/skills/react-best-practices/AGENTS.md +2249 -0
  281. package/template/skills/react-best-practices/README.md +123 -0
  282. package/template/skills/react-best-practices/SKILL.md +125 -0
  283. package/template/skills/react-best-practices/metadata.json +15 -0
  284. package/template/skills/react-best-practices/rules/_sections.md +46 -0
  285. package/template/skills/react-best-practices/rules/_template.md +28 -0
  286. package/template/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  287. package/template/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  288. package/template/skills/react-best-practices/rules/async-api-routes.md +38 -0
  289. package/template/skills/react-best-practices/rules/async-defer-await.md +80 -0
  290. package/template/skills/react-best-practices/rules/async-dependencies.md +36 -0
  291. package/template/skills/react-best-practices/rules/async-parallel.md +28 -0
  292. package/template/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  293. package/template/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  294. package/template/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  295. package/template/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  296. package/template/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  297. package/template/skills/react-best-practices/rules/bundle-preload.md +50 -0
  298. package/template/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  299. package/template/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  300. package/template/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  301. package/template/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  302. package/template/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  303. package/template/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  304. package/template/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  305. package/template/skills/react-best-practices/rules/js-early-exit.md +50 -0
  306. package/template/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  307. package/template/skills/react-best-practices/rules/js-index-maps.md +37 -0
  308. package/template/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  309. package/template/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  310. package/template/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  311. package/template/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  312. package/template/skills/react-best-practices/rules/rendering-activity.md +26 -0
  313. package/template/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  314. package/template/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  315. package/template/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  316. package/template/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  317. package/template/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  318. package/template/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  319. package/template/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  320. package/template/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  321. package/template/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  322. package/template/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  323. package/template/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  324. package/template/skills/react-best-practices/rules/rerender-memo.md +44 -0
  325. package/template/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  326. package/template/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  327. package/template/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  328. package/template/skills/react-best-practices/rules/server-cache-react.md +26 -0
  329. package/template/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  330. package/template/skills/react-best-practices/rules/server-serialization.md +38 -0
  331. package/template/skills/remotion-best-practices/SKILL.md +43 -0
  332. package/template/skills/remotion-best-practices/rules/3d.md +86 -0
  333. package/template/skills/remotion-best-practices/rules/animations.md +29 -0
  334. package/template/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
  335. package/template/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
  336. package/template/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +108 -0
  337. package/template/skills/remotion-best-practices/rules/assets.md +78 -0
  338. package/template/skills/remotion-best-practices/rules/audio.md +172 -0
  339. package/template/skills/remotion-best-practices/rules/calculate-metadata.md +104 -0
  340. package/template/skills/remotion-best-practices/rules/can-decode.md +75 -0
  341. package/template/skills/remotion-best-practices/rules/charts.md +58 -0
  342. package/template/skills/remotion-best-practices/rules/compositions.md +146 -0
  343. package/template/skills/remotion-best-practices/rules/display-captions.md +126 -0
  344. package/template/skills/remotion-best-practices/rules/extract-frames.md +229 -0
  345. package/template/skills/remotion-best-practices/rules/fonts.md +152 -0
  346. package/template/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
  347. package/template/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
  348. package/template/skills/remotion-best-practices/rules/get-video-duration.md +58 -0
  349. package/template/skills/remotion-best-practices/rules/gifs.md +138 -0
  350. package/template/skills/remotion-best-practices/rules/images.md +130 -0
  351. package/template/skills/remotion-best-practices/rules/import-srt-captions.md +67 -0
  352. package/template/skills/remotion-best-practices/rules/lottie.md +68 -0
  353. package/template/skills/remotion-best-practices/rules/measuring-dom-nodes.md +35 -0
  354. package/template/skills/remotion-best-practices/rules/measuring-text.md +143 -0
  355. package/template/skills/remotion-best-practices/rules/sequencing.md +106 -0
  356. package/template/skills/remotion-best-practices/rules/tailwind.md +11 -0
  357. package/template/skills/remotion-best-practices/rules/text-animations.md +20 -0
  358. package/template/skills/remotion-best-practices/rules/timing.md +179 -0
  359. package/template/skills/remotion-best-practices/rules/transcribe-captions.md +19 -0
  360. package/template/skills/remotion-best-practices/rules/transitions.md +122 -0
  361. package/template/skills/remotion-best-practices/rules/trimming.md +53 -0
  362. package/template/skills/remotion-best-practices/rules/videos.md +171 -0
  363. package/template/skills/search/SKILL.md +220 -0
  364. package/template/skills/spec/SKILL.md +377 -0
  365. package/template/skills/startup/SKILL.md +310 -0
  366. package/template/skills/web-architect/SKILL.md +309 -0
  367. package/template/skills/x-algorithm/SKILL.md +305 -0
  368. package/template/suggestions/.gitkeep +0 -0
  369. package/template/templates/QUICKSTART_SKILL_TO_PRODUCT.md +242 -0
  370. package/template/templates/brand/BRAND_BRIEF.md +124 -0
  371. package/template/templates/brand/BRAND_DECISIONS.md +168 -0
  372. package/template/templates/brand/BRAND_GUIDELINES.md +251 -0
  373. package/template/templates/brand/VOICE_AND_TONE.md +146 -0
  374. package/template/templates/brand/global.css +240 -0
  375. package/template/templates/collaboration/CONTRIBUTOR.md +74 -0
  376. package/template/templates/collaboration/CRM.md +97 -0
  377. package/template/templates/collaboration/TASKS.md +83 -0
  378. package/template/templates/strategic/NARRATIVE.md +114 -0
  379. package/template/templates/strategic/ROADMAP.md +128 -0
  380. package/template/templates/strategic/THESIS.md +108 -0
  381. package/template/templates/strategic/VISION.md +74 -0
@@ -0,0 +1,549 @@
1
+ # Debug Skill
2
+
3
+ Reverse engineering and dynamic analysis using industry-standard tools. For CTF, security research, malware analysis, and understanding binary behavior.
4
+
5
+ ---
6
+
7
+ ## Philosophy
8
+
9
+ **Understand before patching.** The goal is comprehension, not just getting past a check.
10
+
11
+ **Static + Dynamic = Complete picture.** Ghidra shows structure, Frida shows runtime.
12
+
13
+ **Cross-verify everything.** Use multiple tools to confirm findings.
14
+
15
+ ---
16
+
17
+ ## Commands
18
+
19
+ ```
20
+ /debug # Overview of available tools and workflows
21
+ /debug setup [tool] # Setup guide for specific tool
22
+ /debug ghidra [target] # Static analysis workflow
23
+ /debug frida [target] # Dynamic instrumentation workflow
24
+ /debug windbg [target] # Windows debugging workflow
25
+ /debug binja [target] # Binary Ninja workflow
26
+ /debug ctf [challenge] # CTF-specific approach
27
+ /debug malware [sample] # Malware analysis workflow
28
+ /debug compare [a] [b] # Cross-tool comparison
29
+ /debug hook [function] # Generate Frida hook template
30
+ /debug decompile [function] # Decompilation tips
31
+ ```
32
+
33
+ ---
34
+
35
+ ## THE TOOLS
36
+
37
+ ### Ghidra (Static Analysis)
38
+
39
+ **What it is:** NSA's free reverse engineering suite. Decompiler, disassembler, scripting.
40
+
41
+ **When to use:**
42
+ - Initial triage of unknown binary
43
+ - Understanding program structure
44
+ - Finding interesting functions
45
+ - Patching binaries
46
+
47
+ **Setup:**
48
+ ```bash
49
+ # macOS
50
+ brew install --cask ghidra
51
+
52
+ # Linux
53
+ wget https://github.com/NationalSecurityAgency/ghidra/releases/latest
54
+ unzip ghidra_*.zip
55
+ ./ghidraRun
56
+
57
+ # Requires Java 17+
58
+ java --version
59
+ ```
60
+
61
+ **Key shortcuts:**
62
+ | Key | Action |
63
+ |-----|--------|
64
+ | `G` | Go to address |
65
+ | `L` | Rename label/function |
66
+ | `T` | Change type |
67
+ | `D` | Disassemble |
68
+ | `;` | Add comment |
69
+ | `Ctrl+Shift+E` | Open decompiler |
70
+ | `X` | Show xrefs |
71
+ | `/` | Search |
72
+
73
+ **Workflow:**
74
+ 1. Create new project
75
+ 2. Import binary (File → Import)
76
+ 3. Analyze (Yes to all, be patient)
77
+ 4. Start in `main` or entry point
78
+ 5. Rename functions as you understand them
79
+ 6. Follow cross-references to understand flow
80
+
81
+ **Ghidra Python scripting:**
82
+ ```python
83
+ # List all functions
84
+ from ghidra.program.model.listing import Function
85
+ fm = currentProgram.getFunctionManager()
86
+ for func in fm.getFunctions(True):
87
+ print(f"{func.getName()} @ {func.getEntryPoint()}")
88
+
89
+ # Find strings containing "password"
90
+ from ghidra.program.util import DefinedDataIterator
91
+ for data in DefinedDataIterator.definedStrings(currentProgram):
92
+ if "password" in str(data.getValue()).lower():
93
+ print(f"{data.getAddress()}: {data.getValue()}")
94
+ ```
95
+
96
+ ---
97
+
98
+ ### Frida (Dynamic Instrumentation)
99
+
100
+ **What it is:** Dynamic instrumentation toolkit. Hook functions, trace calls, modify behavior at runtime.
101
+
102
+ **When to use:**
103
+ - Runtime behavior analysis
104
+ - Bypassing checks
105
+ - Tracing function calls
106
+ - Understanding crypto/encoding
107
+ - Mobile app analysis (iOS/Android)
108
+
109
+ **Setup:**
110
+ ```bash
111
+ # Install Frida
112
+ pip install frida-tools
113
+
114
+ # For iOS/Android
115
+ # Device needs frida-server running
116
+ frida-ps -U # List processes on USB device
117
+ ```
118
+
119
+ **Basic hooks:**
120
+ ```javascript
121
+ // Hook a function and log arguments
122
+ Interceptor.attach(Module.findExportByName(null, "strcmp"), {
123
+ onEnter: function(args) {
124
+ console.log("strcmp called:");
125
+ console.log(" arg0: " + Memory.readUtf8String(args[0]));
126
+ console.log(" arg1: " + Memory.readUtf8String(args[1]));
127
+ },
128
+ onLeave: function(retval) {
129
+ console.log(" return: " + retval);
130
+ }
131
+ });
132
+
133
+ // Hook by address (Ghidra tells you the address)
134
+ var baseAddr = Module.findBaseAddress("target");
135
+ var funcAddr = baseAddr.add(0x1234); // offset from Ghidra
136
+
137
+ Interceptor.attach(funcAddr, {
138
+ onEnter: function(args) {
139
+ console.log("Custom function called");
140
+ console.log(" arg0: " + args[0]);
141
+ console.log(" arg1: " + args[1]);
142
+ }
143
+ });
144
+
145
+ // Replace return value
146
+ Interceptor.attach(Module.findExportByName(null, "isLicensed"), {
147
+ onLeave: function(retval) {
148
+ retval.replace(1); // Always return true
149
+ }
150
+ });
151
+ ```
152
+
153
+ **Running Frida:**
154
+ ```bash
155
+ # Attach to running process
156
+ frida -p <pid> -l script.js
157
+
158
+ # Spawn and attach
159
+ frida -f ./target -l script.js --no-pause
160
+
161
+ # On device (iOS/Android)
162
+ frida -U -f com.example.app -l script.js --no-pause
163
+ ```
164
+
165
+ **Common patterns:**
166
+ ```javascript
167
+ // Trace all calls to a module
168
+ var module = Process.findModuleByName("libcrypto.so");
169
+ Interceptor.attach(module.base.add(0x1000), {
170
+ onEnter: function() {
171
+ console.log("Called from: " + Thread.backtrace(this.context, Backtracer.ACCURATE)
172
+ .map(DebugSymbol.fromAddress).join("\n"));
173
+ }
174
+ });
175
+
176
+ // Dump memory
177
+ var buf = Memory.readByteArray(ptr("0x12345678"), 256);
178
+ console.log(hexdump(buf, { offset: 0, length: 256, header: true, ansi: true }));
179
+
180
+ // Find pattern in memory
181
+ var pattern = "48 89 5C 24 08";
182
+ var matches = Memory.scan(module.base, module.size, pattern, {
183
+ onMatch: function(address, size) {
184
+ console.log("Found at: " + address);
185
+ }
186
+ });
187
+ ```
188
+
189
+ ---
190
+
191
+ ### WinDbg (Windows Debugging)
192
+
193
+ **What it is:** Microsoft's debugger for Windows. Kernel and user-mode debugging.
194
+
195
+ **When to use:**
196
+ - Windows binary debugging
197
+ - Crash dump analysis
198
+ - Kernel debugging
199
+ - Driver analysis
200
+
201
+ **Setup:**
202
+ ```
203
+ # Install from Microsoft Store or winget
204
+ winget install Microsoft.WinDbg
205
+
206
+ # Or download from:
207
+ # https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/
208
+ ```
209
+
210
+ **Key commands:**
211
+ | Command | Action |
212
+ |---------|--------|
213
+ | `g` | Go (continue) |
214
+ | `p` | Step over |
215
+ | `t` | Step into |
216
+ | `bp <addr>` | Set breakpoint |
217
+ | `bl` | List breakpoints |
218
+ | `bc *` | Clear all breakpoints |
219
+ | `k` | Stack trace |
220
+ | `r` | Show registers |
221
+ | `dd <addr>` | Display dwords |
222
+ | `db <addr>` | Display bytes |
223
+ | `da <addr>` | Display ASCII |
224
+ | `du <addr>` | Display Unicode |
225
+ | `dps <addr>` | Display with symbols |
226
+ | `lm` | List modules |
227
+ | `x module!*pattern*` | Search symbols |
228
+ | `!analyze -v` | Analyze crash |
229
+
230
+ **Workflow:**
231
+ ```
232
+ # Attach to process
233
+ .attach <pid>
234
+
235
+ # Open executable
236
+ .open <path>
237
+
238
+ # Set breakpoint on function
239
+ bp kernel32!CreateFileW
240
+
241
+ # Set conditional breakpoint
242
+ bp kernel32!CreateFileW ".if (poi(esp+4)==0x12345678) {} .else {gc}"
243
+
244
+ # Log without breaking
245
+ bp kernel32!CreateFileW ".printf \"CreateFile: %mu\\n\", poi(esp+4); gc"
246
+
247
+ # Break on module load
248
+ sxe ld:target.dll
249
+ ```
250
+
251
+ **Extension commands:**
252
+ ```
253
+ # Load SOS for .NET
254
+ .loadby sos clr
255
+
256
+ # Dump heap
257
+ !dumpheap -stat
258
+
259
+ # Find objects
260
+ !dumpheap -type System.String
261
+
262
+ # Dump object
263
+ !dumpobj <addr>
264
+ ```
265
+
266
+ ---
267
+
268
+ ### Binary Ninja (binja)
269
+
270
+ **What it is:** Commercial reverse engineering platform. Fast, scriptable, good UI.
271
+
272
+ **When to use:**
273
+ - When Ghidra is too slow
274
+ - Complex type recovery
275
+ - IL-based analysis
276
+ - Custom architectures
277
+
278
+ **Setup:**
279
+ ```bash
280
+ # Commercial license required
281
+ # Download from: https://binary.ninja/
282
+
283
+ # Python API
284
+ pip install binaryninja
285
+ ```
286
+
287
+ **Key features:**
288
+ - HLIL/MLIL/LLIL (high/medium/low level IL)
289
+ - Type propagation
290
+ - Data flow analysis
291
+ - Collaboration features
292
+
293
+ **Python API:**
294
+ ```python
295
+ import binaryninja as bn
296
+
297
+ # Open binary
298
+ bv = bn.open_view("/path/to/binary")
299
+
300
+ # List functions
301
+ for func in bv.functions:
302
+ print(f"{func.name} @ {hex(func.start)}")
303
+
304
+ # Get HLIL
305
+ for func in bv.functions:
306
+ if func.name == "main":
307
+ for line in func.hlil:
308
+ print(line)
309
+
310
+ # Find strings
311
+ for string in bv.strings:
312
+ if "password" in string.value.lower():
313
+ print(f"{hex(string.start)}: {string.value}")
314
+
315
+ # Cross-references
316
+ func = bv.get_function_at(0x401000)
317
+ for ref in bv.get_code_refs(func.start):
318
+ print(f"Called from: {hex(ref.address)}")
319
+ ```
320
+
321
+ ---
322
+
323
+ ## WORKFLOWS
324
+
325
+ ### CTF Binary Exploitation
326
+
327
+ ```
328
+ 1. File analysis
329
+ file ./challenge
330
+ checksec ./challenge
331
+
332
+ 2. Static analysis (Ghidra)
333
+ - Find main
334
+ - Identify vulnerability (buffer overflow, format string, etc.)
335
+ - Note key addresses
336
+
337
+ 3. Dynamic analysis (Frida/GDB)
338
+ - Verify assumptions
339
+ - Find exact offsets
340
+ - Test exploit
341
+
342
+ 4. Exploit development
343
+ - Write payload
344
+ - Test locally
345
+ - Adjust for remote
346
+ ```
347
+
348
+ ### Malware Analysis (Isolated Environment)
349
+
350
+ ```
351
+ 1. Initial triage
352
+ - Hashes (md5, sha256)
353
+ - Strings
354
+ - Imports
355
+ - PE/ELF structure
356
+
357
+ 2. Static analysis (Ghidra)
358
+ - Entry point behavior
359
+ - Anti-analysis tricks
360
+ - Config extraction
361
+ - C2 identification
362
+
363
+ 3. Dynamic analysis (isolated VM)
364
+ - Network behavior
365
+ - File system changes
366
+ - Registry changes
367
+ - Process behavior
368
+
369
+ 4. Documentation
370
+ - IOCs
371
+ - Behavior summary
372
+ - Detection rules
373
+ ```
374
+
375
+ ### Mobile App Analysis
376
+
377
+ ```
378
+ 1. Extract APK/IPA
379
+ adb pull /data/app/com.example.app/base.apk
380
+ # or use frida-ios-dump for iOS
381
+
382
+ 2. Static analysis
383
+ - jadx for Java decompilation
384
+ - Ghidra for native libs
385
+
386
+ 3. Dynamic analysis (Frida)
387
+ - Hook SSL pinning bypass
388
+ - Trace API calls
389
+ - Dump runtime secrets
390
+
391
+ 4. Common bypasses
392
+ - Root/jailbreak detection
393
+ - SSL pinning
394
+ - Integrity checks
395
+ ```
396
+
397
+ ---
398
+
399
+ ## CROSS-TOOL INTEGRATION
400
+
401
+ ### Ghidra → Frida
402
+
403
+ ```python
404
+ # Export function addresses from Ghidra
405
+ # Run as Ghidra script
406
+ fm = currentProgram.getFunctionManager()
407
+ with open("/tmp/functions.txt", "w") as f:
408
+ for func in fm.getFunctions(True):
409
+ f.write(f"{func.getEntryPoint()},{func.getName()}\n")
410
+ ```
411
+
412
+ ```javascript
413
+ // Import into Frida
414
+ var funcs = {};
415
+ // Load from file or paste
416
+ funcs["0x401000"] = "check_license";
417
+ funcs["0x401100"] = "decrypt_config";
418
+
419
+ for (var addr in funcs) {
420
+ Interceptor.attach(ptr(addr), {
421
+ onEnter: function(args) {
422
+ console.log(funcs[this.context.pc] + " called");
423
+ }
424
+ });
425
+ }
426
+ ```
427
+
428
+ ### Binary Ninja → Frida
429
+
430
+ ```python
431
+ # Export from binja
432
+ import binaryninja as bn
433
+ import json
434
+
435
+ bv = bn.open_view("./target")
436
+ hooks = {}
437
+
438
+ for func in bv.functions:
439
+ if not func.name.startswith("sub_"):
440
+ hooks[hex(func.start)] = func.name
441
+
442
+ with open("hooks.json", "w") as f:
443
+ json.dump(hooks, f)
444
+ ```
445
+
446
+ ---
447
+
448
+ ## QUICK REFERENCE
449
+
450
+ ### File Analysis
451
+ ```bash
452
+ file ./target # File type
453
+ strings ./target | less # Readable strings
454
+ strings -el ./target # Little-endian 16-bit
455
+ objdump -d ./target | less # Disassembly
456
+ readelf -a ./target # ELF info
457
+ nm ./target # Symbols
458
+ ldd ./target # Shared libraries
459
+ checksec ./target # Security features (pwntools)
460
+ ```
461
+
462
+ ### Memory Layouts
463
+ ```
464
+ x86-64 Registers:
465
+ RAX, RBX, RCX, RDX - General purpose
466
+ RSI, RDI - Source/Destination index (args 2, 1)
467
+ RSP - Stack pointer
468
+ RBP - Base pointer
469
+ RIP - Instruction pointer
470
+ R8-R15 - Additional general purpose
471
+
472
+ x86-64 Calling Convention (System V):
473
+ Args: RDI, RSI, RDX, RCX, R8, R9, then stack
474
+ Return: RAX
475
+
476
+ Windows x64:
477
+ Args: RCX, RDX, R8, R9, then stack
478
+ Return: RAX
479
+ ```
480
+
481
+ ### Common Vulnerability Patterns
482
+
483
+ | Pattern | Ghidra Indicator | Frida Hook |
484
+ |---------|-----------------|------------|
485
+ | Buffer overflow | `strcpy`, `gets`, `sprintf` | Hook and log sizes |
486
+ | Format string | `printf(user_input)` | Hook printf, check args |
487
+ | Integer overflow | Arithmetic before allocation | Hook malloc, trace size |
488
+ | Use-after-free | free() then dereference | Hook free/malloc, track |
489
+ | Command injection | `system()`, `exec()` | Hook and log commands |
490
+
491
+ ---
492
+
493
+ ## MULTI-AGENT DEBUGGING
494
+
495
+ When debugging complex issues, use multiple agents:
496
+
497
+ ```
498
+ Agent 1: Static Analysis (Ghidra)
499
+ - Map program structure
500
+ - Identify key functions
501
+ - Document findings
502
+
503
+ Agent 2: Dynamic Analysis (Frida)
504
+ - Trace runtime behavior
505
+ - Hook identified functions
506
+ - Capture actual values
507
+
508
+ Agent 3: Cross-verification
509
+ - Compare static vs dynamic findings
510
+ - Identify discrepancies
511
+ - Validate hypotheses
512
+
513
+ Agent 4: Exploit/Fix Development
514
+ - Use verified findings
515
+ - Develop solution
516
+ - Test and iterate
517
+ ```
518
+
519
+ ---
520
+
521
+ ## OUTPUT FILES
522
+
523
+ ```
524
+ outputs/debug/
525
+ ├── analysis/
526
+ │ └── {target}-analysis-{date}.md
527
+ ├── hooks/
528
+ │ └── {target}-hooks.js
529
+ ├── scripts/
530
+ │ └── {target}-ghidra.py
531
+ └── findings/
532
+ └── {target}-findings.md
533
+ ```
534
+
535
+ ---
536
+
537
+ ## RESOURCES
538
+
539
+ - **Ghidra:** ghidra-sre.org, ghidra.re (community)
540
+ - **Frida:** frida.re/docs
541
+ - **WinDbg:** docs.microsoft.com/windows-hardware/drivers/debugger
542
+ - **Binary Ninja:** docs.binary.ninja
543
+ - **CTF resources:** ctftime.org, pwnable.kr, exploit.education
544
+
545
+ ---
546
+
547
+ *"The best debugger is a good understanding of the code."* — Unknown
548
+
549
+ *"Reverse engineering is not about finding vulnerabilities. It's about understanding systems."* — Also Unknown