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
package/dist/index.js ADDED
@@ -0,0 +1,512 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * JFL CLI - Just Fucking Launch
4
+ *
5
+ * Free tier: Works standalone with BYOAI
6
+ * Paid tier: Connects to platform for dashboard, integrations, hosted agents
7
+ */
8
+ import { Command } from "commander";
9
+ import chalk from "chalk";
10
+ import { spawn, execSync } from "child_process";
11
+ import { existsSync, symlinkSync, mkdirSync, unlinkSync } from "fs";
12
+ import { homedir } from "os";
13
+ import { join } from "path";
14
+ import { fileURLToPath } from "url";
15
+ import { initCommand } from "./commands/init.js";
16
+ import { repairCommand } from "./commands/repair.js";
17
+ import { loginCommand, logout } from "./commands/login.js";
18
+ import { statusCommand } from "./commands/status.js";
19
+ import { deployCommand } from "./commands/deploy.js";
20
+ import { agentsCommand } from "./commands/agents.js";
21
+ import { hudCommand } from "./commands/hud.js";
22
+ import { sessionCommand } from "./commands/session.js";
23
+ import { feedbackCommand } from "./commands/feedback.js";
24
+ import { updateCommand } from "./commands/update.js";
25
+ import { contextHubCommand } from "./commands/context-hub.js";
26
+ import { voiceCommand } from "./commands/voice.js";
27
+ import { synopsisCommand } from "./commands/synopsis.js";
28
+ import { listSkillsCommand, installSkillCommand, removeSkillCommand, updateSkillsCommand, searchSkillsCommand, } from "./commands/skills.js";
29
+ import { ralphCommand, showRalphHelp } from "./commands/ralph.js";
30
+ import { sessionCreate, sessionExec, sessionList, sessionDestroy, sessionInfo } from "./commands/session-mgmt.js";
31
+ import { showDayPassStatus, hasWallet, getWalletAddress, } from "./utils/auth-guard.js";
32
+ const program = new Command();
33
+ program
34
+ .name("jfl")
35
+ .description("Just Fucking Launch - AI-powered GTM and development")
36
+ .version("0.1.0")
37
+ .option("-u, --update", "Pull latest JFL updates before starting")
38
+ .action(async (options) => {
39
+ // If --update flag, run update first
40
+ if (options.update) {
41
+ await updateCommand();
42
+ console.log(); // Add spacing before session starts
43
+ }
44
+ await sessionCommand();
45
+ });
46
+ // ============================================================================
47
+ // FREE TIER COMMANDS (work offline/standalone)
48
+ // ============================================================================
49
+ program
50
+ .command("init")
51
+ .description("Initialize a new JFL project")
52
+ .option("-n, --name <name>", "Project name")
53
+ .action(initCommand);
54
+ program
55
+ .command("repair")
56
+ .description("Repair a JFL project missing .jfl directory")
57
+ .action(repairCommand);
58
+ program
59
+ .command("hud")
60
+ .description("Show campaign dashboard")
61
+ .option("-c, --compact", "Show compact one-line status")
62
+ .action(hudCommand);
63
+ program
64
+ .command("status")
65
+ .description("Show project status")
66
+ .action(statusCommand);
67
+ program
68
+ .command("context-hub")
69
+ .description("Manage Context Hub daemon (unified context for AI agents)")
70
+ .argument("[action]", "start, stop, restart, status, ensure, query, serve")
71
+ .option("-p, --port <port>", "Port to run on (default: 4242)", "4242")
72
+ .action(async (action, options) => {
73
+ await contextHubCommand(action, { port: parseInt(options.port, 10) });
74
+ });
75
+ program
76
+ .command("synopsis")
77
+ .description("Show work summary (journal + commits + code)")
78
+ .argument("[hours]", "Hours to look back (default: 24)", "24")
79
+ .argument("[author]", "Filter by author name")
80
+ .action(async (hours, author) => {
81
+ await synopsisCommand(hours, author);
82
+ });
83
+ // ============================================================================
84
+ // PLATFORM COMMANDS (require login for full features)
85
+ // ============================================================================
86
+ program
87
+ .command("login")
88
+ .description("Login to JFL platform")
89
+ .option("--platform", "Use Platform Account (recommended)")
90
+ .option("--x402", "Use x402 Day Pass ($5/day, crypto)")
91
+ .option("--solo", "Use Solo plan ($49/mo)")
92
+ .option("--team", "Use Team plan ($199/mo)")
93
+ .option("--free", "Stay on trial")
94
+ .option("--force", "Force re-authentication")
95
+ .action(loginCommand);
96
+ program
97
+ .command("logout")
98
+ .description("Logout from JFL platform")
99
+ .action(() => {
100
+ logout();
101
+ console.log(chalk.green("Logged out successfully."));
102
+ });
103
+ program
104
+ .command("wallet")
105
+ .description("Show wallet and day pass status")
106
+ .action(() => {
107
+ const address = getWalletAddress();
108
+ if (!address) {
109
+ console.log(chalk.yellow("\n⚠️ No wallet configured"));
110
+ console.log(chalk.gray(" Run: jfl login\n"));
111
+ return;
112
+ }
113
+ console.log(chalk.bold("\n💰 Wallet Status\n"));
114
+ console.log(chalk.gray("Address: ") + chalk.cyan(address));
115
+ if (!hasWallet()) {
116
+ console.log(chalk.yellow("Mode: View-only (cannot sign payments)"));
117
+ console.log(chalk.gray("Run 'jfl login' to import signing key"));
118
+ }
119
+ else {
120
+ console.log(chalk.green("Mode: Full (can sign payments)"));
121
+ }
122
+ console.log();
123
+ showDayPassStatus();
124
+ console.log();
125
+ });
126
+ program
127
+ .command("deploy")
128
+ .description("Deploy project to JFL platform")
129
+ .option("-f, --force", "Force deploy even if no changes")
130
+ .action(deployCommand);
131
+ program
132
+ .command("agents")
133
+ .description("Manage parallel agents")
134
+ .argument("[action]", "Action: list, create, start, stop, destroy")
135
+ .option("-n, --name <name>", "Agent name")
136
+ .option("-t, --task <task>", "Task for agent")
137
+ .action(agentsCommand);
138
+ program
139
+ .command("feedback")
140
+ .description("Rate your JFL session")
141
+ .argument("[action]", "view or sync")
142
+ .action(feedbackCommand);
143
+ program
144
+ .command("update")
145
+ .description("Pull latest JFL product updates")
146
+ .option("--dry", "Show what would be updated without making changes")
147
+ .action(updateCommand);
148
+ // ============================================================================
149
+ // SKILL MANAGEMENT (work offline)
150
+ // ============================================================================
151
+ const skills = program.command("skills").description("Manage JFL skills");
152
+ skills
153
+ .command("list")
154
+ .description("List installed or available skills")
155
+ .option("-a, --available", "Show all available skills")
156
+ .option("-c, --category <category>", "Filter by category (core or catalog)")
157
+ .option("-t, --tag <tag>", "Filter by tag")
158
+ .action(listSkillsCommand);
159
+ skills
160
+ .command("install <skills...>")
161
+ .description("Install skill(s)")
162
+ .action(installSkillCommand);
163
+ skills
164
+ .command("remove <skills...>")
165
+ .description("Remove skill(s)")
166
+ .action(removeSkillCommand);
167
+ skills
168
+ .command("update [skill]")
169
+ .description("Update installed skill(s)")
170
+ .option("--dry", "Show what would be updated without making changes")
171
+ .action((skill, options) => updateSkillsCommand({ ...options, skillName: skill }));
172
+ skills
173
+ .command("search <query>")
174
+ .description("Search for skills")
175
+ .action(searchSkillsCommand);
176
+ // ============================================================================
177
+ // VOICE INPUT (work offline)
178
+ // ============================================================================
179
+ const voice = program.command("voice").description("Voice input for JFL");
180
+ voice
181
+ .command("model")
182
+ .description("Manage whisper models")
183
+ .argument("[action]", "list, download, or default")
184
+ .argument("[name]", "Model name (tiny, base, small, etc.)")
185
+ .option("-f, --force", "Force re-download")
186
+ .action(async (action, name, options) => {
187
+ await voiceCommand("model", action, name, options);
188
+ });
189
+ voice
190
+ .command("devices")
191
+ .description("List audio input devices")
192
+ .action(async () => {
193
+ await voiceCommand("devices");
194
+ });
195
+ voice
196
+ .command("test")
197
+ .description("Test voice input (record 3s and transcribe)")
198
+ .option("-d, --device <id>", "Device ID to use")
199
+ .action(async (options) => {
200
+ await voiceCommand("test", undefined, undefined, {
201
+ device: options.device,
202
+ });
203
+ });
204
+ voice
205
+ .command("recording")
206
+ .description("Test recording only (no transcription)")
207
+ .option("-d, --device <id>", "Device ID to use")
208
+ .option("-t, --duration <seconds>", "Recording duration in seconds", "5")
209
+ .action(async (options) => {
210
+ await voiceCommand("recording", undefined, undefined, {
211
+ device: options.device,
212
+ duration: parseInt(options.duration, 10),
213
+ });
214
+ });
215
+ voice
216
+ .command("setup")
217
+ .description("First-time setup wizard for voice input")
218
+ .action(async () => {
219
+ await voiceCommand("setup");
220
+ });
221
+ voice
222
+ .command("record")
223
+ .description("Record voice with VAD (same as running jfl voice)")
224
+ .option("-d, --device <id>", "Device ID to use")
225
+ .action(async (options) => {
226
+ await voiceCommand("record", undefined, undefined, {
227
+ device: options.device,
228
+ });
229
+ });
230
+ voice
231
+ .command("help")
232
+ .description("Show voice command help")
233
+ .action(async () => {
234
+ await voiceCommand("help");
235
+ });
236
+ voice
237
+ .command("hotkey")
238
+ .description("Start global hotkey listener (macOS only)")
239
+ .option("-d, --device <id>", "Device ID to use")
240
+ .option("-m, --mode <mode>", "Hotkey mode: auto, tap, or hold (default: auto)")
241
+ .action(async (options) => {
242
+ await voiceCommand("hotkey", undefined, undefined, {
243
+ device: options.device,
244
+ mode: options.mode,
245
+ });
246
+ });
247
+ // VS-013: Daemon commands for background hotkey listening
248
+ const daemon = voice
249
+ .command("daemon")
250
+ .description("Background hotkey listener daemon (macOS only)");
251
+ daemon
252
+ .command("start")
253
+ .description("Start hotkey listener in background")
254
+ .option("-m, --mode <mode>", "Hotkey mode: auto, tap, or hold (default: auto)")
255
+ .action(async (options) => {
256
+ await voiceCommand("daemon", "start", undefined, {
257
+ mode: options.mode,
258
+ });
259
+ });
260
+ daemon
261
+ .command("stop")
262
+ .description("Stop the background daemon")
263
+ .action(async () => {
264
+ await voiceCommand("daemon", "stop");
265
+ });
266
+ daemon
267
+ .command("status")
268
+ .description("Show daemon status and uptime")
269
+ .action(async () => {
270
+ await voiceCommand("daemon", "status");
271
+ });
272
+ // Default daemon action (show status)
273
+ daemon.action(async () => {
274
+ await voiceCommand("daemon", "status");
275
+ });
276
+ // Running `jfl voice` without subcommand starts recording with VAD
277
+ voice
278
+ .option("-d, --device <id>", "Device ID to use")
279
+ .action(async (options) => {
280
+ await voiceCommand(undefined, undefined, undefined, {
281
+ device: options.device,
282
+ });
283
+ });
284
+ // ============================================================================
285
+ // SKILL SHORTCUTS (work offline)
286
+ // ============================================================================
287
+ program
288
+ .command("brand")
289
+ .description("Run brand architect skill")
290
+ .argument("[subcommand]", "marks, colors, typography, or full")
291
+ .action(async (subcommand) => {
292
+ console.log(chalk.cyan("Running /brand-architect..."));
293
+ console.log(chalk.gray("This skill runs in your Claude Code session."));
294
+ console.log(chalk.yellow("\nRun in Claude Code:"), "/brand-architect", subcommand || "");
295
+ });
296
+ program
297
+ .command("content")
298
+ .description("Run content creator skill")
299
+ .argument("<type>", "thread, post, article, or one-pager")
300
+ .argument("[topic]", "Topic for content")
301
+ .action(async (type, topic) => {
302
+ console.log(chalk.cyan("Running /content..."));
303
+ console.log(chalk.gray("This skill runs in your Claude Code session."));
304
+ console.log(chalk.yellow("\nRun in Claude Code:"), "/content", type, topic || "");
305
+ });
306
+ // ============================================================================
307
+ // RALPH TUI (autonomous task execution)
308
+ // ============================================================================
309
+ program
310
+ .command("ralph")
311
+ .description("AI agent loop orchestrator (ralph-tui)")
312
+ .argument("[command...]", "ralph-tui command and args")
313
+ .option("-h, --help", "Show ralph-tui help")
314
+ .allowUnknownOption()
315
+ .action(async (args, options) => {
316
+ if (options.help || args.length === 0) {
317
+ showRalphHelp();
318
+ return;
319
+ }
320
+ await ralphCommand(args);
321
+ });
322
+ // ============================================================================
323
+ // SESSION MANAGEMENT (multi-platform sessions)
324
+ // ============================================================================
325
+ const session = program
326
+ .command("session")
327
+ .description("Manage GTM sessions across platforms (CLI, Telegram, Slack, Web)");
328
+ session
329
+ .command("create")
330
+ .description("Create or get existing session")
331
+ .requiredOption("-p, --platform <platform>", "Platform (cli, telegram, slack, web)")
332
+ .option("-t, --thread <id>", "Thread/channel ID")
333
+ .option("-u, --user <name>", "User name")
334
+ .action(async (options) => {
335
+ try {
336
+ const sessionId = await sessionCreate({
337
+ platform: options.platform,
338
+ thread: options.thread,
339
+ user: options.user
340
+ });
341
+ console.log(sessionId);
342
+ }
343
+ catch (error) {
344
+ console.error(chalk.red(`Error: ${error.message}`));
345
+ process.exit(1);
346
+ }
347
+ });
348
+ session
349
+ .command("exec")
350
+ .description("Execute command in session context")
351
+ .argument("<sessionId>", "Session ID")
352
+ .argument("<command>", "Command to execute")
353
+ .action(async (sessionId, command) => {
354
+ try {
355
+ const output = await sessionExec(sessionId, command);
356
+ console.log(output);
357
+ }
358
+ catch (error) {
359
+ console.error(chalk.red(`Error: ${error.message}`));
360
+ process.exit(1);
361
+ }
362
+ });
363
+ session
364
+ .command("list")
365
+ .description("List all active sessions")
366
+ .action(async () => {
367
+ try {
368
+ await sessionList();
369
+ }
370
+ catch (error) {
371
+ console.error(chalk.red(`Error: ${error.message}`));
372
+ process.exit(1);
373
+ }
374
+ });
375
+ session
376
+ .command("info")
377
+ .description("Show session information")
378
+ .argument("<sessionId>", "Session ID")
379
+ .action(async (sessionId) => {
380
+ try {
381
+ await sessionInfo(sessionId);
382
+ }
383
+ catch (error) {
384
+ console.error(chalk.red(`Error: ${error.message}`));
385
+ process.exit(1);
386
+ }
387
+ });
388
+ session
389
+ .command("destroy")
390
+ .description("Destroy session")
391
+ .argument("<sessionId>", "Session ID")
392
+ .option("-f, --force", "Force destroy even with uncommitted changes")
393
+ .action(async (sessionId, options) => {
394
+ try {
395
+ await sessionDestroy(sessionId, { force: options.force });
396
+ }
397
+ catch (error) {
398
+ console.error(chalk.red(`Error: ${error.message}`));
399
+ process.exit(1);
400
+ }
401
+ });
402
+ // ============================================================================
403
+ // TEST MODE (for development)
404
+ // ============================================================================
405
+ program
406
+ .command("test")
407
+ .description("Test onboarding flow (isolated environment)")
408
+ .action(() => {
409
+ const __filename = fileURLToPath(import.meta.url);
410
+ const __dirname = join(__filename, "..");
411
+ const scriptPath = join(__dirname, "../scripts/test-onboarding.sh");
412
+ const test = spawn("bash", [scriptPath], {
413
+ stdio: "inherit",
414
+ });
415
+ test.on("error", (err) => {
416
+ console.log(chalk.red("\n❌ Failed to launch test mode"));
417
+ console.log(chalk.gray(" Make sure the test script exists at: scripts/test-onboarding.sh"));
418
+ });
419
+ });
420
+ // ============================================================================
421
+ // CLAWDBOT INTEGRATION
422
+ // ============================================================================
423
+ program
424
+ .command("clawdbot")
425
+ .description("Install JFL skill for Clawdbot")
426
+ .action(() => {
427
+ try {
428
+ // Check if clawdbot is installed
429
+ execSync("which clawdbot", { stdio: "pipe" });
430
+ }
431
+ catch {
432
+ console.log(chalk.red("\n❌ Clawdbot not installed"));
433
+ console.log(chalk.gray(" Install Clawdbot first: https://clawd.bot\n"));
434
+ process.exit(1);
435
+ }
436
+ const __filename = fileURLToPath(import.meta.url);
437
+ const __dirname = join(__filename, "..");
438
+ const skillsDir = join(homedir(), ".clawdbot/skills");
439
+ const targetPath = join(skillsDir, "jfl-gtm");
440
+ // Find the skill source (either in node_modules or local dev)
441
+ let skillSource = null;
442
+ // Try node_modules first (installed via npm)
443
+ const npmSkillPath = join(__dirname, "../clawdbot-skill");
444
+ if (existsSync(npmSkillPath)) {
445
+ skillSource = npmSkillPath;
446
+ }
447
+ if (!skillSource) {
448
+ console.log(chalk.red("\n❌ JFL Clawdbot skill not found"));
449
+ console.log(chalk.gray(" This shouldn't happen. Please report a bug.\n"));
450
+ process.exit(1);
451
+ }
452
+ // Create .clawdbot/skills directory if it doesn't exist
453
+ if (!existsSync(skillsDir)) {
454
+ mkdirSync(skillsDir, { recursive: true });
455
+ }
456
+ // Remove existing symlink if present
457
+ if (existsSync(targetPath)) {
458
+ try {
459
+ unlinkSync(targetPath);
460
+ }
461
+ catch (error) {
462
+ console.log(chalk.yellow("⚠️ Could not remove existing skill (continuing)"));
463
+ }
464
+ }
465
+ // Create symlink
466
+ try {
467
+ symlinkSync(skillSource, targetPath);
468
+ console.log(chalk.green("\n✓ JFL skill installed for Clawdbot"));
469
+ console.log(chalk.gray(" Clawdbot will auto-detect the skill"));
470
+ console.log(chalk.cyan("\n Ready! Use /jfl in Telegram/Slack/Discord\n"));
471
+ }
472
+ catch (error) {
473
+ console.log(chalk.red(`\n❌ Failed to install skill: ${error.message}\n`));
474
+ process.exit(1);
475
+ }
476
+ });
477
+ // ============================================================================
478
+ // HELP
479
+ // ============================================================================
480
+ program
481
+ .command("help")
482
+ .description("Show help")
483
+ .action(() => {
484
+ console.log(chalk.bold("\n JFL - Just Fucking Launch\n"));
485
+ console.log(chalk.gray(" Your team's context layer. Any AI. Any task.\n"));
486
+ console.log(chalk.cyan(" Free Tier (works offline):"));
487
+ console.log(" jfl init Initialize project");
488
+ console.log(" jfl repair Repair missing .jfl directory");
489
+ console.log(" jfl update Pull latest JFL updates");
490
+ console.log(" jfl hud Project dashboard");
491
+ console.log(" jfl status Project status");
492
+ console.log(" jfl brand Brand architect");
493
+ console.log(" jfl content Content creator");
494
+ console.log(" jfl voice Voice input commands");
495
+ console.log(" jfl ralph AI agent loop (ralph-tui)");
496
+ console.log(" jfl context-hub Context Hub (unified AI context)");
497
+ console.log(" jfl test Test onboarding (isolated)");
498
+ console.log(chalk.cyan("\n Platform (requires login):"));
499
+ console.log(" jfl login Login to platform");
500
+ console.log(" jfl deploy Deploy to platform");
501
+ console.log(" jfl agents Parallel agents (Pro)");
502
+ console.log(chalk.gray("\n Pricing (pay when you get value):"));
503
+ console.log(" Trial $0 Free until foundation + brand done");
504
+ console.log(" x402 $5/day Per person, pay as you go");
505
+ console.log(" Solo $49/mo Just you, fixed monthly");
506
+ console.log(" Pro $199/mo Team (up to 5, +$25/seat)");
507
+ console.log(chalk.gray("\n Learn more: https://jfl.run"));
508
+ console.log();
509
+ });
510
+ // Parse and run
511
+ program.parse();
512
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Context Hub MCP Server
4
+ *
5
+ * Provides context tools to Claude Code via MCP protocol.
6
+ * Communicates with the Context Hub daemon via HTTP.
7
+ *
8
+ * @purpose MCP server for Context Hub integration with Claude Code
9
+ */
10
+ export {};
11
+ //# sourceMappingURL=context-hub-mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-hub-mcp.d.ts","sourceRoot":"","sources":["../../src/mcp/context-hub-mcp.ts"],"names":[],"mappings":";AACA;;;;;;;GAOG"}