@tomako/tools-runtime 0.1.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 (531) hide show
  1. package/README.md +12 -0
  2. package/package.json +629 -0
  3. package/src/assets/icons/brands/social/bluesky-icon.tsx +9 -0
  4. package/src/assets/icons/brands/social/facebook-icon.tsx +9 -0
  5. package/src/assets/icons/brands/social/index.ts +8 -0
  6. package/src/assets/icons/brands/social/instagram-icon.tsx +9 -0
  7. package/src/assets/icons/brands/social/linkedin-icon.tsx +9 -0
  8. package/src/assets/icons/brands/social/threads-icon.tsx +9 -0
  9. package/src/assets/icons/brands/social/tiktok-icon.tsx +10 -0
  10. package/src/assets/icons/brands/social/x-icon.tsx +9 -0
  11. package/src/assets/icons/brands/social/youtube-icon.tsx +9 -0
  12. package/src/assets/icons/social-profile/facebook-icon.tsx +12 -0
  13. package/src/assets/icons/social-profile/index.ts +29 -0
  14. package/src/assets/icons/social-profile/instagram-icon.tsx +18 -0
  15. package/src/assets/icons/social-profile/linkedin-icon.tsx +12 -0
  16. package/src/assets/icons/social-profile/tiktok-icon.tsx +12 -0
  17. package/src/assets/icons/social-profile/x-icon.tsx +13 -0
  18. package/src/assets/icons/social-profile/youtube-icon.tsx +12 -0
  19. package/src/components/tools/engine/form-builder.tsx +219 -0
  20. package/src/components/tools/engine/package-widget-loader.tsx +38 -0
  21. package/src/components/tools/engine/package-widget-runtime.tsx +409 -0
  22. package/src/components/tools/engine/package-widget.tsx +77 -0
  23. package/src/components/tools/engine/result-view.tsx +596 -0
  24. package/src/components/tools/engine/use-legacy-llm-task.ts +64 -0
  25. package/src/components/tools/engine/use-tool-task.ts +195 -0
  26. package/src/components/tools/market-forecast-report.tsx +1150 -0
  27. package/src/components/tools/registry.ts +13 -0
  28. package/src/components/tools/workspace/index.ts +39 -0
  29. package/src/components/tools/workspace/tool-action-bar.tsx +99 -0
  30. package/src/components/tools/workspace/tool-empty-panel.tsx +32 -0
  31. package/src/components/tools/workspace/tool-error-panel.tsx +40 -0
  32. package/src/components/tools/workspace/tool-field.tsx +124 -0
  33. package/src/components/tools/workspace/tool-file-upload.tsx +112 -0
  34. package/src/components/tools/workspace/tool-form-section.tsx +21 -0
  35. package/src/components/tools/workspace/tool-form-shell.tsx +36 -0
  36. package/src/components/tools/workspace/tool-loading-panel.tsx +269 -0
  37. package/src/components/tools/workspace/tool-option-row.tsx +97 -0
  38. package/src/components/tools/workspace/tool-preview-panel.tsx +31 -0
  39. package/src/components/tools/workspace/tool-result-actions.tsx +67 -0
  40. package/src/components/tools/workspace/tool-result-file-actions.ts +31 -0
  41. package/src/components/tools/workspace/tool-result-header.tsx +39 -0
  42. package/src/components/tools/workspace/tool-status.tsx +13 -0
  43. package/src/components/tools/workspace/tool-workspace-layout.tsx +226 -0
  44. package/src/constants/LKS.ts +29 -0
  45. package/src/constants/related-tools.ts +18 -0
  46. package/src/constants/social-profile-kit.ts +284 -0
  47. package/src/constants/tool-assets.ts +7 -0
  48. package/src/env.d.ts +3 -0
  49. package/src/features/tools/_templates/standard-tool.container.tsx +90 -0
  50. package/src/features/tools/app-icon-resizer/app-icon-resizer.container.tsx +11 -0
  51. package/src/features/tools/app-icon-resizer/app-icon-resizer.spec.ts +15 -0
  52. package/src/features/tools/app-icon-resizer/widget/app-icon-resizer.tsx +444 -0
  53. package/src/features/tools/app-icon-resizer/widget/constants.ts +19 -0
  54. package/src/features/tools/app-icon-resizer/widget/helpers.ts +314 -0
  55. package/src/features/tools/app-icon-resizer/widget/index.ts +7 -0
  56. package/src/features/tools/app-icon-resizer/widget/platform-icons.tsx +59 -0
  57. package/src/features/tools/app-icon-resizer/widget/preview-dialogs.tsx +139 -0
  58. package/src/features/tools/app-icon-resizer/widget/result-shell.tsx +165 -0
  59. package/src/features/tools/app-icon-resizer/widget/types.ts +36 -0
  60. package/src/features/tools/app-store-screenshot-generator/app-store-screenshot-generator.container.tsx +108 -0
  61. package/src/features/tools/app-store-screenshot-generator/app-store-screenshot-generator.spec.ts +14 -0
  62. package/src/features/tools/app-store-screenshot-generator/config.ts +3 -0
  63. package/src/features/tools/app-store-screenshot-generator/widget/app-store-screenshot-generator.tsx +1250 -0
  64. package/src/features/tools/app-store-screenshot-generator/widget/asset-slots.ts +76 -0
  65. package/src/features/tools/app-store-screenshot-generator/widget/constants.ts +43 -0
  66. package/src/features/tools/app-store-screenshot-generator/widget/form-controls.tsx +214 -0
  67. package/src/features/tools/app-store-screenshot-generator/widget/generation.ts +528 -0
  68. package/src/features/tools/app-store-screenshot-generator/widget/index.ts +7 -0
  69. package/src/features/tools/app-store-screenshot-generator/widget/input-media.ts +175 -0
  70. package/src/features/tools/app-store-screenshot-generator/widget/types.ts +60 -0
  71. package/src/features/tools/app-store-screenshot-generator/widget/zip.ts +119 -0
  72. package/src/features/tools/build-in-public-story-generator/build-in-public-story-generator.container.tsx +135 -0
  73. package/src/features/tools/build-in-public-story-generator/build-in-public-story-generator.spec.ts +15 -0
  74. package/src/features/tools/build-in-public-story-generator/widget/build-in-public-story-generator.tsx +314 -0
  75. package/src/features/tools/build-in-public-story-generator/widget/constants.ts +3 -0
  76. package/src/features/tools/build-in-public-story-generator/widget/helpers.ts +25 -0
  77. package/src/features/tools/build-in-public-story-generator/widget/index.ts +7 -0
  78. package/src/features/tools/build-in-public-story-generator/widget/preview-panels.tsx +58 -0
  79. package/src/features/tools/build-in-public-story-generator/widget/result-shell.tsx +164 -0
  80. package/src/features/tools/build-in-public-story-generator/widget/types.ts +6 -0
  81. package/src/features/tools/cold-start-channel-selector/cold-start-channel-selector.container.tsx +30 -0
  82. package/src/features/tools/cold-start-channel-selector/cold-start-channel-selector.spec.ts +15 -0
  83. package/src/features/tools/cold-start-channel-selector/widget/cold-start-channel-selector.tsx +417 -0
  84. package/src/features/tools/cold-start-channel-selector/widget/constants.ts +46 -0
  85. package/src/features/tools/cold-start-channel-selector/widget/form-controls.tsx +41 -0
  86. package/src/features/tools/cold-start-channel-selector/widget/helpers.ts +75 -0
  87. package/src/features/tools/cold-start-channel-selector/widget/index.ts +7 -0
  88. package/src/features/tools/cold-start-channel-selector/widget/preview-panels.tsx +250 -0
  89. package/src/features/tools/cold-start-channel-selector/widget/result-shell.tsx +199 -0
  90. package/src/features/tools/cold-start-channel-selector/widget/types.ts +21 -0
  91. package/src/features/tools/commercial-bp-generator/commercial-bp-generator.container.tsx +102 -0
  92. package/src/features/tools/commercial-bp-generator/commercial-bp-generator.spec.ts +14 -0
  93. package/src/features/tools/commercial-bp-generator/widget/commercial-bp-generator.tsx +676 -0
  94. package/src/features/tools/commercial-bp-generator/widget/constants.ts +32 -0
  95. package/src/features/tools/commercial-bp-generator/widget/helpers.ts +147 -0
  96. package/src/features/tools/commercial-bp-generator/widget/index.ts +7 -0
  97. package/src/features/tools/commercial-bp-generator/widget/result-shell.tsx +271 -0
  98. package/src/features/tools/commercial-bp-generator/widget/style-option.tsx +54 -0
  99. package/src/features/tools/commercial-bp-generator/widget/types.ts +33 -0
  100. package/src/features/tools/community-feedback-inbox/community-feedback-inbox.container.tsx +126 -0
  101. package/src/features/tools/community-feedback-inbox/community-feedback-inbox.spec.ts +15 -0
  102. package/src/features/tools/community-feedback-inbox/widget/community-feedback-inbox.tsx +271 -0
  103. package/src/features/tools/community-feedback-inbox/widget/constants.ts +3 -0
  104. package/src/features/tools/community-feedback-inbox/widget/helpers.ts +28 -0
  105. package/src/features/tools/community-feedback-inbox/widget/index.ts +7 -0
  106. package/src/features/tools/community-feedback-inbox/widget/preview-panels.tsx +92 -0
  107. package/src/features/tools/community-feedback-inbox/widget/result-shell.tsx +266 -0
  108. package/src/features/tools/community-feedback-inbox/widget/types.ts +6 -0
  109. package/src/features/tools/community-pain-point-extractor/community-pain-point-extractor.container.tsx +124 -0
  110. package/src/features/tools/community-pain-point-extractor/community-pain-point-extractor.spec.ts +15 -0
  111. package/src/features/tools/community-pain-point-extractor/widget/community-pain-point-extractor.tsx +404 -0
  112. package/src/features/tools/community-pain-point-extractor/widget/constants.ts +41 -0
  113. package/src/features/tools/community-pain-point-extractor/widget/helpers.ts +76 -0
  114. package/src/features/tools/community-pain-point-extractor/widget/index.ts +8 -0
  115. package/src/features/tools/community-pain-point-extractor/widget/progress-panels.tsx +251 -0
  116. package/src/features/tools/community-pain-point-extractor/widget/result-shell.tsx +478 -0
  117. package/src/features/tools/community-pain-point-extractor/widget/types.ts +33 -0
  118. package/src/features/tools/community-post-risk-checker/community-post-risk-checker.package.ts +792 -0
  119. package/src/features/tools/competitor-analysis/competitor-analysis.container.tsx +136 -0
  120. package/src/features/tools/competitor-analysis/competitor-analysis.spec.ts +15 -0
  121. package/src/features/tools/competitor-analysis/widget/competitor-analysis.tsx +241 -0
  122. package/src/features/tools/competitor-analysis/widget/constants.ts +9 -0
  123. package/src/features/tools/competitor-analysis/widget/index.ts +7 -0
  124. package/src/features/tools/competitor-analysis/widget/preview-panels.tsx +60 -0
  125. package/src/features/tools/competitor-analysis/widget/result-shell.tsx +418 -0
  126. package/src/features/tools/competitor-analysis/widget/types.ts +13 -0
  127. package/src/features/tools/disclaimer-generator/disclaimer-generator.package.ts +339 -0
  128. package/src/features/tools/email-template-generator/email-template-generator.container.tsx +224 -0
  129. package/src/features/tools/email-template-generator/email-template-generator.spec.ts +14 -0
  130. package/src/features/tools/email-template-generator/widget/email-template-generator.tsx +358 -0
  131. package/src/features/tools/email-template-generator/widget/helpers.ts +39 -0
  132. package/src/features/tools/email-template-generator/widget/index.ts +7 -0
  133. package/src/features/tools/email-template-generator/widget/preview-panel.tsx +311 -0
  134. package/src/features/tools/email-template-generator/widget/result-text-block.tsx +7 -0
  135. package/src/features/tools/email-template-generator/widget/types.ts +24 -0
  136. package/src/features/tools/gtm-readiness-checklist/gtm-readiness-checklist.container.tsx +75 -0
  137. package/src/features/tools/gtm-readiness-checklist/gtm-readiness-checklist.spec.ts +15 -0
  138. package/src/features/tools/gtm-readiness-checklist/widget/gtm-readiness-checklist.tsx +122 -0
  139. package/src/features/tools/gtm-readiness-checklist/widget/index.ts +7 -0
  140. package/src/features/tools/investor-matching-planner/investor-matching-planner.package.ts +869 -0
  141. package/src/features/tools/koko-codex-assistant/koko-codex-assistant.container.tsx +151 -0
  142. package/src/features/tools/koko-codex-assistant/koko-codex-assistant.spec.ts +14 -0
  143. package/src/features/tools/koko-codex-assistant/widget/index.ts +7 -0
  144. package/src/features/tools/koko-codex-assistant/widget/koko-codex-assistant-download.tsx +192 -0
  145. package/src/features/tools/logo-generator/logo-generator.container.tsx +112 -0
  146. package/src/features/tools/logo-generator/logo-generator.spec.ts +15 -0
  147. package/src/features/tools/logo-generator/widget/index.ts +7 -0
  148. package/src/features/tools/logo-generator/widget/logo-generator.tsx +1244 -0
  149. package/src/features/tools/market-forecast-report/market-forecast-report.container.tsx +73 -0
  150. package/src/features/tools/market-forecast-report/market-forecast-report.spec.ts +15 -0
  151. package/src/features/tools/million-user-growth-test/million-user-growth-test.container.tsx +123 -0
  152. package/src/features/tools/million-user-growth-test/million-user-growth-test.spec.ts +14 -0
  153. package/src/features/tools/million-user-growth-test/widget/index.ts +7 -0
  154. package/src/features/tools/million-user-growth-test/widget/million-user-growth-test.tsx +433 -0
  155. package/src/features/tools/module-loader.ts +107 -0
  156. package/src/features/tools/og-image-generator/og-image-generator.container.tsx +86 -0
  157. package/src/features/tools/og-image-generator/og-image-generator.spec.ts +14 -0
  158. package/src/features/tools/og-image-generator/widget/constants.ts +38 -0
  159. package/src/features/tools/og-image-generator/widget/form-fields.tsx +240 -0
  160. package/src/features/tools/og-image-generator/widget/index.ts +7 -0
  161. package/src/features/tools/og-image-generator/widget/og-image-generator.tsx +742 -0
  162. package/src/features/tools/og-image-generator/widget/preview-panel.tsx +305 -0
  163. package/src/features/tools/og-image-generator/widget/types.ts +1 -0
  164. package/src/features/tools/package/direct-models.ts +20 -0
  165. package/src/features/tools/package/form.ts +38 -0
  166. package/src/features/tools/package/l10n.ts +22 -0
  167. package/src/features/tools/package/package-container.tsx +285 -0
  168. package/src/features/tools/package/package-loaders.ts +22 -0
  169. package/src/features/tools/package/package-registry.ts +36 -0
  170. package/src/features/tools/package/result-markdown.ts +142 -0
  171. package/src/features/tools/package/schema.ts +379 -0
  172. package/src/features/tools/package/to-tool-module.ts +20 -0
  173. package/src/features/tools/package/to-tool-spec.ts +52 -0
  174. package/src/features/tools/package/types.ts +381 -0
  175. package/src/features/tools/pitch-deck-generator/pitch-deck-generator.container.tsx +175 -0
  176. package/src/features/tools/pitch-deck-generator/pitch-deck-generator.spec.ts +14 -0
  177. package/src/features/tools/pitch-deck-generator/pitch-deck-library-data.ts +476 -0
  178. package/src/features/tools/pitch-deck-generator/pitch-deck-library.tsx +159 -0
  179. package/src/features/tools/pitch-deck-generator/widget/ceremony-line.tsx +27 -0
  180. package/src/features/tools/pitch-deck-generator/widget/constants.ts +27 -0
  181. package/src/features/tools/pitch-deck-generator/widget/index.ts +7 -0
  182. package/src/features/tools/pitch-deck-generator/widget/pitch-deck-generator.tsx +763 -0
  183. package/src/features/tools/pitch-deck-generator/widget/result-helpers.ts +102 -0
  184. package/src/features/tools/pitch-deck-generator/widget/result-shell.tsx +263 -0
  185. package/src/features/tools/pitch-deck-generator/widget/slide-frame.tsx +106 -0
  186. package/src/features/tools/pitch-deck-generator/widget/slide-lightbox.tsx +149 -0
  187. package/src/features/tools/pitch-deck-generator/widget/style-option.tsx +54 -0
  188. package/src/features/tools/pitch-deck-generator/widget/types.ts +44 -0
  189. package/src/features/tools/product-agreement-generator/product-agreement-generator.container.tsx +137 -0
  190. package/src/features/tools/product-agreement-generator/product-agreement-generator.spec.ts +14 -0
  191. package/src/features/tools/product-agreement-generator/widget/constants.ts +27 -0
  192. package/src/features/tools/product-agreement-generator/widget/form-controls.tsx +218 -0
  193. package/src/features/tools/product-agreement-generator/widget/helpers.ts +68 -0
  194. package/src/features/tools/product-agreement-generator/widget/index.ts +7 -0
  195. package/src/features/tools/product-agreement-generator/widget/product-agreement-generator.tsx +671 -0
  196. package/src/features/tools/product-agreement-generator/widget/result-shell.tsx +473 -0
  197. package/src/features/tools/product-agreement-generator/widget/types.ts +89 -0
  198. package/src/features/tools/product-hunt-launch-planner/product-hunt-launch-planner.container.tsx +122 -0
  199. package/src/features/tools/product-hunt-launch-planner/product-hunt-launch-planner.spec.ts +15 -0
  200. package/src/features/tools/product-hunt-launch-planner/widget/constants.ts +5 -0
  201. package/src/features/tools/product-hunt-launch-planner/widget/helpers.ts +44 -0
  202. package/src/features/tools/product-hunt-launch-planner/widget/index.ts +7 -0
  203. package/src/features/tools/product-hunt-launch-planner/widget/preview-panel.tsx +143 -0
  204. package/src/features/tools/product-hunt-launch-planner/widget/product-hunt-launch-planner.tsx +504 -0
  205. package/src/features/tools/product-hunt-launch-planner/widget/result-shell.tsx +176 -0
  206. package/src/features/tools/product-hunt-launch-planner/widget/types.ts +20 -0
  207. package/src/features/tools/product-name-generator/product-name-generator.container.tsx +14 -0
  208. package/src/features/tools/product-name-generator/product-name-generator.spec.ts +15 -0
  209. package/src/features/tools/product-name-generator/widget/candidate-card.tsx +273 -0
  210. package/src/features/tools/product-name-generator/widget/constants.ts +21 -0
  211. package/src/features/tools/product-name-generator/widget/form-controls.tsx +136 -0
  212. package/src/features/tools/product-name-generator/widget/helpers.ts +41 -0
  213. package/src/features/tools/product-name-generator/widget/index.ts +7 -0
  214. package/src/features/tools/product-name-generator/widget/product-name-generator.tsx +776 -0
  215. package/src/features/tools/product-name-generator/widget/types.ts +36 -0
  216. package/src/features/tools/product-positioning-analyzer/product-positioning-analyzer.package.ts +801 -0
  217. package/src/features/tools/product-poster-generator/product-poster-generator.container.tsx +14 -0
  218. package/src/features/tools/product-poster-generator/product-poster-generator.spec.ts +15 -0
  219. package/src/features/tools/product-poster-generator/widget/constants.ts +125 -0
  220. package/src/features/tools/product-poster-generator/widget/form-controls.tsx +204 -0
  221. package/src/features/tools/product-poster-generator/widget/helpers.ts +155 -0
  222. package/src/features/tools/product-poster-generator/widget/index.ts +7 -0
  223. package/src/features/tools/product-poster-generator/widget/product-poster-generator.tsx +663 -0
  224. package/src/features/tools/product-poster-generator/widget/result-shell.tsx +12 -0
  225. package/src/features/tools/product-poster-generator/widget/types.ts +83 -0
  226. package/src/features/tools/product-ui-generator/product-ui-generator.container.tsx +116 -0
  227. package/src/features/tools/product-ui-generator/product-ui-generator.spec.ts +14 -0
  228. package/src/features/tools/product-ui-generator/widget/constants.ts +18 -0
  229. package/src/features/tools/product-ui-generator/widget/helpers.ts +11 -0
  230. package/src/features/tools/product-ui-generator/widget/index.ts +7 -0
  231. package/src/features/tools/product-ui-generator/widget/preview-panels.tsx +73 -0
  232. package/src/features/tools/product-ui-generator/widget/product-ui-generator.tsx +304 -0
  233. package/src/features/tools/product-ui-generator/widget/result-shell.tsx +118 -0
  234. package/src/features/tools/product-ui-generator/widget/types.ts +9 -0
  235. package/src/features/tools/reddit-pain-point-finder/reddit-pain-point-finder.container.tsx +113 -0
  236. package/src/features/tools/reddit-pain-point-finder/reddit-pain-point-finder.spec.ts +15 -0
  237. package/src/features/tools/reddit-pain-point-finder/widget/constants.ts +5 -0
  238. package/src/features/tools/reddit-pain-point-finder/widget/index.ts +7 -0
  239. package/src/features/tools/reddit-pain-point-finder/widget/preview-panels.tsx +73 -0
  240. package/src/features/tools/reddit-pain-point-finder/widget/reddit-pain-point-finder.tsx +281 -0
  241. package/src/features/tools/reddit-pain-point-finder/widget/result-shell.tsx +203 -0
  242. package/src/features/tools/reddit-pain-point-finder/widget/types.ts +15 -0
  243. package/src/features/tools/registry.ts +288 -0
  244. package/src/features/tools/runtime-registry.ts +186 -0
  245. package/src/features/tools/shared/create-guide-stack-container.tsx +176 -0
  246. package/src/features/tools/shared/create-standard-landing-container.tsx +163 -0
  247. package/src/features/tools/shared/tool-content-sections.tsx +659 -0
  248. package/src/features/tools/shared/tool-cta.tsx +66 -0
  249. package/src/features/tools/shared/tool-draft-view.tsx +53 -0
  250. package/src/features/tools/shared/tool-guide-section.tsx +191 -0
  251. package/src/features/tools/shared/tool-handoff.tsx +38 -0
  252. package/src/features/tools/shared/tool-mcp-badge.tsx +23 -0
  253. package/src/features/tools/shared/tool-message-translator.ts +37 -0
  254. package/src/features/tools/shared/tool-page-shell.tsx +348 -0
  255. package/src/features/tools/shared/tool-standard-generation-steps.tsx +52 -0
  256. package/src/features/tools/shared/tool-standard-landing-sections.tsx +447 -0
  257. package/src/features/tools/shared/tool-ui-registry.ts +237 -0
  258. package/src/features/tools/shared/tool-widget-slot.tsx +29 -0
  259. package/src/features/tools/slogan-generator/slogan-generator.package.ts +641 -0
  260. package/src/features/tools/social-listening-research-report/social-listening-research-report.container.tsx +124 -0
  261. package/src/features/tools/social-listening-research-report/social-listening-research-report.spec.ts +15 -0
  262. package/src/features/tools/social-listening-research-report/widget/constants.ts +4 -0
  263. package/src/features/tools/social-listening-research-report/widget/index.ts +7 -0
  264. package/src/features/tools/social-listening-research-report/widget/preview-panels.tsx +73 -0
  265. package/src/features/tools/social-listening-research-report/widget/result-shell.tsx +216 -0
  266. package/src/features/tools/social-listening-research-report/widget/social-listening-research-report.tsx +303 -0
  267. package/src/features/tools/social-listening-research-report/widget/types.ts +15 -0
  268. package/src/features/tools/social-platform-asset-adapter/social-platform-asset-adapter.container.tsx +123 -0
  269. package/src/features/tools/social-platform-asset-adapter/social-platform-asset-adapter.spec.ts +15 -0
  270. package/src/features/tools/social-platform-asset-adapter/widget/constants.ts +43 -0
  271. package/src/features/tools/social-platform-asset-adapter/widget/helpers.ts +249 -0
  272. package/src/features/tools/social-platform-asset-adapter/widget/index.ts +7 -0
  273. package/src/features/tools/social-platform-asset-adapter/widget/result-shell.tsx +350 -0
  274. package/src/features/tools/social-platform-asset-adapter/widget/section-heading.tsx +18 -0
  275. package/src/features/tools/social-platform-asset-adapter/widget/social-platform-asset-adapter.tsx +641 -0
  276. package/src/features/tools/social-platform-asset-adapter/widget/types.ts +40 -0
  277. package/src/features/tools/social-profile-kit/social-profile-kit.container.tsx +177 -0
  278. package/src/features/tools/social-profile-kit/social-profile-kit.spec.ts +15 -0
  279. package/src/features/tools/social-profile-kit/widget/context-editor.tsx +171 -0
  280. package/src/features/tools/social-profile-kit/widget/generation-runtime.ts +281 -0
  281. package/src/features/tools/social-profile-kit/widget/index.ts +7 -0
  282. package/src/features/tools/social-profile-kit/widget/input-panel.tsx +294 -0
  283. package/src/features/tools/social-profile-kit/widget/platform-dock.tsx +115 -0
  284. package/src/features/tools/social-profile-kit/widget/profile-canvas.tsx +318 -0
  285. package/src/features/tools/social-profile-kit/widget/profile-preview/bluesky-preview.tsx +188 -0
  286. package/src/features/tools/social-profile-kit/widget/profile-preview/facebook-preview.tsx +168 -0
  287. package/src/features/tools/social-profile-kit/widget/profile-preview/index.ts +1 -0
  288. package/src/features/tools/social-profile-kit/widget/profile-preview/instagram-preview.tsx +278 -0
  289. package/src/features/tools/social-profile-kit/widget/profile-preview/linkedin-preview.tsx +358 -0
  290. package/src/features/tools/social-profile-kit/widget/profile-preview/profile-preview.tsx +348 -0
  291. package/src/features/tools/social-profile-kit/widget/profile-preview/shared.tsx +391 -0
  292. package/src/features/tools/social-profile-kit/widget/profile-preview/threads-preview.tsx +148 -0
  293. package/src/features/tools/social-profile-kit/widget/profile-preview/tiktok-preview.tsx +319 -0
  294. package/src/features/tools/social-profile-kit/widget/profile-preview/x-preview.tsx +341 -0
  295. package/src/features/tools/social-profile-kit/widget/profile-preview/youtube-preview.tsx +297 -0
  296. package/src/features/tools/social-profile-kit/widget/social-profile-kit-generator.tsx +1059 -0
  297. package/src/features/tools/social-profile-kit/widget/types.ts +104 -0
  298. package/src/features/tools/spec-registry.ts +158 -0
  299. package/src/features/tools/startup-idea-research/startup-idea-research.container.tsx +111 -0
  300. package/src/features/tools/startup-idea-research/startup-idea-research.spec.ts +15 -0
  301. package/src/features/tools/startup-idea-research/widget/constants.ts +11 -0
  302. package/src/features/tools/startup-idea-research/widget/index.ts +7 -0
  303. package/src/features/tools/startup-idea-research/widget/preview-panels.tsx +67 -0
  304. package/src/features/tools/startup-idea-research/widget/result-shell.tsx +323 -0
  305. package/src/features/tools/startup-idea-research/widget/startup-idea-research.tsx +272 -0
  306. package/src/features/tools/startup-idea-research/widget/types.ts +21 -0
  307. package/src/features/tools/tarot-reading/tarot-reading.container.tsx +412 -0
  308. package/src/features/tools/tarot-reading/tarot-reading.spec.ts +15 -0
  309. package/src/features/tools/tarot-reading/widget/cards.tsx +152 -0
  310. package/src/features/tools/tarot-reading/widget/constants.ts +69 -0
  311. package/src/features/tools/tarot-reading/widget/deck-view.tsx +86 -0
  312. package/src/features/tools/tarot-reading/widget/deck.ts +86 -0
  313. package/src/features/tools/tarot-reading/widget/index.ts +7 -0
  314. package/src/features/tools/tarot-reading/widget/landing-view.tsx +209 -0
  315. package/src/features/tools/tarot-reading/widget/reading-copy.tsx +138 -0
  316. package/src/features/tools/tarot-reading/widget/reading-view.tsx +189 -0
  317. package/src/features/tools/tarot-reading/widget/reveal-view.tsx +50 -0
  318. package/src/features/tools/tarot-reading/widget/ritual-view.tsx +276 -0
  319. package/src/features/tools/tarot-reading/widget/tarot-reading.tsx +262 -0
  320. package/src/features/tools/tarot-reading/widget/types.ts +22 -0
  321. package/src/features/tools/twitter-gif-downloader/twitter-gif-downloader.container.tsx +114 -0
  322. package/src/features/tools/twitter-gif-downloader/twitter-gif-downloader.spec.ts +14 -0
  323. package/src/features/tools/twitter-gif-downloader/widget/index.ts +7 -0
  324. package/src/features/tools/twitter-gif-downloader/widget/twitter-gif-downloader.tsx +351 -0
  325. package/src/features/tools/types.ts +68 -0
  326. package/src/features/tools/user-interview-guide-generator/user-interview-guide-generator.package.ts +774 -0
  327. package/src/features/tools/user-interview-insight-report-generator/user-interview-insight-report-generator.container.tsx +23 -0
  328. package/src/features/tools/user-interview-insight-report-generator/user-interview-insight-report-generator.spec.ts +14 -0
  329. package/src/features/tools/user-interview-insight-report-generator/widget/constants.ts +8 -0
  330. package/src/features/tools/user-interview-insight-report-generator/widget/helpers.ts +4 -0
  331. package/src/features/tools/user-interview-insight-report-generator/widget/index.ts +7 -0
  332. package/src/features/tools/user-interview-insight-report-generator/widget/preview-panels.tsx +55 -0
  333. package/src/features/tools/user-interview-insight-report-generator/widget/result-shell.tsx +122 -0
  334. package/src/features/tools/user-interview-insight-report-generator/widget/types.ts +16 -0
  335. package/src/features/tools/user-interview-insight-report-generator/widget/user-interview-insight-report-generator.tsx +293 -0
  336. package/src/features/tools/user-interview-record-generator/user-interview-record-generator.container.tsx +18 -0
  337. package/src/features/tools/user-interview-record-generator/user-interview-record-generator.spec.ts +14 -0
  338. package/src/features/tools/user-interview-record-generator/widget/constants.ts +9 -0
  339. package/src/features/tools/user-interview-record-generator/widget/helpers.ts +4 -0
  340. package/src/features/tools/user-interview-record-generator/widget/index.ts +7 -0
  341. package/src/features/tools/user-interview-record-generator/widget/preview-panels.tsx +48 -0
  342. package/src/features/tools/user-interview-record-generator/widget/result-shell.tsx +128 -0
  343. package/src/features/tools/user-interview-record-generator/widget/types.ts +16 -0
  344. package/src/features/tools/user-interview-record-generator/widget/user-interview-record-generator.tsx +305 -0
  345. package/src/features/tools/utm-builder/utm-builder.package.ts +846 -0
  346. package/src/features/tools/widget-registry.ts +73 -0
  347. package/src/generated/mcp-tools-registry.json +17 -0
  348. package/src/host/client-proxy.test.ts +33 -0
  349. package/src/host/client.ts +678 -0
  350. package/src/host/server.ts +119 -0
  351. package/src/i18n/client.ts +11 -0
  352. package/src/i18n/locale-fallback.ts +38 -0
  353. package/src/i18n/locale.ts +18 -0
  354. package/src/i18n/messages/en/page/tools.ts +124 -0
  355. package/src/i18n/messages/en/tools/app-icon-resizer.ts +244 -0
  356. package/src/i18n/messages/en/tools/app-store-screenshot-generator.ts +145 -0
  357. package/src/i18n/messages/en/tools/build-in-public-story-generator.ts +229 -0
  358. package/src/i18n/messages/en/tools/cold-start-channel-selector.ts +423 -0
  359. package/src/i18n/messages/en/tools/commercial-bp-generator.ts +304 -0
  360. package/src/i18n/messages/en/tools/community-feedback-inbox.ts +218 -0
  361. package/src/i18n/messages/en/tools/community-pain-point-extractor.ts +230 -0
  362. package/src/i18n/messages/en/tools/community-post-risk-checker.ts +209 -0
  363. package/src/i18n/messages/en/tools/competitor-analysis.ts +197 -0
  364. package/src/i18n/messages/en/tools/email-template-generator.ts +302 -0
  365. package/src/i18n/messages/en/tools/engine.ts +69 -0
  366. package/src/i18n/messages/en/tools/gtm-readiness-checklist.ts +166 -0
  367. package/src/i18n/messages/en/tools/index.ts +73 -0
  368. package/src/i18n/messages/en/tools/koko-codex-assistant.ts +171 -0
  369. package/src/i18n/messages/en/tools/logo-generator.ts +173 -0
  370. package/src/i18n/messages/en/tools/market-forecast-report.ts +228 -0
  371. package/src/i18n/messages/en/tools/million-user-growth-test.ts +386 -0
  372. package/src/i18n/messages/en/tools/og-image-generator.ts +172 -0
  373. package/src/i18n/messages/en/tools/pitch-deck-generator.ts +358 -0
  374. package/src/i18n/messages/en/tools/product-agreement-generator.ts +411 -0
  375. package/src/i18n/messages/en/tools/product-hunt-launch-planner.ts +272 -0
  376. package/src/i18n/messages/en/tools/product-name-generator.ts +383 -0
  377. package/src/i18n/messages/en/tools/product-poster-generator.ts +294 -0
  378. package/src/i18n/messages/en/tools/product-ui-generator.ts +234 -0
  379. package/src/i18n/messages/en/tools/reddit-pain-point-finder.ts +163 -0
  380. package/src/i18n/messages/en/tools/shared.ts +24 -0
  381. package/src/i18n/messages/en/tools/social-listening-research-report.ts +185 -0
  382. package/src/i18n/messages/en/tools/social-media-profile-generator.ts +22 -0
  383. package/src/i18n/messages/en/tools/social-platform-asset-adapter.ts +287 -0
  384. package/src/i18n/messages/en/tools/social-profile-kit.ts +150 -0
  385. package/src/i18n/messages/en/tools/startup-idea-research.ts +170 -0
  386. package/src/i18n/messages/en/tools/tarot-reading.ts +230 -0
  387. package/src/i18n/messages/en/tools/twitter-gif-downloader.ts +145 -0
  388. package/src/i18n/messages/en/tools/user-interview-insight-report-generator.ts +242 -0
  389. package/src/i18n/messages/en/tools/user-interview-record-generator.ts +244 -0
  390. package/src/i18n/messages/en/tools-ui.ts +704 -0
  391. package/src/i18n/messages/zh/page/tools.ts +124 -0
  392. package/src/i18n/messages/zh/tools/app-icon-resizer.ts +242 -0
  393. package/src/i18n/messages/zh/tools/app-store-screenshot-generator.ts +145 -0
  394. package/src/i18n/messages/zh/tools/build-in-public-story-generator.ts +230 -0
  395. package/src/i18n/messages/zh/tools/cold-start-channel-selector.ts +422 -0
  396. package/src/i18n/messages/zh/tools/commercial-bp-generator.ts +302 -0
  397. package/src/i18n/messages/zh/tools/community-feedback-inbox.ts +217 -0
  398. package/src/i18n/messages/zh/tools/community-pain-point-extractor.ts +230 -0
  399. package/src/i18n/messages/zh/tools/community-post-risk-checker.ts +200 -0
  400. package/src/i18n/messages/zh/tools/competitor-analysis.ts +192 -0
  401. package/src/i18n/messages/zh/tools/email-template-generator.ts +302 -0
  402. package/src/i18n/messages/zh/tools/engine.ts +68 -0
  403. package/src/i18n/messages/zh/tools/gtm-readiness-checklist.ts +166 -0
  404. package/src/i18n/messages/zh/tools/index.ts +73 -0
  405. package/src/i18n/messages/zh/tools/koko-codex-assistant.ts +170 -0
  406. package/src/i18n/messages/zh/tools/logo-generator.ts +172 -0
  407. package/src/i18n/messages/zh/tools/market-forecast-report.ts +228 -0
  408. package/src/i18n/messages/zh/tools/million-user-growth-test.ts +385 -0
  409. package/src/i18n/messages/zh/tools/og-image-generator.ts +173 -0
  410. package/src/i18n/messages/zh/tools/pitch-deck-generator.ts +358 -0
  411. package/src/i18n/messages/zh/tools/product-agreement-generator.ts +401 -0
  412. package/src/i18n/messages/zh/tools/product-hunt-launch-planner.ts +267 -0
  413. package/src/i18n/messages/zh/tools/product-name-generator.ts +383 -0
  414. package/src/i18n/messages/zh/tools/product-poster-generator.ts +282 -0
  415. package/src/i18n/messages/zh/tools/product-ui-generator.ts +234 -0
  416. package/src/i18n/messages/zh/tools/reddit-pain-point-finder.ts +162 -0
  417. package/src/i18n/messages/zh/tools/shared.ts +24 -0
  418. package/src/i18n/messages/zh/tools/social-listening-research-report.ts +181 -0
  419. package/src/i18n/messages/zh/tools/social-media-profile-generator.ts +22 -0
  420. package/src/i18n/messages/zh/tools/social-platform-asset-adapter.ts +284 -0
  421. package/src/i18n/messages/zh/tools/social-profile-kit.ts +150 -0
  422. package/src/i18n/messages/zh/tools/startup-idea-research.ts +165 -0
  423. package/src/i18n/messages/zh/tools/tarot-reading.ts +228 -0
  424. package/src/i18n/messages/zh/tools/twitter-gif-downloader.ts +138 -0
  425. package/src/i18n/messages/zh/tools/user-interview-insight-report-generator.ts +224 -0
  426. package/src/i18n/messages/zh/tools/user-interview-record-generator.ts +226 -0
  427. package/src/i18n/messages/zh/tools-ui.ts +684 -0
  428. package/src/i18n/messages/zh-tw/page/tools.ts +115 -0
  429. package/src/i18n/messages/zh-tw/tools/app-icon-resizer.ts +242 -0
  430. package/src/i18n/messages/zh-tw/tools/app-store-screenshot-generator.ts +145 -0
  431. package/src/i18n/messages/zh-tw/tools/build-in-public-story-generator.ts +230 -0
  432. package/src/i18n/messages/zh-tw/tools/cold-start-channel-selector.ts +440 -0
  433. package/src/i18n/messages/zh-tw/tools/commercial-bp-generator.ts +302 -0
  434. package/src/i18n/messages/zh-tw/tools/community-feedback-inbox.ts +217 -0
  435. package/src/i18n/messages/zh-tw/tools/community-pain-point-extractor.ts +230 -0
  436. package/src/i18n/messages/zh-tw/tools/community-post-risk-checker.ts +200 -0
  437. package/src/i18n/messages/zh-tw/tools/competitor-analysis.ts +192 -0
  438. package/src/i18n/messages/zh-tw/tools/email-template-generator.ts +302 -0
  439. package/src/i18n/messages/zh-tw/tools/engine.ts +68 -0
  440. package/src/i18n/messages/zh-tw/tools/gtm-readiness-checklist.ts +166 -0
  441. package/src/i18n/messages/zh-tw/tools/index.ts +73 -0
  442. package/src/i18n/messages/zh-tw/tools/koko-codex-assistant.ts +170 -0
  443. package/src/i18n/messages/zh-tw/tools/logo-generator.ts +71 -0
  444. package/src/i18n/messages/zh-tw/tools/market-forecast-report.ts +228 -0
  445. package/src/i18n/messages/zh-tw/tools/million-user-growth-test.ts +385 -0
  446. package/src/i18n/messages/zh-tw/tools/og-image-generator.ts +173 -0
  447. package/src/i18n/messages/zh-tw/tools/pitch-deck-generator.ts +358 -0
  448. package/src/i18n/messages/zh-tw/tools/product-agreement-generator.ts +401 -0
  449. package/src/i18n/messages/zh-tw/tools/product-hunt-launch-planner.ts +267 -0
  450. package/src/i18n/messages/zh-tw/tools/product-name-generator.ts +383 -0
  451. package/src/i18n/messages/zh-tw/tools/product-poster-generator.ts +282 -0
  452. package/src/i18n/messages/zh-tw/tools/product-ui-generator.ts +234 -0
  453. package/src/i18n/messages/zh-tw/tools/reddit-pain-point-finder.ts +162 -0
  454. package/src/i18n/messages/zh-tw/tools/shared.ts +24 -0
  455. package/src/i18n/messages/zh-tw/tools/social-listening-research-report.ts +181 -0
  456. package/src/i18n/messages/zh-tw/tools/social-media-profile-generator.ts +22 -0
  457. package/src/i18n/messages/zh-tw/tools/social-platform-asset-adapter.ts +284 -0
  458. package/src/i18n/messages/zh-tw/tools/social-profile-kit.ts +150 -0
  459. package/src/i18n/messages/zh-tw/tools/startup-idea-research.ts +165 -0
  460. package/src/i18n/messages/zh-tw/tools/tarot-reading.ts +228 -0
  461. package/src/i18n/messages/zh-tw/tools/twitter-gif-downloader.ts +138 -0
  462. package/src/i18n/messages/zh-tw/tools/user-interview-insight-report-generator.ts +224 -0
  463. package/src/i18n/messages/zh-tw/tools/user-interview-record-generator.ts +226 -0
  464. package/src/i18n/messages/zh-tw/tools-ui.ts +525 -0
  465. package/src/index.ts +15 -0
  466. package/src/lib/activity-task-handoff.ts +404 -0
  467. package/src/lib/api/errors.ts +39 -0
  468. package/src/lib/app-origin.ts +30 -0
  469. package/src/lib/fact-claim-contract.ts +68 -0
  470. package/src/lib/fake-delay.ts +3 -0
  471. package/src/lib/file/download.ts +10 -0
  472. package/src/lib/routing/locale-paths.ts +27 -0
  473. package/src/lib/seo-meta.ts +3 -0
  474. package/src/lib/tools/app-icon-resizer-schema.ts +191 -0
  475. package/src/lib/tools/app-store-screenshot-generator-schema.ts +185 -0
  476. package/src/lib/tools/build-in-public-story-generator-schema.ts +67 -0
  477. package/src/lib/tools/build-in-public-story-generator.format.ts +507 -0
  478. package/src/lib/tools/cold-start-channel-selector-schema.ts +147 -0
  479. package/src/lib/tools/commercial-bp-generator-schema.ts +222 -0
  480. package/src/lib/tools/community-feedback-inbox-schema.ts +125 -0
  481. package/src/lib/tools/community-feedback-inbox.format.ts +764 -0
  482. package/src/lib/tools/community-pain-point-extractor-schema.ts +166 -0
  483. package/src/lib/tools/community-post-risk-checker-schema.ts +99 -0
  484. package/src/lib/tools/community-post-risk-checker.format.ts +557 -0
  485. package/src/lib/tools/competitor-analysis-schema.ts +144 -0
  486. package/src/lib/tools/draft-preview-access.ts +3 -0
  487. package/src/lib/tools/draft-store.ts +69 -0
  488. package/src/lib/tools/email-template-generator-schema.ts +124 -0
  489. package/src/lib/tools/gtm-checklist-copy.ts +57 -0
  490. package/src/lib/tools/gtm-checklist-structure.ts +37 -0
  491. package/src/lib/tools/image-download.ts +68 -0
  492. package/src/lib/tools/input-quality.ts +97 -0
  493. package/src/lib/tools/logo-generator-schema.ts +224 -0
  494. package/src/lib/tools/market-forecast-report-schema.ts +299 -0
  495. package/src/lib/tools/mcp-registry.ts +16 -0
  496. package/src/lib/tools/mcp-types.ts +18 -0
  497. package/src/lib/tools/million-user-growth-test-schema.ts +49 -0
  498. package/src/lib/tools/million-user-growth-test.ts +181 -0
  499. package/src/lib/tools/og-image-generator-render.ts +448 -0
  500. package/src/lib/tools/og-image-generator-schema.ts +140 -0
  501. package/src/lib/tools/ops-catalog.ts +102 -0
  502. package/src/lib/tools/pitch-deck-generator-schema.ts +182 -0
  503. package/src/lib/tools/pitch-deck-package.ts +0 -0
  504. package/src/lib/tools/product-agreement-generator-schema.ts +168 -0
  505. package/src/lib/tools/product-hunt-launch-planner-schema.ts +136 -0
  506. package/src/lib/tools/product-hunt-launch-planner.format.ts +72 -0
  507. package/src/lib/tools/product-name-generator-schema.ts +563 -0
  508. package/src/lib/tools/product-poster-generator-schema.ts +215 -0
  509. package/src/lib/tools/product-ui-generator-schema.ts +157 -0
  510. package/src/lib/tools/reddit-pain-point-finder-schema.ts +88 -0
  511. package/src/lib/tools/resolve-tool-locale-copy.ts +75 -0
  512. package/src/lib/tools/slug.ts +60 -0
  513. package/src/lib/tools/social-listening-research-report-schema.ts +105 -0
  514. package/src/lib/tools/social-platform-asset-adapter-schema.ts +152 -0
  515. package/src/lib/tools/social-profile-kit.constants.ts +12 -0
  516. package/src/lib/tools/social-profile-kit.generation.ts +257 -0
  517. package/src/lib/tools/social-profile-kit.input.ts +290 -0
  518. package/src/lib/tools/social-profile-kit.manual.ts +481 -0
  519. package/src/lib/tools/social-profile-kit.package.ts +220 -0
  520. package/src/lib/tools/social-profile-kit.schema.ts +328 -0
  521. package/src/lib/tools/startup-idea-research-schema.ts +107 -0
  522. package/src/lib/tools/tarot-imagery.ts +89 -0
  523. package/src/lib/tools/tarot-reading.ts +1044 -0
  524. package/src/lib/tools/tool-message-keys.ts +18 -0
  525. package/src/lib/tools/types.ts +32 -0
  526. package/src/lib/tools/user-interview.format.ts +147 -0
  527. package/src/lib/tools/user-interview.generation.ts +670 -0
  528. package/src/lib/tools/user-interview.schema.ts +192 -0
  529. package/src/lib/zip.ts +106 -0
  530. package/src/services/tools/handlers/gtm-readiness-checklist.ts +71 -0
  531. package/src/services/tools/handlers/types.ts +7 -0
