@agent-native/core 0.130.2 → 0.131.3

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 (895) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +79 -0
  3. package/corpus/core/docs/content/agent-surfaces.mdx +4 -4
  4. package/corpus/core/docs/content/automations.mdx +61 -12
  5. package/corpus/core/docs/content/deployment.mdx +11 -4
  6. package/corpus/core/docs/content/extensions.mdx +39 -33
  7. package/corpus/core/docs/content/recurring-jobs.mdx +41 -19
  8. package/corpus/core/docs/content/template-dispatch-operations.mdx +19 -7
  9. package/corpus/core/package.json +3 -1
  10. package/corpus/core/src/a2a/types.ts +6 -0
  11. package/corpus/core/src/action.ts +68 -0
  12. package/corpus/core/src/agent/engine/builder-engine.ts +8 -4
  13. package/corpus/core/src/agent/production-agent.ts +175 -100
  14. package/corpus/core/src/agent/tool-search.ts +36 -0
  15. package/corpus/core/src/automations/service.ts +506 -0
  16. package/corpus/core/src/browser-context/index.ts +392 -0
  17. package/corpus/core/src/client/AgentPanel.tsx +2 -1
  18. package/corpus/core/src/client/FeedbackButton.tsx +37 -4
  19. package/corpus/core/src/client/MultiTabAssistantChat.tsx +21 -0
  20. package/corpus/core/src/client/agent-chat.ts +31 -3
  21. package/corpus/core/src/client/agent-page/AgentJobsTab.tsx +438 -310
  22. package/corpus/core/src/client/agent-page/AgentTabsPage.tsx +4 -4
  23. package/corpus/core/src/client/agent-page/use-jobs.ts +7 -0
  24. package/corpus/core/src/client/analytics-session.ts +13 -0
  25. package/corpus/core/src/client/extensions/ExtensionViewer.tsx +67 -0
  26. package/corpus/core/src/client/settings/AutomationsSection.tsx +27 -499
  27. package/corpus/core/src/client/settings/SettingsPanel.tsx +32 -11
  28. package/corpus/core/src/client/settings/index.ts +2 -0
  29. package/corpus/core/src/client/use-agent-chat.ts +35 -3
  30. package/corpus/core/src/client/use-chat-threads.ts +8 -25
  31. package/corpus/core/src/deploy/build.ts +2 -0
  32. package/corpus/core/src/deploy/workspace-deploy.ts +2 -0
  33. package/corpus/core/src/extensions/actions.ts +115 -3
  34. package/corpus/core/src/extensions/fetch-tool.ts +11 -0
  35. package/corpus/core/src/extensions/routes.ts +16 -1
  36. package/corpus/core/src/extensions/web-content.ts +96 -1
  37. package/corpus/core/src/integrations/computer-supervision.ts +33 -1
  38. package/corpus/core/src/integrations/index.ts +6 -0
  39. package/corpus/core/src/integrations/integration-durable-dispatch-config.ts +10 -0
  40. package/corpus/core/src/integrations/integration-durable-dispatch.ts +4 -0
  41. package/corpus/core/src/integrations/plugin.ts +94 -41
  42. package/corpus/core/src/integrations/remote-browser-actions.ts +621 -0
  43. package/corpus/core/src/jobs/actions/list-recurring-jobs.ts +5 -7
  44. package/corpus/core/src/jobs/actions/manage-recurring-job.ts +3 -7
  45. package/corpus/core/src/jobs/background-automation-runner.ts +437 -0
  46. package/corpus/core/src/jobs/frontmatter.ts +308 -0
  47. package/corpus/core/src/jobs/scheduler.ts +89 -598
  48. package/corpus/core/src/jobs/tools.ts +22 -3
  49. package/corpus/core/src/localization/default-messages.ts +45 -45
  50. package/corpus/core/src/mcp-client/index.ts +6 -0
  51. package/corpus/core/src/notifications/actions.ts +5 -0
  52. package/corpus/core/src/progress/actions.ts +5 -0
  53. package/corpus/core/src/provider-api/actions/github-repo-files.ts +11 -0
  54. package/corpus/core/src/provider-api/actions/provider-api.ts +13 -0
  55. package/corpus/core/src/server/action-discovery.ts +7 -0
  56. package/corpus/core/src/server/agent-capabilities.ts +43 -8
  57. package/corpus/core/src/server/agent-chat/action-filters-a2a.ts +63 -1
  58. package/corpus/core/src/server/agent-chat/browser-team-tools.ts +126 -3
  59. package/corpus/core/src/server/agent-chat/framework-prompts.ts +7 -11
  60. package/corpus/core/src/server/agent-chat/plugin-options.ts +3 -3
  61. package/corpus/core/src/server/agent-chat/script-entries.ts +52 -1
  62. package/corpus/core/src/server/agent-chat-plugin.ts +25 -5
  63. package/corpus/core/src/server/attribution.ts +22 -0
  64. package/corpus/core/src/server/auth.ts +20 -6
  65. package/corpus/core/src/server/better-auth-instance.ts +10 -2
  66. package/corpus/core/src/server/core-routes-plugin.ts +10 -1
  67. package/corpus/core/src/server/csrf.ts +25 -0
  68. package/corpus/core/src/server/google-oauth.ts +21 -1
  69. package/corpus/core/src/server/onboarding-html.ts +18 -0
  70. package/corpus/core/src/server/prompts/framework-core-compact.ts +3 -3
  71. package/corpus/core/src/server/prompts/framework-core.ts +3 -3
  72. package/corpus/core/src/server/prompts/shared-rules.ts +3 -3
  73. package/corpus/core/src/settings/index.ts +1 -0
  74. package/corpus/core/src/shared/analytics-anonymous-id.ts +35 -0
  75. package/corpus/core/src/templates/default/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  76. package/corpus/core/src/templates/default/app/i18n/ar-SA.ts +26 -0
  77. package/corpus/core/src/templates/default/app/i18n/de-DE.ts +28 -0
  78. package/corpus/core/src/templates/default/app/i18n/en-US.ts +27 -0
  79. package/corpus/core/src/templates/default/app/i18n/es-ES.ts +28 -0
  80. package/corpus/core/src/templates/default/app/i18n/fr-FR.ts +28 -0
  81. package/corpus/core/src/templates/default/app/i18n/hi-IN.ts +25 -0
  82. package/corpus/core/src/templates/default/app/i18n/ja-JP.ts +27 -0
  83. package/corpus/core/src/templates/default/app/i18n/ko-KR.ts +27 -0
  84. package/corpus/core/src/templates/default/app/i18n/pt-BR.ts +27 -0
  85. package/corpus/core/src/templates/default/app/i18n/zh-CN.ts +24 -0
  86. package/corpus/core/src/templates/default/app/i18n/zh-TW.ts +24 -0
  87. package/corpus/core/src/templates/headless/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  88. package/corpus/core/src/templates/workspace-core/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  89. package/corpus/core/src/templates/workspace-core/.agents/skills/agent-page/SKILL.md +10 -7
  90. package/corpus/core/src/templates/workspace-core/.agents/skills/automations/SKILL.md +53 -8
  91. package/corpus/core/src/templates/workspace-core/.agents/skills/browser-sessions/SKILL.md +131 -0
  92. package/corpus/core/src/templates/workspace-core/.agents/skills/extension-points/SKILL.md +13 -4
  93. package/corpus/core/src/templates/workspace-core/.agents/skills/extensions/SKILL.md +23 -15
  94. package/corpus/core/src/templates/workspace-core/.agents/skills/recurring-jobs/SKILL.md +33 -18
  95. package/corpus/core/src/tracking/providers.ts +1 -0
  96. package/corpus/core/src/tracking/registry.ts +2 -1
  97. package/corpus/core/src/tracking/types.ts +1 -0
  98. package/corpus/core/src/triggers/actions/list-automations.ts +43 -44
  99. package/corpus/core/src/triggers/actions/manage-automation.ts +17 -48
  100. package/corpus/core/src/triggers/actions.ts +218 -127
  101. package/corpus/core/src/triggers/dispatcher.ts +181 -367
  102. package/corpus/core/src/triggers/routes.ts +84 -27
  103. package/corpus/core/src/triggers/types.ts +9 -23
  104. package/corpus/templates/analytics/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  105. package/corpus/templates/analytics/AGENTS.md +5 -0
  106. package/corpus/templates/analytics/actions/hubspot-deals.ts +1 -0
  107. package/corpus/templates/analytics/actions/hubspot-records.ts +1 -0
  108. package/corpus/templates/analytics/actions/install-dashboard-template.ts +13 -4
  109. package/corpus/templates/analytics/actions/rename-dashboard.ts +8 -3
  110. package/corpus/templates/analytics/actions/restore-dashboard-revision.ts +8 -3
  111. package/corpus/templates/analytics/actions/update-dashboard.ts +22 -5
  112. package/corpus/templates/analytics/app/components/dashboard/DashboardPanelSkeleton.tsx +7 -1
  113. package/corpus/templates/analytics/app/components/layout/CommandPalette.tsx +1 -82
  114. package/corpus/templates/analytics/app/components/layout/NewDashboardDialog.tsx +4 -4
  115. package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +23 -13
  116. package/corpus/templates/analytics/app/global.css +21 -0
  117. package/corpus/templates/analytics/app/i18n-data.ts +165 -101
  118. package/corpus/templates/analytics/app/lib/custom-block-promotion.ts +62 -0
  119. package/corpus/templates/analytics/app/pages/adhoc/explorer-dashboard/index.tsx +17 -2
  120. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/PanelEditorDialog.tsx +3 -1
  121. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/SqlChartCard.tsx +77 -12
  122. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/dashboard-save-queue.ts +34 -0
  123. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/index.tsx +42 -26
  124. package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/types.ts +15 -0
  125. package/corpus/templates/analytics/app/pages/analyses/AnalysisDetail.tsx +1 -1
  126. package/corpus/templates/analytics/changelog/2026-07-29-chat-history-now-closes-smoothly-and-stays-ready-when-you-re.md +6 -0
  127. package/corpus/templates/analytics/changelog/2026-07-29-chat-history-stays-visible-when-you-return-to-the-dashboard.md +6 -0
  128. package/corpus/templates/analytics/changelog/2026-07-29-custom-dashboard-blocks-now-identify-one-off-agent-patches-a.md +6 -0
  129. package/corpus/templates/analytics/changelog/2026-07-29-dashboard-chart-deletions-now-save-in-order-so-removed-rows-.md +6 -0
  130. package/corpus/templates/analytics/changelog/2026-07-29-dashboard-chart-loaders-are-easier-to-see-and-animate-more-s.md +6 -0
  131. package/corpus/templates/analytics/changelog/2026-07-29-plan-mode-can-now-query-connected-analytics-sources-while-ke.md +6 -0
  132. package/corpus/templates/analytics/changelog/2026-07-29-plan-mode-can-use-clips-as-read-only-prompt-context.md +6 -0
  133. package/corpus/templates/analytics/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  134. package/corpus/templates/analytics/changelog/2026-07-29-signup-entry-pages-now-show-the-first-page-viewed-before-eac.md +6 -0
  135. package/corpus/templates/analytics/seeds/dashboards/agent-native-templates-first-party.json +26 -1
  136. package/corpus/templates/analytics/server/lib/agent-chat-plan-mode.ts +0 -33
  137. package/corpus/templates/analytics/server/lib/analytics-connector-catalog.ts +2 -0
  138. package/corpus/templates/analytics/server/lib/canonical-first-party-dashboard-repair.ts +13 -3
  139. package/corpus/templates/analytics/server/lib/dashboard-catalog.ts +9 -1
  140. package/corpus/templates/analytics/server/lib/first-party-analytics.ts +44 -1
  141. package/corpus/templates/analytics/server/lib/first-party-metric-catalog.ts +96 -16
  142. package/corpus/templates/analytics/server/plugins/agent-chat.ts +18 -27
  143. package/corpus/templates/analytics/server/plugins/core-routes.ts +1 -0
  144. package/corpus/templates/assets/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  145. package/corpus/templates/assets/app/components/layout/Sidebar.tsx +4 -8
  146. package/corpus/templates/assets/changelog/2026-07-29-chat-history-now-closes-smoothly-and-stays-ready-when-you-re.md +6 -0
  147. package/corpus/templates/assets/changelog/2026-07-29-chat-history-stays-visible-when-you-return-to-the-workspace.md +6 -0
  148. package/corpus/templates/assets/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  149. package/corpus/templates/brain/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  150. package/corpus/templates/brain/app/components/layout/Sidebar.tsx +3 -7
  151. package/corpus/templates/brain/app/root.tsx +0 -3
  152. package/corpus/templates/brain/changelog/2026-07-29-chat-history-now-closes-smoothly-and-stays-ready-when-you-re.md +6 -0
  153. package/corpus/templates/brain/changelog/2026-07-29-chat-history-stays-visible-when-you-return-to-ask-brain.md +6 -0
  154. package/corpus/templates/brain/changelog/2026-07-29-extensions-are-no-longer-shown-as-a-default-command-menu-des.md +6 -0
  155. package/corpus/templates/brain/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  156. package/corpus/templates/calendar/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  157. package/corpus/templates/calendar/.agents/skills/event-management/SKILL.md +25 -5
  158. package/corpus/templates/calendar/AGENTS.md +5 -0
  159. package/corpus/templates/calendar/actions/create-event.ts +43 -13
  160. package/corpus/templates/calendar/actions/event-action-helpers.ts +131 -1
  161. package/corpus/templates/calendar/actions/get-event.ts +1 -0
  162. package/corpus/templates/calendar/actions/manage-event-draft.ts +65 -2
  163. package/corpus/templates/calendar/app/components/calendar/CreateEventDialog.tsx +438 -258
  164. package/corpus/templates/calendar/app/components/calendar/DayView.tsx +19 -3
  165. package/corpus/templates/calendar/app/components/calendar/EventDetailPanel.tsx +7 -3
  166. package/corpus/templates/calendar/app/components/calendar/EventDetailPopover.tsx +14 -19
  167. package/corpus/templates/calendar/app/components/calendar/MonthView.tsx +24 -0
  168. package/corpus/templates/calendar/app/components/calendar/WeekView.tsx +15 -2
  169. package/corpus/templates/calendar/app/components/layout/Sidebar.tsx +1 -5
  170. package/corpus/templates/calendar/app/hooks/use-events.ts +51 -5
  171. package/corpus/templates/calendar/app/i18n-data.ts +50 -0
  172. package/corpus/templates/calendar/app/lib/all-day-layout.ts +9 -2
  173. package/corpus/templates/calendar/app/lib/event-form-initialization.ts +4 -8
  174. package/corpus/templates/calendar/app/lib/event-form-utils.ts +43 -8
  175. package/corpus/templates/calendar/app/lib/location-suggestions.ts +36 -0
  176. package/corpus/templates/calendar/app/lib/out-of-office.ts +87 -1
  177. package/corpus/templates/calendar/app/pages/CalendarView.tsx +82 -20
  178. package/corpus/templates/calendar/changelog/2026-07-26-out-of-office-events-now-default-to-full-days-with-a-ready.md +6 -0
  179. package/corpus/templates/calendar/changelog/2026-07-29-recent-calendar-locations-now-appear-as-address-suggestions-.md +6 -0
  180. package/corpus/templates/calendar/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  181. package/corpus/templates/calendar/changelog/2026-07-29-unnamed-events-now-use-a-title-placeholder.md +6 -0
  182. package/corpus/templates/calendar/server/lib/find-time.ts +29 -5
  183. package/corpus/templates/calendar/server/lib/google-calendar.ts +2 -0
  184. package/corpus/templates/calendar/server/lib/ical-fetcher.ts +1 -0
  185. package/corpus/templates/calendar/shared/api.ts +4 -0
  186. package/corpus/templates/chat/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  187. package/corpus/templates/chat/app/components/layout/Sidebar.tsx +1 -5
  188. package/corpus/templates/chat/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  189. package/corpus/templates/clips/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  190. package/corpus/templates/clips/app/components/library/library-layout.tsx +1 -5
  191. package/corpus/templates/clips/changelog/2026-07-29-fixed-system-audio-recordings-picking-up-your-microphone-in-.md +6 -0
  192. package/corpus/templates/clips/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  193. package/corpus/templates/clips/changelog/2026-07-29-the-desktop-camera-preview-now-closes-after-a-recording-fin.md +6 -0
  194. package/corpus/templates/clips/desktop/src/app.tsx +14 -15
  195. package/corpus/templates/clips/desktop/src/lib/bubble-session.ts +11 -0
  196. package/corpus/templates/clips/desktop/src/lib/recorder.ts +9 -4
  197. package/corpus/templates/clips/desktop/src/lib/transcription-capture.ts +11 -0
  198. package/corpus/templates/clips/server/jobs/transactional-emails.ts +47 -23
  199. package/corpus/templates/clips/server/lib/transactional-email-store.ts +16 -6
  200. package/corpus/templates/content/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  201. package/corpus/templates/content/.agents/skills/content-product-development/SKILL.md +103 -0
  202. package/corpus/templates/content/.agents/skills/content-product-development/references/verification.md +57 -0
  203. package/corpus/templates/content/AGENTS.md +2 -0
  204. package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +1 -6
  205. package/corpus/templates/content/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  206. package/corpus/templates/content/docs/product/README.md +115 -0
  207. package/corpus/templates/content/docs/product/architecture.md +98 -0
  208. package/corpus/templates/content/docs/product/capabilities/content.access.page-database.md +76 -0
  209. package/corpus/templates/content/docs/product/capabilities/content.access.row-private.md +75 -0
  210. package/corpus/templates/content/docs/product/capabilities/content.access.safe-aggregate.md +75 -0
  211. package/corpus/templates/content/docs/product/capabilities/content.access.visibility-closure.md +79 -0
  212. package/corpus/templates/content/docs/product/capabilities/content.action.button.md +67 -0
  213. package/corpus/templates/content/docs/product/capabilities/content.agent.action-parity.md +73 -0
  214. package/corpus/templates/content/docs/product/capabilities/content.agent.audience-safe.md +91 -0
  215. package/corpus/templates/content/docs/product/capabilities/content.agent.automation.md +67 -0
  216. package/corpus/templates/content/docs/product/capabilities/content.agent.expression-authoring.md +71 -0
  217. package/corpus/templates/content/docs/product/capabilities/content.agent.presence.md +103 -0
  218. package/corpus/templates/content/docs/product/capabilities/content.agent.resource-consent.md +90 -0
  219. package/corpus/templates/content/docs/product/capabilities/content.agent.skill-catalog.md +67 -0
  220. package/corpus/templates/content/docs/product/capabilities/content.api.cms.md +70 -0
  221. package/corpus/templates/content/docs/product/capabilities/content.author.code.md +71 -0
  222. package/corpus/templates/content/docs/product/capabilities/content.author.document-editor.md +71 -0
  223. package/corpus/templates/content/docs/product/capabilities/content.author.footnotes.md +71 -0
  224. package/corpus/templates/content/docs/product/capabilities/content.author.math.md +71 -0
  225. package/corpus/templates/content/docs/product/capabilities/content.author.media.md +71 -0
  226. package/corpus/templates/content/docs/product/capabilities/content.author.mermaid.md +71 -0
  227. package/corpus/templates/content/docs/product/capabilities/content.automation.scheduled.md +67 -0
  228. package/corpus/templates/content/docs/product/capabilities/content.capture.enrich.md +75 -0
  229. package/corpus/templates/content/docs/product/capabilities/content.command.fabric.md +67 -0
  230. package/corpus/templates/content/docs/product/capabilities/content.comment.page-owned.md +75 -0
  231. package/corpus/templates/content/docs/product/capabilities/content.diff.ai-assist.md +75 -0
  232. package/corpus/templates/content/docs/product/capabilities/content.diff.filtered-review.md +79 -0
  233. package/corpus/templates/content/docs/product/capabilities/content.diff.in-place.md +80 -0
  234. package/corpus/templates/content/docs/product/capabilities/content.discussion.page.md +80 -0
  235. package/corpus/templates/content/docs/product/capabilities/content.embed.host-grant.md +70 -0
  236. package/corpus/templates/content/docs/product/capabilities/content.embed.mcp-app.md +69 -0
  237. package/corpus/templates/content/docs/product/capabilities/content.embed.surface.md +74 -0
  238. package/corpus/templates/content/docs/product/capabilities/content.event.committed.md +85 -0
  239. package/corpus/templates/content/docs/product/capabilities/content.expression.cached-result.md +71 -0
  240. package/corpus/templates/content/docs/product/capabilities/content.expression.catalog.md +71 -0
  241. package/corpus/templates/content/docs/product/capabilities/content.expression.language.md +76 -0
  242. package/corpus/templates/content/docs/product/capabilities/content.feedback.signal.md +67 -0
  243. package/corpus/templates/content/docs/product/capabilities/content.form.shared-engine.md +72 -0
  244. package/corpus/templates/content/docs/product/capabilities/content.history.queryable.md +79 -0
  245. package/corpus/templates/content/docs/product/capabilities/content.home.global.md +80 -0
  246. package/corpus/templates/content/docs/product/capabilities/content.job.durable.md +76 -0
  247. package/corpus/templates/content/docs/product/capabilities/content.knowledge.graph.md +67 -0
  248. package/corpus/templates/content/docs/product/capabilities/content.knowledge.links.md +67 -0
  249. package/corpus/templates/content/docs/product/capabilities/content.knowledge.search.md +67 -0
  250. package/corpus/templates/content/docs/product/capabilities/content.layout.responsive.md +80 -0
  251. package/corpus/templates/content/docs/product/capabilities/content.navigation.sidebar.md +86 -0
  252. package/corpus/templates/content/docs/product/capabilities/content.notification.source.md +71 -0
  253. package/corpus/templates/content/docs/product/capabilities/content.object.block.md +76 -0
  254. package/corpus/templates/content/docs/product/capabilities/content.object.blocks-field.md +79 -0
  255. package/corpus/templates/content/docs/product/capabilities/content.object.database.md +92 -0
  256. package/corpus/templates/content/docs/product/capabilities/content.object.multi-membership.md +75 -0
  257. package/corpus/templates/content/docs/product/capabilities/content.object.page.md +76 -0
  258. package/corpus/templates/content/docs/product/capabilities/content.object.reference.md +75 -0
  259. package/corpus/templates/content/docs/product/capabilities/content.object.transclusion.md +75 -0
  260. package/corpus/templates/content/docs/product/capabilities/content.organization.teams.md +71 -0
  261. package/corpus/templates/content/docs/product/capabilities/content.portability.pdf-export.md +78 -0
  262. package/corpus/templates/content/docs/product/capabilities/content.portability.roundtrip.md +154 -0
  263. package/corpus/templates/content/docs/product/capabilities/content.portability.source-representation.md +70 -0
  264. package/corpus/templates/content/docs/product/capabilities/content.portability.vault-export.md +80 -0
  265. package/corpus/templates/content/docs/product/capabilities/content.presentation.mode.md +76 -0
  266. package/corpus/templates/content/docs/product/capabilities/content.preset.catalog.md +71 -0
  267. package/corpus/templates/content/docs/product/capabilities/content.property.actor.md +75 -0
  268. package/corpus/templates/content/docs/product/capabilities/content.property.catalog.md +76 -0
  269. package/corpus/templates/content/docs/product/capabilities/content.property.constraints.md +75 -0
  270. package/corpus/templates/content/docs/product/capabilities/content.property.guarded-change.md +76 -0
  271. package/corpus/templates/content/docs/product/capabilities/content.property.location.md +71 -0
  272. package/corpus/templates/content/docs/product/capabilities/content.property.typed.md +71 -0
  273. package/corpus/templates/content/docs/product/capabilities/content.publish.public.md +75 -0
  274. package/corpus/templates/content/docs/product/capabilities/content.publish.reading.md +74 -0
  275. package/corpus/templates/content/docs/product/capabilities/content.query.object.md +114 -0
  276. package/corpus/templates/content/docs/product/capabilities/content.reader.documents.md +69 -0
  277. package/corpus/templates/content/docs/product/capabilities/content.reader.surface.md +75 -0
  278. package/corpus/templates/content/docs/product/capabilities/content.relationship.edge.md +183 -0
  279. package/corpus/templates/content/docs/product/capabilities/content.renderer.artifact-block.md +71 -0
  280. package/corpus/templates/content/docs/product/capabilities/content.renderer.custom-block.md +81 -0
  281. package/corpus/templates/content/docs/product/capabilities/content.renderer.graph.md +71 -0
  282. package/corpus/templates/content/docs/product/capabilities/content.renderer.typed.md +92 -0
  283. package/corpus/templates/content/docs/product/capabilities/content.research.annotation.md +75 -0
  284. package/corpus/templates/content/docs/product/capabilities/content.research.citation.md +70 -0
  285. package/corpus/templates/content/docs/product/capabilities/content.review.code.md +67 -0
  286. package/corpus/templates/content/docs/product/capabilities/content.revision.suggestions.md +76 -0
  287. package/corpus/templates/content/docs/product/capabilities/content.rule.deterministic.md +79 -0
  288. package/corpus/templates/content/docs/product/capabilities/content.schedule.constraints.md +81 -0
  289. package/corpus/templates/content/docs/product/capabilities/content.security.private-vault.md +71 -0
  290. package/corpus/templates/content/docs/product/capabilities/content.share.views.md +140 -0
  291. package/corpus/templates/content/docs/product/capabilities/content.source.adapters.md +154 -0
  292. package/corpus/templates/content/docs/product/capabilities/content.source.builder-codec.md +70 -0
  293. package/corpus/templates/content/docs/product/capabilities/content.source.catalog.md +149 -0
  294. package/corpus/templates/content/docs/product/capabilities/content.source.file-folder.md +71 -0
  295. package/corpus/templates/content/docs/product/capabilities/content.source.local-bridge.md +156 -0
  296. package/corpus/templates/content/docs/product/capabilities/content.source.local-project.md +70 -0
  297. package/corpus/templates/content/docs/product/capabilities/content.source.page-link.md +70 -0
  298. package/corpus/templates/content/docs/product/capabilities/content.source.row-union.md +69 -0
  299. package/corpus/templates/content/docs/product/capabilities/content.source.spaces-files.md +75 -0
  300. package/corpus/templates/content/docs/product/capabilities/content.source.sync-policy.md +161 -0
  301. package/corpus/templates/content/docs/product/capabilities/content.system.dependencies.md +80 -0
  302. package/corpus/templates/content/docs/product/capabilities/content.system.my-tasks.md +75 -0
  303. package/corpus/templates/content/docs/product/capabilities/content.system.project-status.md +77 -0
  304. package/corpus/templates/content/docs/product/capabilities/content.system.research-workspace.md +80 -0
  305. package/corpus/templates/content/docs/product/capabilities/content.system.task-project.md +76 -0
  306. package/corpus/templates/content/docs/product/capabilities/content.template.governance.md +76 -0
  307. package/corpus/templates/content/docs/product/capabilities/content.template.graph.md +76 -0
  308. package/corpus/templates/content/docs/product/capabilities/content.template.item-body.md +71 -0
  309. package/corpus/templates/content/docs/product/capabilities/content.template.update.md +71 -0
  310. package/corpus/templates/content/docs/product/capabilities/content.time.types.md +85 -0
  311. package/corpus/templates/content/docs/product/capabilities/content.version.branching.md +151 -0
  312. package/corpus/templates/content/docs/product/capabilities/content.version.field-history.md +103 -0
  313. package/corpus/templates/content/docs/product/capabilities/content.view.canvas.md +94 -0
  314. package/corpus/templates/content/docs/product/capabilities/content.view.chart.md +91 -0
  315. package/corpus/templates/content/docs/product/capabilities/content.view.dynamic-create.md +137 -0
  316. package/corpus/templates/content/docs/product/capabilities/content.view.fast-capture.md +82 -0
  317. package/corpus/templates/content/docs/product/capabilities/content.view.graph.md +95 -0
  318. package/corpus/templates/content/docs/product/capabilities/content.view.grouping-aggregation.md +83 -0
  319. package/corpus/templates/content/docs/product/capabilities/content.view.map.md +77 -0
  320. package/corpus/templates/content/docs/product/capabilities/content.view.personal-state.md +99 -0
  321. package/corpus/templates/content/docs/product/capabilities/content.view.pivot.md +76 -0
  322. package/corpus/templates/content/docs/product/capabilities/content.view.query.md +106 -0
  323. package/corpus/templates/content/docs/product/capabilities/content.view.renderer-conformance.md +77 -0
  324. package/corpus/templates/content/docs/product/capabilities/content.view.scale.md +77 -0
  325. package/corpus/templates/content/docs/product/capabilities/content.view.source-query.md +159 -0
  326. package/corpus/templates/content/docs/product/capabilities/content.view.timeline.md +86 -0
  327. package/corpus/templates/content/docs/product/capabilities/content.view.tree.md +77 -0
  328. package/corpus/templates/content/docs/product/capabilities/content.workspace.multi-scope.md +80 -0
  329. package/corpus/templates/content/docs/product/capabilities/content.workspace.session-restore.md +76 -0
  330. package/corpus/templates/content/docs/product/capabilities/content.workspace.view-instance.md +76 -0
  331. package/corpus/templates/content/docs/product/capabilities/content.workspace.working-set.md +77 -0
  332. package/corpus/templates/content/docs/product/chapters/content.chapter.capture-research.md +20 -0
  333. package/corpus/templates/content/docs/product/chapters/content.chapter.connected-sources.md +20 -0
  334. package/corpus/templates/content/docs/product/chapters/content.chapter.consensus.md +19 -0
  335. package/corpus/templates/content/docs/product/chapters/content.chapter.durable-home.md +21 -0
  336. package/corpus/templates/content/docs/product/chapters/content.chapter.publishing-portability.md +21 -0
  337. package/corpus/templates/content/docs/product/chapters/content.chapter.working-systems.md +27 -0
  338. package/corpus/templates/content/docs/product/encyclopedia.md +559 -0
  339. package/corpus/templates/content/docs/product/features/content.feature.bring-your-local-work.md +39 -0
  340. package/corpus/templates/content/docs/product/features/content.feature.build-living-dashboards.md +34 -0
  341. package/corpus/templates/content/docs/product/features/content.feature.build-new-surfaces.md +33 -0
  342. package/corpus/templates/content/docs/product/features/content.feature.capture-into-action.md +34 -0
  343. package/corpus/templates/content/docs/product/features/content.feature.cite-what-you-found.md +34 -0
  344. package/corpus/templates/content/docs/product/features/content.feature.collaborate-in-context.md +59 -0
  345. package/corpus/templates/content/docs/product/features/content.feature.collect-structured-input.md +38 -0
  346. package/corpus/templates/content/docs/product/features/content.feature.connect-your-sources.md +38 -0
  347. package/corpus/templates/content/docs/product/features/content.feature.data-that-keeps-itself-right.md +45 -0
  348. package/corpus/templates/content/docs/product/features/content.feature.durable-foundations.md +48 -0
  349. package/corpus/templates/content/docs/product/features/content.feature.evolve-systems-safely.md +38 -0
  350. package/corpus/templates/content/docs/product/features/content.feature.explore-alternatives-safely.md +39 -0
  351. package/corpus/templates/content/docs/product/features/content.feature.find-your-place-again.md +40 -0
  352. package/corpus/templates/content/docs/product/features/content.feature.keep-your-private-vault-private.md +39 -0
  353. package/corpus/templates/content/docs/product/features/content.feature.living-references.md +38 -0
  354. package/corpus/templates/content/docs/product/features/content.feature.make-the-workspace-yours.md +40 -0
  355. package/corpus/templates/content/docs/product/features/content.feature.move-without-starting-over.md +38 -0
  356. package/corpus/templates/content/docs/product/features/content.feature.plan-work-across-time.md +39 -0
  357. package/corpus/templates/content/docs/product/features/content.feature.publish-with-confidence.md +43 -0
  358. package/corpus/templates/content/docs/product/features/content.feature.put-your-organizations-know-how-to-work.md +38 -0
  359. package/corpus/templates/content/docs/product/features/content.feature.read-and-annotate-anything.md +38 -0
  360. package/corpus/templates/content/docs/product/features/content.feature.review-changes-in-place.md +39 -0
  361. package/corpus/templates/content/docs/product/features/content.feature.run-projects-your-way.md +44 -0
  362. package/corpus/templates/content/docs/product/features/content.feature.see-your-information-your-way.md +44 -0
  363. package/corpus/templates/content/docs/product/features/content.feature.share-how-your-organization-works.md +38 -0
  364. package/corpus/templates/content/docs/product/features/content.feature.sketch-connections-keep-whats-true.md +39 -0
  365. package/corpus/templates/content/docs/product/features/content.feature.take-the-whole-vault-with-you.md +39 -0
  366. package/corpus/templates/content/docs/product/features/content.feature.trust-your-connected-sources.md +40 -0
  367. package/corpus/templates/content/docs/product/features/content.feature.understand-what-your-data-says.md +39 -0
  368. package/corpus/templates/content/docs/product/features/content.feature.when-this-happens-that-follows.md +43 -0
  369. package/corpus/templates/content/docs/product/features/content.feature.work-across-every-workspace.md +37 -0
  370. package/corpus/templates/content/docs/product/features/content.feature.work-on-content-inside-another-application.md +37 -0
  371. package/corpus/templates/content/docs/product/roadmap.md +878 -0
  372. package/corpus/templates/crm/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  373. package/corpus/templates/crm/app/components/layout/CrmSidebar.tsx +1 -7
  374. package/corpus/templates/crm/app/i18n/en-US.ts +4 -0
  375. package/corpus/templates/crm/app/routes/settings.tsx +33 -8
  376. package/corpus/templates/crm/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  377. package/corpus/templates/design/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  378. package/corpus/templates/design/.generated/bridge/editor-chrome.generated.ts +133 -63
  379. package/corpus/templates/design/.generated/bridge/embedded-wheel.generated.ts +19 -2
  380. package/corpus/templates/design/app/components/design/DesignCanvas.tsx +51 -14
  381. package/corpus/templates/design/app/components/design/DesignExtensionsPanel.tsx +41 -26
  382. package/corpus/templates/design/app/components/design/MultiScreenCanvas.tsx +22 -4
  383. package/corpus/templates/design/app/components/design/bridge/editor-chrome.bridge.ts +216 -116
  384. package/corpus/templates/design/app/components/design/bridge/embedded-wheel.bridge.ts +21 -2
  385. package/corpus/templates/design/app/components/design/code-workbench/CodeWorkbench.tsx +5 -1
  386. package/corpus/templates/design/app/components/design/code-workbench/CodeWorkbenchLoader.tsx +10 -2
  387. package/corpus/templates/design/app/components/design/code-workbench/code-workbench-shell.ts +2 -0
  388. package/corpus/templates/design/app/components/design/code-workbench/explorer/ExplorerView.tsx +60 -55
  389. package/corpus/templates/design/app/components/design/design-canvas/content-size-report.ts +88 -2
  390. package/corpus/templates/design/app/components/design/multi-screen/board-surface-html.ts +3 -2
  391. package/corpus/templates/design/app/components/design/types.ts +4 -0
  392. package/corpus/templates/design/app/components/layout/Sidebar.tsx +1 -5
  393. package/corpus/templates/design/app/pages/design-editor/clipboard-layer-source.ts +28 -0
  394. package/corpus/templates/design/app/pages/design-editor/clone-and-pen-edit.ts +117 -0
  395. package/corpus/templates/design/app/pages/design-editor/code-layer-state.ts +3 -1
  396. package/corpus/templates/design/app/pages/design-editor/pending-edits.ts +120 -74
  397. package/corpus/templates/design/app/pages/design-editor/pending-structure-verification.ts +11 -0
  398. package/corpus/templates/design/app/pages/design-editor/react-semantic-handoff.ts +2 -0
  399. package/corpus/templates/design/app/pages/design-editor/source-location.ts +1 -1
  400. package/corpus/templates/design/changelog/2026-07-29-copy-rendered-ui-between-live-local-apps-and-design-files-wh.md +6 -0
  401. package/corpus/templates/design/changelog/2026-07-29-design-boards-stay-dark-and-viewport-height-content-keeps-it.md +6 -0
  402. package/corpus/templates/design/changelog/2026-07-29-design-frames-no-longer-grow-continuously-when-their-content.md +6 -0
  403. package/corpus/templates/design/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  404. package/corpus/templates/design/changelog/2026-07-29-the-code-panel-and-apply-design-update-control-now-use-clear.md +6 -0
  405. package/corpus/templates/design/changelog/2026-07-29-the-tools-panel-now-keeps-extension-creation-and-discovery-h.md +6 -0
  406. package/corpus/templates/design/shared/source-mode.ts +7 -1
  407. package/corpus/templates/dispatch/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  408. package/corpus/templates/dispatch/app/i18n-data.ts +171 -0
  409. package/corpus/templates/dispatch/app/routes/browser-chat.tsx +4 -0
  410. package/corpus/templates/dispatch/app/routes/browser-connect.tsx +4 -0
  411. package/corpus/templates/dispatch/changelog/2026-07-29-browser-chat-can-securely-connect-the-agent-native-chrome-ex.md +6 -0
  412. package/corpus/templates/forms/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  413. package/corpus/templates/forms/app/components/layout/Sidebar.tsx +1 -6
  414. package/corpus/templates/forms/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  415. package/corpus/templates/macros/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  416. package/corpus/templates/macros/app/components/layout/AppLayout.tsx +1 -5
  417. package/corpus/templates/macros/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  418. package/corpus/templates/mail/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  419. package/corpus/templates/mail/app/components/layout/AppLayout.tsx +1 -9
  420. package/corpus/templates/mail/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  421. package/corpus/templates/plan/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  422. package/corpus/templates/plan/app/components/layout/Sidebar.tsx +3 -7
  423. package/corpus/templates/plan/app/pages/PlansPage.tsx +2 -2
  424. package/corpus/templates/plan/changelog/2026-07-29-chat-history-now-closes-smoothly-and-stays-ready-when-you-re.md +6 -0
  425. package/corpus/templates/plan/changelog/2026-07-29-chat-history-stays-visible-when-you-return-to-ask-plan.md +6 -0
  426. package/corpus/templates/plan/changelog/2026-07-29-fixed-plan-pages-crashing-when-recent-activity-is-unavailabl.md +6 -0
  427. package/corpus/templates/plan/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  428. package/corpus/templates/slides/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  429. package/corpus/templates/slides/.agents/skills/analytics-data-for-decks/SKILL.md +48 -0
  430. package/corpus/templates/slides/.agents/skills/create-deck/SKILL.md +60 -4
  431. package/corpus/templates/slides/.agents/skills/design-systems/SKILL.md +20 -0
  432. package/corpus/templates/slides/.agents/skills/slide-editing/SKILL.md +30 -1
  433. package/corpus/templates/slides/.agents/skills/slide-images/SKILL.md +3 -1
  434. package/corpus/templates/slides/AGENTS.md +25 -24
  435. package/corpus/templates/slides/actions/check-image-gen.ts +8 -2
  436. package/corpus/templates/slides/actions/create-deck.ts +4 -12
  437. package/corpus/templates/slides/actions/export-pptx.ts +25 -3
  438. package/corpus/templates/slides/actions/generate-image-api.ts +4 -2
  439. package/corpus/templates/slides/actions/generate-slides-ai.ts +1 -1
  440. package/corpus/templates/slides/actions/get-deck-reference-context.ts +136 -0
  441. package/corpus/templates/slides/actions/get-workspace-defaults.ts +55 -0
  442. package/corpus/templates/slides/actions/image-gen-status.ts +10 -1
  443. package/corpus/templates/slides/actions/import-file.ts +53 -38
  444. package/corpus/templates/slides/actions/list-decks.ts +2 -0
  445. package/corpus/templates/slides/actions/patch-deck.ts +2 -0
  446. package/corpus/templates/slides/actions/set-workspace-defaults.ts +50 -0
  447. package/corpus/templates/slides/actions/view-screen.ts +6 -0
  448. package/corpus/templates/slides/app/components/comments/SlideCommentsPanel.tsx +1 -1
  449. package/corpus/templates/slides/app/components/deck/DeckCard.tsx +67 -3
  450. package/corpus/templates/slides/app/components/deck/SlideRenderer.tsx +40 -8
  451. package/corpus/templates/slides/app/components/design-system/DesignSystemCard.tsx +33 -8
  452. package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +6 -2
  453. package/corpus/templates/slides/app/components/editor/EditorToolbar.tsx +114 -128
  454. package/corpus/templates/slides/app/components/editor/ExportMenu.tsx +74 -9
  455. package/corpus/templates/slides/app/components/editor/ImageGenPanel.tsx +1 -1
  456. package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +1193 -267
  457. package/corpus/templates/slides/app/components/editor/SlideStyleInspector.tsx +302 -102
  458. package/corpus/templates/slides/app/components/editor/rich-text-selection.ts +270 -0
  459. package/corpus/templates/slides/app/components/editor/slide-escape-arbiter.ts +34 -0
  460. package/corpus/templates/slides/app/components/editor/slide-object-interactions.ts +368 -0
  461. package/corpus/templates/slides/app/components/editor/slide-presence.ts +13 -0
  462. package/corpus/templates/slides/app/components/layout/AgentWorkIndicator.tsx +23 -3
  463. package/corpus/templates/slides/app/components/layout/Layout.tsx +39 -6
  464. package/corpus/templates/slides/app/components/layout/Sidebar.tsx +1 -6
  465. package/corpus/templates/slides/app/components/layout/layout-route-policy.ts +23 -0
  466. package/corpus/templates/slides/app/components/visual-editor/DrawOverlay.tsx +0 -2
  467. package/corpus/templates/slides/app/context/DeckContext.tsx +2 -0
  468. package/corpus/templates/slides/app/global.css +60 -0
  469. package/corpus/templates/slides/app/hooks/use-agent-generating.ts +76 -5
  470. package/corpus/templates/slides/app/hooks/use-workspace-defaults.ts +26 -0
  471. package/corpus/templates/slides/app/i18n/en-US.ts +39 -3
  472. package/corpus/templates/slides/app/lib/generation-state.ts +13 -3
  473. package/corpus/templates/slides/app/lib/slide-image-replacement.ts +27 -6
  474. package/corpus/templates/slides/app/lib/text-tool-shortcut.ts +62 -0
  475. package/corpus/templates/slides/app/pages/DeckEditor.tsx +197 -83
  476. package/corpus/templates/slides/app/pages/DesignSystems.tsx +95 -0
  477. package/corpus/templates/slides/app/pages/Index.tsx +348 -53
  478. package/corpus/templates/slides/changelog/2026-07-28-pick-an-existing-deck-as-a-style-reference-when-creating-a-n.md +6 -0
  479. package/corpus/templates/slides/changelog/2026-07-29-ai-editing-status-is-now-quieter-and-only-shows-slide-presen.md +6 -0
  480. package/corpus/templates/slides/changelog/2026-07-29-design-systems-and-reference-decks-are-easier-to-choose-toge.md +6 -0
  481. package/corpus/templates/slides/changelog/2026-07-29-generated-decks-now-receive-a-concise-relevant-title-before-.md +6 -0
  482. package/corpus/templates/slides/changelog/2026-07-29-google-slides-exports-can-connect-your-google-account-direct.md +6 -0
  483. package/corpus/templates/slides/changelog/2026-07-29-new-deck-prompts-reuse-empty-chats.md +6 -0
  484. package/corpus/templates/slides/changelog/2026-07-29-new-deck-setup-now-stays-in-the-editor-with-closable-style-a.md +6 -0
  485. package/corpus/templates/slides/changelog/2026-07-29-selected-words-and-text-runs-can-now-be-styled-independently.md +6 -0
  486. package/corpus/templates/slides/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  487. package/corpus/templates/slides/changelog/2026-07-29-slide-annotation-tools-are-clearer-and-escape-now-exits-anno.md +6 -0
  488. package/corpus/templates/slides/changelog/2026-07-29-slide-editing-now-opens-with-the-app-navigation-collapsed-fo.md +6 -0
  489. package/corpus/templates/slides/changelog/2026-07-29-slide-editing-stays-visually-clean-on-hover-without-a-canvas.md +6 -0
  490. package/corpus/templates/slides/changelog/2026-07-29-slides-now-appear-one-by-one-while-ai-builds-a-deck-with-ste.md +6 -0
  491. package/corpus/templates/slides/changelog/2026-07-29-text-boxes-now-select-move-duplicate-resize-and-style-like-a.md +6 -0
  492. package/corpus/templates/slides/changelog/2026-07-29-untitled-decks-now-use-a-clearer-this-deck-label-in-the-agen.md +6 -0
  493. package/corpus/templates/slides/server/handlers/google-docs-auth.ts +4 -2
  494. package/corpus/templates/slides/server/handlers/image-providers/builder.ts +305 -0
  495. package/corpus/templates/slides/server/handlers/image-providers/index.ts +6 -3
  496. package/corpus/templates/slides/server/plugins/agent-chat.ts +1 -0
  497. package/corpus/templates/slides/server/workspace-defaults.ts +169 -0
  498. package/corpus/templates/tasks/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  499. package/corpus/templates/tasks/app/components/layout/Sidebar.tsx +31 -8
  500. package/corpus/templates/tasks/app/i18n/en-US.ts +7 -0
  501. package/corpus/templates/tasks/app/routes/settings.tsx +25 -2
  502. package/corpus/templates/tasks/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  503. package/corpus/toolkit/CHANGELOG.md +15 -0
  504. package/corpus/toolkit/README.md +2 -2
  505. package/corpus/toolkit/package.json +1 -1
  506. package/corpus/toolkit/src/app-shell/sidebar-footer-actions.tsx +0 -3
  507. package/corpus/toolkit/src/chat-history.css +1 -0
  508. package/corpus/toolkit/src/composer/ComposerPlusMenu.tsx +35 -14
  509. package/corpus/toolkit/src/composer/PromptComposer.tsx +6 -0
  510. package/corpus/toolkit/src/composer/TiptapComposer.tsx +11 -3
  511. package/corpus/toolkit/src/design-tweaks/visual-style-controls.tsx +64 -11
  512. package/dist/a2a/types.d.ts +6 -0
  513. package/dist/a2a/types.d.ts.map +1 -1
  514. package/dist/a2a/types.js.map +1 -1
  515. package/dist/action.d.ts +57 -0
  516. package/dist/action.d.ts.map +1 -1
  517. package/dist/action.js +9 -0
  518. package/dist/action.js.map +1 -1
  519. package/dist/agent/engine/builder-engine.js +6 -4
  520. package/dist/agent/engine/builder-engine.js.map +1 -1
  521. package/dist/agent/production-agent.d.ts +11 -1
  522. package/dist/agent/production-agent.d.ts.map +1 -1
  523. package/dist/agent/production-agent.js +131 -90
  524. package/dist/agent/production-agent.js.map +1 -1
  525. package/dist/agent/tool-search.d.ts +4 -0
  526. package/dist/agent/tool-search.d.ts.map +1 -1
  527. package/dist/agent/tool-search.js +30 -0
  528. package/dist/agent/tool-search.js.map +1 -1
  529. package/dist/automations/service.d.ts +85 -0
  530. package/dist/automations/service.d.ts.map +1 -0
  531. package/dist/automations/service.js +332 -0
  532. package/dist/automations/service.js.map +1 -0
  533. package/dist/browser-context/index.d.ts +579 -0
  534. package/dist/browser-context/index.d.ts.map +1 -0
  535. package/dist/browser-context/index.js +331 -0
  536. package/dist/browser-context/index.js.map +1 -0
  537. package/dist/client/AgentPanel.d.ts.map +1 -1
  538. package/dist/client/AgentPanel.js +1 -1
  539. package/dist/client/AgentPanel.js.map +1 -1
  540. package/dist/client/FeedbackButton.d.ts +6 -2
  541. package/dist/client/FeedbackButton.d.ts.map +1 -1
  542. package/dist/client/FeedbackButton.js +20 -3
  543. package/dist/client/FeedbackButton.js.map +1 -1
  544. package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
  545. package/dist/client/MultiTabAssistantChat.js +19 -2
  546. package/dist/client/MultiTabAssistantChat.js.map +1 -1
  547. package/dist/client/agent-chat.d.ts +15 -0
  548. package/dist/client/agent-chat.d.ts.map +1 -1
  549. package/dist/client/agent-chat.js +13 -3
  550. package/dist/client/agent-chat.js.map +1 -1
  551. package/dist/client/agent-page/AgentJobsTab.d.ts +1 -0
  552. package/dist/client/agent-page/AgentJobsTab.d.ts.map +1 -1
  553. package/dist/client/agent-page/AgentJobsTab.js +186 -98
  554. package/dist/client/agent-page/AgentJobsTab.js.map +1 -1
  555. package/dist/client/agent-page/AgentTabsPage.js +4 -4
  556. package/dist/client/agent-page/AgentTabsPage.js.map +1 -1
  557. package/dist/client/agent-page/use-jobs.d.ts +7 -0
  558. package/dist/client/agent-page/use-jobs.d.ts.map +1 -1
  559. package/dist/client/agent-page/use-jobs.js.map +1 -1
  560. package/dist/client/analytics-session.d.ts.map +1 -1
  561. package/dist/client/analytics-session.js +13 -0
  562. package/dist/client/analytics-session.js.map +1 -1
  563. package/dist/client/extensions/ExtensionViewer.d.ts.map +1 -1
  564. package/dist/client/extensions/ExtensionViewer.js +29 -6
  565. package/dist/client/extensions/ExtensionViewer.js.map +1 -1
  566. package/dist/client/settings/AutomationsSection.d.ts +0 -9
  567. package/dist/client/settings/AutomationsSection.d.ts.map +1 -1
  568. package/dist/client/settings/AutomationsSection.js +9 -168
  569. package/dist/client/settings/AutomationsSection.js.map +1 -1
  570. package/dist/client/settings/SettingsPanel.d.ts +9 -1
  571. package/dist/client/settings/SettingsPanel.d.ts.map +1 -1
  572. package/dist/client/settings/SettingsPanel.js +19 -11
  573. package/dist/client/settings/SettingsPanel.js.map +1 -1
  574. package/dist/client/settings/index.d.ts +1 -1
  575. package/dist/client/settings/index.d.ts.map +1 -1
  576. package/dist/client/settings/index.js +1 -1
  577. package/dist/client/settings/index.js.map +1 -1
  578. package/dist/client/use-agent-chat.d.ts.map +1 -1
  579. package/dist/client/use-agent-chat.js +20 -3
  580. package/dist/client/use-agent-chat.js.map +1 -1
  581. package/dist/client/use-chat-threads.d.ts.map +1 -1
  582. package/dist/client/use-chat-threads.js +4 -17
  583. package/dist/client/use-chat-threads.js.map +1 -1
  584. package/dist/collab/awareness.d.ts +2 -2
  585. package/dist/collab/awareness.d.ts.map +1 -1
  586. package/dist/collab/struct-routes.d.ts +1 -1
  587. package/dist/deploy/build.d.ts.map +1 -1
  588. package/dist/deploy/build.js +2 -1
  589. package/dist/deploy/build.js.map +1 -1
  590. package/dist/deploy/workspace-deploy.d.ts.map +1 -1
  591. package/dist/deploy/workspace-deploy.js +2 -1
  592. package/dist/deploy/workspace-deploy.js.map +1 -1
  593. package/dist/extensions/actions.d.ts.map +1 -1
  594. package/dist/extensions/actions.js +82 -6
  595. package/dist/extensions/actions.js.map +1 -1
  596. package/dist/extensions/fetch-tool.d.ts.map +1 -1
  597. package/dist/extensions/fetch-tool.js +11 -0
  598. package/dist/extensions/fetch-tool.js.map +1 -1
  599. package/dist/extensions/routes.d.ts +5 -1
  600. package/dist/extensions/routes.d.ts.map +1 -1
  601. package/dist/extensions/routes.js +7 -1
  602. package/dist/extensions/routes.js.map +1 -1
  603. package/dist/extensions/web-content.d.ts +1 -0
  604. package/dist/extensions/web-content.d.ts.map +1 -1
  605. package/dist/extensions/web-content.js +82 -1
  606. package/dist/extensions/web-content.js.map +1 -1
  607. package/dist/file-upload/actions/upload-image.d.ts +1 -1
  608. package/dist/integrations/computer-supervision.d.ts.map +1 -1
  609. package/dist/integrations/computer-supervision.js +22 -1
  610. package/dist/integrations/computer-supervision.js.map +1 -1
  611. package/dist/integrations/index.d.ts +3 -2
  612. package/dist/integrations/index.d.ts.map +1 -1
  613. package/dist/integrations/index.js +3 -2
  614. package/dist/integrations/index.js.map +1 -1
  615. package/dist/integrations/integration-durable-dispatch-config.d.ts +2 -0
  616. package/dist/integrations/integration-durable-dispatch-config.d.ts.map +1 -1
  617. package/dist/integrations/integration-durable-dispatch-config.js +4 -0
  618. package/dist/integrations/integration-durable-dispatch-config.js.map +1 -1
  619. package/dist/integrations/integration-durable-dispatch.d.ts +2 -2
  620. package/dist/integrations/integration-durable-dispatch.d.ts.map +1 -1
  621. package/dist/integrations/integration-durable-dispatch.js +2 -2
  622. package/dist/integrations/integration-durable-dispatch.js.map +1 -1
  623. package/dist/integrations/plugin.d.ts.map +1 -1
  624. package/dist/integrations/plugin.js +84 -39
  625. package/dist/integrations/plugin.js.map +1 -1
  626. package/dist/integrations/remote-browser-actions.d.ts +7 -0
  627. package/dist/integrations/remote-browser-actions.d.ts.map +1 -0
  628. package/dist/integrations/remote-browser-actions.js +482 -0
  629. package/dist/integrations/remote-browser-actions.js.map +1 -0
  630. package/dist/jobs/actions/list-recurring-jobs.d.ts.map +1 -1
  631. package/dist/jobs/actions/list-recurring-jobs.js +4 -6
  632. package/dist/jobs/actions/list-recurring-jobs.js.map +1 -1
  633. package/dist/jobs/actions/manage-recurring-job.js +3 -6
  634. package/dist/jobs/actions/manage-recurring-job.js.map +1 -1
  635. package/dist/jobs/background-automation-runner.d.ts +76 -0
  636. package/dist/jobs/background-automation-runner.d.ts.map +1 -0
  637. package/dist/jobs/background-automation-runner.js +288 -0
  638. package/dist/jobs/background-automation-runner.js.map +1 -0
  639. package/dist/jobs/frontmatter.d.ts +63 -0
  640. package/dist/jobs/frontmatter.d.ts.map +1 -0
  641. package/dist/jobs/frontmatter.js +216 -0
  642. package/dist/jobs/frontmatter.js.map +1 -0
  643. package/dist/jobs/scheduler.d.ts +6 -60
  644. package/dist/jobs/scheduler.d.ts.map +1 -1
  645. package/dist/jobs/scheduler.js +67 -484
  646. package/dist/jobs/scheduler.js.map +1 -1
  647. package/dist/jobs/tools.d.ts.map +1 -1
  648. package/dist/jobs/tools.js +24 -3
  649. package/dist/jobs/tools.js.map +1 -1
  650. package/dist/localization/default-messages.d.ts +28 -33
  651. package/dist/localization/default-messages.d.ts.map +1 -1
  652. package/dist/localization/default-messages.js +34 -39
  653. package/dist/localization/default-messages.js.map +1 -1
  654. package/dist/mcp/screen-memory-stdio.d.ts +7 -7
  655. package/dist/mcp/screen-memory-stdio.d.ts.map +1 -1
  656. package/dist/mcp-client/index.d.ts.map +1 -1
  657. package/dist/mcp-client/index.js +4 -0
  658. package/dist/mcp-client/index.js.map +1 -1
  659. package/dist/notifications/actions.d.ts.map +1 -1
  660. package/dist/notifications/actions.js +5 -0
  661. package/dist/notifications/actions.js.map +1 -1
  662. package/dist/notifications/routes.d.ts +3 -3
  663. package/dist/progress/actions.d.ts.map +1 -1
  664. package/dist/progress/actions.js +5 -0
  665. package/dist/progress/actions.js.map +1 -1
  666. package/dist/provider-api/actions/custom-provider-registration.d.ts +14 -14
  667. package/dist/provider-api/actions/github-repo-files.d.ts.map +1 -1
  668. package/dist/provider-api/actions/github-repo-files.js +9 -0
  669. package/dist/provider-api/actions/github-repo-files.js.map +1 -1
  670. package/dist/provider-api/actions/provider-api.d.ts +16 -16
  671. package/dist/provider-api/actions/provider-api.d.ts.map +1 -1
  672. package/dist/provider-api/actions/provider-api.js +14 -0
  673. package/dist/provider-api/actions/provider-api.js.map +1 -1
  674. package/dist/provider-api/corpus-jobs.d.ts +2 -2
  675. package/dist/resources/handlers.d.ts +1 -1
  676. package/dist/server/action-discovery.d.ts.map +1 -1
  677. package/dist/server/action-discovery.js +5 -0
  678. package/dist/server/action-discovery.js.map +1 -1
  679. package/dist/server/agent-capabilities.d.ts.map +1 -1
  680. package/dist/server/agent-capabilities.js +32 -3
  681. package/dist/server/agent-capabilities.js.map +1 -1
  682. package/dist/server/agent-chat/action-filters-a2a.d.ts +17 -1
  683. package/dist/server/agent-chat/action-filters-a2a.d.ts.map +1 -1
  684. package/dist/server/agent-chat/action-filters-a2a.js +50 -1
  685. package/dist/server/agent-chat/action-filters-a2a.js.map +1 -1
  686. package/dist/server/agent-chat/browser-team-tools.d.ts.map +1 -1
  687. package/dist/server/agent-chat/browser-team-tools.js +90 -3
  688. package/dist/server/agent-chat/browser-team-tools.js.map +1 -1
  689. package/dist/server/agent-chat/framework-prompts.d.ts.map +1 -1
  690. package/dist/server/agent-chat/framework-prompts.js +7 -11
  691. package/dist/server/agent-chat/framework-prompts.js.map +1 -1
  692. package/dist/server/agent-chat/plugin-options.d.ts +3 -3
  693. package/dist/server/agent-chat/plugin-options.js.map +1 -1
  694. package/dist/server/agent-chat/script-entries.d.ts.map +1 -1
  695. package/dist/server/agent-chat/script-entries.js +43 -1
  696. package/dist/server/agent-chat/script-entries.js.map +1 -1
  697. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  698. package/dist/server/agent-chat-plugin.js +24 -5
  699. package/dist/server/agent-chat-plugin.js.map +1 -1
  700. package/dist/server/attribution.d.ts +6 -0
  701. package/dist/server/attribution.d.ts.map +1 -1
  702. package/dist/server/attribution.js +14 -14
  703. package/dist/server/attribution.js.map +1 -1
  704. package/dist/server/auth.d.ts.map +1 -1
  705. package/dist/server/auth.js +5 -2
  706. package/dist/server/auth.js.map +1 -1
  707. package/dist/server/better-auth-instance.d.ts +2 -1
  708. package/dist/server/better-auth-instance.d.ts.map +1 -1
  709. package/dist/server/better-auth-instance.js +6 -3
  710. package/dist/server/better-auth-instance.js.map +1 -1
  711. package/dist/server/core-routes-plugin.d.ts +7 -0
  712. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  713. package/dist/server/core-routes-plugin.js +3 -1
  714. package/dist/server/core-routes-plugin.js.map +1 -1
  715. package/dist/server/csrf.d.ts.map +1 -1
  716. package/dist/server/csrf.js +25 -0
  717. package/dist/server/csrf.js.map +1 -1
  718. package/dist/server/google-oauth.d.ts +3 -0
  719. package/dist/server/google-oauth.d.ts.map +1 -1
  720. package/dist/server/google-oauth.js +12 -1
  721. package/dist/server/google-oauth.js.map +1 -1
  722. package/dist/server/onboarding-html.d.ts.map +1 -1
  723. package/dist/server/onboarding-html.js +18 -0
  724. package/dist/server/onboarding-html.js.map +1 -1
  725. package/dist/server/prompts/framework-core-compact.js +3 -3
  726. package/dist/server/prompts/framework-core-compact.js.map +1 -1
  727. package/dist/server/prompts/framework-core.js +3 -3
  728. package/dist/server/prompts/framework-core.js.map +1 -1
  729. package/dist/server/prompts/shared-rules.js +3 -3
  730. package/dist/server/prompts/shared-rules.js.map +1 -1
  731. package/dist/settings/index.d.ts +1 -1
  732. package/dist/settings/index.d.ts.map +1 -1
  733. package/dist/settings/index.js +1 -1
  734. package/dist/settings/index.js.map +1 -1
  735. package/dist/shared/analytics-anonymous-id.d.ts +12 -0
  736. package/dist/shared/analytics-anonymous-id.d.ts.map +1 -0
  737. package/dist/shared/analytics-anonymous-id.js +29 -0
  738. package/dist/shared/analytics-anonymous-id.js.map +1 -0
  739. package/dist/templates/chat/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  740. package/dist/templates/chat/app/components/layout/Sidebar.tsx +1 -5
  741. package/dist/templates/chat/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  742. package/dist/templates/default/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  743. package/dist/templates/default/app/i18n/ar-SA.ts +26 -0
  744. package/dist/templates/default/app/i18n/de-DE.ts +28 -0
  745. package/dist/templates/default/app/i18n/en-US.ts +27 -0
  746. package/dist/templates/default/app/i18n/es-ES.ts +28 -0
  747. package/dist/templates/default/app/i18n/fr-FR.ts +28 -0
  748. package/dist/templates/default/app/i18n/hi-IN.ts +25 -0
  749. package/dist/templates/default/app/i18n/ja-JP.ts +27 -0
  750. package/dist/templates/default/app/i18n/ko-KR.ts +27 -0
  751. package/dist/templates/default/app/i18n/pt-BR.ts +27 -0
  752. package/dist/templates/default/app/i18n/zh-CN.ts +24 -0
  753. package/dist/templates/default/app/i18n/zh-TW.ts +24 -0
  754. package/dist/templates/headless/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  755. package/dist/templates/workspace-core/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  756. package/dist/templates/workspace-core/.agents/skills/agent-page/SKILL.md +10 -7
  757. package/dist/templates/workspace-core/.agents/skills/automations/SKILL.md +53 -8
  758. package/dist/templates/workspace-core/.agents/skills/browser-sessions/SKILL.md +131 -0
  759. package/dist/templates/workspace-core/.agents/skills/extension-points/SKILL.md +13 -4
  760. package/dist/templates/workspace-core/.agents/skills/extensions/SKILL.md +23 -15
  761. package/dist/templates/workspace-core/.agents/skills/recurring-jobs/SKILL.md +33 -18
  762. package/dist/tracking/providers.d.ts.map +1 -1
  763. package/dist/tracking/providers.js +1 -0
  764. package/dist/tracking/providers.js.map +1 -1
  765. package/dist/tracking/registry.d.ts +1 -0
  766. package/dist/tracking/registry.d.ts.map +1 -1
  767. package/dist/tracking/registry.js +1 -0
  768. package/dist/tracking/registry.js.map +1 -1
  769. package/dist/tracking/types.d.ts +1 -0
  770. package/dist/tracking/types.d.ts.map +1 -1
  771. package/dist/tracking/types.js.map +1 -1
  772. package/dist/triggers/actions/list-automations.d.ts +7 -0
  773. package/dist/triggers/actions/list-automations.d.ts.map +1 -1
  774. package/dist/triggers/actions/list-automations.js +29 -41
  775. package/dist/triggers/actions/list-automations.js.map +1 -1
  776. package/dist/triggers/actions/manage-automation.js +15 -33
  777. package/dist/triggers/actions/manage-automation.js.map +1 -1
  778. package/dist/triggers/actions.d.ts.map +1 -1
  779. package/dist/triggers/actions.js +184 -95
  780. package/dist/triggers/actions.js.map +1 -1
  781. package/dist/triggers/dispatcher.d.ts +3 -9
  782. package/dist/triggers/dispatcher.d.ts.map +1 -1
  783. package/dist/triggers/dispatcher.js +134 -304
  784. package/dist/triggers/dispatcher.js.map +1 -1
  785. package/dist/triggers/routes.d.ts.map +1 -1
  786. package/dist/triggers/routes.js +76 -17
  787. package/dist/triggers/routes.js.map +1 -1
  788. package/dist/triggers/types.d.ts +4 -23
  789. package/dist/triggers/types.d.ts.map +1 -1
  790. package/dist/triggers/types.js.map +1 -1
  791. package/docs/content/agent-surfaces.mdx +4 -4
  792. package/docs/content/automations.mdx +61 -12
  793. package/docs/content/deployment.mdx +11 -4
  794. package/docs/content/extensions.mdx +39 -33
  795. package/docs/content/recurring-jobs.mdx +41 -19
  796. package/docs/content/template-dispatch-operations.mdx +19 -7
  797. package/package.json +4 -2
  798. package/src/a2a/types.ts +6 -0
  799. package/src/action.ts +68 -0
  800. package/src/agent/engine/builder-engine.ts +8 -4
  801. package/src/agent/production-agent.ts +175 -100
  802. package/src/agent/tool-search.ts +36 -0
  803. package/src/automations/service.ts +506 -0
  804. package/src/browser-context/index.ts +392 -0
  805. package/src/client/AgentPanel.tsx +2 -1
  806. package/src/client/FeedbackButton.tsx +37 -4
  807. package/src/client/MultiTabAssistantChat.tsx +21 -0
  808. package/src/client/agent-chat.ts +31 -3
  809. package/src/client/agent-page/AgentJobsTab.tsx +438 -310
  810. package/src/client/agent-page/AgentTabsPage.tsx +4 -4
  811. package/src/client/agent-page/use-jobs.ts +7 -0
  812. package/src/client/analytics-session.ts +13 -0
  813. package/src/client/extensions/ExtensionViewer.tsx +67 -0
  814. package/src/client/settings/AutomationsSection.tsx +27 -499
  815. package/src/client/settings/SettingsPanel.tsx +32 -11
  816. package/src/client/settings/index.ts +2 -0
  817. package/src/client/use-agent-chat.ts +35 -3
  818. package/src/client/use-chat-threads.ts +8 -25
  819. package/src/deploy/build.ts +2 -0
  820. package/src/deploy/workspace-deploy.ts +2 -0
  821. package/src/extensions/actions.ts +115 -3
  822. package/src/extensions/fetch-tool.ts +11 -0
  823. package/src/extensions/routes.ts +16 -1
  824. package/src/extensions/web-content.ts +96 -1
  825. package/src/integrations/computer-supervision.ts +33 -1
  826. package/src/integrations/index.ts +6 -0
  827. package/src/integrations/integration-durable-dispatch-config.ts +10 -0
  828. package/src/integrations/integration-durable-dispatch.ts +4 -0
  829. package/src/integrations/plugin.ts +94 -41
  830. package/src/integrations/remote-browser-actions.ts +621 -0
  831. package/src/jobs/actions/list-recurring-jobs.ts +5 -7
  832. package/src/jobs/actions/manage-recurring-job.ts +3 -7
  833. package/src/jobs/background-automation-runner.ts +437 -0
  834. package/src/jobs/frontmatter.ts +308 -0
  835. package/src/jobs/scheduler.ts +89 -598
  836. package/src/jobs/tools.ts +22 -3
  837. package/src/localization/default-messages.ts +45 -45
  838. package/src/mcp-client/index.ts +6 -0
  839. package/src/notifications/actions.ts +5 -0
  840. package/src/progress/actions.ts +5 -0
  841. package/src/provider-api/actions/github-repo-files.ts +11 -0
  842. package/src/provider-api/actions/provider-api.ts +13 -0
  843. package/src/server/__snapshots__/agent-chat-plugin.surface.spec.ts.snap +4 -4
  844. package/src/server/action-discovery.ts +7 -0
  845. package/src/server/agent-capabilities.ts +43 -8
  846. package/src/server/agent-chat/action-filters-a2a.ts +63 -1
  847. package/src/server/agent-chat/browser-team-tools.ts +126 -3
  848. package/src/server/agent-chat/framework-prompts.ts +7 -11
  849. package/src/server/agent-chat/plugin-options.ts +3 -3
  850. package/src/server/agent-chat/script-entries.ts +52 -1
  851. package/src/server/agent-chat-plugin.ts +25 -5
  852. package/src/server/attribution.ts +22 -0
  853. package/src/server/auth.ts +20 -6
  854. package/src/server/better-auth-instance.ts +10 -2
  855. package/src/server/core-routes-plugin.ts +10 -1
  856. package/src/server/csrf.ts +25 -0
  857. package/src/server/google-oauth.ts +21 -1
  858. package/src/server/onboarding-html.ts +18 -0
  859. package/src/server/prompts/framework-core-compact.ts +3 -3
  860. package/src/server/prompts/framework-core.ts +3 -3
  861. package/src/server/prompts/shared-rules.ts +3 -3
  862. package/src/settings/index.ts +1 -0
  863. package/src/shared/analytics-anonymous-id.ts +35 -0
  864. package/src/templates/chat/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  865. package/src/templates/chat/app/components/layout/Sidebar.tsx +1 -5
  866. package/src/templates/chat/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
  867. package/src/templates/default/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  868. package/src/templates/default/app/i18n/ar-SA.ts +26 -0
  869. package/src/templates/default/app/i18n/de-DE.ts +28 -0
  870. package/src/templates/default/app/i18n/en-US.ts +27 -0
  871. package/src/templates/default/app/i18n/es-ES.ts +28 -0
  872. package/src/templates/default/app/i18n/fr-FR.ts +28 -0
  873. package/src/templates/default/app/i18n/hi-IN.ts +25 -0
  874. package/src/templates/default/app/i18n/ja-JP.ts +27 -0
  875. package/src/templates/default/app/i18n/ko-KR.ts +27 -0
  876. package/src/templates/default/app/i18n/pt-BR.ts +27 -0
  877. package/src/templates/default/app/i18n/zh-CN.ts +24 -0
  878. package/src/templates/default/app/i18n/zh-TW.ts +24 -0
  879. package/src/templates/headless/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  880. package/src/templates/workspace-core/.agents/skills/agent-native-toolkit/SKILL.md +5 -0
  881. package/src/templates/workspace-core/.agents/skills/agent-page/SKILL.md +10 -7
  882. package/src/templates/workspace-core/.agents/skills/automations/SKILL.md +53 -8
  883. package/src/templates/workspace-core/.agents/skills/browser-sessions/SKILL.md +131 -0
  884. package/src/templates/workspace-core/.agents/skills/extension-points/SKILL.md +13 -4
  885. package/src/templates/workspace-core/.agents/skills/extensions/SKILL.md +23 -15
  886. package/src/templates/workspace-core/.agents/skills/recurring-jobs/SKILL.md +33 -18
  887. package/src/tracking/providers.ts +1 -0
  888. package/src/tracking/registry.ts +2 -1
  889. package/src/tracking/types.ts +1 -0
  890. package/src/triggers/actions/list-automations.ts +43 -44
  891. package/src/triggers/actions/manage-automation.ts +17 -48
  892. package/src/triggers/actions.ts +218 -127
  893. package/src/triggers/dispatcher.ts +181 -367
  894. package/src/triggers/routes.ts +84 -27
  895. package/src/triggers/types.ts +9 -23
