@agent-native/core 0.79.2 → 0.79.6

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 (268) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +30 -0
  3. package/corpus/core/docs/content/locales/zh-TW/a2a-protocol.md +392 -0
  4. package/corpus/core/docs/content/locales/zh-TW/actions.md +583 -0
  5. package/corpus/core/docs/content/locales/zh-TW/agent-mentions.md +164 -0
  6. package/corpus/core/docs/content/locales/zh-TW/agent-surfaces.md +397 -0
  7. package/corpus/core/docs/content/locales/zh-TW/agent-teams.md +171 -0
  8. package/corpus/core/docs/content/locales/zh-TW/agent-web-surfaces.md +161 -0
  9. package/corpus/core/docs/content/locales/zh-TW/audit-log.md +111 -0
  10. package/corpus/core/docs/content/locales/zh-TW/authentication.md +332 -0
  11. package/corpus/core/docs/content/locales/zh-TW/automations.md +268 -0
  12. package/corpus/core/docs/content/locales/zh-TW/blueprint-installer.md +83 -0
  13. package/corpus/core/docs/content/locales/zh-TW/cli-adapters.md +129 -0
  14. package/corpus/core/docs/content/locales/zh-TW/client.md +398 -0
  15. package/corpus/core/docs/content/locales/zh-TW/cloneable-saas.md +114 -0
  16. package/corpus/core/docs/content/locales/zh-TW/code-agents-ui.md +436 -0
  17. package/corpus/core/docs/content/locales/zh-TW/components.md +368 -0
  18. package/corpus/core/docs/content/locales/zh-TW/context-awareness.md +373 -0
  19. package/corpus/core/docs/content/locales/zh-TW/creating-templates.md +411 -0
  20. package/corpus/core/docs/content/locales/zh-TW/cross-app-sso.md +188 -0
  21. package/corpus/core/docs/content/locales/zh-TW/database.md +183 -0
  22. package/corpus/core/docs/content/locales/zh-TW/deployment.md +348 -0
  23. package/corpus/core/docs/content/locales/zh-TW/dispatch.md +146 -0
  24. package/corpus/core/docs/content/locales/zh-TW/drop-in-agent.md +260 -0
  25. package/corpus/core/docs/content/locales/zh-TW/durable-resume.md +65 -0
  26. package/corpus/core/docs/content/locales/zh-TW/embedding-sdk.md +597 -0
  27. package/corpus/core/docs/content/locales/zh-TW/evals.md +155 -0
  28. package/corpus/core/docs/content/locales/zh-TW/extensions.md +360 -0
  29. package/corpus/core/docs/content/locales/zh-TW/external-agents.md +619 -0
  30. package/corpus/core/docs/content/locales/zh-TW/faq.md +142 -0
  31. package/corpus/core/docs/content/locales/zh-TW/file-uploads.md +122 -0
  32. package/corpus/core/docs/content/locales/zh-TW/frames.md +153 -0
  33. package/corpus/core/docs/content/locales/zh-TW/getting-started.md +199 -0
  34. package/corpus/core/docs/content/locales/zh-TW/harness-agents.md +349 -0
  35. package/corpus/core/docs/content/locales/zh-TW/human-approval.md +86 -0
  36. package/corpus/core/docs/content/locales/zh-TW/internationalization.md +147 -0
  37. package/corpus/core/docs/content/locales/zh-TW/key-concepts.md +312 -0
  38. package/corpus/core/docs/content/locales/zh-TW/local-file-mode.md +433 -0
  39. package/corpus/core/docs/content/locales/zh-TW/mcp-apps.md +147 -0
  40. package/corpus/core/docs/content/locales/zh-TW/mcp-clients.md +330 -0
  41. package/corpus/core/docs/content/locales/zh-TW/mcp-protocol.md +279 -0
  42. package/corpus/core/docs/content/locales/zh-TW/messaging.md +461 -0
  43. package/corpus/core/docs/content/locales/zh-TW/migration-workbench.md +33 -0
  44. package/corpus/core/docs/content/locales/zh-TW/multi-app-workspace.md +312 -0
  45. package/corpus/core/docs/content/locales/zh-TW/multi-tenancy.md +52 -0
  46. package/corpus/core/docs/content/locales/zh-TW/native-chat-ui.md +321 -0
  47. package/corpus/core/docs/content/locales/zh-TW/notifications.md +231 -0
  48. package/corpus/core/docs/content/locales/zh-TW/observability.md +294 -0
  49. package/corpus/core/docs/content/locales/zh-TW/observational-memory.md +77 -0
  50. package/corpus/core/docs/content/locales/zh-TW/onboarding.md +216 -0
  51. package/corpus/core/docs/content/locales/zh-TW/plan-plugin.md +200 -0
  52. package/corpus/core/docs/content/locales/zh-TW/pr-visual-recap.md +384 -0
  53. package/corpus/core/docs/content/locales/zh-TW/processors.md +106 -0
  54. package/corpus/core/docs/content/locales/zh-TW/progress.md +199 -0
  55. package/corpus/core/docs/content/locales/zh-TW/pure-agent-apps.md +39 -0
  56. package/corpus/core/docs/content/locales/zh-TW/real-time-collaboration.md +680 -0
  57. package/corpus/core/docs/content/locales/zh-TW/recurring-jobs.md +142 -0
  58. package/corpus/core/docs/content/locales/zh-TW/routing.md +79 -0
  59. package/corpus/core/docs/content/locales/zh-TW/sandbox-adapters.md +227 -0
  60. package/corpus/core/docs/content/locales/zh-TW/security.md +330 -0
  61. package/corpus/core/docs/content/locales/zh-TW/server.md +265 -0
  62. package/corpus/core/docs/content/locales/zh-TW/sharing.md +219 -0
  63. package/corpus/core/docs/content/locales/zh-TW/skills-guide.md +281 -0
  64. package/corpus/core/docs/content/locales/zh-TW/template-analytics.md +259 -0
  65. package/corpus/core/docs/content/locales/zh-TW/template-assets.md +303 -0
  66. package/corpus/core/docs/content/locales/zh-TW/template-brain.md +324 -0
  67. package/corpus/core/docs/content/locales/zh-TW/template-calendar.md +194 -0
  68. package/corpus/core/docs/content/locales/zh-TW/template-chat.md +129 -0
  69. package/corpus/core/docs/content/locales/zh-TW/template-clips.md +368 -0
  70. package/corpus/core/docs/content/locales/zh-TW/template-content.md +402 -0
  71. package/corpus/core/docs/content/locales/zh-TW/template-design.md +173 -0
  72. package/corpus/core/docs/content/locales/zh-TW/template-dispatch.md +220 -0
  73. package/corpus/core/docs/content/locales/zh-TW/template-forms.md +178 -0
  74. package/corpus/core/docs/content/locales/zh-TW/template-mail.md +239 -0
  75. package/corpus/core/docs/content/locales/zh-TW/template-plan.md +814 -0
  76. package/corpus/core/docs/content/locales/zh-TW/template-slides.md +293 -0
  77. package/corpus/core/docs/content/locales/zh-TW/template-videos.md +222 -0
  78. package/corpus/core/docs/content/locales/zh-TW/tracking.md +236 -0
  79. package/corpus/core/docs/content/locales/zh-TW/using-your-agent.md +71 -0
  80. package/corpus/core/docs/content/locales/zh-TW/voice-input.md +81 -0
  81. package/corpus/core/docs/content/locales/zh-TW/what-is-agent-native.md +202 -0
  82. package/corpus/core/docs/content/locales/zh-TW/workspace-connections.md +321 -0
  83. package/corpus/core/docs/content/locales/zh-TW/workspace-management.md +175 -0
  84. package/corpus/core/docs/content/locales/zh-TW/workspace.md +323 -0
  85. package/corpus/core/docs/content/locales/zh-TW/writing-agent-instructions.md +173 -0
  86. package/corpus/core/package.json +2 -2
  87. package/corpus/core/scripts/check-dist-imports.mjs +35 -0
  88. package/corpus/core/src/client/ErrorBoundary.tsx +10 -0
  89. package/corpus/core/src/client/FeedbackButton.tsx +12 -0
  90. package/corpus/core/src/client/blocks/library/block-copy.ts +32 -0
  91. package/corpus/core/src/client/extensions/ExtensionsSidebarSection.tsx +33 -0
  92. package/corpus/core/src/client/i18n.tsx +6 -1
  93. package/corpus/core/src/localization/actions/set-localization-preference.ts +2 -1
  94. package/corpus/core/src/localization/default-messages.ts +492 -0
  95. package/corpus/core/src/localization/shared.ts +45 -0
  96. package/corpus/core/src/server/agent-chat-plugin.ts +38 -0
  97. package/corpus/core/src/server/onboarding-html.ts +99 -0
  98. package/corpus/core/src/templates/default/app/i18n/index.ts +2 -0
  99. package/corpus/core/src/templates/default/app/i18n/zh-TW.ts +466 -0
  100. package/corpus/core/src/templates/default/app/root.tsx +8 -0
  101. package/corpus/templates/analytics/app/i18n/index.ts +2 -0
  102. package/corpus/templates/analytics/app/i18n/zh-TW.ts +818 -0
  103. package/corpus/templates/analytics/app/i18n-data.ts +9 -0
  104. package/corpus/templates/assets/app/i18n/index.ts +2 -0
  105. package/corpus/templates/assets/app/i18n/zh-TW.ts +860 -0
  106. package/corpus/templates/assets/app/i18n-data.ts +3 -0
  107. package/corpus/templates/brain/app/i18n/index.ts +2 -0
  108. package/corpus/templates/brain/app/i18n/zh-TW.ts +709 -0
  109. package/corpus/templates/brain/app/i18n-data.ts +3 -0
  110. package/corpus/templates/calendar/app/i18n/zh-TW.ts +836 -0
  111. package/corpus/templates/calendar/app/i18n-data.ts +4 -0
  112. package/corpus/templates/chat/app/i18n/index.ts +2 -0
  113. package/corpus/templates/chat/app/i18n/zh-TW.ts +67 -0
  114. package/corpus/templates/chat/app/i18n-data.ts +3 -0
  115. package/corpus/templates/clips/app/i18n/index.ts +2 -0
  116. package/corpus/templates/clips/app/i18n/zh-TW.ts +1280 -0
  117. package/corpus/templates/content/app/i18n/index.ts +2 -0
  118. package/corpus/templates/content/app/i18n/zh-TW.ts +906 -0
  119. package/corpus/templates/content/app/i18n-data.ts +4 -0
  120. package/corpus/templates/design/app/i18n/index.ts +2 -0
  121. package/corpus/templates/design/app/i18n/zh-TW.ts +517 -0
  122. package/corpus/templates/design/app/i18n-data.ts +6 -0
  123. package/corpus/templates/dispatch/app/i18n/index.ts +2 -0
  124. package/corpus/templates/dispatch/app/i18n/zh-TW.ts +195 -0
  125. package/corpus/templates/dispatch/app/i18n-data.ts +3 -0
  126. package/corpus/templates/forms/app/i18n/index.ts +2 -0
  127. package/corpus/templates/forms/app/i18n/zh-TW.ts +349 -0
  128. package/corpus/templates/macros/app/i18n/index.ts +2 -0
  129. package/corpus/templates/macros/app/i18n/zh-TW.ts +224 -0
  130. package/corpus/templates/mail/app/i18n/index.ts +2 -0
  131. package/corpus/templates/mail/app/i18n/zh-TW.ts +562 -0
  132. package/corpus/templates/mail/app/root.tsx +6 -0
  133. package/corpus/templates/plan/app/i18n/index.ts +2 -0
  134. package/corpus/templates/plan/app/i18n/zh-TW.ts +712 -0
  135. package/corpus/templates/slides/app/i18n/index.ts +2 -0
  136. package/corpus/templates/slides/app/i18n/zh-TW.ts +531 -0
  137. package/corpus/templates/videos/app/i18n/index.ts +2 -0
  138. package/corpus/templates/videos/app/i18n/zh-TW.ts +435 -0
  139. package/dist/client/ErrorBoundary.d.ts.map +1 -1
  140. package/dist/client/ErrorBoundary.js +10 -0
  141. package/dist/client/ErrorBoundary.js.map +1 -1
  142. package/dist/client/FeedbackButton.d.ts.map +1 -1
  143. package/dist/client/FeedbackButton.js +12 -0
  144. package/dist/client/FeedbackButton.js.map +1 -1
  145. package/dist/client/blocks/library/block-copy.d.ts.map +1 -1
  146. package/dist/client/blocks/library/block-copy.js +32 -0
  147. package/dist/client/blocks/library/block-copy.js.map +1 -1
  148. package/dist/client/extensions/ExtensionsSidebarSection.d.ts.map +1 -1
  149. package/dist/client/extensions/ExtensionsSidebarSection.js +32 -0
  150. package/dist/client/extensions/ExtensionsSidebarSection.js.map +1 -1
  151. package/dist/client/i18n.d.ts.map +1 -1
  152. package/dist/client/i18n.js +6 -1
  153. package/dist/client/i18n.js.map +1 -1
  154. package/dist/collab/routes.d.ts +2 -2
  155. package/dist/file-upload/actions/upload-image.d.ts +2 -2
  156. package/dist/localization/actions/set-localization-preference.d.ts.map +1 -1
  157. package/dist/localization/actions/set-localization-preference.js +2 -2
  158. package/dist/localization/actions/set-localization-preference.js.map +1 -1
  159. package/dist/localization/default-messages.d.ts +443 -0
  160. package/dist/localization/default-messages.d.ts.map +1 -0
  161. package/dist/localization/default-messages.js +448 -0
  162. package/dist/localization/default-messages.js.map +1 -0
  163. package/dist/localization/shared.d.ts +1 -1
  164. package/dist/localization/shared.d.ts.map +1 -1
  165. package/dist/localization/shared.js +43 -0
  166. package/dist/localization/shared.js.map +1 -1
  167. package/dist/notifications/routes.d.ts +2 -2
  168. package/dist/observability/routes.d.ts +7 -7
  169. package/dist/progress/routes.d.ts +1 -1
  170. package/dist/resources/handlers.d.ts +3 -3
  171. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  172. package/dist/server/agent-chat-plugin.js +39 -0
  173. package/dist/server/agent-chat-plugin.js.map +1 -1
  174. package/dist/server/agent-engine-api-key-route.d.ts +1 -1
  175. package/dist/server/onboarding-html.d.ts.map +1 -1
  176. package/dist/server/onboarding-html.js +96 -0
  177. package/dist/server/onboarding-html.js.map +1 -1
  178. package/dist/server/transcribe-voice.d.ts +1 -1
  179. package/dist/templates/default/app/i18n/index.ts +2 -0
  180. package/dist/templates/default/app/i18n/zh-TW.ts +466 -0
  181. package/dist/templates/default/app/root.tsx +8 -0
  182. package/docs/content/locales/zh-TW/a2a-protocol.md +392 -0
  183. package/docs/content/locales/zh-TW/actions.md +583 -0
  184. package/docs/content/locales/zh-TW/agent-mentions.md +164 -0
  185. package/docs/content/locales/zh-TW/agent-surfaces.md +397 -0
  186. package/docs/content/locales/zh-TW/agent-teams.md +171 -0
  187. package/docs/content/locales/zh-TW/agent-web-surfaces.md +161 -0
  188. package/docs/content/locales/zh-TW/audit-log.md +111 -0
  189. package/docs/content/locales/zh-TW/authentication.md +332 -0
  190. package/docs/content/locales/zh-TW/automations.md +268 -0
  191. package/docs/content/locales/zh-TW/blueprint-installer.md +83 -0
  192. package/docs/content/locales/zh-TW/cli-adapters.md +129 -0
  193. package/docs/content/locales/zh-TW/client.md +398 -0
  194. package/docs/content/locales/zh-TW/cloneable-saas.md +114 -0
  195. package/docs/content/locales/zh-TW/code-agents-ui.md +436 -0
  196. package/docs/content/locales/zh-TW/components.md +368 -0
  197. package/docs/content/locales/zh-TW/context-awareness.md +373 -0
  198. package/docs/content/locales/zh-TW/creating-templates.md +411 -0
  199. package/docs/content/locales/zh-TW/cross-app-sso.md +188 -0
  200. package/docs/content/locales/zh-TW/database.md +183 -0
  201. package/docs/content/locales/zh-TW/deployment.md +348 -0
  202. package/docs/content/locales/zh-TW/dispatch.md +146 -0
  203. package/docs/content/locales/zh-TW/drop-in-agent.md +260 -0
  204. package/docs/content/locales/zh-TW/durable-resume.md +65 -0
  205. package/docs/content/locales/zh-TW/embedding-sdk.md +597 -0
  206. package/docs/content/locales/zh-TW/evals.md +155 -0
  207. package/docs/content/locales/zh-TW/extensions.md +360 -0
  208. package/docs/content/locales/zh-TW/external-agents.md +619 -0
  209. package/docs/content/locales/zh-TW/faq.md +142 -0
  210. package/docs/content/locales/zh-TW/file-uploads.md +122 -0
  211. package/docs/content/locales/zh-TW/frames.md +153 -0
  212. package/docs/content/locales/zh-TW/getting-started.md +199 -0
  213. package/docs/content/locales/zh-TW/harness-agents.md +349 -0
  214. package/docs/content/locales/zh-TW/human-approval.md +86 -0
  215. package/docs/content/locales/zh-TW/internationalization.md +147 -0
  216. package/docs/content/locales/zh-TW/key-concepts.md +312 -0
  217. package/docs/content/locales/zh-TW/local-file-mode.md +433 -0
  218. package/docs/content/locales/zh-TW/mcp-apps.md +147 -0
  219. package/docs/content/locales/zh-TW/mcp-clients.md +330 -0
  220. package/docs/content/locales/zh-TW/mcp-protocol.md +279 -0
  221. package/docs/content/locales/zh-TW/messaging.md +461 -0
  222. package/docs/content/locales/zh-TW/migration-workbench.md +33 -0
  223. package/docs/content/locales/zh-TW/multi-app-workspace.md +312 -0
  224. package/docs/content/locales/zh-TW/multi-tenancy.md +52 -0
  225. package/docs/content/locales/zh-TW/native-chat-ui.md +321 -0
  226. package/docs/content/locales/zh-TW/notifications.md +231 -0
  227. package/docs/content/locales/zh-TW/observability.md +294 -0
  228. package/docs/content/locales/zh-TW/observational-memory.md +77 -0
  229. package/docs/content/locales/zh-TW/onboarding.md +216 -0
  230. package/docs/content/locales/zh-TW/plan-plugin.md +200 -0
  231. package/docs/content/locales/zh-TW/pr-visual-recap.md +384 -0
  232. package/docs/content/locales/zh-TW/processors.md +106 -0
  233. package/docs/content/locales/zh-TW/progress.md +199 -0
  234. package/docs/content/locales/zh-TW/pure-agent-apps.md +39 -0
  235. package/docs/content/locales/zh-TW/real-time-collaboration.md +680 -0
  236. package/docs/content/locales/zh-TW/recurring-jobs.md +142 -0
  237. package/docs/content/locales/zh-TW/routing.md +79 -0
  238. package/docs/content/locales/zh-TW/sandbox-adapters.md +227 -0
  239. package/docs/content/locales/zh-TW/security.md +330 -0
  240. package/docs/content/locales/zh-TW/server.md +265 -0
  241. package/docs/content/locales/zh-TW/sharing.md +219 -0
  242. package/docs/content/locales/zh-TW/skills-guide.md +281 -0
  243. package/docs/content/locales/zh-TW/template-analytics.md +259 -0
  244. package/docs/content/locales/zh-TW/template-assets.md +303 -0
  245. package/docs/content/locales/zh-TW/template-brain.md +324 -0
  246. package/docs/content/locales/zh-TW/template-calendar.md +194 -0
  247. package/docs/content/locales/zh-TW/template-chat.md +129 -0
  248. package/docs/content/locales/zh-TW/template-clips.md +368 -0
  249. package/docs/content/locales/zh-TW/template-content.md +402 -0
  250. package/docs/content/locales/zh-TW/template-design.md +173 -0
  251. package/docs/content/locales/zh-TW/template-dispatch.md +220 -0
  252. package/docs/content/locales/zh-TW/template-forms.md +178 -0
  253. package/docs/content/locales/zh-TW/template-mail.md +239 -0
  254. package/docs/content/locales/zh-TW/template-plan.md +814 -0
  255. package/docs/content/locales/zh-TW/template-slides.md +293 -0
  256. package/docs/content/locales/zh-TW/template-videos.md +222 -0
  257. package/docs/content/locales/zh-TW/tracking.md +236 -0
  258. package/docs/content/locales/zh-TW/using-your-agent.md +71 -0
  259. package/docs/content/locales/zh-TW/voice-input.md +81 -0
  260. package/docs/content/locales/zh-TW/what-is-agent-native.md +202 -0
  261. package/docs/content/locales/zh-TW/workspace-connections.md +321 -0
  262. package/docs/content/locales/zh-TW/workspace-management.md +175 -0
  263. package/docs/content/locales/zh-TW/workspace.md +323 -0
  264. package/docs/content/locales/zh-TW/writing-agent-instructions.md +173 -0
  265. package/package.json +2 -2
  266. package/src/templates/default/app/i18n/index.ts +2 -0
  267. package/src/templates/default/app/i18n/zh-TW.ts +466 -0
  268. package/src/templates/default/app/root.tsx +8 -0