@@ -0,0 +1,170 @@
1
+ const kokoCodexAssistant = {
2
+ meta: {
3
+ title: "KoKo Codex 桌面助手 Beta",
4
+ displayTitle: "KoKo 桌面助手",
5
+ description: "下載 KoKo Codex 桌面助手 Mac Beta,通過懸浮窗把啟動項目、推拉代碼、Skill 調用和完成提醒做成一鍵快捷動作。下載需輸入內部邀請碼。",
6
+ intro: "給常用 Codex prompt 和 Skill 做一個桌面懸浮入口。輸入內部邀請碼後下載 Mac Beta,把啟動項目、推拉代碼、固定工作流和任務完成提醒變成隨手可點的 KoKo 動作。",
7
+ category: "Codex 工具",
8
+ keywords: [
9
+ "Codex 桌面助手",
10
+ "KoKo Codex Assistant",
11
+ "Mac 懸浮窗啟動項目",
12
+ "Skill 快捷調用",
13
+ "Codex 推拉代碼助手",
14
+ ],
15
+ inputSignal: "內部邀請碼",
16
+ outputSignal: "Mac Beta 安裝包下載",
17
+ boundarySignal: "Windows 版敬請期待,僅供內部測試",
18
+ },
19
+ widget: {
20
+ betaBadge: "Beta 測試版",
21
+ macTitle: "Mac 版內測下載",
22
+ macBody:
23
+ "當前下載為 KoKo Codex 桌面助手 Mac Beta。它會在桌面顯示懸浮入口,把常用 Codex prompt、Skill 和項目參數變成可點擊動作。",
24
+ macPoints: [
25
+ "懸浮窗 hover 後展開快捷按鈕",
26
+ "每個按鈕可綁定 Prompt、Skill 或預設參數",
27
+ "點擊後自動調起 Codex 併發送到指定項目",
28
+ "Codex 完成任務後由提示小助手提醒查看結果",
29
+ ],
30
+ downloadMac: "下載 Mac Beta",
31
+ downloadAgain: "重新下載 Mac Beta",
32
+ verifiedHint: "邀請碼已驗證,本次會直接進入下載。",
33
+ comingSoon: "敬請期待",
34
+ windowsTitle: "Windows 版",
35
+ windowsBody:
36
+ "Windows 版入口先保留在右側,當前不可下載。等兼容性和安裝流程穩定後會開放測試。",
37
+ windowsStatus: "Windows 版敬請期待",
38
+ workspaceAlt: "KoKo 懸浮窗展開快捷按鈕的像素風預覽圖",
39
+ dialogTitle: "輸入內部邀請碼",
40
+ dialogDescription: "KoKo 目前僅供內部 Beta 測試使用,通過邀請碼後即可下載 Mac 安裝包。",
41
+ inviteLabel: "邀請碼",
42
+ invitePlaceholder: "請輸入邀請碼",
43
+ wrongCode: "邀請碼不正確,請確認後再試。",
44
+ cancel: "取消",
45
+ confirmDownload: "驗證並下載",
46
+ },
47
+ guide: {
48
+ betaBadge: "Beta 測試版",
49
+ heroVisualAlt: "KoKo 番茄像素助手、懸浮快捷按鈕和 Mac Beta 安裝包視覺",
50
+ workspaceHeading: "下載 KoKo Mac Beta",
51
+ workspaceHint:
52
+ "當前版本僅供內部測試。點擊 Mac 下載後輸入邀請碼;Windows 入口已預留,但暫不開放。",
53
+ resultHeading: "你會得到什麼",
54
+ resultBody: [
55
+ "KoKo 安裝後會在桌面提供一個輕量懸浮窗。你可以把“啟動項目”“拉取代碼”“推送代碼”“調用某個 Skill”這類重複操作固定成按鈕,無論當前屏幕停在哪個應用,都能快速把任務交給 Codex。",
56
+ "當 Codex 跑完任務,KoKo 還可以通過提示小助手提醒你回來看結果。你不用一直盯著終端或反覆切回 Codex,只需要等通知出現,再打開對應任務複核輸出。",
57
+ "它不是另一個在線生成器,也不需要在網頁裡填寫長表單。KoKo 的價值在於把你已經信任的 Codex 對話、項目路徑、Prompt、Skill 和完成提醒組合起來,讓個人開發者和小團隊少做重複切換。",
58
+ ],
59
+ workspaceVisualAlt: "KoKo 懸浮窗展開多個快捷按鈕的產品預覽圖",
60
+ scenarioHeading: "更適合先做成按鈕的場景",
61
+ scenarioIntro:
62
+ "第一版重點服務高頻、可預設、結果可等待的 Codex 工作流。下面四個場景中,前兩個是研發日常,後兩個適合團隊把固定 Skill 流程交給 KoKo。",
63
+ scenarioItems: [
64
+ {
65
+ title: "啟動代碼項目",
66
+ body: "把項目路徑、啟動命令和必要檢查寫進按鈕。hover KoKo 後點擊“啟動”,Codex 會進入指定項目並執行預設啟動流程,你只需要等終端和服務就緒。",
67
+ },
68
+ {
69
+ title: "推拉代碼",
70
+ body: "把 pull、檢查分支、提交摘要、push 或 PR 草稿提示拆成快捷按鈕。適合每天多次同步代碼,又不想重複輸入固定命令和說明的個人開發者。",
71
+ },
72
+ {
73
+ title: "調用固定 Skill",
74
+ body: "把 SEO、品牌物料、文檔整理、郵件草稿等 Skill 調用配置成按鈕。KoKo 會把固定 prompt 發送到對應 Codex 對話或項目,減少找技能和複製指令的時間。",
75
+ },
76
+ {
77
+ title: "交接例行任務",
78
+ body: "團隊可以把檢查清單、發佈前確認、覆盤模板或素材生成流程做成共享配置。新人不需要記住完整 prompt,也能按同一套流程觸發 Codex。",
79
+ },
80
+ ],
81
+ configHeading: "自定義懸浮窗左側按鈕",
82
+ configBody: [
83
+ "KoKo 的核心不是固定功能列表,而是可配置的快捷動作。每個按鈕都可以綁定一段 Prompt、某個 Skill、項目路徑、目標對話或預設參數;你可以按自己的工作流決定 hover 後左側出現什麼。",
84
+ "例如一個按鈕只負責啟動本地服務,一個按鈕負責拉取最新代碼,一個按鈕負責調用 `$programmatic-seo` 寫頁面 Brief。按鈕越貼近日常動作,KoKo 越像你的桌面 Codex 調度臺。",
85
+ ],
86
+ configVisualAlt: "KoKo 把 Prompt、Skill 和清單模塊配置成懸浮按鈕的像素圖",
87
+ flowHeading: "點擊後自動調起 Codex",
88
+ flowBody: [
89
+ "當你點擊按鈕時,KoKo 會根據配置打開 Codex,並把對應內容發送到指定對話框或項目裡。你的動作從“切換窗口、找項目、複製 prompt、確認上下文”變成“hover、點擊、等待結果”。",
90
+ "這讓 KoKo 很適合那些不需要你臨場發揮、但需要 Codex 在正確項目裡執行的事務:啟動、同步、檢查、生成、整理、覆盤和發佈前準備。",
91
+ ],
92
+ valueVisualAlt: "零散研發任務通過 KoKo 變成啟動、拉取和推送動作的視覺圖",
93
+ notificationHeading: "任務完成時提醒你回來查看",
94
+ notificationBody: [
95
+ "很多 Codex 任務不是點完馬上結束:啟動服務、整理文檔、生成素材、跑檢查都可能需要等一會。KoKo 會在任務完成時通過提示小助手發出提醒,讓你知道結果已經可以查看。",
96
+ "這個提醒只負責把注意力帶回結果現場,不替你判斷代碼是否安全、文檔是否可發佈或生成內容是否能直接上線。你仍然可以在 Codex 裡複核輸出、繼續追問或決定下一步操作。",
97
+ ],
98
+ notificationVisualAlt: "KoKo 提示小助手在 Codex 任務完成後提醒用戶查看結果的像素圖",
99
+ standardsHeading: "好的 Codex 桌面助手應該具備什麼",
100
+ standardsItems: [
101
+ {
102
+ title: "足夠快",
103
+ body: "入口必須隨手可達,點擊後直接進入已配置的 Codex 上下文,不讓你重新找項目、找 Skill 或複製 prompt。",
104
+ },
105
+ {
106
+ title: "足夠可控",
107
+ body: "每個按鈕對應的 Prompt、Skill 和參數都應可見、可改、可複用。KoKo 只負責把你確認過的動作穩定送達。",
108
+ },
109
+ {
110
+ title: "結果不丟",
111
+ body: "適合等待的任務完成後,提示小助手會提醒你回到 Codex 查看結果,減少反覆切窗和忘記複核的問題。",
112
+ },
113
+ {
114
+ title: "邊界清楚",
115
+ body: "Beta 階段先聚焦 Mac 桌面、內部邀請碼和固定工作流;需要人工確認的代碼、提交和發佈動作仍應由你最終判斷。",
116
+ },
117
+ ],
118
+ boundaryHeading: "Beta 下載與平臺邊界",
119
+ boundaryBody: [
120
+ "當前 Mac 安裝包是 Beta 測試版,僅供內部使用。下載前需要通過內部邀請碼;邀請碼只在彈窗中輸入,不作為頁面正文展示。",
121
+ "Windows 版入口已放在右側,但當前顯示“敬請期待”。這能讓訪問者知道平臺規劃,同時避免誤以為 Windows 包已經可下載。",
122
+ "KoKo 會幫助你把配置好的內容發送給 Codex,也會在任務完成時提醒你查看結果,但不會替你判斷代碼是否一定安全、提交是否應該發佈、生成內容是否能直接上線。研發相關按鈕建議保留必要檢查和人工確認。",
123
+ ],
124
+ betaVisualAlt: "KoKo Mac Beta 安裝包、邀請碼鎖和 Windows 敬請期待入口視覺",
125
+ faq: "常見問題",
126
+ faqItems: [
127
+ {
128
+ question: "KoKo 和普通快捷啟動器有什麼區別?",
129
+ answer:
130
+ "普通啟動器通常只打開 App 或執行命令。KoKo 面向 Codex 工作流,可以把 Prompt、Skill、項目路徑和預設參數組合成按鈕,並自動發送到指定 Codex 對話或項目。",
131
+ },
132
+ {
133
+ question: "為什麼下載 KoKo Mac Beta 需要邀請碼?",
134
+ answer:
135
+ "這版還處於內部 Beta 測試,需要先控制下載範圍,方便收集安裝、懸浮窗、Codex 調起和按鈕配置反饋。如已獲得邀請碼,請在下載彈窗中輸入。",
136
+ },
137
+ {
138
+ question: "KoKo 能直接幫我啟動代碼項目嗎?",
139
+ answer:
140
+ "可以把啟動項目所需的路徑、命令和檢查說明配置成按鈕。點擊後 KoKo 會調起 Codex 併發送對應內容,但服務啟動結果仍取決於你的本地環境、依賴和項目腳本。",
141
+ },
142
+ {
143
+ question: "能用 KoKo 做推拉代碼嗎?",
144
+ answer:
145
+ "可以把拉取、檢查、提交、推送或 PR 草稿拆成按鈕。建議在按鈕 prompt 裡保留分支檢查、變更摘要和確認步驟,避免把需要判斷的代碼發佈動作完全自動化。",
146
+ },
147
+ {
148
+ question: "Windows 版什麼時候能下載?",
149
+ answer:
150
+ "目前 Windows 版還未開放下載,頁面只保留入口並顯示敬請期待。等安裝、懸浮窗權限和 Codex 調起流程穩定後,再開放 Windows Beta。",
151
+ },
152
+ {
153
+ question: "我可以把其他 Skill 配成 KoKo 按鈕嗎?",
154
+ answer:
155
+ "可以。適合配置那些高頻、固定、結果可等待的 Skill,例如 SEO 頁面 Brief、品牌物料、文檔整理、發佈檢查、郵件草稿或項目覆盤。",
156
+ },
157
+ {
158
+ question: "提示小助手會在什麼時候提醒我?",
159
+ answer:
160
+ "當 KoKo 觸發的 Codex 任務完成後,提示小助手會提醒你回到對應結果查看輸出。它適合啟動、檢查、生成和整理這類需要等待的任務;最終是否繼續提交、發佈或採用結果,仍由你複核決定。",
161
+ },
162
+ ],
163
+ ctaHint:
164
+ "KoKo 仍是內部 Beta。如果你只想先探索 Tomako 現有工具,可以回到工具列表;如果要準備命名或頁面內容,也可以繼續使用相關工具。",
165
+ ctaPrimary: "返回全部工具",
166
+ ctaSecondary: "試試產品命名工具",
167
+ },
168
+ } as const;
169
+
170
+ export default kokoCodexAssistant;
@@ -0,0 +1,71 @@
1
+ const logoGenerator = {
2
+ guide: {
3
+ heroImageAlt: "Logo 生成器首屏配圖,展示從產品 brief 到 PNG Logo 方案和上線前複核的結果形態。",
4
+ resultVisualAlt: "Logo 生成器結果預覽圖,展示從 brief 到 PNG Logo 方案和上線前複核的路徑。",
5
+ howToUse: "如何使用",
6
+ howToUseIntro: "這不是只換顏色的模板頁。頁面先收集產品資訊和品牌約束,再把 brief 交給在線生圖鏈路,最後只展示真實 imageUrl 返回的 PNG 結果。",
7
+ howVisualAlt: "Logo 生成器使用流程配圖,展示輸入產品資訊、在線生成和下載 PNG 原圖的路徑。",
8
+ howToUseSteps: [
9
+ "輸入產品名稱;這是唯一必填項,其餘字段用於約束設計方向。",
10
+ "可選補充產品網址、產品介紹、參考圖、自定義配色和 Logo 形式,讓生成方向更貼近產品。",
11
+ "選擇生成方案數量,等待在線圖片服務返回對應數量的 PNG Logo 方案。",
12
+ "點擊縮略圖放大預覽,選中後下載 PNG 原圖用於官網、頭像和提案預覽。"
13
+ ],
14
+ runtimeNote: "當前頁為 review 狀態:默認路徑是在線 LLM Task + Skills-OL 回寫 logo_generation 結構化結果;生產發佈前需驗證 cc-connect 已部署對應 Skill。",
15
+ resultGuidance: "如何判斷結果",
16
+ resultGuidanceIntro: "Logo 結果不是一次定稿,更適合作為上線前的設計方向。先檢查識別度和使用場景,再決定哪個方案值得繼續打磨。",
17
+ guidanceBullets: [
18
+ "先看小尺寸識別度:縮到 favicon、App 圖標或頭像尺寸時,圖形仍應清楚。",
19
+ "再看場景匹配:官網、App、社媒和提案封面需要不同的空間感。",
20
+ "保留 2 到 3 個方向繼續打磨,不要只因為顏色喜歡就立即定稿。",
21
+ "PNG 原圖適合快速預覽和分享;正式商用前建議再做矢量化和品牌規範整理。"
22
+ ],
23
+ useCases: "適用場景",
24
+ useCasesIntro: "搜索 Logo 生成器的用戶通常想快速看到可用視覺方向,而不是閱讀一篇設計方法論。這個頁面把常見獨立開發者場景直接映射到輸出和下載動作。",
25
+ useCasesVisualAlt: "Logo 生成器適用場景配圖,展示落地頁、App 圖標、社媒頭像和提案封面的上線素材組合。",
26
+ useCaseCards: [
27
+ {
28
+ title: "產品命名後定第一版視覺",
29
+ description: "剛確定產品名時,用最少輸入拿到圖形、字標和圖標方向,快速判斷名字是否適合做品牌。",
30
+ label: "0 → 1"
31
+ },
32
+ {
33
+ title: "上線落地頁或 waitlist",
34
+ description: "為官網導航、hero、favicon 和社媒頭像準備統一的初版視覺素材。",
35
+ label: "Launch"
36
+ },
37
+ {
38
+ title: "提案中展示多種品牌方向",
39
+ description: "把同一個產品 brief 轉成幾種可比較方向,方便團隊在會議或客戶提案中選擇。",
40
+ label: "Pitch"
41
+ },
42
+ {
43
+ title: "交給設計師繼續細化",
44
+ description: "下載 PNG 原圖後繼續在 Figma、Illustrator 或品牌設計流程裡做矢量化和排版精修。",
45
+ label: "Review"
46
+ }
47
+ ],
48
+ faq: "常見問題",
49
+ faqIntro: "這裡把搜索用戶最容易誤解的邊界放在頁面底部:它生成圖片候選,但不替代商標檢索、版權審查或完整品牌系統設計。",
50
+ boundaryVisualAlt: "Logo 生成器能力邊界配圖,提示在線圖片結果、URL 元信息和人工複核。",
51
+ faqItems: [
52
+ {
53
+ question: "這個工具會生成可商用 logo 嗎?",
54
+ answer: "目標是生成接近可落地的 Logo 圖片候選,但它不做商標、版權或近似品牌檢索。正式商用前仍建議做設計複核、矢量化和權利風險檢查。"
55
+ },
56
+ {
57
+ question: "為什麼現在輸出 PNG 原圖?",
58
+ answer: "真實生圖鏈路返回的是圖片服務生成的 raster PNG。它適合先確認方向、放進頁面預覽或交給設計師繼續矢量化;透明底和多尺寸套裝應在後續導出流程裡處理。"
59
+ },
60
+ {
61
+ question: "需要提供產品官網嗎?",
62
+ answer: "不需要。產品網址是可選項;如果提供,腳本會嘗試讀取公開頁面標題和描述,失敗時仍會基於你填寫的產品介紹與關鍵詞生成。"
63
+ }
64
+ ],
65
+ ctaPrimary: "先生成產品名",
66
+ ctaSecondary: "返回全部工具",
67
+ ctaHint: "如果還沒有穩定的產品名,先用起名器得到候選名,再回來生成 logo 方向。"
68
+ }
69
+ } as const;
70
+
71
+ export default logoGenerator;
@@ -0,0 +1,228 @@
1
+ const marketForecastReport = {
2
+ meta: {
3
+ title: "TAM、SAM、SOM 市場規模預測工具",
4
+ displayTitle: "TAM、SAM、SOM 市場規模預測工具",
5
+ description:
6
+ "輸入產品、目標買方、定價和業務資料,產生 TAM、SAM、SOM 與三檔 ARR 預測,並附上來源、假設、政策信號和可在寫入 BP 前複核的盡調問題。",
7
+ intro:
8
+ "募資用的市場預測不應只引用一份顧問報告。這個工具會把公開統計、社群活躍訊號、政策趨勢、競品線索和你的真實業務輸入放在一起,輸出可複核的預測區間。",
9
+ category: "募資與市場研究工具",
10
+ keywords: [
11
+ "市場規模預測工具",
12
+ "ARR 預測工具",
13
+ "TAM SAM SOM 計算器",
14
+ "募資市場研究",
15
+ "新創使用者成長預測",
16
+ ],
17
+ inputSignal: "產品描述、目前使用者、目標使用者、市場、收入/定價/付費率",
18
+ outputSignal: "TAM/SAM/SOM、三檔使用者與 ARR 預測、證據牆、政策趨勢、盡調清單",
19
+ boundarySignal: "公開證據驅動的估算,不是投資建議或確定性財務預測",
20
+ },
21
+ widget: {
22
+ productLabel: "產品與場景",
23
+ productPlaceholder:
24
+ "例如:面向北美中小 SaaS 團隊的 AI 客服工單分流工具,接入 Zendesk/Intercom,協助支援團隊自動識別優先級和重複問題。",
25
+ targetUsersLabel: "目標使用者/買方",
26
+ targetUsersPlaceholder: "例如:50-500 人 SaaS 公司的 support lead、CX ops",
27
+ marketLabel: "目標市場",
28
+ marketPlaceholder: "例如:美國 / 北美 / 全球 B2B SaaS",
29
+ currentUsersLabel: "目前使用者",
30
+ currentUsersPlaceholder: "例如:2,000 workspace,120 個日活團隊",
31
+ horizonLabel: "預測週期",
32
+ horizon: {
33
+ oneYear: "1 年",
34
+ threeYear: "3 年",
35
+ fiveYear: "5 年",
36
+ },
37
+ metricsLabel: "目前商業指標",
38
+ metricsHint: "可選",
39
+ metricsPlaceholder:
40
+ "例如:MRR 8,000 美元;Pro $49/月;付費轉化約 6%;過去 3 個月使用者每月成長 18%;競品包括 Gorgias、Intercom Fin。",
41
+ inputHint:
42
+ "工具只使用公開、可歸因的證據和你提供的資料。若證據薄弱,報告會降低置信度並列出缺口,而不是把不確定性包裝成結論。",
43
+ submit: "生成市場預測報告",
44
+ submitting: "正在提交...",
45
+ running: "正在研究...",
46
+ emptyTitle: "市場規模預測報告會顯示在這裡",
47
+ emptyHint:
48
+ "提交後會生成 TAM/SAM/SOM、公開證據牆、社群活躍訊號、政策趨勢、熊/基準/牛三檔使用者與 ARR 預測、敏感性分析和投資人盡調清單。",
49
+ runningTitle: "正在收集公開市場證據",
50
+ runningHint:
51
+ "Agent 會優先查找官方統計、公司揭露、政策文本、公開社群討論和可複核網頁。完整報告前可能先顯示部分模組。",
52
+ progressTitle: "最近進度",
53
+ progressSteps: [
54
+ "已收到產品資訊,正在拆解市場定義、使用者分層和可搜尋證據問題。",
55
+ "正在查找官方統計、公司揭露、公開社群討論和政策趨勢。",
56
+ "正在區分真實活躍訊號、會員數、媒體熱度和二手報告數字。",
57
+ "正在建立熊/基準/牛三檔使用者、付費率、ARPU/ACV 和 ARR 假設。",
58
+ "正在整理證據強度、敏感變數、缺失證據和投資人盡調清單。",
59
+ ],
60
+ progressResultReady: "結構化報告快照已寫回,正在讀取並校驗。",
61
+ status: {
62
+ default: "研究中",
63
+ PENDING: "排隊中",
64
+ STREAMING: "研究中",
65
+ AWAITING_INPUT: "分析中",
66
+ AWAITING_RESULT: "讀取結果中",
67
+ SUCCEEDED: "即將完成",
68
+ },
69
+ retry: "重試",
70
+ errors: {
71
+ invalid: "請補充更具體的產品資訊、目標使用者和市場背景,避免 test/demo/占位內容。",
72
+ submit: "提交失敗,請檢查網路後重試。",
73
+ task: "市場預測任務失敗,請稍後重試。",
74
+ timeout: "研究逾時,已保留目前部分結果;如需完整報告可以重試。",
75
+ schema: "返回結果格式異常,請重試。",
76
+ },
77
+ analyzeAnother: "分析另一個市場",
78
+ copy: "複製報告",
79
+ copied: "已複製",
80
+ boundaryFallback:
81
+ "以上為基於公開資訊和使用者輸入的估算級研究,不構成投資建議、募資承諾、財務預測保證或專業市場調研結論。",
82
+ confidence: { low: "低", medium: "中", high: "高" },
83
+ strength: { weak: "弱", mixed: "中", strong: "強" },
84
+ scenario: { bear: "保守", base: "基準", bull: "樂觀" },
85
+ policy: { tailwind: "順風", headwind: "逆風", mixed: "混合" },
86
+ intent: {
87
+ clear: "購買意圖:明確",
88
+ weak: "購買意圖:弱",
89
+ not_observed: "購買意圖:未觀察到",
90
+ unknown: "購買意圖:未知",
91
+ },
92
+ sourceStatus: {
93
+ source_linked: "已附來源連結",
94
+ source_named: "有來源名稱",
95
+ needs_source: "待補來源",
96
+ user_provided: "使用者提供",
97
+ },
98
+ volatility: { low: "波動低", medium: "波動中", high: "波動高" },
99
+ checkStatus: { pass: "通過", warning: "注意", fail: "失敗" },
100
+ protocol: {
101
+ market: "市場定義",
102
+ boundary: "市場邊界",
103
+ recency: "新鮮度規則",
104
+ formula: "預測公式",
105
+ channelPlan: "證據渠道計畫",
106
+ archetype: "市場類型",
107
+ geo: "地區",
108
+ language: "語言",
109
+ },
110
+ channelRole: {
111
+ core: "核心",
112
+ supporting: "輔助",
113
+ comparable_only: "僅類比",
114
+ excluded: "排除",
115
+ },
116
+ forecast: {
117
+ users: "使用者",
118
+ paidUsers: "付費使用者",
119
+ conversion: "付費率",
120
+ arr: "ARR",
121
+ formula: "計算路徑",
122
+ assumptions: "關鍵假設",
123
+ },
124
+ report: {
125
+ kicker: "市場預測報告",
126
+ partialKicker: "部分報告",
127
+ partialSummary: "第一段報告仍在生成中。",
128
+ confidence: "置信度",
129
+ scenarios: "預測情景",
130
+ sources: "來源",
131
+ taskId: "Task ID",
132
+ inProgress: "生成中",
133
+ community: "社群活躍訊號",
134
+ policy: "政策趨勢",
135
+ sensitivity: "敏感性變數",
136
+ checklist: "投資人盡調清單",
137
+ missingEvidence: "證據缺口",
138
+ evidenceStrength: "證據強度",
139
+ observedMetric: "觀測指標",
140
+ observedPeriod: "時間範圍",
141
+ sourceStatus: "證據狀態",
142
+ researchProtocol: "研究協議",
143
+ stabilityCheck: "穩定性自檢",
144
+ varianceDrivers: "結論波動因素",
145
+ },
146
+ sections: {
147
+ market: "市場定義與 TAM/SAM/SOM",
148
+ forecast: "使用者、付費率與 ARR 預測",
149
+ dataVisuals: "真實資料與圖表",
150
+ evidence: "真實市場證據",
151
+ signals: "社群與政策訊號",
152
+ comparables: "可比案例與邊界",
153
+ diligence: "敏感性、缺口與盡調",
154
+ },
155
+ },
156
+ guide: {
157
+ workspaceHeading: "做一份可以被追問的 TAM、SAM、SOM 預測",
158
+ workspaceHint: "輸入產品和目前指標,生成一份帶證據、邊界和三檔情景的募資市場預測報告。",
159
+ workspaceBadge: "證據優先",
160
+ valueKicker: "你會得到什麼",
161
+ valueTitle: "不是單點答案,而是一份可被投資人追問的預測底稿",
162
+ valueIntro:
163
+ "這個功能的價值不在於給出一個漂亮大數,而在於把結論、依據、假設和缺口放到同一張桌面上,方便團隊複核和繼續驗證。",
164
+ valueItems: [
165
+ {
166
+ title: "三層市場規模",
167
+ body: "拆分 TAM、SAM、SOM,並說明每個數字依賴哪些使用者範圍、地區、價格或可服務邊界。",
168
+ },
169
+ {
170
+ title: "三檔業務預測",
171
+ body: "輸出保守、基準、樂觀三檔使用者、付費使用者、付費率、ARPU/ACV 和 ARR,不把單點數字偽裝成確定性。",
172
+ },
173
+ {
174
+ title: "募資可用證據牆",
175
+ body: "把官方統計、公司揭露、公開社群、政策文件和使用者輸入分別標註,顧問報告只作為輔助背景。",
176
+ },
177
+ ],
178
+ evidenceKicker: "證據標準",
179
+ evidenceTitle: "真實證據比漂亮報告更重要",
180
+ evidenceIntro:
181
+ "市面報告可以參考,但不能取代公開可複核證據。報告會把來源類型、相關性和置信度寫出來。",
182
+ evidenceItems: [
183
+ "優先使用官方統計、監管/政策文件、公司揭露、公開產品頁和可訪問社群討論。",
184
+ "社群活躍度會區分成員數、近期討論、重複痛點、購買意圖、遷移意願和替代方案,而不是直接把群成員當使用者。",
185
+ "顧問報告、媒體榜單和二手市場規模數字只作為輔助線索;如果方法不透明,會降低置信度。",
186
+ "沒有證據的成長假設會進入 missing evidence,而不會被寫成事實。",
187
+ ],
188
+ boundaryKicker: "邊界",
189
+ boundaryTitle: "募資場景需要鋒利,但更需要誠實",
190
+ boundaryIntro:
191
+ "這個工具適合準備 pitch deck、內部經營模型和投資人問答,不適合當作確定性財務承諾。",
192
+ boundaryItems: [
193
+ "支援:早期產品、SaaS/AI/開發者工具/社群驅動產品、已有使用者或收入的募資材料準備。",
194
+ "不支援:保證募資結果、取代專業財務模型、抓取私密社群、訪問登入後資料或編造競品指標。",
195
+ "結果使用:把強結論逐條複核來源,再用使用者訪談、銷售紀錄、waitlist、廣告測試或 landing page 實驗驗證。",
196
+ "最佳輸入:目前使用者、活躍使用者、收入、價格、付費率、成長歷史、競品、目標地區和你已經觀察到的社群關鍵字。",
197
+ ],
198
+ faqKicker: "常見問題",
199
+ faqTitle: "TAM、SAM、SOM 預測常見問題",
200
+ faqItems: [
201
+ {
202
+ question: "它會直接給我一個可以寫進 BP 的市場規模嗎?",
203
+ answer:
204
+ "會給出可引用的區間和理由,但你仍要複核來源。更好的用法是把報告當成 BP 市場頁和投資人 Q&A 的底稿。",
205
+ },
206
+ {
207
+ question: "社群活躍使用者怎麼估算?",
208
+ answer:
209
+ "它會看公開討論的近期性、重複痛點、購買/遷移意圖、替代方案和社群範圍。成員數只是弱訊號,不會直接等同活躍使用者。",
210
+ },
211
+ {
212
+ question: "政策趨勢會怎麼進入預測?",
213
+ answer:
214
+ "政策會被標成順風、逆風或混合,並說明對採用速度、銷售週期、合規成本或預算釋放的影響。",
215
+ },
216
+ {
217
+ question: "如果市場證據很少怎麼辦?",
218
+ answer:
219
+ "報告會降低置信度,列出缺失證據和下一步盡調問題。這個結果本身也很有價值,因為它告訴你哪裡還不能自信地講。",
220
+ },
221
+ ],
222
+ ctaHint: "如果你還需要更深的社群證據,可以先做社媒調研;如果預測已經可用,可以進入 pitch deck。",
223
+ ctaPrimary: "做社媒調研",
224
+ ctaSecondary: "生成 pitch deck",
225
+ },
226
+ } as const;
227
+
228
+ export default marketForecastReport;