@@ -0,0 +1,878 @@
1
+ # Agent Native Content public roadmap
2
+
3
+ <!-- Generated from the atomic records in chapters/, features/, and capabilities/. Do not edit this projection directly. -->
4
+
5
+ Agent Native Content brings documents, data, connected sources, collaboration, and agent work into one durable place. People and agents work on the same real objects through the same permissions and operations. The result is a workspace that can begin as a Page, grow into a system, and remain understandable, portable, and recoverable as more people and automations become involved.
6
+
7
+ ## How to read this roadmap
8
+
9
+ Content is grouped into six implementation Chapters. Numbered Features describe complete vertical workflows that people can understand and use. Atomic capabilities may arrive piece by piece, but a Feature is not complete until its example workflow works end to end.
10
+
11
+ Feature statuses:
12
+
13
+ - **Available:** The complete workflow works for people and agents with the correct permissions, persistence, recovery, accessibility, and polish.
14
+ - **In validation:** The complete workflow exists and is being hardened before becoming Available.
15
+ - **Partially implemented:** Meaningful parts exist, but the workflow is not yet reliable or proven end to end.
16
+ - **Planned:** The Feature is approved and ordered, but does not yet have enough implementation to describe as active.
17
+ - **Paused:** Work deliberately stopped while its research and implementation history remain preserved.
18
+
19
+ No Feature is marked Available yet. Existing foundations are useful, but the complete workflows still need the polish and proof described below.
20
+
21
+ ## Chapter 1: A durable home for your thinking
22
+
23
+ Chapter 1 gives people and agents a dependable place to create, organize, find, reshape, and recover their work. Pages and Databases remain understandable after an interruption, important material can be reused without drifting copies, and every authorized collaborator can return to the same durable context. The following Features establish that foundation.
24
+
25
+ ### Feature 1: Durable foundations
26
+
27
+ Pages, Blocks, Databases, Search, history, and recovery form one trustworthy material loop.
28
+
29
+ **Status:** In validation
30
+
31
+ **Example workflow:** A teammate creates a project brief, turns its action items into Database records with owners and due dates, closes the app, finds the work again through Search, restores an accidentally deleted Block, and asks an agent to continue from the same durable context.
32
+
33
+ **What works today:** Content already has SQL-backed Pages, rich Blocks, Databases, Search, document snapshots, and a broad agent Action surface. People and agents can perform much of the ordinary creation and editing loop on the same durable objects.
34
+
35
+ **What remains:** Stable Block identity, actor-aware history, dependable recovery across every object type, and complete end-to-end action parity still need to become one polished foundation.
36
+
37
+ **What this Feature includes:**
38
+
39
+ - **Pages:** Hold durable identity, access, properties, rich content, and the context required to resume work.
40
+ - **Blocks:** Give every editable rich-content body the same composable grammar, whether it belongs to a Page, Property, Comment, or message.
41
+ - **Databases:** Govern writable collections, membership, typed Properties, validation, defaults, Rules, and the canonical path for creating records.
42
+ - **Search:** Finds only what the current person can access and opens the exact object or context they were looking for.
43
+ - **History:** Records attributable committed Events and logical Revisions without turning every keystroke into a fake milestone.
44
+ - **Recovery:** Restores deleted or changed work without discarding the history that explains what happened.
45
+ - **Agent parity:** Lets agents perform the same authorized operations through the same Action surface rather than a second, weaker API.
46
+
47
+ **Required capability records:** [Pages](capabilities/content.object.page.md), [Blocks](capabilities/content.object.block.md), [Blocks fields](capabilities/content.object.blocks-field.md), [Databases](capabilities/content.object.database.md), [Search](capabilities/content.knowledge.search.md), [Committed Events](capabilities/content.event.committed.md), [History](capabilities/content.history.queryable.md), [Agent and UI parity](capabilities/content.agent.action-parity.md)
48
+
49
+ **Enhancing capability records:** [Blocks-field revision history](capabilities/content.version.field-history.md), [Actor properties](capabilities/content.property.actor.md), [Document editor](capabilities/content.author.document-editor.md)
50
+
51
+ ### Feature 2: Find your place again
52
+
53
+ Content makes arrival, navigation, and resumption feel dependable instead of asking people to remember where they left everything.
54
+
55
+ **Status:** Partially implemented
56
+
57
+ **Example workflow:** A new teammate follows an invitation, lands in the correct organization and Workspace, pins the project they care about, and later returns directly to the exact Database View they were using.
58
+
59
+ **What works today:** Content has Personal and organization-backed spaces, Workspace navigation, invitations, sidebar structure, and saved location state in varying degrees of maturity.
60
+
61
+ **What remains:** Global Home, clearer context switching, intentional pinning and dynamic sidebar sections, and reliable resumption into the exact focused View need to work as one arrival experience.
62
+
63
+ **What this Feature includes:**
64
+
65
+ - **Home:** Gives each person a top-level view across the Personal and organization contexts they can access.
66
+ - **Workspaces:** Organize Pages and Databases beneath Personal or an Organization without becoming the permission model themselves.
67
+ - **Sidebar:** Pins important Pages, Databases, and Queries while allowing dynamic sections such as Recent and Shared with me.
68
+ - **Recent work:** Restores the objects and views a person was actually using, scoped by current access.
69
+ - **Known links and invitations:** Land on the intended object with an honest access-denied state when permission is missing.
70
+ - **Session resumption:** Reopens enough navigation and View state to pick up the work without reconstructing the route manually.
71
+
72
+ **Required capability records:** [Content spaces and Files](capabilities/content.source.spaces-files.md), [Personal and organization contexts](capabilities/content.workspace.multi-scope.md), [Global Home](capabilities/content.home.global.md), [Personal sidebar](capabilities/content.navigation.sidebar.md), [Session resumption](capabilities/content.workspace.session-restore.md)
73
+
74
+ **Enhancing capability records:** [Working set](capabilities/content.workspace.working-set.md), [View instances](capabilities/content.workspace.view-instance.md)
75
+
76
+ ### Feature 3: Living references
77
+
78
+ Reuse canonical Pages and Blocks without producing copies that quietly drift apart.
79
+
80
+ **Status:** Partially implemented
81
+
82
+ **Example workflow:** The Docs team maintains one canonical product-description Block that appears across several guides and blog posts, edits it from any occurrence, and sees every authorized location update without copy and paste.
83
+
84
+ **What works today:** Content can reference Pages, embed ordinary Database Views, and preserve multi-membership without copying canonical records. Existing reference Blocks and source-aware identities provide useful substrate.
85
+
86
+ **What remains:** Stable Block references, editable Synced Blocks, canonical Page embeds, a complete Connections surface, and typed relationship behavior still need to converge.
87
+
88
+ **What this Feature includes:**
89
+
90
+ - **References:** Link to a Page or Block as a compact mention, card, or embedded preview.
91
+ - **Synced Blocks:** Render one canonical Block in several places and allow authorized edits from any occurrence.
92
+ - **Embedded Pages:** Place a canonical Page inside another surface while preserving its identity and access.
93
+ - **Backlinks and forward links:** Show where an object is mentioned and what it intentionally references through Info → Connections.
94
+ - **Typed Relationships:** Give important connections explicit meaning that Databases, Queries, Graphs, and agents can use.
95
+ - **Graceful degradation:** Omit inaccessible references and preserve understandable broken or deleted-reference states.
96
+
97
+ **Required capability records:** [References](capabilities/content.object.reference.md), [Synced Blocks and live embeds](capabilities/content.object.transclusion.md), [Links and backlinks](capabilities/content.knowledge.links.md), [Typed Relationships](capabilities/content.relationship.edge.md)
98
+
99
+ **Enhancing capability records:** [Blocks](capabilities/content.object.block.md), [Named Page Versions](capabilities/content.version.branching.md)
100
+
101
+ ### Feature 4: Make the workspace yours
102
+
103
+ Personal arrangements and private Views reshape shared work without changing it for everyone else.
104
+
105
+ **Status:** Partially implemented
106
+
107
+ **Example workflow:** A sales leader privately filters and groups the shared customer Database around this quarter's accounts, saves that arrangement as an Only-me View, and never changes what the rest of the company sees.
108
+
109
+ **What works today:** Saved Database Views already support filtering, sorting, grouping, density, and several renderers, while the data model supports Pages belonging to multiple Databases.
110
+
111
+ **What remains:** Automatic personal overrides, named Only-me Views, reusable typed Queries, and predictable pinning and sharing behavior need complete product surfaces.
112
+
113
+ **What this Feature includes:**
114
+
115
+ - **Personal View changes:** Remember one person's filters, sorting, grouping, density, and presentation over a shared View.
116
+ - **Only-me Views:** Save named private Views over shared records without forking their data.
117
+ - **Shared Views:** Give collaborators a dependable starting presentation while preserving personal exploration.
118
+ - **Saved Queries:** Turn reusable selection and output logic into durable Content objects that can be linked and embedded.
119
+ - **Multiple Database memberships:** Let one Page participate in several collections without gaining a primary Database identity.
120
+ - **Pinned navigation:** Let each person choose the working set that deserves persistent space in the sidebar.
121
+
122
+ **Required capability records:** [Database and Query Views](capabilities/content.view.query.md), [Reusable Query objects](capabilities/content.query.object.md), [Personal View state](capabilities/content.view.personal-state.md), [Shared Views](capabilities/content.share.views.md), [Multiple Database memberships](capabilities/content.object.multi-membership.md)
123
+
124
+ **Enhancing capability records:** [Personal sidebar](capabilities/content.navigation.sidebar.md), [Typed expression language](capabilities/content.expression.language.md)
125
+
126
+ ### Feature 5: See your information your way
127
+
128
+ Move among compatible Database and Query Views without changing the records underneath.
129
+
130
+ **Status:** In validation
131
+
132
+ **Example workflow:** A marketing team edits its editorial Database as a Table, plans work on a Board and Calendar, then gives executives a compact List of the same canonical articles.
133
+
134
+ **What works today:** Table, List, Board, Gallery, Calendar, Timeline, and Form renderers already exist, along with shared filters, sorts, grouping, calculations, and visible-field controls.
135
+
136
+ **What remains:** Every renderer needs the same proven permissions, Actions, agent context, accessibility, persistence, performance, keyboard behavior, and recovery. Incomplete Views should remain gated until they pass that contract.
137
+
138
+ **What this Feature includes:**
139
+
140
+ - **Table and List:** Support fast scanning, keyboard navigation, inline editing, and flexible visible fields.
141
+ - **Board and Gallery:** Arrange records by workflow state or visual identity while preserving canonical records.
142
+ - **Calendar and Timeline:** Place records across dates and ranges through the same typed time Properties.
143
+ - **Form:** Collect new records through a saved presentation of the Database's schema and validation.
144
+ - **View controls:** Filter, sort, group, format, and conditionally style each presentation.
145
+ - **Density:** Adjust compact, cozy, or comfortable spacing and secondary information without creating another View type.
146
+ - **Renderer conformance:** Gives every View the same permissions, Actions, agent context, accessibility, persistence, and recovery contract.
147
+
148
+ **Required capability records:** [Typed renderers](capabilities/content.renderer.typed.md), [Database and Query Views](capabilities/content.view.query.md), [View renderer conformance](capabilities/content.view.renderer-conformance.md), [Large Database performance](capabilities/content.view.scale.md)
149
+
150
+ **Enhancing capability records:** [Fast keyboard capture](capabilities/content.view.fast-capture.md), [Grouping and aggregation](capabilities/content.view.grouping-aggregation.md), [Timeline View](capabilities/content.view.timeline.md)
151
+
152
+ ## Chapter 2: Come to consensus without losing the evidence
153
+
154
+ Chapter 2 keeps collaboration attached to the work being shaped. People and agents can discuss a Page or Database, leave precise feedback, review attributable changes, explore alternatives, and preserve how the team reached its conclusion without rescuing the useful parts from a separate chat afterward. The following Features create that collaboration loop.
155
+
156
+ ### Feature 6: Collaborate in context
157
+
158
+ Comments, Discussion, messages, notifications, and history stay anchored to the Page or Database being shaped.
159
+
160
+ **Status:** Partially implemented
161
+
162
+ **Example workflow:** A teammate comments on an unclear paragraph, discusses the larger issue in the Page's Discussion, links the conversation to Slack, and returns later to see the Comment, replies, and resulting changes together.
163
+
164
+ **What works today:** Content supports anchored Comment threads, replies, resolution, mentions, notifications substrate, and document history. These already keep precise feedback closer to the artifact than an external chat can.
165
+
166
+ **What remains:** Every Page and Database needs its universal Discussion, rich Blocks-field messages, stable permalinks, access-safe Slack continuation, and clearly attributable message revisions.
167
+
168
+ **What this Feature includes:**
169
+
170
+ - **Comments:** Attach precise feedback to text, Blocks, media, or other exact material and preserve the historical target if that material changes.
171
+ - **Discussion:** Gives every Page and Database one continuing channel for collaboration about the whole artifact.
172
+ - **Rich messages:** Use Blocks fields so messages and Comments can contain the same references, embeds, Expressions, and structured content as Pages.
173
+ - **Threads and replies:** Keep focused sub-conversations understandable without infinite nesting.
174
+ - **Permalinks:** Make every message and Comment addressable from Content, Slack, or another Page.
175
+ - **Notifications:** Route attention through durable, queryable records without inventing another inbox engine.
176
+ - **Attributable revisions:** Let message owners edit their work while preserving visible history instead of erasing what was said.
177
+
178
+ **Required capability records:** [Page Discussion](capabilities/content.discussion.page.md), [Comments](capabilities/content.comment.page-owned.md), [Blocks fields](capabilities/content.object.blocks-field.md), [Notifications](capabilities/content.notification.source.md), [Committed Events](capabilities/content.event.committed.md)
179
+
180
+ **Enhancing capability records:** [Agent presence](capabilities/content.agent.presence.md), [Reactions and Polls](capabilities/content.feedback.signal.md)
181
+
182
+ ### Increment to Feature 6: Decide together
183
+
184
+ Polls and explicit outcome state deepen the same Discussion rather than creating a separate decision system.
185
+
186
+ **Status:** Planned
187
+
188
+ **Example workflow:** A team posts a Poll in the Database Discussion, allows each person to choose up to two priorities, closes voting on Friday, records the outcome, and links directly to that result from the resulting plan.
189
+
190
+ **What works today:** Comments, reactions, rich content, Database Views, and permission-aware collaboration provide pieces of the eventual interaction.
191
+
192
+ **What remains:** Poll messages, bounded multi-select, stable options, closing behavior, access-safe aggregates, featured Poll rendering, and superseding outcomes still need implementation.
193
+
194
+ - **Poll messages:** Use the shared rich-message grammar and remain linkable like any other Discussion item.
195
+ - **Single or bounded multi-select:** Lets the poll author decide whether responders may choose one answer or a fixed number.
196
+ - **Stable options:** Preserves the meaning of existing responses when wording or presentation changes.
197
+ - **Close and freeze:** Stops new responses at a deliberate boundary and keeps the resulting aggregate inspectable.
198
+ - **Access-safe totals:** Never leak inaccessible participants through counts or aggregates.
199
+ - **Outcome state:** Records the current conclusion and allows a later outcome to supersede it without manufacturing a Decision object.
200
+
201
+ ### Feature 7: Review changes in place
202
+
203
+ Accept or reject proposed human and agent changes in the ordinary Content interface.
204
+
205
+ **Status:** Partially implemented
206
+
207
+ **Example workflow:** An agent revises a live article and its metadata; the editor reviews the rendered Page, accepts the stronger passages, rejects an incorrect Property change, and leaves the remaining suggestions pending for another pass.
208
+
209
+ **What works today:** Source change sets, Builder review machinery, audit records, and document snapshots prove several parts of the review loop and provide useful donor implementations.
210
+
211
+ **What remains:** Content needs one generic typed diff and suggestion system that reviews bodies, Properties, Blocks, and filtered record sets directly in their ordinary renderers.
212
+
213
+ **What this Feature includes:**
214
+
215
+ - **Suggestions:** Preserve a pending change set without mutating the canonical Page immediately.
216
+ - **Typed diffs:** Compare body content, Properties, Blocks, and structured values through their normal renderers.
217
+ - **Filtered review:** Review only the affected or relevant subset without losing dependent changes outside the current filter.
218
+ - **Selective acceptance:** Accept all, reject all, or choose individual compatible changes without seven ceremonial confirmation screens.
219
+ - **Stale changes:** Detect when the underlying material has moved and offer an honest rebase, refresh, or conflict state.
220
+ - **Agent-authored work:** Group an agent run into one inspectable Revision whose changes remain attributable and recoverable.
221
+
222
+ **Required capability records:** [In-place typed review](capabilities/content.diff.in-place.md), [Filtered change review](capabilities/content.diff.filtered-review.md), [Suggestions](capabilities/content.revision.suggestions.md), [Committed Events](capabilities/content.event.committed.md), [History](capabilities/content.history.queryable.md)
223
+
224
+ **Enhancing capability records:** [Agent-assisted review](capabilities/content.diff.ai-assist.md), [Code review](capabilities/content.review.code.md)
225
+
226
+ ### Feature 8: Explore alternatives safely
227
+
228
+ Create named Versions, compare them, selectively merge them, and promote one without losing the others.
229
+
230
+ **Status:** Planned
231
+
232
+ **Example workflow:** A team keeps the published article canonical while creating a private rewrite, compares the two Versions in the normal editor, selectively merges the best changes, and promotes the rewrite only when it is ready.
233
+
234
+ **What works today:** Content preserves whole-document snapshots and can restore earlier revisions, while the broader event and diff architecture establishes the lower-level history foundation.
235
+
236
+ **What remains:** Named Page Versions, Version-specific access, in-place comparison, selective merge, canonical promotion, and Version-aware collaboration are still planned.
237
+
238
+ **What this Feature includes:**
239
+
240
+ - **One stable Page:** Keeps identity, title, top-level Properties, sharing, and Discussion common across its Versions.
241
+ - **Named Versions:** Hold deliberate alternative bodies such as a published article and a new working draft.
242
+ - **Version-specific access:** Allows a Version to be more private than its Page, but never more broadly shared.
243
+ - **Compare and merge:** Shows differences in the ordinary Page interface and supports selective acceptance in either direction.
244
+ - **Canonical promotion:** Makes any authorized Version current without destroying the Version it replaces.
245
+ - **Version context:** Quietly anchors Comments, Discussion messages, Annotations, and execution receipts to the Version being viewed.
246
+
247
+ **Required capability records:** [Named Page Versions](capabilities/content.version.branching.md), [Blocks-field revision history](capabilities/content.version.field-history.md), [In-place typed review](capabilities/content.diff.in-place.md), [Row-level privacy](capabilities/content.access.row-private.md)
248
+
249
+ **Enhancing capability records:** [Filtered change review](capabilities/content.diff.filtered-review.md), [Annotations](capabilities/content.research.annotation.md)
250
+
251
+ ## Chapter 3: One workspace across every source
252
+
253
+ Chapter 3 lets people work across Content, local files, and connected providers without rebuilding everything in one proprietary home. A team can combine information from several Sources, edit it through one predictable interface, and keep supported changes synchronized while preserving ownership, access, and provider-specific meaning. The following Features make that shared workspace possible.
254
+
255
+ ### Feature 9: Connect your sources
256
+
257
+ Choose governed native and provider Sources, preserve their identity, and compose them through Queries and Views.
258
+
259
+ **Status:** Partially implemented
260
+
261
+ **Example workflow:** A content lead connects Builder blog articles and resources, aligns their compatible fields in one Query, and works from a shared editorial View without losing which provider owns each record.
262
+
263
+ **What works today:** Content already models source-backed Databases, source fields and rows, provenance, multi-source composition, and adapters for Builder, Notion, and local material.
264
+
265
+ **What remains:** Sources need one governed catalog, Queries need to replace the confusing multi-source configuration surface, and field alignment, write routing, and access behavior need end-to-end proof.
266
+
267
+ **What this Feature includes:**
268
+
269
+ - **Sources catalog:** Lists approved personal, workspace, and organization connections with their capabilities and policy.
270
+ - **Provider adapters:** Give Builder, Notion, Drive, Agent Native apps, and later providers one shared contract with independent certification.
271
+ - **Item binding:** Maps each provider item to one stable Content identity without turning the provider into the Page's owner.
272
+ - **Typed Queries:** Combine Databases, Sources, and other Queries through one visual selection and alignment model.
273
+ - **Provenance:** Shows where each value or representation came from and which system owns changes to it.
274
+ - **Access-safe results:** Evaluate every result and aggregate with the current viewer's authority rather than the Query owner's.
275
+
276
+ **Required capability records:** [Sources catalog](capabilities/content.source.catalog.md), [Source adapters](capabilities/content.source.adapters.md), [Cross-source Queries](capabilities/content.view.source-query.md), [Reusable Query objects](capabilities/content.query.object.md)
277
+
278
+ **Enhancing capability records:** [Page-linked Sources](capabilities/content.source.page-link.md), [Custom Properties](capabilities/content.property.catalog.md)
279
+
280
+ ### Feature 10: Trust your connected Sources
281
+
282
+ Keep supported edits synchronized according to one plain-language policy without silently losing provider-specific content.
283
+
284
+ **Status:** Partially implemented
285
+
286
+ **Example workflow:** An editor updates a Builder article from Content; the supported changes synchronize, an unknown Builder component survives untouched, and changing Draft to Published remains a separate guarded action.
287
+
288
+ **What works today:** Builder change sets, guarded writes, raw sidecars, local-folder synchronization, and source metadata already preserve several difficult round-trip and conflict boundaries.
289
+
290
+ **What remains:** Every adapter needs certification against one plain-language sync policy, seamless automatic synchronization where safe, faithful unknown-content preservation, explicit lifecycle changes, and dependable receipts.
291
+
292
+ **What this Feature includes:**
293
+
294
+ - **View only:** Pulls authorized changes into Content and never writes back.
295
+ - **Keep in sync:** Moves compatible changes in both directions automatically and interrupts only for a genuine conflict.
296
+ - **Review before write-back:** Bundles Content-originated changes into one reviewable set when the workflow requires care.
297
+ - **Faithful round-tripping:** Preserves unknown provider-owned structures even when Content cannot render or edit them.
298
+ - **Conflict handling:** Uses stable identity and base revisions to prevent silent last-writer-wins data loss.
299
+ - **Provider lifecycle:** Treats states such as Draft and Published as explicit guarded changes rather than side effects of ordinary editing.
300
+ - **Receipts and retries:** Confirms what the provider actually accepted and retries without duplicating effects.
301
+
302
+ **Required capability records:** [Source sync policy](capabilities/content.source.sync-policy.md), [Faithful round-tripping](capabilities/content.portability.roundtrip.md), [Source adapters](capabilities/content.source.adapters.md), [Builder round-trip codec](capabilities/content.source.builder-codec.md)
303
+
304
+ **Enhancing capability records:** [Guarded property changes](capabilities/content.property.guarded-change.md), [Committed Events](capabilities/content.event.committed.md)
305
+
306
+ ### Feature 11: Work across every workspace
307
+
308
+ Search and save Queries across Personal and organization contexts without widening anyone's access.
309
+
310
+ **Status:** Partially implemented
311
+
312
+ **Example workflow:** A person searches their current Workspace, deliberately expands to all accessible contexts, saves a Query spanning Personal and two organizations, and shares it with someone who sees only their own authorized intersection.
313
+
314
+ **What works today:** Content has Personal and organization spaces, Workspace membership, scoped access checks, and the beginnings of cross-space navigation and search.
315
+
316
+ **What remains:** Active working context must separate cleanly from retrieval scope, while global Home, cross-context Queries, counts, aggregates, and viewer-specific evaluation need complete implementation.
317
+
318
+ **What this Feature includes:**
319
+
320
+ - **Active context:** Determines where new work is created and which organization or Personal surface governs it.
321
+ - **Retrieval scope:** Can widen deliberately beyond the active context without moving or re-authorizing objects.
322
+ - **Cross-workspace Search:** Expands from the current Workspace to every accessible context through an explicit control.
323
+ - **Cross-workspace Queries:** Save durable, shareable definitions that retain each source object's location and provenance.
324
+ - **Viewer evaluation:** Shows every reader only the intersection they can access, including counts and aggregates.
325
+ - **Global Home:** Composes authorized recent work, Queries, and dashboards without pretending everything belongs to one giant Workspace.
326
+
327
+ **Required capability records:** [Personal and organization contexts](capabilities/content.workspace.multi-scope.md), [Reusable Query objects](capabilities/content.query.object.md), [Visibility closure](capabilities/content.access.visibility-closure.md)
328
+
329
+ **Enhancing capability records:** [Global Home](capabilities/content.home.global.md), [Organization teams](capabilities/content.organization.teams.md)
330
+
331
+ ### Feature 12: Bring your local work
332
+
333
+ Open a folder or repository through the same Source model while keeping device authority and browser limitations honest.
334
+
335
+ **Status:** Partially implemented
336
+
337
+ **Example workflow:** A developer opens a local documentation folder in Content Desktop, edits the files through Content, sees external file changes synchronize back, and later reads the last synchronized representation from Safari without exposing the folder path.
338
+
339
+ **What works today:** Local File Mode, manifest-declared workspaces, connected-folder Sources, source-backed Pages, conflict records, and a trusted local bridge already establish substantial foundations.
340
+
341
+ **What remains:** Opening a folder must become effortless, Desktop needs dependable background sync and caching, browser clients need graceful read and queued-write behavior, and the portable vault workflow needs full product polish.
342
+
343
+ **What this Feature includes:**
344
+
345
+ - **Local Source Bridge:** Grants access to explicitly selected folders without storing raw paths or file handles in shared SQL.
346
+ - **Folders and repositories:** Materialize local files as ordinary Content records while preserving their source identity and structure.
347
+ - **Background synchronization:** Lets Desktop or a lightweight helper keep shared representations fresh for browser clients.
348
+ - **Browser degradation:** Shows the last authorized Content representation when Safari, Firefox, or another client cannot access local bytes.
349
+ - **Queued edits:** Holds permitted source-owned changes with their base revision until an authorized bridge returns.
350
+ - **Portable vault:** Keeps the human-readable folder separate from disposable caches and any particular desktop application bundle.
351
+
352
+ **Required capability records:** [Local Source bridge](capabilities/content.source.local-bridge.md), [Files and folders as Sources](capabilities/content.source.file-folder.md), [Portable Source representation](capabilities/content.portability.source-representation.md), [Portable vault export](capabilities/content.portability.vault-export.md)
353
+
354
+ **Enhancing capability records:** [Source adapters](capabilities/content.source.adapters.md), [Source sync policy](capabilities/content.source.sync-policy.md)
355
+
356
+ ## Chapter 4: Shape your own working system
357
+
358
+ Chapter 4 turns flexible Pages and Databases into working systems a team can trust. People with the right expertise can shape data, Views, Templates, Rules, Skills, and agent workflows for everyone else, while validation, governance, and safe evolution keep that flexibility from becoming organizational confetti. The following Features provide those building blocks.
359
+
360
+ ### Feature 13: Data that keeps itself right
361
+
362
+ Use typed defaults, formulas, validation, and rendering so ordinary data stays consistent.
363
+
364
+ **Status:** Partially implemented
365
+
366
+ **Example workflow:** An operations lead creates a request Database whose defaults fill the creator and timestamp, formulas calculate cost, validation rejects an impossible quantity, and a guarded budget change explains its consequences before committing.
367
+
368
+ **What works today:** Content has a broad typed Property system, formulas and computed fields, editable values, form-required fields, audit fields, and several useful validation donors.
369
+
370
+ **What remains:** Defaults, formulas, validation, conditional rendering, guarded changes, typed errors, and time semantics need one expression language and one coherent configuration surface across every Property type.
371
+
372
+ **What this Feature includes:**
373
+
374
+ - **Typed Properties:** Give text, numbers, choices, dates, people, relationships, files, and rich Blocks explicit behavior.
375
+ - **Creation defaults:** Evaluate one-time typed Expressions inside the successful creation transaction.
376
+ - **Formulas:** Derive live values from the current row and related data without storing a second truth.
377
+ - **Validation:** Reject invalid values consistently across the interface, Actions, API, agents, imports, and Forms.
378
+ - **Safeguards:** Add customizable consequence text, confirmation, approval, or conditional authority before sensitive changes commit.
379
+ - **Typed errors:** Keep null, error, unavailable, and stale cached values distinct and understandable.
380
+ - **Time semantics:** Separate Dates from timezone-aware Instants and quarantine ambiguous legacy floating times honestly.
381
+
382
+ **Required capability records:** [Typed Properties](capabilities/content.property.typed.md), [Property validation and defaults](capabilities/content.property.constraints.md), [Guarded property changes](capabilities/content.property.guarded-change.md), [Typed expression language](capabilities/content.expression.language.md), [Dates, times, and durations](capabilities/content.time.types.md)
383
+
384
+ **Enhancing capability records:** [View-derived creation defaults](capabilities/content.view.dynamic-create.md), [Actor properties](capabilities/content.property.actor.md), [Cached expression results](capabilities/content.expression.cached-result.md)
385
+
386
+ ### Feature 14: Share how your organization works
387
+
388
+ Govern reusable Templates, Properties, Expressions, and Custom Blocks without taking ownership away from adopters.
389
+
390
+ **Status:** Partially implemented
391
+
392
+ **Example workflow:** An administrator publishes an approved editorial Template with governed Properties and Expressions; any team can inspect and adopt it, customize the local system, or detach without losing its existing records.
393
+
394
+ **What works today:** Content already has Templates and several reusable configuration surfaces, while source Properties and local components demonstrate governed and source-backed reuse patterns.
395
+
396
+ **What remains:** Templates, Custom Properties, Expressions, and Custom Blocks need one understandable catalog model with ownership scope, inspection, adoption, local aliasing, provenance, and faithful detachment.
397
+
398
+ **What this Feature includes:**
399
+
400
+ - **Templates:** Package Pages, Databases, Views, Properties, Rules, and content into reusable starting systems.
401
+ - **Custom Properties:** Offer approved reusable field definitions without making every ordinary local column secretly global.
402
+ - **Expressions:** Store reusable typed logic with personal, workspace, or organization scope.
403
+ - **Catalog discovery:** Uses consistent names, descriptions, aliases, ownership, compatibility, and previews.
404
+ - **Adoption:** Lets someone inspect a governed building block before binding it into their local system.
405
+ - **Detachment:** Preserves the current data and behavior as a faithful local copy when someone leaves the shared lineage.
406
+
407
+ **Required capability records:** [Multi-object Templates](capabilities/content.template.graph.md), [Template governance](capabilities/content.template.governance.md), [Database item Templates](capabilities/content.template.item-body.md)
408
+
409
+ **Enhancing capability records:** [Custom Properties](capabilities/content.property.catalog.md), [Organization teams](capabilities/content.organization.teams.md)
410
+
411
+ ### Feature 15: Put your organization's know-how to work
412
+
413
+ Govern reusable Skills so the agent offers the right instructions for the current person and object.
414
+
415
+ **Status:** Planned
416
+
417
+ **Example workflow:** A writer selects a paragraph and opens Ask Agent; Content prioritizes the organization's approved voice-and-style Skill, explains that it will propose a replacement, and records the resulting edits when invoked.
418
+
419
+ **What works today:** The Agent Native framework already loads governed developer Skills, and Content provides selection context and the shared Agent chat for carrying out authorized work.
420
+
421
+ **What remains:** Content needs a user-manageable Skills catalog, scope and compatibility rules, contextual discovery, specific-over-general ranking, clear mutation previews, and shared invocation for people and agents.
422
+
423
+ **What this Feature includes:**
424
+
425
+ - **Skills catalog:** Stores governed instructions with personal, workspace, organization, or public-core scope.
426
+ - **Compatibility:** Surfaces only Skills that apply to the current selection, Block, Page, Database, Property, or View.
427
+ - **Scope precedence:** Ranks the most relevant allowed instruction without flooding the interface with the entire catalog.
428
+ - **Declared effects:** Explains whether invocation proposes edits, replaces content, adds a Comment, or acts elsewhere.
429
+ - **Shared invocation:** Lets people and agents use the same Skill through the ordinary Agent chat and Action fabric.
430
+ - **Receipts:** Records what instruction ran, against which context, with which resulting actions.
431
+
432
+ **Required capability records:** [Expression catalog](capabilities/content.expression.catalog.md), [Skills catalog](capabilities/content.agent.skill-catalog.md), [Agent-authored Expressions](capabilities/content.agent.expression-authoring.md)
433
+
434
+ **Enhancing capability records:** [Template governance](capabilities/content.template.governance.md), [Unified commands](capabilities/content.command.fabric.md)
435
+
436
+ ### Feature 16: Evolve systems safely
437
+
438
+ Review upstream changes to adopted systems, keep local work intact, and choose what to accept or detach.
439
+
440
+ **Status:** Planned
441
+
442
+ **Example workflow:** A new version of the editorial Template adds one Property and changes a Rule; each Database owner sees the impact, accepts the Property, declines the Rule, preserves local changes, and stops seeing the same declined update.
443
+
444
+ **What works today:** Version history, diff donors, stable identifiers, Templates, and source change-review machinery provide the pieces needed to compare evolving systems.
445
+
446
+ **What remains:** Governed building blocks need version pinning, affected-object previews, owner-scoped adoption, selective apply and reset, remembered declines, deprecation, and safe permanent divergence.
447
+
448
+ **What this Feature includes:**
449
+
450
+ - **Version pinning:** Keeps each adopted Template or Custom Property on the version its owner trusts.
451
+ - **Impact preview:** Shows affected Databases, Views, Queries, formulas, Rules, Templates, and agent workflows before publication.
452
+ - **Three-way comparison:** Distinguishes the old shared definition, the proposed update, and local changes.
453
+ - **Selective adoption:** Lets each owner accept compatible changes, decline others, or apply a safe batch.
454
+ - **Quiet decline memory:** Avoids repeatedly demanding review until the upstream change materially differs.
455
+ - **Detach to local:** Ends the shared lineage without breaking the current system or losing provenance.
456
+
457
+ **Required capability records:** [Template updates](capabilities/content.template.update.md), [Custom Properties](capabilities/content.property.catalog.md), [In-place typed review](capabilities/content.diff.in-place.md)
458
+
459
+ **Enhancing capability records:** [Template governance](capabilities/content.template.governance.md), [Committed Events](capabilities/content.event.committed.md)
460
+
461
+ ### Feature 17: When this happens, that follows
462
+
463
+ React to committed Events with visible, governed Actions, retries, notifications, and receipts.
464
+
465
+ **Status:** Partially implemented
466
+
467
+ **Example workflow:** When a qualified lead enters a Database, a Rule assigns the owner, asks an agent for a bounded summary, sends the right notification, and leaves one receipt showing every action and retry.
468
+
469
+ **What works today:** Shared Actions, audit history, a framework scheduler, notifications, Automations, provider effects, and active Event and Rule work already cover much of the execution substrate.
470
+
471
+ **What remains:** Content needs one durable Event spine and Rule model with atomic claims, retries, idempotency, agent effects, notification routing, receipts, and a humane inspection surface.
472
+
473
+ **What this Feature includes:**
474
+
475
+ - **Events:** Provide atomic facts about what committed, who or what caused it, and which objects changed.
476
+ - **Rules:** Match typed conditions after commit without becoming a second expression or permission engine.
477
+ - **Actions:** Invoke the same operations available to the interface and agents.
478
+ - **Schedules and heartbeats:** Use the framework's single scheduler for time-based conditions and missed-run policy.
479
+ - **Buttons:** Give owners an explicit interface for invoking governed Actions with known inputs and consequences.
480
+ - **Agent effects:** Delegate bounded work without granting the Rule more authority than its actor or policy permits.
481
+ - **Receipts and retries:** Preserve exactly-once claims, crash recovery, honest skips, and queryable outcomes.
482
+
483
+ **Required capability records:** [Committed Events](capabilities/content.event.committed.md), [Rules](capabilities/content.rule.deterministic.md), [Agent and UI parity](capabilities/content.agent.action-parity.md)
484
+
485
+ **Enhancing capability records:** [Scheduled automation](capabilities/content.automation.scheduled.md), [Action Buttons](capabilities/content.action.button.md), [Agent-run automation](capabilities/content.agent.automation.md)
486
+
487
+ ### Feature 18: Run projects your way
488
+
489
+ Use an editable Task and Project system built from ordinary Content rather than a second hidden engine.
490
+
491
+ **Status:** Partially implemented
492
+
493
+ **Example workflow:** A product team installs the blessed project Template, captures tasks from the keyboard, assigns owners, links subtasks and dependencies, and uses My Tasks while every task remains an ordinary editable Page.
494
+
495
+ **What works today:** Pages, Databases, status and person Properties, relations, Board and Calendar Views, Templates, Comments, and agent Actions already let teams assemble useful project systems.
496
+
497
+ **What remains:** The blessed Template needs fast capture, polished defaults, task and subtask Views, My Tasks, activity, dependencies, permissions, and end-to-end Builder dogfooding without introducing a separate task engine.
498
+
499
+ **What this Feature includes:**
500
+
501
+ - **Blessed Template:** Provides a strong starting system that remains inspectable and editable like any other Content setup.
502
+ - **Fast capture:** Creates work quickly with unambiguous View-derived defaults and useful keyboard navigation.
503
+ - **Assignments:** Use ordinary typed Person and Team Properties with access-safe attention and notifications.
504
+ - **Subtasks and dependencies:** Store hierarchy and blocking relationships through typed Relations with cycle protection.
505
+ - **My Tasks:** Queries assigned work across authorized memberships without inventing a private task datastore.
506
+ - **Project status:** Combines explicit owner judgment with useful rollups rather than pretending a formula can manage the project.
507
+ - **Ordinary Pages:** Lets every Task retain rich content, Properties, Discussion, Versions, and the ability to join other Databases.
508
+
509
+ **Required capability records:** [Blessed Task and Project Template](capabilities/content.system.task-project.md), [My Tasks](capabilities/content.system.my-tasks.md), [Task dependencies](capabilities/content.system.dependencies.md), [Project status](capabilities/content.system.project-status.md)
510
+
511
+ **Enhancing capability records:** [Fast keyboard capture](capabilities/content.view.fast-capture.md), [Typed Relationships](capabilities/content.relationship.edge.md), [Notifications](capabilities/content.notification.source.md)
512
+
513
+ ### Feature 19: Plan work across time
514
+
515
+ Edit dates and dependencies through Timeline and Gantt-style planning while preserving the same typed records underneath.
516
+
517
+ **Status:** Planned
518
+
519
+ **Example workflow:** A project manager opens a Timeline, drags a blocked launch task into the following week, sees the dependency conflict, accepts a proposed schedule repair, and preserves the updated dates and Relationships everywhere else.
520
+
521
+ **What works today:** A Timeline renderer, typed date Properties, drag editing, relations, grouping, and shared View configuration already exist as partially proven pieces.
522
+
523
+ **What remains:** Timeline needs full renderer conformance and polish, while dependency metadata, schedule constraints, milestones, repair proposals, critical path, and Gantt-style interaction remain planned layers.
524
+
525
+ **What this Feature includes:**
526
+
527
+ - **Timeline:** Places records across typed dates, Instants, ranges, and durations.
528
+ - **Direct manipulation:** Moves or resizes permitted work through ordinary typed Actions.
529
+ - **Dependency connectors:** Renders the same Relationships used by Queries and project workflows.
530
+ - **Schedule constraints:** Detects invalid ordering and either refuses, explains, or proposes a repair according to policy.
531
+ - **Gantt mode:** Combines Timeline, dependencies, milestones, grouping, and schedule behavior without becoming another View family.
532
+ - **Critical path:** Remains a later planning layer after dependency and constraint semantics are dependable.
533
+
534
+ **Required capability records:** [Timeline View](capabilities/content.view.timeline.md), [Dates, times, and durations](capabilities/content.time.types.md), [Typed Relationships](capabilities/content.relationship.edge.md), [Schedule constraints](capabilities/content.schedule.constraints.md)
535
+
536
+ **Enhancing capability records:** [Task dependencies](capabilities/content.system.dependencies.md), [Grouping and aggregation](capabilities/content.view.grouping-aggregation.md)
537
+
538
+ ### Feature 20: Build new surfaces
539
+
540
+ Create a one-off artifact, then promote it into a governed reusable Custom Block when it earns reuse.
541
+
542
+ **Status:** Partially implemented
543
+
544
+ **Example workflow:** An agent creates a one-off interactive calculator inside a Page; its owner inspects the source and rendered result, then promotes it to an approved Custom Block that coworkers can insert from the slash menu.
545
+
546
+ **What works today:** Sandboxed Extensions, local MDX components, HTML artifacts, executable-code foundations, and shared component toolkits already demonstrate several rendering and execution modes.
547
+
548
+ **What remains:** These pieces need one Custom Block lifecycle with inspectable source, secure sandboxing, optional typed props, one-off artifacts, promotion, governed catalogs, source-backed origins, and slash-command discovery.
549
+
550
+ **What this Feature includes:**
551
+
552
+ - **Artifact Block:** Stores Page-owned HTML, styles, and behavior without requiring props or a catalog entry.
553
+ - **Source and rendered views:** Lets authors inspect the code underneath and the output it produces.
554
+ - **Sandbox:** Denies network and application authority by default while enforcing time, memory, output, and asset limits.
555
+ - **Save as Custom Block:** Promotes a useful one-off into a governed reusable definition with stable identity.
556
+ - **Custom Blocks catalog:** Controls discovery, ownership, versions, permissions, compatibility, and typed props where useful.
557
+ - **Source-backed origins:** Lets repository, Builder, or later Source adapters provide the implementation without creating another product identity.
558
+
559
+ **Required capability records:** [Artifact Blocks](capabilities/content.renderer.artifact-block.md), [Custom Blocks](capabilities/content.renderer.custom-block.md)
560
+
561
+ **Enhancing capability records:** [Executable Code blocks](capabilities/content.author.code.md), [Typed renderers](capabilities/content.renderer.typed.md)
562
+
563
+ ### Feature 21: Collect structured input
564
+
565
+ Build Forms over the same schema, validation, and submission Actions as the Database they populate.
566
+
567
+ **Status:** In validation
568
+
569
+ **Example workflow:** A research team publishes an intake Form that validates required fields, lets an external participant submit without reading the Database, creates exactly one record, and triggers the Database's enrichment Rule.
570
+
571
+ **What works today:** Content already has a Form View, ordered and required questions, schema-backed controls, and an atomic Action that creates and verifies an ordinary Database record.
572
+
573
+ **What remains:** Content and Agent Native Forms need one shared engine, with polished public submission, richer validation, conditional behavior, permissions, spam protection, receipts, and dependable downstream Rule handoff.
574
+
575
+ **What this Feature includes:**
576
+
577
+ - **Form View:** Saves field selection, order, presentation, and submission behavior over one Database.
578
+ - **Shared schema:** Reuses the same Property types and validation as Agent Native Forms and ordinary record editing.
579
+ - **Conditional fields:** Shows or requires inputs through the typed expression language rather than custom form-only logic.
580
+ - **Submission grants:** Allow a person to submit without silently granting broad access to the underlying Database.
581
+ - **Idempotent submission:** Prevents duplicate records when a request retries or returns ambiguously.
582
+ - **Receipts:** Records the submitted values, actor, resulting Page, and downstream Actions the submitter may inspect.
583
+
584
+ **Required capability records:** [Shared Form engine](capabilities/content.form.shared-engine.md), [Property validation and defaults](capabilities/content.property.constraints.md), [Agent and UI parity](capabilities/content.agent.action-parity.md), [Committed Events](capabilities/content.event.committed.md)
585
+
586
+ **Enhancing capability records:** [Rules](capabilities/content.rule.deterministic.md), [Durable Content jobs](capabilities/content.job.durable.md)
587
+
588
+ ### Feature 22: Understand what your data says
589
+
590
+ Use Charts, Pivots, grouping, measures, and drill-down without creating a separate analytics datastore.
591
+
592
+ **Status:** Partially implemented
593
+
594
+ **Example workflow:** A marketing analyst groups campaigns by channel, compares spend and conversions in a Chart and Pivot, then drills into one surprising aggregate to inspect the canonical campaigns behind it.
595
+
596
+ **What works today:** Database calculations, grouping, rollup foundations, and chart tooling elsewhere in the Agent Native framework provide useful implementation donors.
597
+
598
+ **What remains:** Content needs typed aggregations, multi-dimensional grouping, Pivot, a shared Chart specification and renderer library, saved Chart Views, embeddable Chart Blocks, and drill-down to canonical records.
599
+
600
+ **What this Feature includes:**
601
+
602
+ - **Multiple grouping dimensions:** Partitions typed Query results consistently across Views.
603
+ - **Measures and totals:** Compute access-safe counts, sums, averages, subtotals, and grand totals.
604
+ - **Charts:** Share one typed chart specification and renderer toolkit with Agent Native Analytics.
605
+ - **Pivot:** Places dimensions on rows and columns with typed aggregations in cells.
606
+ - **Drill-down:** Opens the canonical records behind an aggregate instead of turning cells into independent data.
607
+ - **Accessible summaries:** Explains the chart or pivot meaning beyond color, shape, or pointer interaction.
608
+ - **Static fidelity:** Preserves useful output in public Pages, presentations, and exports.
609
+
610
+ **Required capability records:** [Grouping and aggregation](capabilities/content.view.grouping-aggregation.md), [Pivot View](capabilities/content.view.pivot.md), [Chart View](capabilities/content.view.chart.md), [Access-safe computation](capabilities/content.access.safe-aggregate.md)
611
+
612
+ **Enhancing capability records:** [Typed renderers](capabilities/content.renderer.typed.md), [Database and Query Views](capabilities/content.view.query.md)
613
+
614
+ ### Feature 23: Build living dashboards
615
+
616
+ Compose responsive Views, Charts, expressions, controls, and prose into durable operating surfaces.
617
+
618
+ **Status:** Planned
619
+
620
+ **Example workflow:** A go-to-market lead assembles a responsive Page with pipeline Charts, filtered account Views, explanatory prose, and personal controls so people and agents can inspect the same operating picture and discuss it in context.
621
+
622
+ **What works today:** Pages can already combine prose, Blocks, references, expressions, and embedded Database Views, while saved Views provide reusable filtered presentations.
623
+
624
+ **What remains:** Responsive Page columns, resizable View and Chart Blocks, dashboard controls, chart conformance, personal interaction state, presentation behavior, and export fidelity still need implementation.
625
+
626
+ **What this Feature includes:**
627
+
628
+ - **Ordinary Pages:** Serve as the dashboard canvas without introducing a separate dashboard datastore.
629
+ - **Embedded Views and Charts:** Reference saved configurations while allowing each occurrence to override size and presentation.
630
+ - **Responsive columns:** Arrange, resize, and reorder Blocks with a layout that linearizes coherently on smaller screens and in exports.
631
+ - **Controls and Expressions:** Let viewers change authorized filters or inputs without mutating the shared default accidentally.
632
+ - **Live context:** Keeps prose, decisions, metrics, and the underlying records together for people and agents.
633
+ - **Presentation mode:** Reuses shared Slides primitives to present Pages or ordered records without inventing slide-only content.
634
+
635
+ **Required capability records:** [Responsive Page layout](capabilities/content.layout.responsive.md), [Chart View](capabilities/content.view.chart.md), [Embedded Content surface](capabilities/content.embed.surface.md)
636
+
637
+ **Enhancing capability records:** [Presentation mode](capabilities/content.presentation.mode.md), [Typed expression language](capabilities/content.expression.language.md)
638
+
639
+ ## Chapter 5: Capture anything. Keep the thread
640
+
641
+ Chapter 5 turns the things people encounter into research they can keep using. Material can enter from many capture points, retain its source and exact context, become comfortable to read and annotate, and connect to citations, claims, and other knowledge without losing the original thread. The following Features support that path from capture to understanding.
642
+
643
+ ### Feature 24: Capture into action
644
+
645
+ Resolve or create one canonical Page in the chosen Database, preserve provenance, and hand it to that Database's Rules and agents.
646
+
647
+ **Status:** Partially implemented
648
+
649
+ **Example workflow:** Someone shares a customer interview URL from their phone to the Research Database; Content reuses the canonical Source Page, preserves the transcript and provenance, and lets the Database's Rules extract companies and open questions.
650
+
651
+ **What works today:** Content can already import or create Pages from files, URLs, providers, local Sources, and Agent Actions, with useful provenance and Database destinations in several paths.
652
+
653
+ **What remains:** Every entrance needs one Capture contract with remembered destination, canonical deduplication, idempotency, snapshot handling, Template application, receipts, and clean downstream enrichment.
654
+
655
+ **What this Feature includes:**
656
+
657
+ - **Many entrances:** Accepts browser capture, share sheets, Clips, URLs, files, email, identifiers, providers, and Agent Actions through one contract.
658
+ - **Remembered destination:** Defaults to the last Database used for that entrance while keeping the destination easy to change.
659
+ - **Idempotent resolution:** Finds an existing canonical Page or creates exactly one, with a deliberate-copy escape hatch.
660
+ - **Provenance:** Preserves the original URL, identifier, provider identity, capture time, snapshot, and available representations.
661
+ - **Database handoff:** Applies the destination's Template, defaults, memberships, validation, and permissions.
662
+ - **Downstream enrichment:** Lets target-owned Rules and agents summarize, classify, extract, or route the record without making Capture wait for them.
663
+ - **Receipts and repair:** Reports what Capture created or reused and allows failed later enrichment to retry independently.
664
+
665
+ **Required capability records:** [Capture and enrichment](capabilities/content.capture.enrich.md), [Sources catalog](capabilities/content.source.catalog.md), [Durable Content jobs](capabilities/content.job.durable.md)
666
+
667
+ **Enhancing capability records:** [Rules](capabilities/content.rule.deterministic.md), [Multi-object Templates](capabilities/content.template.graph.md)
668
+
669
+ ### Feature 25: Read and annotate anything
670
+
671
+ Read comfortably, mark exact material, preserve revision context, and find those Annotations again.
672
+
673
+ **Status:** Planned
674
+
675
+ **Example workflow:** A researcher opens a PDF, adjusts the reading layout, highlights an exact passage, adds a durable Annotation, and later finds it from the Annotations rail even after the source receives a new revision.
676
+
677
+ **What works today:** Content already renders rich documents and media Blocks, supports anchored Comments, stores source representations, and has ordinary reading and export foundations.
678
+
679
+ **What remains:** The dedicated Reader experience, durable Annotation object and rail, precise selectors across media, revision-aware anchoring, carry-forward, reading preferences, progress, dictation, and read-aloud are still planned.
680
+
681
+ **What this Feature includes:**
682
+
683
+ - **Reader surface:** Provides personal typography, width, pagination, theme, progress, and distraction-free modes.
684
+ - **Document and media representations:** Supports text, transcripts, PDFs, EPUBs, audio, video, and source-aware fallbacks over stable asset handles.
685
+ - **Annotations:** Store durable highlights, notes, tags, reactions, or structured extractions independently from resolvable Comments.
686
+ - **Precise selectors:** Anchor to text ranges, pages, regions, timestamps, transcript ranges, and the source revision being viewed.
687
+ - **Annotations rail:** Reveals highlights only when opened and supports search, filtering, grouping, re-anchoring, and orphan repair.
688
+ - **Carry-forward:** Moves a filtered set of relevant Annotations to another named Version without pretending every old anchor still exists.
689
+ - **Speech:** Adds dictation and read-aloud through shared Agent Native capabilities rather than a Reader-only AI system.
690
+
691
+ **Required capability records:** [Reader surface](capabilities/content.reader.surface.md), [Annotations](capabilities/content.research.annotation.md), [Media Blocks](capabilities/content.author.media.md)
692
+
693
+ **Enhancing capability records:** [Named Page Versions](capabilities/content.version.branching.md), [Source adapters](capabilities/content.source.adapters.md)
694
+
695
+ ### Feature 26: Cite what you found
696
+
697
+ Turn a link into one durable source-and-locator identity that can render in different citation styles.
698
+
699
+ **Status:** Planned
700
+
701
+ **Example workflow:** A writer promotes an ordinary research link to a citation, adds a page locator, switches the article from author-date to footnote style, and watches the bibliography update without re-entering the source.
702
+
703
+ **What works today:** Content has ordinary links, Page references, source metadata, rich text, equations, and import and export machinery that can donate to citation rendering.
704
+
705
+ **What remains:** First-class citation identity, locators, promote-to-citation, automatic bibliographies, selectable styles, Zotero interoperability, and semantic portability need implementation.
706
+
707
+ **What this Feature includes:**
708
+
709
+ - **Promote to citation:** Converts an ordinary link without losing its anchor or source identity.
710
+ - **Source Page:** Resolves or creates the canonical record for the paper, book, website, video, dataset, or other source.
711
+ - **Locators:** Preserve page, chapter, figure, timestamp, transcript range, or another precise place within the source.
712
+ - **Style rendering:** Presents one semantic citation as a link, author-date reference, number, footnote, or bibliography entry.
713
+ - **Bibliographies:** Recompute from the citations actually present rather than maintaining a second manual list.
714
+ - **Zotero interoperability:** Uses Zotero identities and CSL styles instead of volunteering to personally maintain civilization's citation formats.
715
+ - **Portability:** Keeps citation identity intact across supported imports and exports even when the destination renders it differently.
716
+
717
+ **Required capability records:** [Citations](capabilities/content.research.citation.md), [Footnotes](capabilities/content.author.footnotes.md)
718
+
719
+ **Enhancing capability records:** [Faithful round-tripping](capabilities/content.portability.roundtrip.md), [Source adapters](capabilities/content.source.adapters.md)
720
+
721
+ ### Feature 27: Sketch connections, keep what's true
722
+
723
+ Arrange canonical Content on a Canvas, sketch possible connections, and promote only meaningful typed Relationships.
724
+
725
+ **Status:** Planned
726
+
727
+ **Example workflow:** A researcher arranges Sources, claims, and Annotations on a Canvas, draws tentative lines while thinking, and promotes only the strongest line into a typed Supports relationship that Queries and agents can use.
728
+
729
+ **What works today:** Canonical Pages, Blocks, references, relation Properties, Queries, and embeddable Views provide the objects and edges a spatial surface can eventually arrange.
730
+
731
+ **What remains:** Canvas, view-local connectors, promotion into typed Relationships, semantic Graph editing, mind maps, force-directed layouts, and graph traversal remain planned capabilities.
732
+
733
+ **What this Feature includes:**
734
+
735
+ - **Canvas:** Places Pages, Blocks, Sources, Annotations, media, Views, and Query results in an intentional spatial arrangement.
736
+ - **Reusable objects:** Keeps every card or node connected to its canonical Content identity instead of becoming a canvas-only copy.
737
+ - **Visual connectors:** Supports brainstorming lines that remain local to the Canvas until their meaning is known.
738
+ - **Promote to Relationship:** Turns a chosen connector into a named typed edge that becomes queryable everywhere.
739
+ - **Semantic Graph mode:** Creates an already-selected Relationship type directly when the person is deliberately editing the graph.
740
+ - **Mind maps and layouts:** Offer hierarchical, grouped, and force-directed arrangements over the same objects and edges.
741
+ - **Graph exploration:** Later adds traversal, paths, cycles, ranking, and pattern queries after the relationship substrate is proven.
742
+
743
+ **Required capability records:** [Canvas](capabilities/content.view.canvas.md), [Graph View](capabilities/content.view.graph.md), [Graph queries](capabilities/content.knowledge.graph.md), [Typed Relationships](capabilities/content.relationship.edge.md)
744
+
745
+ **Enhancing capability records:** [Reusable Query objects](capabilities/content.query.object.md), [Annotations](capabilities/content.research.annotation.md)
746
+
747
+ ## Chapter 6: Write once, keep it yours, publish faithfully
748
+
749
+ Chapter 6 carries the same canonical work from private thought into public reading, other applications, portable archives, and future systems. People can publish or embed what they choose, move their full body of work without starting over, and retain meaningful control over custody without creating a second truth that quietly drifts away. The following Features make Content useful beyond Content itself.
750
+
751
+ ### Feature 28: Publish with confidence
752
+
753
+ Publish one chosen revision faithfully while private collaborative work continues behind it.
754
+
755
+ **Status:** Partially implemented
756
+
757
+ **Example workflow:** An editor publishes the current approved article revision, continues working privately on a new Version, previews exactly what public readers can see, and updates the stable URL only when the replacement is ready.
758
+
759
+ **What works today:** Content already supports sharing, public Pages, stable links, several exports, access checks, and server-rendered public surfaces.
760
+
761
+ **What remains:** Publication must bind to an exact revision or named Version, preview the real audience closure, render every Block faithfully, isolate private collaboration, preserve lifecycle history, and become polished enough for dependable CMS use.
762
+
763
+ **What this Feature includes:**
764
+
765
+ - **Publication object:** Binds one public destination to a Page, selected Version, and exact revision.
766
+ - **Page-first publishing:** Keeps Publish, Update publication, and Unpublish inside the familiar Page sharing surface.
767
+ - **Stable public URL:** Serves the last explicitly published truth rather than following every private edit automatically.
768
+ - **Rich Block fidelity:** Renders every accepted Block family or a deliberate safe fallback through the shared semantic renderer.
769
+ - **Audience preview:** Shows what the public reader can actually access before publication.
770
+ - **Private-work separation:** Prevents Comments, Discussion, unpublished Versions, inaccessible assets, and internal Properties from leaking.
771
+ - **Lifecycle history:** Records who published, updated, or withdrew which revision and preserves the public artifact's provenance.
772
+
773
+ **Required capability records:** [Public publication](capabilities/content.publish.public.md), [Public reading](capabilities/content.publish.reading.md), [Visibility closure](capabilities/content.access.visibility-closure.md)
774
+
775
+ **Enhancing capability records:** [Named Page Versions](capabilities/content.version.branching.md), [PDF export](capabilities/content.portability.pdf-export.md), [Guarded property changes](capabilities/content.property.guarded-change.md)
776
+
777
+ ### Feature 29: Take the whole vault with you
778
+
779
+ Export the complete authorized vault into open, understandable formats and a lossless Content archive.
780
+
781
+ **Status:** Partially implemented
782
+
783
+ **Example workflow:** An organization exports every object the acting administrator can access into an open Markdown, CSV, assets, and manifest vault plus a lossless Content archive, then verifies the package without Content.
784
+
785
+ **What works today:** Content exports Page bodies as Markdown, HTML, and PDF-shaped output and can export editable Markdown or MDX source, with local-file workflows already proving part of the portability model.
786
+
787
+ **What remains:** Whole-vault export needs CSV, assets, an open manifest, a lossless Content archive, Notion-compatible packaging, authorized dependency closure, resumable jobs, verification, and Desktop backup.
788
+
789
+ **What this Feature includes:**
790
+
791
+ - **Open vault:** Uses Markdown or MDX, CSV, ordinary asset folders, and a small manifest for stable IDs and richer semantics.
792
+ - **Lossless Content archive:** Preserves Versions, Discussion, Comments, Annotations, Rules, provenance, and other Content-specific meaning.
793
+ - **Target packages:** Produces destination-aware exports, beginning with a Notion-compatible package and conversion report.
794
+ - **Authorized closure:** Materializes exactly what the exporter can currently see without leaking inaccessible dependencies.
795
+ - **Assets and Sources:** Includes authorized files or stable handles and reports anything that could not be resolved.
796
+ - **Durable transfer job:** Supports progress, interruption, retry, and resume without duplicating work.
797
+ - **Local backup:** Lets Desktop maintain a user-chosen portable vault separately from its fast disposable cache.
798
+
799
+ **Required capability records:** [Portable vault export](capabilities/content.portability.vault-export.md), [Faithful round-tripping](capabilities/content.portability.roundtrip.md), [Durable Content jobs](capabilities/content.job.durable.md)
800
+
801
+ **Enhancing capability records:** [PDF export](capabilities/content.portability.pdf-export.md), [Local Source bridge](capabilities/content.source.local-bridge.md)
802
+
803
+ ### Feature 30: Move without starting over
804
+
805
+ Import or migrate a foreign corpus with resumable progress, provenance, repair, and a readable conversion report.
806
+
807
+ **Status:** Partially implemented
808
+
809
+ **Example workflow:** A team imports a large Notion workspace, closes the browser halfway through, resumes without duplicate Pages, and reviews a conversion report showing transformed Properties and unresolved assets.
810
+
811
+ **What works today:** Markdown and MDX import, Notion workflows, Builder pulls, local-folder synchronization, provenance, and provider identities already support several bounded migration paths.
812
+
813
+ **What remains:** Large migrations need durable server-side orchestration, checkpoints, idempotent deduplication, broader schema fidelity, conversion reports, asset repair, resumability, and explicit partial-failure recovery.
814
+
815
+ **What this Feature includes:**
816
+
817
+ - **Canonical import model:** Maps Pages, Databases, Properties, Blocks, relationships, files, and metadata into stable Content objects.
818
+ - **Provider-specific adapters:** Interpret Notion, local vaults, Builder, Drive, and later formats without making any provider's dialect the core model.
819
+ - **Checkpoint and resume:** Continues large migrations after interruption without duplicating already accepted records.
820
+ - **Identity and deduplication:** Preserves stable source IDs and makes repeated imports repair or update the intended objects.
821
+ - **Conversion report:** Explains unsupported or transformed semantics instead of quietly dropping them.
822
+ - **Repair workflows:** Lets people and agents inspect unresolved mappings, missing assets, conflicts, and partial failures.
823
+ - **Provenance:** Keeps enough source context to compare, refresh, or understand the imported material later.
824
+
825
+ **Required capability records:** [Durable Content jobs](capabilities/content.job.durable.md), [Source adapters](capabilities/content.source.adapters.md), [Faithful round-tripping](capabilities/content.portability.roundtrip.md)
826
+
827
+ **Enhancing capability records:** [Sources catalog](capabilities/content.source.catalog.md), [Committed Events](capabilities/content.event.committed.md)
828
+
829
+ ### Feature 31: Work on Content inside another application
830
+
831
+ Mount and edit the same canonical Content object inside an authorized host without forking identity or permissions.
832
+
833
+ **Status:** Planned
834
+
835
+ **Example workflow:** A planner mounts the canonical project brief inside another Agent Native app, edits it through the same Actions, and sees the change, history, and permissions remain identical when opening it later in Content.
836
+
837
+ **What works today:** Agent Native toolkits already share Content components across sibling apps, and Content exposes reusable Actions and object identities that hosts can call without duplicating business logic.
838
+
839
+ **What remains:** A canonical embeddable surface needs host grants, viewer-scoped authorization, shared editing and history, stable mounting contracts, responsive presentation, and later MCP App compatibility.
840
+
841
+ **What this Feature includes:**
842
+
843
+ - **Canonical mount:** Renders the actual Page, View, or focused Content surface rather than a copied snapshot.
844
+ - **Host grant:** Gives one named application only the mount and Action capabilities it needs.
845
+ - **Viewer authority:** Never lets the host widen what the signed-in person could see or edit in Content itself.
846
+ - **Shared Actions:** Routes edits through the same validation, permissions, Events, history, and agent surface.
847
+ - **Agent Native toolkits:** Reuse common components and behavior across sibling applications without coupling them to the Content app shell.
848
+ - **MCP App widening:** Later exposes the same governed surface to compatible external agent hosts once identity and presentation contracts are proven.
849
+
850
+ **Required capability records:** [Embedded Content surface](capabilities/content.embed.surface.md), [Embedded host grants](capabilities/content.embed.host-grant.md), [Agent and UI parity](capabilities/content.agent.action-parity.md)
851
+
852
+ **Enhancing capability records:** [MCP App embedding](capabilities/content.embed.mcp-app.md), [Responsive Page layout](capabilities/content.layout.responsive.md)
853
+
854
+ ### Feature 32: Keep your private vault private
855
+
856
+ Add user-controlled encrypted custody without abandoning collaboration, recovery, or ordinary agent workflows.
857
+
858
+ **Status:** Paused
859
+
860
+ **Example workflow:** A person enrolls a trusted laptop, opens an encrypted private vault locally, grants a local agent bounded access for one task, then revokes the device without exposing the vault to the service.
861
+
862
+ **What works today:** The private-vault lane has substantial research and fork implementation history around enrollment, encrypted custody, device authorization, fail-closed behavior, and cross-architecture verification.
863
+
864
+ **What remains:** The complete user product still needs audited cryptographic integration, understandable recovery and revocation, collaboration, agent access boundaries, portable exit, current-main reconciliation, and production proof. Work remains deliberately paused.
865
+
866
+ **What this Feature includes:**
867
+
868
+ - **End-to-end encryption:** Keeps private content unreadable to the service outside explicitly authorized plaintext boundaries.
869
+ - **Enrollment and recovery:** Gives people understandable key setup, device addition, rotation, revocation, and recovery ceremonies.
870
+ - **Device authority:** Lets trusted local clients decrypt only the vaults and operations they are authorized to handle.
871
+ - **Agent access:** Makes private-vault availability explicit and bounded rather than silently handing an agent plaintext.
872
+ - **Collaboration:** Preserves sharing, Versions, comments, and revocation without weakening the custody promise.
873
+ - **Portable exit:** Allows the owner to export readable authorized content and keys without permanent service dependence.
874
+ - **Paused boundary:** Retains the existing E2EE research and implementation history without claiming the complete workflow is ready.
875
+
876
+ **Required capability records:** [Private vault encryption](capabilities/content.security.private-vault.md), [Agent resource consent](capabilities/content.agent.resource-consent.md), [Portable vault export](capabilities/content.portability.vault-export.md)
877
+
878
+ **Enhancing capability records:** [Local Source bridge](capabilities/content.source.local-bridge.md), [Audience-safe synthesis](capabilities/content.agent.audience-safe.md)