@@ -0,0 +1,129 @@
1
+ ---
2
+ title: "聊天範本"
3
+ description: "一個最小的聊天優先代理本機應用程式:持久的聊天線程、actions、應用程式狀態、實時同步、驗證以及新增您自己的 UI 的空間。"
4
+ ---
5
+
6
+ # 聊天範本
7
+
8
+ 聊天是基本的代理本機應用程式起點。它為您提供了一個幹淨的 ChatGPT 風格的 shell,聊天位於中心,線程列表位於左側,標準應用程式導覽、驗證、實時同步、actions 和一個範例操作。當您想要一個無需提交域範本即可建置的真正的瀏覽器應用程式時,請從這裡開始。
9
+
10
+ 如果您想要最小的僅操作執行時且沒有瀏覽器 UI,請從 [Pure-Agent Apps](/docs/pure-agent-apps) 開始。如果您想要成品域產品形狀,請從 [Calendar](/docs/template-calendar)、[Mail](/docs/template-mail)、[Content](/docs/template-content)、[Forms](/docs/template-forms)、[Analytics](/docs/template-analytics) 或其他域範本開始。
11
+
12
+ ```an-wireframe
13
+ {
14
+ "surface": "desktop",
15
+ "html": "<div style='min-height:560px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:56px 40px'><div style='display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;width:min(700px,92%);min-height:430px'><div style='height:34px'></div><div style='text-align:center'><h1 style='margin:0'>我能幫什么?</h1><p class='wf-muted' style='margin:10px 0 0'>聊任何事情。新增 actions、元件、頁面、工作或你自己的後端。</p></div><div class='wf-card' style='width:100%;min-height:150px;display:flex;flex-direction:column;gap:18px'><span class='wf-muted'>給代理發訊息...</span><div style='flex:1'></div><div style='display:flex;align-items:center;gap:10px'><span data-icon='plus' aria-label='Attach'></span><div style='flex:1'></div><span class='wf-pill'>Sonnet 4.6 · Auto</span><span class='wf-pill'>Act</span><button class='primary'>↑</button></div></div><div style='height:34px'></div></div></div>"
16
+ }
17
+ ```
18
+
19
+ ## 裡面有什么 {#whats-in-it}
20
+
21
+ - 使用框架聊天介面和持久聊天線程在 `/` 上進行**全頁面聊天**。
22
+ - **應用側邊欄中的話題列表**,以便使用者可以建立、重新開啟、重命名、固定和存檔聊天。
23
+ - **代理聊天外掛**已預先設定,因此一旦設定了代理憑證,聊天就會與內置的應用程式代理循環進行對話。
24
+ - **Auth** 通過更好的驗證 - 登入、註冊、工作階段、組織。相同的流程在本機和正式環境中執行;在開發中,電子郵件驗證被跳過。
25
+ - **Actions 目錄**,包含一個範例 (`actions/hello.ts`) 以及標準 `view-screen` 和 `navigate` actions。
26
+ - **框架的核心表**,用於應用程式狀態、設定、工作階段、資源、聊天線程、執行歷史紀錄和其他執行時狀態。
27
+ - **實時同步** (`useDbSync`) 已連線,因此當代理寫入 SQL 時,UI 會自動刷新。
28
+ - **AGENTS.md** 包含用於新增 actions、路線、skills 和應用程式狀態的聊天優先指南。
29
+
30
+ ## 其中*不*有什么 {#not-in-it}
31
+
32
+ - 沒有域表或種子資料。
33
+ - 沒有儀表板、列表、圖表、表單或提供者整合。
34
+ - 除了範例存根之外,沒有特定於域的 actions。
35
+
36
+ 這就是重點。聊天是您自己的代理的一個薄而有用的預設外殼,而不是一個假裝通用的領域產品。
37
+
38
+ ```an-diagram title="Chat shell 中包含哪些內容" summary="框架標準執行時上的精簡聊天介面(操作、持久線程、實時同步和驗證),有空間新增您自己的 UI。"
39
+ {
40
+ "html": "<div class=\"diagram-chat\"><div class=\"diagram-col left\"><div class=\"diagram-node\">線程列表<br><small class=\"diagram-muted\">建立 · 重新開啟 · 固定 · 封存</small></div><div class=\"diagram-node\">整頁面聊天<br><small class=\"diagram-muted\">/ 上的框架聊天介面</small></div></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">&rarr;</div><div class=\"diagram-panel center\"><span class=\"diagram-pill accent\">Actions</span><small class=\"diagram-muted\">hello.ts · view-screen · navigate</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">&rarr;</div><div class=\"diagram-col right\"><div class=\"diagram-box\">核心 SQL 表<br><small class=\"diagram-muted\">threads · application_state · settings · sessions · runs</small></div><div class=\"diagram-pill ok\">實時同步 &#8635;</div><div class=\"diagram-box\">Better Auth<br><small class=\"diagram-muted\">登入 · 組織 · 工作階段</small></div></div></div>",
41
+ "css": ".diagram-chat{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.diagram-chat .diagram-col{display:flex;flex-direction:column;gap:10px}.diagram-chat .diagram-arrow{font-size:22px;line-height:1}.diagram-chat .center{display:flex;flex-direction:column;align-items:center;gap:4px}"
42
+ }
43
+ ```
44
+
45
+ ## 何時采摘 {#when-to-pick}
46
+
47
+ - **您想要一個使用者可以立即交談的基本應用程式**,然後使用 actions 和 UI 進行擴充功能。
48
+ - **您有一個無頭應用程式,需要聊天**作為第一個瀏覽器介面。
49
+ - **您希望將自己的代理後端插入熟悉的聊天 UI**,同時保持 Agent-Native 的 actions、狀態、驗證和部署形狀。
50
+ - \*\*您正在建置一個與域範本不匹配的自訂內部工具原型。
51
+
52
+ ## 腳手架 {#scaffolding}
53
+
54
+ ```bash
55
+ npx @agent-native/core@latest create my-chat-app --template chat
56
+ cd my-chat-app
57
+ pnpm install
58
+ pnpm dev
59
+ ```
60
+
61
+ 或者從沒有 UI 開始,然後新增聊天介面:
62
+
63
+ ```bash
64
+ npx @agent-native/core@latest create my-agent --headless
65
+ ```
66
+
67
+ 從那裡,將聊天範本的 `/` 路由和側邊欄線程列表複製到您的應用程式中,或者建置聊天應用程式並將 actions 從無頭代理行動到其 `actions/` 目錄中。關鍵不變數保持不變:actions 是聊天的共用介面,UI、HTTP、MCP、A2A 和 CLI。
68
+
69
+ ## 要檢查的第一個程式碼 {#first-code}
70
+
71
+ - `actions/hello.ts` 是代理可以調用的啟動行為。更換它或
72
+ 在其旁邊新增 actions。
73
+ - `app/routes/_index.tsx` 渲染全頁面聊天介面。調整
74
+ 建議、空狀態、作曲家或週圍布局。
75
+ - `AGENTS.md` 告訴內置代理如何在此應用程式內工作。
76
+
77
+ ```an-file-tree title="Chat 範本布局"
78
+ {
79
+ "entries": [
80
+ { "path": "actions/hello.ts", "note": "一個範例 action;替換它或在旁邊新增 actions" },
81
+ { "path": "actions/view-screen.ts", "note": "代理讀取的標準上下文 action" },
82
+ { "path": "actions/navigate.ts", "note": "標準導覽 action" },
83
+ { "path": "app/routes/_index.tsx", "note": "渲染整頁面 chat 介面;編輯建議、空狀態和 composer" },
84
+ { "path": "AGENTS.md", "note": "內置代理讀取的以 chat 為先的指南" }
85
+ ]
86
+ }
87
+ ```
88
+
89
+ 聊天頁面故意變薄:
90
+
91
+ ```tsx
92
+ // app/routes/_index.tsx
93
+ import { AgentChatSurface } from "@agent-native/core/client";
94
+
95
+ export default function ChatRoute() {
96
+ return (
97
+ <AgentChatSurface
98
+ mode="page"
99
+ suggestions={[
100
+ "What can you do?",
101
+ "Help me customize this chat app",
102
+ "Show me the actions and pages I can add",
103
+ ]}
104
+ />
105
+ );
106
+ }
107
+ ```
108
+
109
+ ## 使用您自己的代理後端 {#own-agent-backend}
110
+
111
+ 該範本預設使用內置的應用程式代理循環。要連線自訂後端,請交換代理聊天外掛後面的聊天執行時,而不是重寫 UI。聊天路由應該在共用聊天介面週圍保留一個薄渲染器;後端選取屬於伺服器外掛/執行時適配器。
112
+
113
+ 當您的模型編排已經存在於其他地方,但您仍然想要一個具有驗證、線程、actions、UI 狀態和可部署頁面的應用程式時,請使用此選項。
114
+
115
+ ## 首次編輯 {#first-edits}
116
+
117
+ 搭好腳手架後,詢問代理:
118
+
119
+ > 新增 `notes` 的資料模型。注釋有 ID、標題、內文和所有者。在 `/notes` 渲染筆記頁面,新增建立/列出 actions,並保持聊天能夠建立筆記。
120
+
121
+ 代理應新增 Drizzle 架構、actions、路線、導覽和說明。然後您可以使用 UI 或聊天中的注釋功能。
122
+
123
+ ## 下一步是什么
124
+
125
+ - [**Getting Started**](/docs) — 在無頭、聊天和域範本之間進行選取
126
+ - [**Agent Surfaces**](/docs/agent-surfaces) — 無頭、聊天、嵌入式和完整應用模式
127
+ - [**Actions**](/docs/actions) - 操作系統聊天和 UI 都調用
128
+ - [**Native 聊天介面**](/docs/native-chat-ui) — 聊天介面基元和執行時選項
129
+ - [**Pure-Agent Apps**](/docs/pure-agent-apps) - 僅限操作的應用程式,稍後可以發展為聊天
@@ -0,0 +1,368 @@
1
+ ---
2
+ title: "剪輯"
3
+ description: "非同步螢幕錄製、行事曆同步會議紀錄和一鍵通語音听寫 - 將 Clips 連結貼上到座席中,他們就可以閱讀文字紀錄、視覺效果和摘要。"
4
+ search: "Clips 瀏覽器記錄 開發人員記錄 控制台記錄 網路記錄 獲取 XHR Chrome 擴充功能 診斷紀錄器 桌面應用"
5
+ ---
6
+
7
+ # 剪輯
8
+
9
+ 一款捕獲一切的應用程式:螢幕錄製、行事曆中的會議紀錄以及按住 Fn 的語音听寫。代理會轉錄、標題、總結和索引所有內容 - 然後讓您詢問“找到我們討論推出計畫的剪輯”並搜尋您曾經制作的每個轉錄。
10
+
11
+ ```an-wireframe
12
+ {
13
+ "surface": "desktop",
14
+ "html": "<div style='display:flex;flex-direction:column;gap:14px;padding:18px;min-height:520px;box-sizing:border-box'><div style='display:flex;align-items:center;gap:10px'><h1 style='margin:0'>工程 Clips</h1><span class='wf-pill accent'>Library</span><span class='wf-pill'>Meetings</span><span class='wf-pill'>Dictation</span><div style='flex:1'></div><button>Import</button><button class='primary'>Record</button></div><div style='display:grid;grid-template-columns:repeat(3,1fr);gap:12px'><div class='wf-card' style='height:120px;display:flex;flex-direction:column;justify-content:end'><strong>OKR 評審</strong><small>35 min</small></div><div class='wf-card' style='height:120px;display:flex;flex-direction:column;justify-content:end'><strong>入門流程</strong><small>12 min</small></div><div class='wf-card' style='height:120px;display:flex;flex-direction:column;justify-content:end'><strong>Bug 複現</strong><small>4 min</small></div></div><div class='wf-card' style='display:flex;gap:10px;align-items:center'><span class='wf-pill accent'>代理可讀</span><span>轉寫 + 幀已可用於分享連結</span><div style='flex:1'></div><button>分享</button></div><div class='wf-card' style='flex:1;display:flex;flex-direction:column;gap:8px'><strong>轉錄搜尋</strong><div class='wf-box'>匹配章節 03:12 · 發布風險和負責人交接</div><div class='wf-box'>會議摘要和行動項</div></div></div>"
15
+ }
16
+ ```
17
+
18
+ 沿著將 Loom + Granola + Wispr Flow 整合到一個應用程式中的思路來思考 — 但代理在每個介面上都是一流的編輯器,並且錄音、會議和听寫都是您的,而不是 SaaS 供應商的。 Clips 還使共用錄音可供代理讀取:將普通的 Clips 共用連結貼上到代理中,它可以“听到”文本形式的文字紀錄,並“看到”帶有時間戳的螢幕幀作為圖片 - 無需原始影片。幀檢視適用於任何具有圖片功能的代理(ChatGPT、Claude 程式碼、光標、Codex);純文本網路聊天仍然可以獲得完整的文字紀錄,並且可以拍攝您上傳的幀。
19
+
20
+ ```an-diagram title="捕獲、轉錄、重用" summary="三種捕獲型別集中在一個庫中;代理進行抄寫、標題和總結,然後每個抄本都可以搜尋和共用。"
21
+ {
22
+ "html": "<div class=\"diagram-clips\"><div class=\"diagram-col\"><div class=\"diagram-node\">螢幕錄製</div><div class=\"diagram-node\">行事曆會議</div><div class=\"diagram-node\">按住 Fn 听寫</div></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">&rarr;</div><div class=\"diagram-box\" data-rough>一個庫<br><small class=\"diagram-muted\">recordings + transcripts (SQL)</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">&rarr;</div><div class=\"diagram-panel center\"><span class=\"diagram-pill accent\">Agent</span><small class=\"diagram-muted\">標題 · 摘要 · 章節</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">&rarr;</div><div class=\"diagram-col\"><div class=\"diagram-pill\">搜尋</div><div class=\"diagram-pill\">分享</div><div class=\"diagram-pill\">代理可讀 links</div></div></div>",
23
+ "css": ".diagram-clips{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.diagram-clips .diagram-col{display:flex;flex-direction:column;gap:8px}.diagram-clips .center{display:flex;flex-direction:column;align-items:center;gap:4px}.diagram-clips .diagram-arrow{font-size:22px;line-height:1}"
24
+ }
25
+ ```
26
+
27
+ ## 你可以用它做什么
28
+
29
+ - **使用內置錄音機、網路攝像頭覆蓋、音訊捕獲和暫停/修剪來錄製螢幕**。
30
+ - **從行事曆中捕獲會議。** 連線 Google Calendar,在側邊欄中檢視即將舉行的會議,並在任何一個會議上進行紀錄。您將在結束時獲得實時紀錄以及 AI 摘要、專案符號注釋和行動專案。
31
+ - **一鍵通听寫。** 按住機器上的 Fn,說話,清理後的文本就會放入您正在使用的任何應用程式中。每個听寫都儲存在可搜尋的歷史紀錄中,原始版本和人工智能清理的版本並排儲存。
32
+ - **為每個錄音獲取自動生成的標題、摘要和章節標記** - 客服人員會填寫這些內容並使其保持最新狀態。
33
+ - **搜尋每一份紀錄** — 螢幕錄影、會議和听寫都在一個庫中。 “找到我們討論推出計畫的剪輯。”
34
+ - **共用剪輯**以及每個剪輯的權限(公開、團隊、私人)。連結跟蹤和線索評論也有效。
35
+ - **在 Slack 中預覽公開剪輯**,並在播放後使用 Loom 風格的可播放展開
36
+ 工作區安裝您的 Clips Slack 應用。
37
+ - **使用 Chrome 擴充功能捕獲瀏覽器記錄。**瀏覽器紀錄可以
38
+ 附加經過編輯的控制台記錄和 fetch/XHR 元資料,這對
39
+ 產品錯誤和僅限瀏覽器的重現。
40
+ - **將剪輯連結貼上到代理中**,以便他們可以發現代理可讀的上下文:元資料、轉錄片段、推薦幀和帶時間戳的幀圖片,而無需接收原始影片檔案。
41
+ - **智能圖書館視圖。**按專案分組、按演講者過濾、根據內容自動標記。
42
+ - **通過聊天編輯文字紀錄。**“修複 1:42 處錯誤轉錄的單詞。” “為博客文章引用三個引號。”代理編輯文字紀錄並實時更新 UI。
43
+
44
+ ## 瀏覽器記錄和開發人員診斷
45
+
46
+ 當您需要錄製內容以及瀏覽器記錄時,請使用 Clips Chrome 擴充功能
47
+ 您正在偵錯的分頁。該擴充功能啟動活動標籤紀錄並且可以
48
+ 儲存編輯後的控制台記錄、JavaScript 異常和 fetch/XHR 網路
49
+ 元資料,例如方法、編輯的 URL、狀態、持續時間和失敗文本。它
50
+ 不儲存請求內文、回應內文或標頭。
51
+
52
+ 常規瀏覽器紀錄器頁面可以儲存紀錄器頁面的診斷資訊
53
+ 本身。 Chrome 擴充功能是活動分頁開發人員記錄的路徑,
54
+ 僅瀏覽器重現。在剪輯 UI 中,使用 Chrome 選項檢視瀏覽器記錄並
55
+ 桌面應用程式提供最無縫的日常捕捉路徑。
56
+
57
+ Agent-Native Clips Chrome 擴充功能列表為
58
+ `https://chromewebstore.google.com/detail/baoipacpchggcdigagnajakiidcgcffn`.
59
+ 如果您託管自己的 Clips 伺服器,請隱藏 Chrome 擴充功能選項,直到
60
+ 您的網上應用店列表已上線。設定`VITE_CLIPS_CHROME_EXTENSION_ENABLED=1`
61
+ 批準後在桌面應用程式下載提示旁邊顯示擴充功能。設定
62
+ `VITE_CLIPS_CHROME_EXTENSION_URL` 僅當您需要覆蓋預設值時
63
+ 列出 URL。
64
+
65
+ ## 客服人員可讀的剪輯
66
+
67
+ 將普通的公開 Clips 共用連結貼上到代理中。分享頁面有廣告
68
+ 一個緊湊的代理上下文 URL,並且該上下文指向轉錄本和框架
69
+ APIs,因此僅接受文本或靜態圖片的模型仍然可以理解內容
70
+ 發生在錄音中。
71
+
72
+ 任何可以將圖片 URL 提取到其視野中的代理 - ChatGPT、Claude 程式碼,
73
+ 光標、Codex 和 MCP 連線的代理 — 讀取腳本並檢視
74
+ 幀。一些純文本網路聊天會讀取文字紀錄,但不會提取幀圖片
75
+ 獨自一人;在那裡,上傳關鍵幀或以支持圖片的方式開啟剪輯
76
+ 代理。
77
+
78
+ | 端點 | 代理可以獲得什么 |
79
+ | ------------------------------------------------- | ----------------------------------------------------------------------- |
80
+ | `/api/agent-context.json?id=<recordingId>` | 剪輯元資料、轉錄狀態、章節、CTA、推薦幀以及指向轉錄/幀 API 的連結 |
81
+ | `/api/agent-transcript.json?id=<recordingId>` | 帶有 `startMs`、`endMs`、可讀時間戳、文本和可選來源標籤的時間戳轉錄片段 |
82
+ | `/api/agent-frame.jpg?id=<recordingId>&atMs=<ms>` | 以原始影片時間戳從影片中提取的 JPEG 幀 |
83
+
84
+ 端點遵循與共用頁面相同的公開/密碼/過期規則。
85
+ 受密碼保護的剪輯需要密碼一次;成功回應返回
86
+ 短暫的標記化連結,因此下游代理不需要明文
87
+ 密碼。
88
+
89
+ Slack 預覽使用相同的共用邊界。 `/api/slack/unfurl` Webhook
90
+ 僅返回可播放的 Slack `video` 塊,用於準備就緒的公開剪輯,而無需
91
+ 密碼、過期命中、存檔標記或垃圾標記。其他剪輯仍然得到
92
+ 正常共用頁面標題/縮略圖元資料並需要開啟剪輯。
93
+
94
+ ```an-api title="代理上下文入口點"
95
+ {
96
+ "method": "GET",
97
+ "path": "/api/agent-context.json",
98
+ "summary": "共用剪輯的緊湊、代理可讀的描述",
99
+ "description": "Returns clip metadata, transcript status, chapters, CTAs, recommended frames, and links to the transcript and frame APIs. Advertised by the public share page so a text- or image-only agent can understand a recording without ingesting raw video.",
100
+ "auth": "Same public / password / expiry rules as the share page",
101
+ "params": [
102
+ { "name": "id", "in": "query", "type": "string", "required": true, "description": "Recording id" }
103
+ ],
104
+ "responses": [
105
+ { "status": "200", "description": "Clip metadata plus transcript and frame API links" }
106
+ ]
107
+ }
108
+ ```
109
+
110
+ ```an-api title="帶時間戳的文字紀錄"
111
+ {
112
+ "method": "GET",
113
+ "path": "/api/agent-transcript.json",
114
+ "summary": "共用剪輯的帶時間戳的轉錄片段",
115
+ "params": [
116
+ { "name": "id", "in": "query", "type": "string", "required": true, "description": "Recording id" }
117
+ ],
118
+ "responses": [
119
+ { "status": "200", "description": "Segments with startMs, endMs, readable timestamps, text, and optional source labels" }
120
+ ]
121
+ }
122
+ ```
123
+
124
+ ```an-api title="具有時間戳的幀"
125
+ {
126
+ "method": "GET",
127
+ "path": "/api/agent-frame.jpg",
128
+ "summary": "在原始影片時間戳處從影片中提取的 JPEG 幀",
129
+ "params": [
130
+ { "name": "id", "in": "query", "type": "string", "required": true, "description": "Recording id" },
131
+ { "name": "atMs", "in": "query", "type": "integer", "required": true, "description": "Original-video timestamp in milliseconds" }
132
+ ],
133
+ "responses": [
134
+ { "status": "200", "description": "image/jpeg frame" }
135
+ ]
136
+ }
137
+ ```
138
+
139
+ ## 開始使用
140
+
141
+ 現場演示:[clips.agent-native.com](https://clips.agent-native.com)。
142
+
143
+ 1. **開啟庫。**瀏覽螢幕錄音、會議錄音、听寫,
144
+ 來自一個位置的資料夾和空間。
145
+ 2. **錄製或匯入。**捕獲螢幕錄製,從行事曆開始
146
+ 會議,或使用一鍵通听寫。
147
+ 3. **讓代理清理它。**生成標題、摘要、章節、操作
148
+ 專案,或清理後的轉錄文本。
149
+ 4. **搜尋和重複使用。**詢問您的剪輯、引言、行動專案或決定
150
+ 需要,然後以正確的可見性分享結果。
151
+
152
+ ### 有用的提示
153
+
154
+ - “總結此剪輯以進行產品更新。”
155
+ - “查找我們討論推出計畫的會議。”
156
+ - “從此紀錄中提取三個客戶報價。”
157
+ - “根據上次銷售拜訪建立行動專案。”
158
+ - “清理這個听寫並將其變成 Linear 票證。”
159
+
160
+ ## 對於開發者
161
+
162
+ 本檔案的其餘部分適用於任何派生 Clips 範本或擴充功能它的人。
163
+
164
+ ### 快速入門
165
+
166
+ ```bash
167
+ npx @agent-native/core@latest create my-clips --standalone --template clips
168
+ cd my-clips
169
+ pnpm install
170
+ pnpm dev
171
+ ```
172
+
173
+ Clips 是一個帶有本機紀錄器的較大範本(它附帶了用於本機捕獲的桌面伴侶)。上傳錄音之前需要執行三個設定步驟:
174
+
175
+ 1. **影片存儲(必需)。** 通過入門向導連線存儲後端。最簡單的路徑是Builder.io(測試期間免費,一鍵式)。對於自託管存儲,請設定 `S3_ENDPOINT`、`S3_BUCKET`、`S3_ACCESS_KEY_ID`、`S3_SECRET_ACCESS_KEY` 以及可選的 `S3_REGION` 和 `S3_PUBLIC_BASE_URL`。 Cloudflare R2 和 DigitalOcean Spaces 使用帶有 `R2_*` 前綴的相同環境變數。
176
+ 2. **Google Calendar(可選)。** 要同步即將召開的會議,請從“設定”連線 Google Calendar 帳戶。 dev中的OAuth 回呼URL是`http://localhost:8094/_agent-native/google/callback`。在 [Google Cloud Console](https://console.cloud.google.com/) 中設定 Google OAuth 用戶端,並啟用 Gmail 和 Google Calendar API。
177
+ 3. **螢幕捕獲權限。** 在 macOS 上,在系統設定 → 隱私和安全 → 螢幕錄製中向瀏覽器(或桌面配套應用程式)授予螢幕錄製權限。瀏覽器紀錄可以儲存經過編輯的控制台並從紀錄器頁面獲取/XHR 診斷資訊。 Chrome 擴充功能列表可用後,啟用 `VITE_CLIPS_CHROME_EXTENSION_ENABLED=1`,以便使用者可以選取活動分頁瀏覽器記錄的擴充功能或桌面應用程式以獲得最流暢的本機捕獲路徑。
178
+ 4. **Slack 預覽(可選)。** 使用 `links:read`、`links:write` 和 `links.embed:write` 建立 Slack 應用程式;訂閱`link_shared`;在 **App Unfurl Domains** 下新增您的 Clips 共用域;將請求URL設定為`https://your-clips.example.com/api/slack/unfurl`;並新增 OAuth 重新導向 URL `https://your-clips.example.com/api/slack/oauth/callback`。設定 `SLACK_CLIENT_ID`、`SLACK_CLIENT_SECRET` 和 `SLACK_SIGNING_SECRET`,然後從剪輯設定連線工作區。
179
+
180
+ ### 託管您自己的 Clips 伺服器
181
+
182
+ [clips.agent-native.com](https://clips.agent-native.com) 上託管的 Clips 應用
183
+ 只是 Clips 範本的部署副本。要執行您自己的伺服器,腳手架
184
+ 範本,像任何其他代理本機應用程式一樣部署它,然後指向桌面
185
+ 部署中的托盤應用程式。
186
+
187
+ 1. **建立應用程式。**
188
+
189
+ ```bash
190
+ npx @agent-native/core@latest 建立 my-clips --standalone --template 剪輯
191
+ cd my-clips
192
+ pnpm安裝
193
+ ```
194
+
195
+ 2. **設定正式環境狀態。**設定一個持久化的`DATABASE_URL`,正常
196
+ 來自 [Deployment](/docs/deployment) 的正式環境授權/秘密變數,以及
197
+ 影片存儲提供者。 Builder.io Connect是最簡單的存儲路徑;對於
198
+ 自託管存儲,使用 `S3_*` 或 `R2_*` 變數進行 S3 兼容
199
+ 桶。
200
+
201
+ 3. **部署 Web 應用程式。**對於普通節點部署:
202
+
203
+ ```bash
204
+ pnpm建置
205
+ 節點.output/server/index.mjs
206
+ ```
207
+
208
+ 您還可以使用 [Deployment](/docs/deployment) 中的任何 Nitro 目標,例如
209
+ 作為 Netlify、Vercel、Cloudflare Pages、AWS Lambda 或 Deno Deploy。確保
210
+ 例如,`BETTER_AUTH_URL` 是公開 Clips 來源
211
+ `https://clips.example.com`.
212
+
213
+ 4. **連線桌面托盤應用。**開啟 Clips Desktop 設定並進行設定
214
+ **將伺服器 URL** 剪輯到部署的公開基礎 URL,例如
215
+ `https://clips.example.com`。如果應用程式安裝在工作空間路徑下,
216
+ 包含該路徑,例如 `https://example.com/clips`。點選**連線**,
217
+ 然後使用該 Clips 伺服器上的帳戶登入。
218
+
219
+ 5. **發布後啟用 Chrome 擴充功能。**保留
220
+ `VITE_CLIPS_CHROME_EXTENSION_ENABLED` 在 Chrome 網上應用店上市之前未設定
221
+ 已獲批準。然後將其設定為 `1` 以顯示瀏覽器記錄選項旁邊
222
+ 桌面應用程式提示。預設列表URL是
223
+ `https://chromewebstore.google.com/detail/baoipacpchggcdigagnajakiidcgcffn`;
224
+ 僅當您的部署使用時才設定 `VITE_CLIPS_CHROME_EXTENSION_URL`
225
+ 不同的擴充功能名列表。
226
+
227
+ 6. **連線可選整合。** Google Calendar 為“會議”分頁提供支持,
228
+ `GEMINI_API_KEY` 或 Builder.io Connect 支持轉錄清理和標題,
229
+ `GROQ_API_KEY` 可以提供語音轉文本回退,而 Slack OAuth
230
+ “設定”中的連線可以展開可玩的 Slack。
231
+
232
+ 對於本機開發,請使用 `pnpm dev` 執行 Web 應用程式並指向桌面
233
+ `http://localhost:8094` 上的托盤應用程式。
234
+
235
+ ### 主要功能
236
+
237
+ **一個庫,三種捕獲型別。**螢幕錄製、行事曆會議和一鍵通听寫共用一個可搜尋庫。
238
+
239
+ **文字紀錄和 AI 管道。** 錄音獲取帶有時間戳的文字紀錄片段、生成的標題、摘要和章節標記。
240
+
241
+ **非破壞性編輯。**修剪、分割、填充詞刪除、靜音刪除和拼接保留在 `edits_json` 中,因此原始媒體保持完整。
242
+
243
+ **客服人員可讀的共用連結。**公開共用連結公開文字紀錄和框架 API,以便客服人員無需攝取原始影片即可理解錄音。
244
+
245
+ **Slack 可玩展開。**公開共用連結可以渲染 Slack `video` 塊
246
+ 指向現有的 `/embed/:id` 玩家。這是一個工作區 Slack 應用
247
+ 安裝,不是全域爬蟲行為:正常的 Open Graph/Twitter 元資料是
248
+ 未安裝應用程式時的後備。
249
+
250
+ ### 資料模型
251
+
252
+ 所有資料通過 Drizzle ORM 存儲在 SQL 中。架構:`templates/clips/server/db/schema.ts`。錄音、會議、听寫、行事曆帳戶和詞匯都帶有標準 `ownableColumns` 並具有匹配的框架共用表,因此它們屬於每使用者/每組織共用模型。
253
+
254
+ ```an-schema title="Clips 核心資料模型" summary="recordings is the source of truth for media; transcripts, meetings, and dictations compose with it rather than duplicating video. (Engagement and org tables omitted for clarity — see the full table below.)"
255
+ {
256
+ "entities": [
257
+ {
258
+ "id": "recordings",
259
+ "name": "recordings",
260
+ "note": "Core resource; source of truth for media. ownableColumns",
261
+ "fields": [
262
+ { "name": "id", "type": "text", "pk": true },
263
+ { "name": "title", "type": "text" },
264
+ { "name": "video_url", "type": "text", "note": "plus format / size / duration / thumbnails" },
265
+ { "name": "status", "type": "text" },
266
+ { "name": "edits_json", "type": "text", "note": "非破壞性編輯" },
267
+ { "name": "chapters_json", "type": "text", "nullable": true },
268
+ { "name": "password", "type": "text", "nullable": true, "note": "隱私:密碼/有效期" }
269
+ ]
270
+ },
271
+ {
272
+ "id": "recording_transcripts",
273
+ "name": "recording_transcripts",
274
+ "note": "拆分以便庫和轉錄視圖可以快速渲染",
275
+ "fields": [
276
+ { "name": "recording_id", "type": "text", "fk": "recordings.id" },
277
+ { "name": "segments_json", "type": "text", "note": "{ startMs, endMs, text }" },
278
+ { "name": "full_text", "type": "text" },
279
+ { "name": "language", "type": "text" },
280
+ { "name": "status", "type": "text" }
281
+ ]
282
+ },
283
+ {
284
+ "id": "clips_meetings",
285
+ "name": "clips_meetings",
286
+ "note": "Calendar-sourced or ad-hoc; owns a recording",
287
+ "fields": [
288
+ { "name": "id", "type": "text", "pk": true },
289
+ { "name": "recording_id", "type": "text", "fk": "recordings.id", "nullable": true },
290
+ { "name": "summary_md", "type": "text", "nullable": true },
291
+ { "name": "bullets_json", "type": "text", "nullable": true },
292
+ { "name": "action_items_json", "type": "text", "nullable": true }
293
+ ]
294
+ },
295
+ {
296
+ "id": "clips_dictations",
297
+ "name": "clips_dictations",
298
+ "note": "Push-to-talk dictation history; ownableColumns",
299
+ "fields": [
300
+ { "name": "id", "type": "text", "pk": true },
301
+ { "name": "full_text", "type": "text", "note": "原料" },
302
+ { "name": "cleaned_text", "type": "text", "nullable": true },
303
+ { "name": "source", "type": "text", "note": "fn-按住等" },
304
+ { "name": "target_app", "type": "text", "nullable": true }
305
+ ]
306
+ }
307
+ ],
308
+ "relations": [
309
+ { "from": "recordings", "to": "recording_transcripts", "kind": "1-1", "label": "transcript" },
310
+ { "from": "recordings", "to": "clips_meetings", "kind": "1-1", "label": "captured by" }
311
+ ]
312
+ }
313
+ ```
314
+
315
+ | 表 | 它包含什么 |
316
+ | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
317
+ | `recordings` | 核心資源 - 標題、影片 URL/格式/大小、持續時間、縮略圖、狀態、無損 `edits_json`、`chapters_json`、隱私(密碼、過期)和播放器切換 |
318
+ | `recording_transcripts` | 每次錄製的文字紀錄:`segments_json` (`{startMs,endMs,text}`)、`full_text`、語言和狀態 |
319
+ | `recording_tags` | 錄音上的自由格式標籤 |
320
+ | `recording_ctas` | 覆蓋在錄音上的號召性用語按鈕(標籤、網址、顏色、位置) |
321
+ | `recording_comments` | 帶有表情符號反應圖和已解決標志的線程化、帶時間戳的評論 |
322
+ | `recording_reactions` | 表情符號 reactions 固定到影片時間戳(允許匿名觀看者) |
323
+ | `recording_viewers` / `recording_events` | 觀看分析:每個觀看者的觀看時間和完成情況,以及精細事件(觀看開始、觀看進度、搜尋、暫停、CTA 點擊、反應) |
324
+ | `clips_meetings` | 行事曆來源或臨時會議 - 計畫/實際跨度、平台、使用者注釋、AI `summary_md`、`bullets_json`、`action_items_json` 及其 `recording_id` 的連結 |
325
+ | `meeting_participants` / `meeting_action_items` | 與會者和提取的會議行動專案 |
326
+ | `calendar_accounts` / `calendar_events` | 連線的行事曆帳戶(OAuth 代幣存在於 `app_secrets` 中,僅在此處引用)和同步的事件快照 |
327
+ | `clips_dictations` | 一鍵通听寫歷史紀錄 - 原始 `full_text`、可選 `cleaned_text`、來源(`fn-hold` 等)和目標應用 |
328
+ | `clips_vocabulary` | 個人詞匯更正(術語→首選替換)會影響未來的听寫 |
329
+ | `spaces` / `space_members` / `folders` | 庫組織 - 空間(主題範圍容器)、其成員和可嵌套資料夾 |
330
+ | `organization_settings` | 每個組織的 Clips sidecar:品牌顏色、徽標、預設可見性 |
331
+
332
+ 錄音和文字紀錄是故意分開的表,因此庫和文字紀錄視圖都可以快速渲染。會議由錄音組成,而不是複製媒體:會議擁有其捕獲的錄音,但 `recordings` 行仍然是影片和每段文字紀錄的真實來源。
333
+
334
+ UI 中的路由位於 `templates/clips/app/routes/` 下 - 經過驗證的應用程式位於 `_app.*` 下(庫、空間、資料夾、會議、听寫、見解、垃圾箱、設定),公開介面位於 `r.$recordingId`、`share.$shareId`、`embed.$shareId` 和 `invite.$token`。
335
+
336
+ ### 金鑰actions
337
+
338
+ 每個代理可調用操作都是 `templates/clips/actions/` 中的 TypeScript 檔案,自動安裝在 `POST /_agent-native/actions/:name` 上,並可作為 `pnpm action <name>` 從 CLI 執行。有~80個actions;有用的分組:
339
+
340
+ - **錄製生命週期** — `create-recording`、`finalize-recording`、`update-recording`、`set-thumbnail`、`archive-recording` / `restore-recording` / `trash-recording` / `delete-recording-permanent`、`move-recording`、`tag-recording`。
341
+ - **成績單和 AI** — `request-transcript`、`cleanup-transcript`、`regenerate-title` / `regenerate-summary` / `regenerate-chapters`、`set-chapters`、`generate-workflow`。 (`cleanup-transcript` 和 `finalize-meeting` 是伺服器端媒體管道調用;大多數其他 AI 功能委托給代理聊天。)
342
+ - **編輯** — 非破壞性 `trim-recording`、`split-recording`、`remove-filler-words`、`remove-silences` 以及 `stitch-recordings`、`undo-edit`、`clear-edits`。編輯累積在`edits_json`;用戶端通過 ffmpeg.wasm 連線/匯出。
343
+ - **會議** — `create-meeting`、`start-meeting-recording` / `stop-meeting-recording`、`finalize-meeting`、`update-meeting`、`get-meeting`、`list-meetings`,以及行事曆接線 `connect-calendar` / `disconnect-calendar` / `sync-calendars` / `list-calendar-accounts`。
344
+ - **听寫** - `create-dictation`、`cleanup-dictation`、`update-dictation`、`list-dictations` 和 `add-vocabulary-term` / `list-vocabulary` 用於個人詞匯偏差。
345
+ - **圖書館組織** — `create-space` / `rename-space` / `delete-space`、`add-space-member` / `remove-space-member`、`create-folder` / `rename-folder` / `delete-folder`、`add-recording-to-space`。
346
+ - **分享、評論和參與** — 框架共用 actions 加上 `create-cta` / `update-cta` / `delete-cta`、`add-comment` / `reply-to-comment` / `resolve-comment` / `react-to-comment` / `delete-comment`、`react-to-recording`、 `list-viewers`。
347
+ - **組織和成員** — `create-organization`、`set-organization-branding`、`invite-member` / `accept-invite` / `decline-invite` / `get-invite`、`remove-member`、`update-member-role`、`list-organization-state`、`list-notifications`。
348
+ - **搜尋、見解和匯出** - `search-recordings`(匹配標題、描述、轉錄文本和評論,帶時間戳)、`get-recording-insights`、`get-organization-insights`、`export-insights-csv`、`export-to-brain`。
349
+ - **上下文和導覽** — `view-screen`(目前剪輯、播放頭、選定的轉錄範圍)和 `navigate`;突變後的`refresh-list`。
350
+
351
+ ### 自訂它
352
+
353
+ Clips 是一個完整的、可克隆的範本——分叉它並要求代理擴充功能它。一些例子:
354
+
355
+ - “新增一個填充詞刪除按鈕,從紀錄中刪除 ums 和 uhs 並重新拼接影片。”
356
+ - “每當會議結束時,自動將我的站立筆記發布到 Slack #eng。” (先通過[Messaging](/docs/messaging)連線Slack。)
357
+ - “新增一個熱鍵,將最後一次听寫作為新票放入 Linear 中。”
358
+ - “按專案對庫進行分組 - 從每個轉錄本的第一個單詞中檢測專案。”
359
+ - “新增一個‘從此剪輯生成博客文章’按鈕,該按鈕可以從文字紀錄中起草一篇文章並將其另存為草稿。”
360
+ - “讓觀看者在共用剪輯上留下帶時間戳的 reactions。”
361
+
362
+ 代理根據需要編輯路由、元件、轉錄管道和架構。請參閱 [Templates](/docs/cloneable-saas) 了解完整克隆、自訂、部署流程,如果這是您的第一個代理本機範本,請參閱 [Getting Started](/docs/getting-started)。
363
+
364
+ ## 下一步是什么
365
+
366
+ - [**Templates**](/docs/cloneable-saas) — 克隆自有模型
367
+ - [**Context Awareness**](/docs/context-awareness) — 代理如何知道目前剪輯和播放頭
368
+ - [**Agent Teams**](/docs/agent-teams) — 將轉錄清理委托給專業子代理