@agent-native/core 0.100.1 → 0.101.2

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 (387) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +73 -0
  3. package/corpus/core/docs/content/locales/ar-SA/pr-visual-recap.mdx +48 -30
  4. package/corpus/core/docs/content/locales/ar-SA/template-plan.mdx +7 -0
  5. package/corpus/core/docs/content/locales/de-DE/pr-visual-recap.mdx +48 -30
  6. package/corpus/core/docs/content/locales/de-DE/template-plan.mdx +7 -0
  7. package/corpus/core/docs/content/locales/es-ES/pr-visual-recap.mdx +48 -30
  8. package/corpus/core/docs/content/locales/es-ES/template-plan.mdx +14 -0
  9. package/corpus/core/docs/content/locales/fr-FR/pr-visual-recap.mdx +48 -30
  10. package/corpus/core/docs/content/locales/fr-FR/template-plan.mdx +7 -0
  11. package/corpus/core/docs/content/locales/hi-IN/pr-visual-recap.mdx +48 -30
  12. package/corpus/core/docs/content/locales/hi-IN/template-plan.mdx +7 -0
  13. package/corpus/core/docs/content/locales/ja-JP/pr-visual-recap.mdx +48 -30
  14. package/corpus/core/docs/content/locales/ja-JP/template-plan.mdx +7 -0
  15. package/corpus/core/docs/content/locales/ko-KR/pr-visual-recap.mdx +48 -30
  16. package/corpus/core/docs/content/locales/ko-KR/template-plan.mdx +7 -0
  17. package/corpus/core/docs/content/locales/pt-BR/pr-visual-recap.mdx +48 -30
  18. package/corpus/core/docs/content/locales/pt-BR/template-plan.mdx +14 -0
  19. package/corpus/core/docs/content/locales/zh-CN/pr-visual-recap.mdx +48 -30
  20. package/corpus/core/docs/content/locales/zh-CN/template-plan.mdx +7 -0
  21. package/corpus/core/docs/content/locales/zh-TW/pr-visual-recap.mdx +48 -30
  22. package/corpus/core/docs/content/locales/zh-TW/template-plan.mdx +7 -0
  23. package/corpus/core/docs/content/pr-visual-recap.mdx +50 -32
  24. package/corpus/core/docs/content/template-plan.mdx +14 -0
  25. package/corpus/core/docs/content/toolkit-comments-review.mdx +16 -2
  26. package/corpus/core/package.json +4 -1
  27. package/corpus/core/src/a2a/index.ts +2 -1
  28. package/corpus/core/src/a2a/server.ts +34 -9
  29. package/corpus/core/src/agent/production-agent.ts +56 -10
  30. package/corpus/core/src/cli/create.ts +47 -19
  31. package/corpus/core/src/cli/pr-visual-recap-workflow.ts +2 -3
  32. package/corpus/core/src/cli/recap.ts +3 -4932
  33. package/corpus/core/src/cli/skills-content/visual-plan-skill.ts +6 -4
  34. package/corpus/core/src/cli/skills-content/visual-recap-skill.ts +7 -1
  35. package/corpus/core/src/client/AgentPanel.tsx +19 -17
  36. package/corpus/core/src/client/AssistantChat.tsx +4 -0
  37. package/corpus/core/src/client/analytics.ts +8 -1
  38. package/corpus/core/src/client/chat/markdown-renderer.tsx +54 -8
  39. package/corpus/core/src/client/chat/message-components.tsx +8 -2
  40. package/corpus/core/src/client/clipboard.ts +28 -1
  41. package/corpus/core/src/client/composer/PromptComposer.tsx +4 -0
  42. package/corpus/core/src/client/composer/TiptapComposer.tsx +30 -3
  43. package/corpus/core/src/client/guided-questions.tsx +4 -0
  44. package/corpus/core/src/client/i18n.tsx +2 -1
  45. package/corpus/core/src/client/index.ts +4 -0
  46. package/corpus/core/src/client/review/ReviewCommentComposer.tsx +108 -0
  47. package/corpus/core/src/client/review/ReviewThreadPanel.tsx +482 -150
  48. package/corpus/core/src/client/review/index.ts +8 -0
  49. package/corpus/core/src/client/review/use-review.ts +35 -1
  50. package/corpus/core/src/client/use-agent-chat-context.ts +3 -2
  51. package/corpus/core/src/integrations/webhook-handler.ts +4 -2
  52. package/corpus/core/src/review/actions/create-review-comment.ts +2 -1
  53. package/corpus/core/src/review/actions/get-review-feedback.ts +6 -11
  54. package/corpus/core/src/review/actions/list-review-comments.ts +38 -4
  55. package/corpus/core/src/review/actions/reply-review-comment.ts +33 -22
  56. package/corpus/core/src/review/actions/resolve-review-thread.ts +29 -2
  57. package/corpus/core/src/review/actions/send-review-thread-to-agent.ts +62 -0
  58. package/corpus/core/src/review/identity.ts +101 -0
  59. package/corpus/core/src/review/index.ts +14 -0
  60. package/corpus/core/src/review/store.ts +315 -8
  61. package/corpus/core/src/review/types.ts +4 -0
  62. package/corpus/core/src/secrets/crypto.ts +98 -47
  63. package/corpus/core/src/secrets/index.ts +2 -1
  64. package/corpus/core/src/secrets/schema.ts +3 -0
  65. package/corpus/core/src/secrets/storage.ts +164 -31
  66. package/corpus/core/src/server/action-discovery.ts +4 -0
  67. package/corpus/core/src/server/action-routes.ts +125 -4
  68. package/corpus/core/src/server/agent-chat/plugin-options.ts +16 -0
  69. package/corpus/core/src/server/agent-chat-plugin.ts +1 -0
  70. package/corpus/core/src/server/index.ts +8 -0
  71. package/corpus/core/src/vite/action-types-plugin.ts +4 -0
  72. package/corpus/templates/analytics/changelog/2026-07-14-daily-dashboard-email-captures-authenticate-with-a-sessi.md +6 -0
  73. package/corpus/templates/analytics/server/lib/dashboard-report.ts +156 -3
  74. package/corpus/templates/assets/app/components/generation/GenerationResults.tsx +402 -142
  75. package/corpus/templates/assets/app/components/layout/Layout.tsx +4 -0
  76. package/corpus/templates/assets/app/hooks/use-navigation-state.ts +3 -1
  77. package/corpus/templates/assets/app/i18n/zh-TW.ts +1 -0
  78. package/corpus/templates/assets/app/i18n-data.ts +1 -0
  79. package/corpus/templates/assets/app/routes/library.tsx +187 -48
  80. package/corpus/templates/assets/changelog/2026-07-13-assets-keeps-the-right-chat-sidebar-closed-when-the-full-pag.md +6 -0
  81. package/corpus/templates/assets/changelog/2026-07-13-merged-the-candidates-panel-into-the-library-as-a-drafts-tab.md +6 -0
  82. package/corpus/templates/chat/app/lib/agent-page.tsx +40 -0
  83. package/corpus/templates/chat/app/routes/agent.tsx +5 -3
  84. package/corpus/templates/chat/changelog/2026-07-14-fixed-chat-template-startup-with-older-core-versions.md +6 -0
  85. package/corpus/templates/clips/.agents/skills/ai-video-tools/SKILL.md +5 -0
  86. package/corpus/templates/clips/AGENTS.md +4 -0
  87. package/corpus/templates/clips/actions/get-feature-flags.ts +30 -0
  88. package/corpus/templates/clips/actions/lib/transcript-preview.ts +48 -0
  89. package/corpus/templates/clips/actions/request-transcript.ts +41 -1
  90. package/corpus/templates/clips/actions/view-screen.ts +5 -9
  91. package/corpus/templates/clips/app/components/library/library-layout.tsx +1 -1
  92. package/corpus/templates/clips/app/components/player/video-player.tsx +39 -1
  93. package/corpus/templates/clips/app/hooks/use-desktop-promo.ts +6 -12
  94. package/corpus/templates/clips/app/hooks/use-mse-video-source.ts +146 -0
  95. package/corpus/templates/clips/app/lib/capture-install-options.ts +21 -0
  96. package/corpus/templates/clips/app/lib/fmp4.ts +271 -0
  97. package/corpus/templates/clips/app/lib/mse-video-loader.ts +585 -0
  98. package/corpus/templates/clips/app/routes/_app.dictate.tsx +0 -4
  99. package/corpus/templates/clips/app/routes/_app.meetings.$meetingId.tsx +5 -13
  100. package/corpus/templates/clips/app/routes/_app.meetings._index.tsx +2 -37
  101. package/corpus/templates/clips/app/routes/download.tsx +3 -2
  102. package/corpus/templates/clips/changelog/2026-07-10-shared-clips-now-start-playing-instantly-instead-of-showing-.md +6 -0
  103. package/corpus/templates/clips/changelog/2026-07-14-clips-now-distinguishes-transcript-previews-from-incomplete-.md +6 -0
  104. package/corpus/templates/clips/changelog/2026-07-14-desktop-app-prompts-stay-hidden-after-you-download-the-insta.md +6 -0
  105. package/corpus/templates/clips/desktop/src/lib/recorder.ts +5 -0
  106. package/corpus/templates/clips/desktop/src/overlays/recording-pill.tsx +10 -0
  107. package/corpus/templates/clips/desktop/src-tauri/src/lib.rs +4 -0
  108. package/corpus/templates/clips/desktop/src-tauri/src/native_screen/custom_capture.rs +2518 -0
  109. package/corpus/templates/clips/desktop/src-tauri/src/native_screen/live_upload.rs +353 -0
  110. package/corpus/templates/clips/desktop/src-tauri/src/native_screen.rs +558 -67
  111. package/corpus/templates/clips/desktop/src-tauri/src/recording_indicator.rs +11 -1
  112. package/corpus/templates/clips/desktop/src-tauri/src/remote_flags.rs +188 -0
  113. package/corpus/templates/clips/desktop/src-tauri/src/whisper_speech.rs +1 -1
  114. package/corpus/templates/clips/server/lib/post-finalize-dispatch.ts +1 -0
  115. package/corpus/templates/clips/server/plugins/agent-chat.ts +5 -0
  116. package/corpus/templates/clips/server/routes/api/_agent-native-background/post-finalize-worker.post.ts +5 -1
  117. package/corpus/templates/clips/shared/feature-flags.ts +41 -0
  118. package/corpus/templates/design/.agents/skills/design-generation/SKILL.md +3 -0
  119. package/corpus/templates/design/.agents/skills/design-review-feedback/SKILL.md +42 -0
  120. package/corpus/templates/design/AGENTS.md +6 -0
  121. package/corpus/templates/design/README.md +1 -0
  122. package/corpus/templates/design/actions/navigate.ts +4 -4
  123. package/corpus/templates/design/actions/view-screen.ts +116 -2
  124. package/corpus/templates/design/agent-native.app-skill.json +5 -0
  125. package/corpus/templates/design/app/components/design/DesignCanvas.tsx +52 -59
  126. package/corpus/templates/design/app/components/design/DesignExtensionsPanel.tsx +13 -9
  127. package/corpus/templates/design/app/components/design/EditPanel.tsx +79 -11
  128. package/corpus/templates/design/app/components/design/LayersPanel.tsx +78 -65
  129. package/corpus/templates/design/app/components/design/ReviewCommentsPanel.tsx +161 -0
  130. package/corpus/templates/design/app/components/design/ReviewStatusControl.tsx +96 -0
  131. package/corpus/templates/design/app/components/design/bridge/hit-test.bridge.ts +166 -0
  132. package/corpus/templates/design/app/components/layout/Layout.tsx +1 -0
  133. package/corpus/templates/design/app/components/visual-editor/ReviewCanvasPins.tsx +1077 -0
  134. package/corpus/templates/design/app/components/visual-editor/index.ts +1 -0
  135. package/corpus/templates/design/app/components/visual-editor/review-canvas-state.ts +42 -0
  136. package/corpus/templates/design/app/hooks/use-design-systems.ts +2 -2
  137. package/corpus/templates/design/app/hooks/use-navigation-state.ts +9 -6
  138. package/corpus/templates/design/app/hooks/use-question-flow.ts +7 -1
  139. package/corpus/templates/design/app/i18n/ar-SA.ts +56 -1
  140. package/corpus/templates/design/app/i18n/de-DE.ts +57 -1
  141. package/corpus/templates/design/app/i18n/en-US.ts +56 -1
  142. package/corpus/templates/design/app/i18n/es-ES.ts +56 -1
  143. package/corpus/templates/design/app/i18n/fr-FR.ts +57 -1
  144. package/corpus/templates/design/app/i18n/hi-IN.ts +56 -1
  145. package/corpus/templates/design/app/i18n/ja-JP.ts +56 -1
  146. package/corpus/templates/design/app/i18n/ko-KR.ts +56 -1
  147. package/corpus/templates/design/app/i18n/pt-BR.ts +57 -1
  148. package/corpus/templates/design/app/i18n/zh-CN.ts +56 -1
  149. package/corpus/templates/design/app/i18n/zh-TW.ts +51 -0
  150. package/corpus/templates/design/app/pages/Present.tsx +172 -14
  151. package/corpus/templates/design/app/pages/design-editor/overview-camera.ts +23 -0
  152. package/corpus/templates/design/app/pages/design-editor/tool-state.ts +10 -0
  153. package/corpus/templates/design/app/pages/present-review-state.ts +18 -0
  154. package/corpus/templates/design/app/public-routes.ts +8 -0
  155. package/corpus/templates/design/app/root.tsx +7 -6
  156. package/corpus/templates/design/changelog/2026-07-13-dragged-design-assets-now-appear-at-the-visible-drop-locatio.md +6 -0
  157. package/corpus/templates/design/changelog/2026-07-13-reviewers-can-pin-comments-on-shared-designs-and-apply-verif.md +6 -0
  158. package/corpus/templates/design/server/plugins/agent-chat.ts +10 -0
  159. package/corpus/templates/design/server/plugins/auth.ts +7 -5
  160. package/corpus/templates/design/server/plugins/review.ts +9 -0
  161. package/corpus/templates/design/shared/review-anchor.ts +83 -0
  162. package/corpus/templates/design/shared/review-summary.ts +25 -0
  163. package/corpus/templates/forms/.agents/skills/form-publishing/SKILL.md +2 -0
  164. package/corpus/templates/forms/AGENTS.md +4 -0
  165. package/corpus/templates/forms/actions/create-form.ts +2 -1
  166. package/corpus/templates/forms/actions/update-form.ts +5 -2
  167. package/corpus/templates/forms/app/i18n/ar-SA.ts +3 -0
  168. package/corpus/templates/forms/app/i18n/de-DE.ts +3 -0
  169. package/corpus/templates/forms/app/i18n/en-US.ts +3 -0
  170. package/corpus/templates/forms/app/i18n/es-ES.ts +3 -0
  171. package/corpus/templates/forms/app/i18n/fr-FR.ts +3 -0
  172. package/corpus/templates/forms/app/i18n/hi-IN.ts +3 -0
  173. package/corpus/templates/forms/app/i18n/ja-JP.ts +3 -0
  174. package/corpus/templates/forms/app/i18n/ko-KR.ts +3 -0
  175. package/corpus/templates/forms/app/i18n/pt-BR.ts +3 -0
  176. package/corpus/templates/forms/app/i18n/zh-CN.ts +3 -0
  177. package/corpus/templates/forms/app/i18n/zh-TW.ts +3 -0
  178. package/corpus/templates/forms/app/pages/FormBuilderPage.tsx +19 -0
  179. package/corpus/templates/forms/changelog/2026-07-14-fixed-the-ask-forms-loading-input-appearing-above-the-welcom.md +6 -0
  180. package/corpus/templates/forms/changelog/2026-07-14-form-social-previews-now-show-the-form-title-description-and.md +6 -0
  181. package/corpus/templates/forms/changelog/2026-07-14-forms-can-email-the-form-owner-when-new-responses-arrive.md +6 -0
  182. package/corpus/templates/forms/server/handlers/submissions.ts +17 -0
  183. package/corpus/templates/forms/server/lib/form-og-image.ts +64 -6
  184. package/corpus/templates/forms/server/lib/public-form-ssr.ts +6 -2
  185. package/corpus/templates/forms/server/lib/response-email.ts +65 -0
  186. package/corpus/templates/forms/server/plugins/agent-chat.ts +1 -0
  187. package/corpus/templates/forms/server/routes/api/forms/og/[...slug]/og.png.get.ts +184 -0
  188. package/corpus/templates/forms/shared/types.ts +2 -0
  189. package/corpus/templates/plan/.agents/skills/visual-plan/SKILL.md +6 -4
  190. package/corpus/templates/plan/.agents/skills/visual-recap/SKILL.md +7 -1
  191. package/dist/a2a/index.d.ts +2 -1
  192. package/dist/a2a/index.d.ts.map +1 -1
  193. package/dist/a2a/index.js +1 -1
  194. package/dist/a2a/index.js.map +1 -1
  195. package/dist/a2a/server.d.ts +25 -0
  196. package/dist/a2a/server.d.ts.map +1 -1
  197. package/dist/a2a/server.js +30 -6
  198. package/dist/a2a/server.js.map +1 -1
  199. package/dist/agent/production-agent.d.ts +2 -0
  200. package/dist/agent/production-agent.d.ts.map +1 -1
  201. package/dist/agent/production-agent.js +37 -12
  202. package/dist/agent/production-agent.js.map +1 -1
  203. package/dist/cli/create.d.ts +5 -3
  204. package/dist/cli/create.d.ts.map +1 -1
  205. package/dist/cli/create.js +44 -19
  206. package/dist/cli/create.js.map +1 -1
  207. package/dist/cli/pr-visual-recap-workflow.d.ts +2 -2
  208. package/dist/cli/pr-visual-recap-workflow.d.ts.map +1 -1
  209. package/dist/cli/pr-visual-recap-workflow.js +2 -2
  210. package/dist/cli/pr-visual-recap-workflow.js.map +1 -1
  211. package/dist/cli/recap.d.ts +3 -562
  212. package/dist/cli/recap.d.ts.map +1 -1
  213. package/dist/cli/recap.js +3 -3875
  214. package/dist/cli/recap.js.map +1 -1
  215. package/dist/cli/skills-content/visual-plan-skill.d.ts +1 -1
  216. package/dist/cli/skills-content/visual-plan-skill.d.ts.map +1 -1
  217. package/dist/cli/skills-content/visual-plan-skill.js +6 -4
  218. package/dist/cli/skills-content/visual-plan-skill.js.map +1 -1
  219. package/dist/cli/skills-content/visual-recap-skill.d.ts +1 -1
  220. package/dist/cli/skills-content/visual-recap-skill.d.ts.map +1 -1
  221. package/dist/cli/skills-content/visual-recap-skill.js +7 -1
  222. package/dist/cli/skills-content/visual-recap-skill.js.map +1 -1
  223. package/dist/client/AgentPanel.d.ts.map +1 -1
  224. package/dist/client/AgentPanel.js +3 -3
  225. package/dist/client/AgentPanel.js.map +1 -1
  226. package/dist/client/AssistantChat.d.ts +2 -0
  227. package/dist/client/AssistantChat.d.ts.map +1 -1
  228. package/dist/client/AssistantChat.js +2 -2
  229. package/dist/client/AssistantChat.js.map +1 -1
  230. package/dist/client/analytics.d.ts +5 -0
  231. package/dist/client/analytics.d.ts.map +1 -1
  232. package/dist/client/analytics.js +3 -1
  233. package/dist/client/analytics.js.map +1 -1
  234. package/dist/client/chat/markdown-renderer.d.ts +1 -0
  235. package/dist/client/chat/markdown-renderer.d.ts.map +1 -1
  236. package/dist/client/chat/markdown-renderer.js +36 -1
  237. package/dist/client/chat/markdown-renderer.js.map +1 -1
  238. package/dist/client/chat/message-components.d.ts.map +1 -1
  239. package/dist/client/chat/message-components.js +5 -2
  240. package/dist/client/chat/message-components.js.map +1 -1
  241. package/dist/client/clipboard.d.ts +3 -1
  242. package/dist/client/clipboard.d.ts.map +1 -1
  243. package/dist/client/clipboard.js +24 -1
  244. package/dist/client/clipboard.js.map +1 -1
  245. package/dist/client/composer/PromptComposer.d.ts +2 -0
  246. package/dist/client/composer/PromptComposer.d.ts.map +1 -1
  247. package/dist/client/composer/PromptComposer.js +2 -2
  248. package/dist/client/composer/PromptComposer.js.map +1 -1
  249. package/dist/client/composer/TiptapComposer.d.ts +3 -1
  250. package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
  251. package/dist/client/composer/TiptapComposer.js +20 -5
  252. package/dist/client/composer/TiptapComposer.js.map +1 -1
  253. package/dist/client/guided-questions.d.ts +3 -1
  254. package/dist/client/guided-questions.d.ts.map +1 -1
  255. package/dist/client/guided-questions.js +2 -1
  256. package/dist/client/guided-questions.js.map +1 -1
  257. package/dist/client/i18n.d.ts.map +1 -1
  258. package/dist/client/i18n.js +3 -1
  259. package/dist/client/i18n.js.map +1 -1
  260. package/dist/client/index.d.ts +1 -1
  261. package/dist/client/index.d.ts.map +1 -1
  262. package/dist/client/index.js +1 -1
  263. package/dist/client/index.js.map +1 -1
  264. package/dist/client/review/ReviewCommentComposer.d.ts +18 -0
  265. package/dist/client/review/ReviewCommentComposer.d.ts.map +1 -0
  266. package/dist/client/review/ReviewCommentComposer.js +30 -0
  267. package/dist/client/review/ReviewCommentComposer.js.map +1 -0
  268. package/dist/client/review/ReviewThreadPanel.d.ts +28 -1
  269. package/dist/client/review/ReviewThreadPanel.d.ts.map +1 -1
  270. package/dist/client/review/ReviewThreadPanel.js +151 -39
  271. package/dist/client/review/ReviewThreadPanel.js.map +1 -1
  272. package/dist/client/review/index.d.ts +3 -2
  273. package/dist/client/review/index.d.ts.map +1 -1
  274. package/dist/client/review/index.js +2 -1
  275. package/dist/client/review/index.js.map +1 -1
  276. package/dist/client/review/use-review.d.ts +23 -0
  277. package/dist/client/review/use-review.d.ts.map +1 -1
  278. package/dist/client/review/use-review.js +3 -0
  279. package/dist/client/review/use-review.js.map +1 -1
  280. package/dist/client/use-agent-chat-context.d.ts +1 -1
  281. package/dist/client/use-agent-chat-context.d.ts.map +1 -1
  282. package/dist/client/use-agent-chat-context.js +4 -2
  283. package/dist/client/use-agent-chat-context.js.map +1 -1
  284. package/dist/collab/awareness.d.ts +2 -2
  285. package/dist/collab/awareness.d.ts.map +1 -1
  286. package/dist/collab/struct-routes.d.ts +1 -1
  287. package/dist/file-upload/actions/upload-image.d.ts +1 -1
  288. package/dist/integrations/webhook-handler.d.ts.map +1 -1
  289. package/dist/integrations/webhook-handler.js +3 -2
  290. package/dist/integrations/webhook-handler.js.map +1 -1
  291. package/dist/notifications/routes.d.ts +3 -3
  292. package/dist/observability/routes.d.ts +5 -5
  293. package/dist/progress/routes.d.ts +1 -1
  294. package/dist/provider-api/corpus-jobs.d.ts +2 -2
  295. package/dist/resources/handlers.d.ts +2 -2
  296. package/dist/review/actions/create-review-comment.js +2 -1
  297. package/dist/review/actions/create-review-comment.js.map +1 -1
  298. package/dist/review/actions/get-review-feedback.js +6 -11
  299. package/dist/review/actions/get-review-feedback.js.map +1 -1
  300. package/dist/review/actions/list-review-comments.d.ts +1 -0
  301. package/dist/review/actions/list-review-comments.js +25 -4
  302. package/dist/review/actions/list-review-comments.js.map +1 -1
  303. package/dist/review/actions/reply-review-comment.js +12 -5
  304. package/dist/review/actions/reply-review-comment.js.map +1 -1
  305. package/dist/review/actions/resolve-review-thread.d.ts +3 -0
  306. package/dist/review/actions/resolve-review-thread.js +20 -3
  307. package/dist/review/actions/resolve-review-thread.js.map +1 -1
  308. package/dist/review/actions/send-review-thread-to-agent.d.ts +17 -0
  309. package/dist/review/actions/send-review-thread-to-agent.d.ts.map +1 -0
  310. package/dist/review/actions/send-review-thread-to-agent.js +49 -0
  311. package/dist/review/actions/send-review-thread-to-agent.js.map +1 -0
  312. package/dist/review/identity.d.ts +6 -0
  313. package/dist/review/identity.d.ts.map +1 -0
  314. package/dist/review/identity.js +68 -0
  315. package/dist/review/identity.js.map +1 -0
  316. package/dist/review/index.d.ts +3 -1
  317. package/dist/review/index.d.ts.map +1 -1
  318. package/dist/review/index.js +2 -1
  319. package/dist/review/index.js.map +1 -1
  320. package/dist/review/store.d.ts +36 -0
  321. package/dist/review/store.d.ts.map +1 -1
  322. package/dist/review/store.js +223 -8
  323. package/dist/review/store.js.map +1 -1
  324. package/dist/review/types.d.ts +4 -0
  325. package/dist/review/types.d.ts.map +1 -1
  326. package/dist/review/types.js.map +1 -1
  327. package/dist/secrets/crypto.d.ts +35 -13
  328. package/dist/secrets/crypto.d.ts.map +1 -1
  329. package/dist/secrets/crypto.js +78 -41
  330. package/dist/secrets/crypto.js.map +1 -1
  331. package/dist/secrets/index.d.ts.map +1 -1
  332. package/dist/secrets/index.js +2 -1
  333. package/dist/secrets/index.js.map +1 -1
  334. package/dist/secrets/routes.d.ts +9 -9
  335. package/dist/secrets/schema.d.ts +20 -1
  336. package/dist/secrets/schema.d.ts.map +1 -1
  337. package/dist/secrets/schema.js +3 -0
  338. package/dist/secrets/schema.js.map +1 -1
  339. package/dist/secrets/storage.d.ts +7 -7
  340. package/dist/secrets/storage.d.ts.map +1 -1
  341. package/dist/secrets/storage.js +121 -30
  342. package/dist/secrets/storage.js.map +1 -1
  343. package/dist/server/action-discovery.d.ts.map +1 -1
  344. package/dist/server/action-discovery.js +4 -0
  345. package/dist/server/action-discovery.js.map +1 -1
  346. package/dist/server/action-routes.d.ts +45 -0
  347. package/dist/server/action-routes.d.ts.map +1 -1
  348. package/dist/server/action-routes.js +71 -5
  349. package/dist/server/action-routes.js.map +1 -1
  350. package/dist/server/agent-chat/plugin-options.d.ts +16 -0
  351. package/dist/server/agent-chat/plugin-options.d.ts.map +1 -1
  352. package/dist/server/agent-chat/plugin-options.js.map +1 -1
  353. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  354. package/dist/server/agent-chat-plugin.js +1 -0
  355. package/dist/server/agent-chat-plugin.js.map +1 -1
  356. package/dist/server/index.d.ts +3 -1
  357. package/dist/server/index.d.ts.map +1 -1
  358. package/dist/server/index.js +2 -0
  359. package/dist/server/index.js.map +1 -1
  360. package/dist/vite/action-types-plugin.d.ts.map +1 -1
  361. package/dist/vite/action-types-plugin.js +4 -0
  362. package/dist/vite/action-types-plugin.js.map +1 -1
  363. package/docs/content/locales/ar-SA/pr-visual-recap.mdx +48 -30
  364. package/docs/content/locales/ar-SA/template-plan.mdx +7 -0
  365. package/docs/content/locales/de-DE/pr-visual-recap.mdx +48 -30
  366. package/docs/content/locales/de-DE/template-plan.mdx +7 -0
  367. package/docs/content/locales/es-ES/pr-visual-recap.mdx +48 -30
  368. package/docs/content/locales/es-ES/template-plan.mdx +14 -0
  369. package/docs/content/locales/fr-FR/pr-visual-recap.mdx +48 -30
  370. package/docs/content/locales/fr-FR/template-plan.mdx +7 -0
  371. package/docs/content/locales/hi-IN/pr-visual-recap.mdx +48 -30
  372. package/docs/content/locales/hi-IN/template-plan.mdx +7 -0
  373. package/docs/content/locales/ja-JP/pr-visual-recap.mdx +48 -30
  374. package/docs/content/locales/ja-JP/template-plan.mdx +7 -0
  375. package/docs/content/locales/ko-KR/pr-visual-recap.mdx +48 -30
  376. package/docs/content/locales/ko-KR/template-plan.mdx +7 -0
  377. package/docs/content/locales/pt-BR/pr-visual-recap.mdx +48 -30
  378. package/docs/content/locales/pt-BR/template-plan.mdx +14 -0
  379. package/docs/content/locales/zh-CN/pr-visual-recap.mdx +48 -30
  380. package/docs/content/locales/zh-CN/template-plan.mdx +7 -0
  381. package/docs/content/locales/zh-TW/pr-visual-recap.mdx +48 -30
  382. package/docs/content/locales/zh-TW/template-plan.mdx +7 -0
  383. package/docs/content/pr-visual-recap.mdx +50 -32
  384. package/docs/content/template-plan.mdx +14 -0
  385. package/docs/content/toolkit-comments-review.mdx +16 -2
  386. package/package.json +4 -1
  387. package/corpus/templates/forms/server/routes/api/forms/og/[slug]/og.png.get.ts +0 -45
package/corpus/README.md CHANGED
@@ -27,5 +27,5 @@ rg -n "defineAction|useActionQuery" node_modules/@agent-native/core/corpus
27
27
 
28
28
  ## Generated Counts
29
29
 
30
- - core files: 2255
31
- - template files: 5587
30
+ - core files: 2258
31
+ - template files: 5620
@@ -1,5 +1,78 @@
1
1
  # @agent-native/core
2
2
 
3
+ ## 0.101.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 616e2b9: Copying an assistant message now preserves formatting when pasting into apps
8
+ that read rich clipboard content (e.g. Slack), while still pasting as markdown
9
+ in editors like Notion. Falls back to plain-text copy where the browser does
10
+ not support rich clipboard writes.
11
+
12
+ ## 0.101.1
13
+
14
+ ### Patch Changes
15
+
16
+ - f25194e: Keep centered chat composer skeletons aligned with the real composer while the chat UI loads.
17
+ - f25194e: Document PR Visual Recap's cost drivers and cheaper model options (`claude-haiku-4-5`, `gpt-5.6-luna`/`gpt-5.6-terra`, `openai-compatible` providers), and note that the Claude backend now defaults to `claude-sonnet-5` when `VISUAL_RECAP_MODEL` is unset. Adds a matching cost/model-choice section to the Visual Plans template doc.
18
+ - f25194e: Fail closed when first-party scaffolds cannot be downloaded from the CLI's immutable core version tags instead of mixing newer templates with an older runtime.
19
+ - f25194e: Expose the embedded OG font resolver so template social images keep their text visible in serverless runtimes.
20
+ - f25194e: Stop agent turns from looping across alternating read-only docs and source search tools.
21
+ - f25194e: Publish PR Visual Recap helpers as a dependency-light CLI package so recap workflows no longer install the full Agent-Native framework dependency graph.
22
+ - Updated dependencies [f25194e]
23
+ - Updated dependencies [f25194e]
24
+ - Updated dependencies [f25194e]
25
+ - @agent-native/recap-cli@0.3.0
26
+
27
+ ## 0.101.0
28
+
29
+ ### Minor Changes
30
+
31
+ - fb281f4: Export first-class A2A auth primitives for the HTTP action route so workspaces
32
+ stop reaching into core internals:
33
+ - `verifyA2AToken` (and `A2ATokenPayload`) from `@agent-native/core/a2a` — the
34
+ same verifier the `/_agent-native/a2a` endpoint uses, including org-level
35
+ fallback secrets. Apps no longer need to reimplement a partial HS256 verifier.
36
+ - `AGENT_RUN_OWNER_CONTEXT_KEY`, `seedAgentRunOwnerContext`, and
37
+ `AgentRunOwnerContext` from `@agent-native/core/server` — a typed contract for
38
+ pre-seeding the resolved caller, replacing the hardcoded context-key string.
39
+ - A new `actionRouteAuth` option on `createAgentChatPlugin` (and `ActionRouteAuthAdapter`
40
+ / `actionRouteAuth` on `mountActionRoutes`). Its `resolveCaller` runs before
41
+ the `getSession` chain on `/_agent-native/actions/*`, letting apps accept A2A
42
+ JWTs declaratively instead of intercepting Nitro's `request` hook. Returning
43
+ `null` defers to the existing framework auth chain; throwing hard-rejects the
44
+ request with a 401 so an invalid credential can't fall through to a
45
+ same-origin session cookie. A resolved caller's org comes exclusively from
46
+ the verified credential — the adapter-returned `orgId`
47
+ (`ActionRouteResolvedCaller`) or the owner-email membership lookup — never
48
+ from ambient session/org cookie state, so a request carrying both a valid
49
+ A2A bearer and an unrelated browser cookie can't execute under the cookie
50
+ user's org. A2A writes stay org-scoped.
51
+
52
+ All additive — existing callers are unaffected.
53
+
54
+ ## 0.100.4
55
+
56
+ ### Patch Changes
57
+
58
+ - f2ed084: Add public-safe review reads and client gating, root-thread agent routing, durable resolution notes, and capability-aware review panels.
59
+
60
+ ## 0.100.3
61
+
62
+ ### Patch Changes
63
+
64
+ - a6742d1: Publish PR Visual Recap helpers as a dependency-light CLI package so recap workflows no longer install the full Agent-Native framework dependency graph.
65
+ - Updated dependencies [a6742d1]
66
+ - @agent-native/recap-cli@0.2.0
67
+
68
+ ## 0.100.2
69
+
70
+ ### Patch Changes
71
+
72
+ - f8cf755: Add a native local-runtime sign-in handoff for Codex-backed ChatGPT subscriptions in Agent composer surfaces.
73
+ - f8cf755: Fix Slack integration fallbacks and link replies directly to Dispatch chat threads.
74
+ - f8cf755: Keep workspace-shared app secrets decryptable across sibling apps.
75
+
3
76
  ## 0.100.1
4
77
 
5
78
  ### Patch Changes
@@ -102,13 +102,13 @@ PR Visual Recap هو إجراء GitHub يحول كل طلب سحب إلى **مر
102
102
  npx @agent-native/core@latest skills add visual-plan --with-github-action
103
103
  ```
104
104
 
105
- يؤدي ذلك إلى تثبيت مهارة `visual-plan` (والتي تتضمن مهارة `visual-recap` التي يتم تشغيلها) ويكتب `.github/workflows/pr-visual-recap.yml` في الريبو الخاص بك. يستدعي سير العمل **الأوامر الفرعية CLI المنشورة** من خلال `npx @agent-native/core@latest recap <subcommand>` — بما في ذلك `gate` و`collect-diff` و`block-reference` و`scan` و`build-prompt` و`publish` و`shot` و`comment` و`check` و `usage` - لذلك لا يتم نسخ أي شيء إلى الريبو الخاص بك كنصوص برمجية مساعدة. `setup` و`doctor` هما المساعدان التفاعليان اللذان تقومان بتشغيلهما محليًا؛ `gate` هي خطوة بوابة الأمان التي يتم تشغيلها في سير العمل قبل كل ملخص.
105
+ يؤدي ذلك إلى تثبيت مهارة `visual-plan` (والتي تتضمن مهارة `visual-recap` التي يتم تشغيلها) ويكتب `.github/workflows/pr-visual-recap.yml` في الريبو الخاص بك. يستدعي سير العمل **الأوامر الفرعية CLI المنشورة** من خلال `npx @agent-native/recap-cli@latest recap <subcommand>` — بما في ذلك `gate` و`collect-diff` و`block-reference` و`scan` و`build-prompt` و`publish` و`shot` و`comment` و`check` و `usage` - لذلك لا يتم نسخ أي شيء إلى الريبو الخاص بك كنصوص برمجية مساعدة. `setup` و`doctor` هما المساعدان التفاعليان اللذان تقومان بتشغيلهما محليًا؛ `gate` هي خطوة بوابة الأمان التي يتم تشغيلها في سير العمل قبل كل ملخص.
106
106
 
107
107
  ثم قم بتشغيل مساعد الإعداد الموجه:
108
108
 
109
109
  ```bash
110
- npx @agent-native/core@latest recap setup
111
- npx @agent-native/core@latest recap doctor
110
+ npx @agent-native/recap-cli@latest recap setup
111
+ npx @agent-native/recap-cli@latest recap doctor
112
112
  ```
113
113
 
114
114
  يقوم `recap setup` بتحديث سير العمل، ويستخدم `gh` لتعيين GitHub Actions
@@ -118,7 +118,7 @@ npx @agent-native/core@latest recap doctor
118
118
  ملف سير العمل الذي تم إنشاؤه وافتح PR لمشاهدته قيد التشغيل.
119
119
 
120
120
  افتراضيًا، ينشئ سير العمل موجه الوكيل الخاص به من أحدث حزمة
121
- إرشادات `visual-recap` في `@agent-native/core@latest`، بما في ذلك أي شقيق
121
+ إرشادات `visual-recap` في `@agent-native/recap-cli@latest`، بما في ذلك أي شقيق
122
122
  الملفات المرجعية التي تأتي معها المهارة. إذا تم تخصيص الريبو الخاص بك عن قصد و
123
123
  يثبت مجلد `visual-recap` المخصص له، ويضبط متغير المستودع
124
124
  `VISUAL_RECAP_SKILL_SOURCE=repo`.
@@ -135,8 +135,8 @@ npx @agent-native/core@latest recap doctor
135
135
  علامات الاقتباس في JSON مطلوبة. تحدد هذه القيمة مشغّل مهمة `recap` الكاملة. لتكوينه أثناء الإعداد الموجّه، مرّر قيمة JSON نفسها إلى `--runs-on`، ثم تحقق من سير العمل وتوفر المشغّل باستخدام `doctor`:
136
136
 
137
137
  ```bash
138
- npx @agent-native/core@latest recap setup --runs-on '["self-hosted","linux","x64","visual-recap"]'
139
- npx @agent-native/core@latest recap doctor
138
+ npx @agent-native/recap-cli@latest recap setup --runs-on '["self-hosted","linux","x64","visual-recap"]'
139
+ npx @agent-native/recap-cli@latest recap doctor
140
140
  ```
141
141
 
142
142
  تستخدم بوابة الأمان الخفيفة `ubuntu-latest` بشكل منفصل. يمكن للمستودعات التي تعطل مشغّلات GitHub المستضافة ضبط `VISUAL_RECAP_GATE_RUNS_ON` على تسمية نصية واحدة بلا JSON، أو استخدام `--gate-runs-on visual-recap-gate`. تُستخدم التسمية المخصصة فقط لمؤلفي `OWNER` أو `MEMBER` أو `COLLABORATOR` من المستودع نفسه؛ تُفرض `ubuntu-latest` على الفروع والمؤلفين الآخرين وقد تبقى عملياتهم بلا جدولة عند تعطيل مشغّلات GitHub المستضافة. استخدم مشغّلًا مخصصًا ويفضل أن يكون مؤقتًا؛ لا تسحب البوابة القياسية شجرة PR وتقيّم منطق سير العمل وبيانات PR الوصفية.
@@ -160,12 +160,30 @@ npx @agent-native/core@latest recap doctor
160
160
 
161
161
  خارج الواجهة الخلفية، يوجد متغيران في المستودع يضبطان _كيف_ يعمل الوكيل:
162
162
 
163
- - **`VISUAL_RECAP_MODEL`** يثبت النموذج الذي تم تمريره إلى CLI (`--model`) — على سبيل المثال `gpt-5.6-sol` لـ Codex، أو معرف نموذج Claude. اتركه بدون ضبط لاستخدام النموذج الافتراضي الخاص بـ CLI.
163
+ - **`VISUAL_RECAP_MODEL`** يثبت النموذج الذي يتم تمريره إلى CLI (`--model`) — على سبيل المثال `gpt-5.6-luna` لـ Codex، أو معرف نموذج Claude، أو `deepseek-chat` لـ DeepSeek. وهو مطلوب لـ `openai-compatible`. بالنسبة للواجهة الخلفية **Claude**، فإن تركه بدون ضبط يستخدم الآن `claude-sonnet-5` افتراضيًا؛ اضبط المتغير صراحةً لاستخدام نموذج Claude مختلف، مثل `claude-haiku-4-5` الأرخص. بالنسبة للواجهة الخلفية **Codex**، فإن تركه بدون ضبط يستخدم النموذج الافتراضي الخاص بـ Codex CLI.
164
164
  - **`VISUAL_RECAP_REASONING`** يضبط عمق الاستدلال: `none` أو `minimal` أو `low` أو `medium` أو `high` أو `xhigh`. وينطبق ذلك على الواجهة الخلفية Codex؛ يعتمد منطق Claude على النموذج، لذلك يتم تجاهل هذا المتغير هناك.
165
165
  - **`VISUAL_RECAP_SKILL_SOURCE`** يتحكم في الحداثة السريعة: يستخدم `auto`/unset أحدث توجيهات المهارات المجمعة، بينما يتم تثبيت `repo` في مجلد مهارات `visual-recap` المحلي المخصص.
166
166
 
167
167
  على سبيل المثال، لتشغيل الملخص على Codex باستخدام GPT-5.6 Sol عند المنطق العالي، قم بتعيين متغيرات المستودع `VISUAL_RECAP_AGENT=codex`، و`VISUAL_RECAP_MODEL=gpt-5.6-sol`، و`VISUAL_RECAP_REASONING=high`.
168
168
 
169
+ ## التكلفة
170
+
171
+ كل تشغيل للملخّص هو جلسة كاملة لوكيل ترميز يقرأ فرقًا حقيقيًا (diff)، وليس ملخصًا رخيصًا بقالب جاهز، لذا تتبع تكلفته اختيار النموذج وعدد مرات تشغيله:
172
+
173
+ - **جلسة كاملة لكل دفعة (push) على طلب السحب.** يعمل المُشغّل الافتراضي عند `synchronize`، لذا فإن طلب سحب (PR) تم دفعه عشر مرات يشغّل الوكيل عشر مرات.
174
+ - **طلب السحب بأكمله في كل مرة**، وليس فقط الالتزامات (commits) منذ آخر تشغيل — تتناسب التكلفة مع الحجم الإجمالي لطلب السحب، وليس مع حجم الفرق التزايدي.
175
+ - **إدخال الفرق محدود بحوالي 600 كيلوبايت.** هذا يحدّ من أسوأ الحالات لكل تشغيل، لكن الفروقات الكبيرة لا تزال تكلف أكثر بشكل ملحوظ من الصغيرة.
176
+ - **إعادة محاولة تلقائية واحدة عند الفشل**، والتي يمكن أن تضاعف تقريبًا تكلفة التشغيل الذي يفشل بشكل عابر.
177
+
178
+ لتقليل التكلفة:
179
+
180
+ - **ثبّت نموذجًا أرخص.** بالنسبة لـ Claude، اضبط `VISUAL_RECAP_MODEL=claude-haiku-4-5` للمستودعات البسيطة أو الصغيرة — إنه أرخص فئة من Claude؛ `claude-sonnet-5` (الافتراضي) هو الفئة المتوازنة.
181
+ - **انتقل إلى Codex بنموذج أرخص.** اضبط `VISUAL_RECAP_AGENT=codex` مع `VISUAL_RECAP_MODEL=gpt-5.6-luna` (أرخص فئة من GPT-5.6) أو `gpt-5.6-terra` (فئة متوسطة)، واضبط `VISUAL_RECAP_REASONING=low` لخفض إنفاق رموز الاستدلال أكثر. يُطبَّق عمق الاستدلال على Codex فقط.
182
+ - **وجّهه إلى مزود متوافق مع OpenAI أرخص.** اضبط `VISUAL_RECAP_AGENT=openai-compatible` مع `VISUAL_RECAP_BASE_URL`/`VISUAL_RECAP_MODEL`/`VISUAL_RECAP_API_KEY` مستهدفًا DeepSeek أو Kimi أو أي نقطة نهاية أخرى متوافقة مع OpenAI.
183
+ - **قلّل من تكرار الملخصات.** عدّل `on.pull_request.types` في سير العمل المثبّت من `[opened, synchronize, reopened, ready_for_review, closed]` إلى `[opened, ready_for_review, closed]` بحيث يتم إنشاء الملخّص فقط عند فتح طلب السحب وعند دمجه، بدلاً من كل دفعة.
184
+
185
+ يسجّل كل تشغيل ما أنفقه فعليًا: تُرفق خطوة `recap usage` في سير العمل استخدام الرموز والتكلفة بالخطة المنشورة، حتى تتمكن من الاطلاع على الإنفاق الفعلي لكل تشغيل بدلاً من التخمين.
186
+
169
187
  ## الأسرار والمتغيرات
170
188
 
171
189
  قم بتعيين هذه العناصر في **الإعدادات ← الأسرار والمتغيرات ← Actions** في مستودعك.
@@ -196,11 +214,11 @@ npx @agent-native/core@latest connect https://plan.agent-native.com --service-to
196
214
 
197
215
  **Solo: رمز شخصي لا يزال يعمل.** اصنعه باستخدام `npx @agent-native/core@latest connect`
198
216
  مقابل تطبيق الخطط الخاص بك. بالنسبة للتطبيق المستضاف، يقوم هذا أيضًا بكتابة محلي
199
- ملف رمز النشر المميز الذي يستطيع `npx @agent-native/core@latest recap setup` قراءته:
217
+ ملف رمز النشر المميز الذي يستطيع `npx @agent-native/recap-cli@latest recap setup` قراءته:
200
218
 
201
219
  ```bash
202
220
  npx @agent-native/core@latest connect https://plan.agent-native.com --client codex
203
- npx @agent-native/core@latest recap setup
221
+ npx @agent-native/recap-cli@latest recap setup
204
222
  ```
205
223
 
206
224
  إذا كنت تفضل الإعداد اليدوي، فالصق الرمز المميز في سر GitHub. استخدم
@@ -209,16 +227,16 @@ npx @agent-native/core@latest recap setup
209
227
 
210
228
  ### اختياري (فقط في حالة تغيير الإعدادات الافتراضية)
211
229
 
212
- | سري/متغير | الافتراضي | عندما تحتاج إليه |
213
- | ------------------------ | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
214
- | `OPENAI_API_KEY` | — | سرية. اضبطه مع `VISUAL_RECAP_AGENT=codex` لتشغيل الخلاصة باستخدام Codex بدلاً من ذلك. |
215
- | `VISUAL_RECAP_AGENT` | `claude` | متغير. يحدد الواجهة الخلفية لعامل التشفير (`claude` أو `codex`). |
216
- | `VISUAL_RECAP_MODEL` | كل CLI الافتراضي | متغير. دبابيس النموذج - على سبيل المثال. `gpt-5.6-sol` لـ Codex، أو معرف طراز Claude. يستخدم Unset الإعداد الافتراضي الخاص بـ CLI. |
217
- | `VISUAL_RECAP_REASONING` | الإعداد الافتراضي لكل نموذج | متغير. عمق الاستدلال: `none`، أو `minimal`، أو `low`، أو `medium`، أو `high`، أو `xhigh`. ينطبق على الواجهة الخلفية Codex. |
218
- | `RECAP_CLI_VERSION` | `latest` | متغير. تثبيت إصدار `@agent-native/core` CLI الذي يقوم سير العمل بتثبيته - على سبيل المثال. `1.5.0`. انظر [Version pinning](#version-pinning-copy-variant). |
219
- | `PLAN_RECAP_APP_URL` | `https://plan.agent-native.com` | سرية. فقط عند الاستضافة الذاتية لتطبيق الخطط على مصدر مختلف. |
230
+ | سري/متغير | الافتراضي | عندما تحتاج إليه |
231
+ | ------------------------ | ------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
232
+ | `OPENAI_API_KEY` | — | سرية. اضبطه مع `VISUAL_RECAP_AGENT=codex` لتشغيل الخلاصة باستخدام Codex بدلاً من ذلك. |
233
+ | `VISUAL_RECAP_AGENT` | `claude` | متغير. يحدد الواجهة الخلفية لعامل التشفير (`claude` أو `codex`). |
234
+ | `VISUAL_RECAP_MODEL` | `claude-sonnet-5` لـ Claude؛ مطلوب للواجهة الخلفية المتوافقة | متغير. معرف نموذج المزوّد للواجهات الخلفية المتوافقة مع OpenAI (مطلوب هناك). بالنسبة لـ Claude، تركه بدون ضبط يستخدم الآن `claude-sonnet-5` افتراضيًا اضبطه لتجاوز ذلك، مثل `claude-haiku-4-5` لأرخص فئة. بالنسبة لـ Codex، تركه بدون ضبط يستخدم الإعداد الافتراضي الخاص بـ Codex CLI. |
235
+ | `VISUAL_RECAP_REASONING` | الإعداد الافتراضي لكل نموذج | متغير. عمق الاستدلال: `none`، أو `minimal`، أو `low`، أو `medium`، أو `high`، أو `xhigh`. ينطبق على الواجهة الخلفية Codex. |
236
+ | `RECAP_CLI_VERSION` | `latest` | متغير. تثبيت إصدار `@agent-native/recap-cli` CLI الذي يقوم سير العمل بتثبيته - على سبيل المثال. `1.5.0`. انظر [Version pinning](#version-pinning-copy-variant). |
237
+ | `PLAN_RECAP_APP_URL` | `https://plan.agent-native.com` | سرية. فقط عند الاستضافة الذاتية لتطبيق الخطط على مصدر مختلف. |
220
238
 
221
- يكتشف سير العمل تلقائيًا كيفية استدعاء مساعده CLI (المصدر المحلي داخل هذا monorepo، `@agent-native/core` المنشور في مكان آخر)، لذا لا يوجد متغير `RECAP_CLI` لتعيينه.
239
+ يكتشف سير العمل تلقائيًا كيفية استدعاء مساعده CLI (المصدر المحلي داخل هذا monorepo، `@agent-native/recap-cli` المنشور في مكان آخر)، لذا لا يوجد متغير `RECAP_CLI` لتعيينه.
222
240
 
223
241
  ## لقطة شاشة مضمنة في التعليق
224
242
 
@@ -359,9 +377,9 @@ npx @agent-native/core@latest recap setup
359
377
  يتدفق نفس المساعد محليًا في وضع الملفات المحلية بدلاً من ذلك:
360
378
 
361
379
  ```bash
362
- npx @agent-native/core@latest recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
363
- npx @agent-native/core@latest recap scan --diff recap.diff
364
- npx @agent-native/core@latest recap build-prompt --pr 123 --diff recap.diff --stat recap.stat --local-files --local-dir plans/pr-123-visual-recap
380
+ npx @agent-native/recap-cli@latest recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
381
+ npx @agent-native/recap-cli@latest recap scan --diff recap.diff
382
+ npx @agent-native/recap-cli@latest recap build-prompt --pr 123 --diff recap.diff --stat recap.stat --local-files --local-dir plans/pr-123-visual-recap
365
383
  ```
366
384
 
367
385
  أعط `recap-prompt.md` الذي تم إنشاؤه إلى وكيل الترميز الخاص بك. في وضع الملفات المحلية
@@ -391,7 +409,7 @@ npx @agent-native/core@latest plan local serve --dir plans/pr-123-visual-recap -
391
409
 
392
410
  ## تثبيت الإصدار (متغير النسخ) {#version-pinning-copy-variant}
393
411
 
394
- افتراضيًا، يقوم سير عمل النسخ المتغير بتثبيت `@agent-native/core@latest` في وقت التشغيل، لذا فإن كل عملية تلخيص تلتقط تلقائيًا أحدث CLI. إذا كان CI الخاص بك يحتاج إلى أدوات قابلة للتكرار، فقم بتعيين متغير المستودع **`RECAP_CLI_VERSION`** لتثبيت الإصدار المثبت:
412
+ افتراضيًا، يقوم سير عمل النسخ المتغير بتثبيت `@agent-native/recap-cli@latest` في وقت التشغيل، لذا فإن كل عملية تلخيص تلتقط تلقائيًا أحدث CLI. إذا كان CI الخاص بك يحتاج إلى أدوات قابلة للتكرار، فقم بتعيين متغير المستودع **`RECAP_CLI_VERSION`** لتثبيت الإصدار المثبت:
395
413
 
396
414
  1. انتقل إلى الريبو الخاص بك **الإعدادات → الأسرار والمتغيرات → Actions → المتغيرات**.
397
415
  2. قم بإنشاء متغير باسم `RECAP_CLI_VERSION` بقيمة مثل `1.5.0`.
@@ -402,7 +420,7 @@ npx @agent-native/core@latest plan local serve --dir plans/pr-123-visual-recap -
402
420
 
403
421
  ## القائمة المسموح بها للفحص السري
404
422
 
405
- قبل نشر الملخّص، يقوم سير العمل بتشغيل `npx @agent-native/core@latest recap scan` لاكتشاف الأسرار المحتملة في الفرق. يتم حظر أي علاقات عامة يتطابق فرقها مع نمط سري معروف بتعليق توضيحي - لا يتم نشر الملخص، ولا يتم إرسال أي محتوى فرق إلى وكيل الترميز.
423
+ قبل نشر الملخّص، يقوم سير العمل بتشغيل `npx @agent-native/recap-cli@latest recap scan` لاكتشاف الأسرار المحتملة في الفرق. يتم حظر أي علاقات عامة يتطابق فرقها مع نمط سري معروف بتعليق توضيحي - لا يتم نشر الملخص، ولا يتم إرسال أي محتوى فرق إلى وكيل الترميز.
406
424
 
407
425
  في حالات نادرة، يحتوي الريبو على تركيبات اختبار متعمدة أو سلاسل غير سرية تشبه بشكل سطحي الأنماط السرية (على سبيل المثال، مفتاح التثبيت في ملف اختبار). لمنع النتيجة الإيجابية الخاطئة، قم بإنشاء `.github/recap-scan-allowlist` في جذر المستودع الخاص بك.
408
426
 
@@ -436,7 +454,7 @@ EXAMPLE_API_KEY=placeholder-value
436
454
 
437
455
  ### لماذا نستخدم المتغير القابل لإعادة الاستخدام؟
438
456
 
439
- يقوم المثبت الافتراضي بنسخ سير العمل YAML الكامل ~360 سطرًا إلى الريبو الخاص بك (خيار **النسخ**). هذا هو الاختيار الصحيح لعمليات إعادة الشراء أو عمليات إعادة الشراء التي تحتاج إلى مراجعة كل سطر مما يتم تشغيله. الجانب السلبي هو أن إصلاحات الأخطاء والتحسينات لا تصل إليك أبدًا — تحتاج إلى إعادة تشغيل `npx @agent-native/core@latest recap setup` يدويًا بعد كل إصدار.
457
+ يقوم المثبت الافتراضي بنسخ سير العمل YAML الكامل ~360 سطرًا إلى الريبو الخاص بك (خيار **النسخ**). هذا هو الاختيار الصحيح لعمليات إعادة الشراء أو عمليات إعادة الشراء التي تحتاج إلى مراجعة كل سطر مما يتم تشغيله. الجانب السلبي هو أن إصلاحات الأخطاء والتحسينات لا تصل إليك أبدًا — تحتاج إلى إعادة تشغيل `npx @agent-native/recap-cli@latest recap setup` يدويًا بعد كل إصدار.
440
458
 
441
459
  يقوم الخيار **القابل لإعادة الاستخدام** بكتابة متصل رفيع يصل إلى 20 سطرًا بدلاً من ذلك. يقوم بالتفويض إلى `BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml` عبر `uses:`. يلتقط كل متصل تلقائيًا أحدث المنطق عند تشغيل سير العمل، دون الحاجة إلى تحديث محلي.
442
460
 
@@ -449,7 +467,7 @@ EXAMPLE_API_KEY=placeholder-value
449
467
 
450
468
  ### مقتطف المتصل
451
469
 
452
- هذا ما يكتبه `npx @agent-native/core@latest recap setup --reusable` (أو يمكنك لصقه يدويًا):
470
+ هذا ما يكتبه `npx @agent-native/recap-cli@latest recap setup --reusable` (أو يمكنك لصقه يدويًا):
453
471
 
454
472
  ```yaml
455
473
  name: PR Visual Recap
@@ -484,7 +502,7 @@ jobs:
484
502
  skill-source: ${{ vars.VISUAL_RECAP_SKILL_SOURCE || 'auto' }}
485
503
  runs-on: ${{ vars.VISUAL_RECAP_RUNS_ON || '"ubuntu-latest"' }}
486
504
  gate-runs-on: ${{ vars.VISUAL_RECAP_GATE_RUNS_ON || 'ubuntu-latest' }}
487
- # cli-version: "latest" # pin to a specific @agent-native/core version
505
+ # cli-version: "latest" # pin to a specific @agent-native/recap-cli version
488
506
  ```
489
507
 
490
508
  تنطبق الأسرار والمتغيرات نفسها الموضحة في [Secrets and variables](#secrets-and-variables). يمرر المتصل القابل لإعادة الاستخدام `VISUAL_RECAP_RUNS_ON` كـ `runs-on` للمهمة الكاملة، و`VISUAL_RECAP_GATE_RUNS_ON` كتسمية مفردة `gate-runs-on` للبوابة. يستخدم كلاهما `ubuntu-latest` عند الحذف.
@@ -493,15 +511,15 @@ jobs:
493
511
 
494
512
  ```bash
495
513
  # اكتب المتصل الرقيق بدلاً من النسخة الكاملة:
496
- npx @agent-native/core@latest recap setup --reusable
514
+ npx @agent-native/recap-cli@latest recap setup --reusable
497
515
 
498
516
  # أو مع مرجع مثبت لقابلية التكرار:
499
- npx @agent-native/core@latest recap setup --reusable --ref v1.2.3
517
+ npx @agent-native/recap-cli@latest recap setup --reusable --ref v1.2.3
500
518
  ```
501
519
 
502
520
  يقوم كلا الخيارين بكتابة سير العمل إلى `.github/workflows/pr-visual-recap.yml`. إذا كان سير العمل موجودًا بالفعل ومختلفًا، فسيرفض الأمر ويطلب منك تمرير `--force` للكتابة فوقه.
503
521
 
504
- بعد الكتابة، قم بتشغيل `npx @agent-native/core@latest recap doctor` كالمعتاد للتأكد من تكوين الأسرار.
522
+ بعد الكتابة، قم بتشغيل `npx @agent-native/recap-cli@latest recap doctor` كالمعتاد للتأكد من تكوين الأسرار.
505
523
 
506
524
  ### تثبيت الإصدار
507
525
 
@@ -511,7 +529,7 @@ npx @agent-native/core@latest recap setup --reusable --ref v1.2.3
511
529
  uses: BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml@v1.2.3
512
530
  ```
513
531
 
514
- يتحكم إدخال `cli-version` في إصدار `@agent-native/core` CLI الذي يتم تشغيله داخل سير العمل - اتركه في `"latest"` لتتبع الإصدار الأحدث، أو قم بتثبيته في سلسلة إصدار (على سبيل المثال، `"1.5.0"`) للحصول على إمكانية تكرار نتائج كاملة.
532
+ يتحكم إدخال `cli-version` في إصدار `@agent-native/recap-cli` CLI الذي يتم تشغيله داخل سير العمل - اتركه في `"latest"` لتتبع الإصدار الأحدث، أو قم بتثبيته في سلسلة إصدار (على سبيل المثال، `"1.5.0"`) للحصول على إمكانية تكرار نتائج كاملة.
515
533
 
516
534
  ### سياق حدث Workflow_call
517
535
 
@@ -212,6 +212,13 @@ vscode://builder.agent-native/open?url=<encoded-plan-url>
212
212
  **نموذج الأسئلة المفتوحة** الموجود أسفل نفس الخطة. الرد عليه والإرسال
213
213
  يبدأ الوكيل في مراجعة الخطة الحالية.
214
214
 
215
+ ## التكلفة واختيار النموذج
216
+
217
+ يؤدي إنشاء خطة أو ملخّص إلى تشغيل جلسة وكيلية كاملة على LLM الخاص بوكيل الترميز لديك، وليس مجرد ملء قالب خفيف، لذا تتناسب التكلفة مع حجم الفرق (diff) أو الخطة والنموذج الذي تختاره.
218
+
219
+ - نموذج الدردشة الافتراضي الخاص بالتطبيق هو Sonnet 5؛ يمكنك تغييره في أي وقت من **الإعدادات**. Haiku هو خيار Claude الأرخص، وLuna هو الخيار الأرخص في عائلة GPT-5.6.
220
+ - تعمل ملخصات طلبات السحب (PR) الآلية من GitHub Action بشكل منفصل عن التطبيق التفاعلي، ولها مقابض النموذج والتكلفة الخاصة بها — راجع [PR Visual Recap](/docs/pr-visual-recap) للاطلاع على `VISUAL_RECAP_MODEL` و`VISUAL_RECAP_AGENT` و`VISUAL_RECAP_REASONING`.
221
+
215
222
  ## ما يمكنك فعله به
216
223
 
217
224
  - **المراجعة قبل التنفيذ.** React للرسومات التخطيطية، والإطارات السلكية، وعلامات تبويب الخيارات،
@@ -102,13 +102,13 @@ explizit jederzeit:
102
102
  npx @agent-native/core@latest skills add visual-plan --with-github-action
103
103
  ```
104
104
 
105
- Dadurch wird der `visual-plan`-Skill installiert (der den `visual-recap`-Skill enthält, den die Aktion ausführt) und `.github/workflows/pr-visual-recap.yml` in Ihr Repo schreiben. Der Workflow ruft **veröffentlichte CLI-Unterbefehle** über `npx @agent-native/core@latest recap <subcommand>` auf – einschließlich `gate`, `collect-diff`, `block-reference`, `scan`, `build-prompt`, `publish`, `shot`, `comment`, `check` und `usage` – sodass nichts in Ihr kopiert wird repo als Hilfsskripte. `setup` und `doctor` sind die interaktiven Helfer, die Sie lokal ausführen; `gate` ist der Sicherheits-Gate-Schritt, den der Workflow vor jeder Zusammenfassung ausführt.
105
+ Dadurch wird der `visual-plan`-Skill installiert (der den `visual-recap`-Skill enthält, den die Aktion ausführt) und `.github/workflows/pr-visual-recap.yml` in Ihr Repo schreiben. Der Workflow ruft **veröffentlichte CLI-Unterbefehle** über `npx @agent-native/recap-cli@latest recap <subcommand>` auf – einschließlich `gate`, `collect-diff`, `block-reference`, `scan`, `build-prompt`, `publish`, `shot`, `comment`, `check` und `usage` – sodass nichts in Ihr kopiert wird repo als Hilfsskripte. `setup` und `doctor` sind die interaktiven Helfer, die Sie lokal ausführen; `gate` ist der Sicherheits-Gate-Schritt, den der Workflow vor jeder Zusammenfassung ausführt.
106
106
 
107
107
  Führen Sie dann den geführten Einrichtungshelfer aus:
108
108
 
109
109
  ```bash
110
- npx @agent-native/core@latest recap setup
111
- npx @agent-native/core@latest recap doctor
110
+ npx @agent-native/recap-cli@latest recap setup
111
+ npx @agent-native/recap-cli@latest recap doctor
112
112
  ```
113
113
 
114
114
  `recap setup` aktualisiert den Workflow und verwendet `gh` zum Festlegen von GitHub Actions
@@ -118,7 +118,7 @@ gesetzt. Geheime Werte werden über stdin an `gh` gesendet, nicht über Befehlsa
118
118
  die generierte Workflow-Datei und öffnen Sie eine PR, um ihre Ausführung zu sehen.
119
119
 
120
120
  Standardmäßig erstellt der Workflow seine Agentenaufforderung aus dem neuesten Paket
121
- `visual-recap`-Anleitung in `@agent-native/core@latest`, einschließlich aller Geschwister
121
+ `visual-recap`-Anleitung in `@agent-native/recap-cli@latest`, einschließlich aller Geschwister
122
122
  Referenzdateien, mit denen der Skill geliefert wird. Wenn Ihr Repo absichtlich angepasst wird und
123
123
  pinnen den festgeschriebenen `visual-recap`-Ordner an und legen die Repository-Variable fest
124
124
  `VISUAL_RECAP_SKILL_SOURCE=repo`.
@@ -135,8 +135,8 @@ Standardmäßig wird der Workflow auf von GitHub gehosteten `ubuntu-latest`-Runn
135
135
  Die JSON-Anführungszeichen sind erforderlich. Dieser Wert wählt den Runner für den vollständigen `recap`-Job. Übergeben Sie zur Konfiguration während der geführten Einrichtung denselben JSON-Wert an `--runs-on` und prüfen Sie anschließend den Workflow und die Verfügbarkeit des Runners mit `doctor`:
136
136
 
137
137
  ```bash
138
- npx @agent-native/core@latest recap setup --runs-on '["self-hosted","linux","x64","visual-recap"]'
139
- npx @agent-native/core@latest recap doctor
138
+ npx @agent-native/recap-cli@latest recap setup --runs-on '["self-hosted","linux","x64","visual-recap"]'
139
+ npx @agent-native/recap-cli@latest recap doctor
140
140
  ```
141
141
 
142
142
  Das einfache Gate verwendet separat `ubuntu-latest`. Repositorys ohne von GitHub gehostete Runner können `VISUAL_RECAP_GATE_RUNS_ON` auf ein einzelnes Klartext-Label ohne JSON setzen oder `--gate-runs-on visual-recap-gate` verwenden. Das benutzerdefinierte Label gilt nur für `OWNER`-, `MEMBER`- oder `COLLABORATOR`-Autoren desselben Repositorys; Forks und andere Autoren werden auf `ubuntu-latest` gezwungen und können ohne GitHub-gehostete Runner ungeplant bleiben. Nutzen Sie einen dedizierten, möglichst kurzlebigen Runner: Das Standard-Gate checkt den PR-Baum nicht aus und wertet Workflow-Logik sowie PR-Metadaten aus.
@@ -160,12 +160,30 @@ Wenn die Variable nicht gesetzt ist, verwendet die Aktion `claude`.
160
160
 
161
161
  Über das Backend hinaus optimieren zwei Repository-Variablen, _wie_ der Agent ausgeführt wird:
162
162
 
163
- - **`VISUAL_RECAP_MODEL`** pinnt das an CLI (`--model`) übergebene Modell – zum Beispiel `gpt-5.6-sol` für Codex oder eine Claude-Modell-ID. Lassen Sie es deaktiviert, um das eigene Standardmodell des CLI zu verwenden.
163
+ - **`VISUAL_RECAP_MODEL`** pinnt das an CLI (`--model`) übergebene Modell – zum Beispiel `gpt-5.6-luna` für Codex, eine Claude-Modell-ID oder `deepseek-chat` für DeepSeek. Für `openai-compatible` ist sie erforderlich. Für das **Claude**-Backend führt ein nicht gesetzter Wert jetzt standardmäßig zu `claude-sonnet-5`; setzen Sie die Variable explizit, um ein anderes Claude-Modell zu verwenden, etwa das günstigere `claude-haiku-4-5`. Für das **Codex**-Backend verwendet ein nicht gesetzter Wert das eigene Standardmodell des Codex CLI.
164
164
  - **`VISUAL_RECAP_REASONING`** legt die Argumentationstiefe fest: `none`, `minimal`, `low`, `medium`, `high` oder `xhigh`. Es gilt für das Codex-Backend; Die Argumentation von Claude ist modellgesteuert, daher wird diese Variable dort ignoriert.
165
165
  - **`VISUAL_RECAP_SKILL_SOURCE`** steuert die Aktualität der Eingabeaufforderung: `auto`/unset verwendet die neueste gebündelte Skill-Anleitung, während `repo` an den festgeschriebenen Repository-lokalen `visual-recap`-Skill-Ordner angeheftet wird.
166
166
 
167
167
  Um beispielsweise die Zusammenfassung auf Codex mit GPT-5.6 Sol bei hoher Argumentation auszuführen, legen Sie die Repository-Variablen `VISUAL_RECAP_AGENT=codex`, `VISUAL_RECAP_MODEL=gpt-5.6-sol` und `VISUAL_RECAP_REASONING=high` fest.
168
168
 
169
+ ## Kosten
170
+
171
+ Jeder Zusammenfassungslauf ist eine vollständige agentische Coding-Agent-Sitzung, die einen echten Diff liest, keine günstige, vorlagenbasierte Zusammenfassung – die Kosten hängen daher von der Modellwahl und davon ab, wie oft der Lauf ausgeführt wird:
172
+
173
+ - **Eine vollständige Sitzung pro PR-Push.** Der Standard-Trigger reagiert auf `synchronize`, sodass ein PR, der zehnmal gepusht wird, den Agenten zehnmal ausführt.
174
+ - **Jedes Mal der gesamte PR**, nicht nur die Commits seit dem letzten Lauf – die Kosten skalieren mit der Gesamtgröße des PR, nicht mit der inkrementellen Diff-Größe.
175
+ - **Diff-Eingabe auf ~600KB begrenzt.** Dies begrenzt den ungünstigsten Fall pro Lauf, aber große Diffs kosten weiterhin spürbar mehr als kleine.
176
+ - **Ein automatischer Wiederholungsversuch bei einem Fehler**, der die Kosten eines vorübergehend fehlgeschlagenen Laufs etwa verdoppeln kann.
177
+
178
+ So senken Sie die Kosten:
179
+
180
+ - **Pinnen Sie ein günstigeres Modell.** Setzen Sie für Claude `VISUAL_RECAP_MODEL=claude-haiku-4-5` bei einfachen oder kleinen Repositorys – das ist die günstigste Claude-Stufe; `claude-sonnet-5` (die Standardeinstellung) ist die ausgewogene Stufe.
181
+ - **Wechseln Sie zu Codex mit einem günstigeren Modell.** Setzen Sie `VISUAL_RECAP_AGENT=codex` zusammen mit `VISUAL_RECAP_MODEL=gpt-5.6-luna` (die günstigste GPT-5.6-Stufe) oder `gpt-5.6-terra` (mittlere Stufe), und setzen Sie `VISUAL_RECAP_REASONING=low`, um die Ausgaben für Argumentations-Token weiter zu senken. Die Argumentationstiefe gilt nur für Codex.
182
+ - **Nutzen Sie einen günstigeren OpenAI-kompatiblen Anbieter.** Setzen Sie `VISUAL_RECAP_AGENT=openai-compatible` zusammen mit `VISUAL_RECAP_BASE_URL`/`VISUAL_RECAP_MODEL`/`VISUAL_RECAP_API_KEY`, die auf DeepSeek, Kimi oder einen anderen OpenAI-kompatiblen Endpunkt verweisen.
183
+ - **Fassen Sie seltener zusammen.** Bearbeiten Sie `on.pull_request.types` des installierten Workflows von `[opened, synchronize, reopened, ready_for_review, closed]` zu `[opened, ready_for_review, closed]`, sodass nur beim Öffnen und beim Mergen eines PR zusammengefasst wird, statt bei jedem Push.
184
+
185
+ Jeder Lauf zeichnet auf, was er tatsächlich gekostet hat: Der `recap usage`-Schritt des Workflows fügt dem veröffentlichten Plan Token- und Kostennutzung hinzu, sodass Sie die tatsächlichen Ausgaben pro Lauf einsehen können, statt zu raten.
186
+
169
187
  ## Geheimnisse und Variablen
170
188
 
171
189
  Legen Sie diese in den **Einstellungen → Geheimnisse und Variablen → Actions** Ihres Repositorys fest.
@@ -196,11 +214,11 @@ Pläne-App.
196
214
 
197
215
  **Solo: Ein persönlicher Token funktioniert weiterhin.** Prägen Sie ihn mit `npx @agent-native/core@latest connect`
198
216
  gegen Ihre Pläne-App. Für die gehostete App schreibt dies auch eine lokale
199
- Publish-Token-Datei, die `npx @agent-native/core@latest recap setup` lesen kann:
217
+ Publish-Token-Datei, die `npx @agent-native/recap-cli@latest recap setup` lesen kann:
200
218
 
201
219
  ```bash
202
220
  npx @agent-native/core@latest connect https://plan.agent-native.com --client codex
203
- npx @agent-native/core@latest recap setup
221
+ npx @agent-native/recap-cli@latest recap setup
204
222
  ```
205
223
 
206
224
  Wenn Sie die manuelle Einrichtung bevorzugen, fügen Sie das Token in das GitHub-Geheimnis ein. Verwenden Sie ein
@@ -209,16 +227,16 @@ echtes Token.
209
227
 
210
228
  ### Optional (nur wenn Sie die Standardeinstellungen ändern)
211
229
 
212
- | Geheimnis/Variable | Standard | Wenn Sie es brauchen |
213
- | ------------------------ | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
214
- | `OPENAI_API_KEY` | — | Geheimnis. Zusammen mit `VISUAL_RECAP_AGENT=codex` einstellen, um die Zusammenfassung stattdessen mit Codex auszuführen. |
215
- | `VISUAL_RECAP_AGENT` | `claude` | Variable. Wählt das Coding-Agent-Backend (`claude` oder `codex`) aus. |
216
- | `VISUAL_RECAP_MODEL` | die Standardeinstellung jedes CLI | Variable. Steckt das Modell fest – z.B. `gpt-5.6-sol` für Codex oder eine Claude-Modell-ID. Unset verwendet die eigene Standardeinstellung von CLI. |
217
- | `VISUAL_RECAP_REASONING` | Standardeinstellung jedes Modells | Variable. Argumentationstiefe: `none`, `minimal`, `low`, `medium`, `high` oder `xhigh`. Gilt für das Codex-Backend. |
218
- | `RECAP_CLI_VERSION` | `latest` | Variable. Pinnt die `@agent-native/core` CLI-Version, die der Workflow installiert – z. B. `1.5.0`. Siehe [Version pinning](#version-pinning-copy-variant). |
219
- | `PLAN_RECAP_APP_URL` | `https://plan.agent-native.com` | Geheimnis. Nur beim Selbsthosten der Plans-App an einem anderen Ursprung. |
230
+ | Geheimnis/Variable | Standard | Wenn Sie es brauchen |
231
+ | ------------------------ | --------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
232
+ | `OPENAI_API_KEY` | — | Geheimnis. Zusammen mit `VISUAL_RECAP_AGENT=codex` einstellen, um die Zusammenfassung stattdessen mit Codex auszuführen. |
233
+ | `VISUAL_RECAP_AGENT` | `claude` | Variable. Wählt das Coding-Agent-Backend (`claude` oder `codex`) aus. |
234
+ | `VISUAL_RECAP_MODEL` | `claude-sonnet-5` für Claude; für das kompatible Backend erforderlich | Variable. Anbieter-Modell-ID für OpenAI-kompatible Backends (dort erforderlich). Für Claude führt ein nicht gesetzter Wert jetzt standardmäßig zu `claude-sonnet-5` setzen Sie ihn, um es zu überschreiben, z. B. `claude-haiku-4-5` für die günstigste Stufe. Für Codex verwendet ein nicht gesetzter Wert die eigene Standardeinstellung des Codex CLI. |
235
+ | `VISUAL_RECAP_REASONING` | Standardeinstellung jedes Modells | Variable. Argumentationstiefe: `none`, `minimal`, `low`, `medium`, `high` oder `xhigh`. Gilt für das Codex-Backend. |
236
+ | `RECAP_CLI_VERSION` | `latest` | Variable. Pinnt die `@agent-native/recap-cli` CLI-Version, die der Workflow installiert – z. B. `1.5.0`. Siehe [Version pinning](#version-pinning-copy-variant). |
237
+ | `PLAN_RECAP_APP_URL` | `https://plan.agent-native.com` | Geheimnis. Nur beim Selbsthosten der Plans-App an einem anderen Ursprung. |
220
238
 
221
- Der Workflow erkennt automatisch, wie sein Hilfsprogramm CLI (lokale Quelle in diesem Monorepo, das an anderer Stelle veröffentlichte `@agent-native/core`) aufgerufen wird, sodass keine `RECAP_CLI`-Variable festgelegt werden muss.
239
+ Der Workflow erkennt automatisch, wie sein Hilfsprogramm CLI (lokale Quelle in diesem Monorepo, das an anderer Stelle veröffentlichte `@agent-native/recap-cli`) aufgerufen wird, sodass keine `RECAP_CLI`-Variable festgelegt werden muss.
222
240
 
223
241
  ## Inline-Screenshot im Kommentar
224
242
 
@@ -359,9 +377,9 @@ Rekapitulieren, ohne Rekapitulationsinhalte an die Agent-Native-Plandatenbank zu
359
377
  gleicher Hilfsablauf lokal im Modus „Lokale Dateien“ stattdessen:
360
378
 
361
379
  ```bash
362
- npx @agent-native/core@latest recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
363
- npx @agent-native/core@latest recap scan --diff recap.diff
364
- npx @agent-native/core@latest recap build-prompt --pr 123 --diff recap.diff --stat recap.stat --local-files --local-dir plans/pr-123-visual-recap
380
+ npx @agent-native/recap-cli@latest recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
381
+ npx @agent-native/recap-cli@latest recap scan --diff recap.diff
382
+ npx @agent-native/recap-cli@latest recap build-prompt --pr 123 --diff recap.diff --stat recap.stat --local-files --local-dir plans/pr-123-visual-recap
365
383
  ```
366
384
 
367
385
  Geben Sie das generierte `recap-prompt.md` an Ihren Codierungsagenten. Im lokalen Dateimodus
@@ -391,7 +409,7 @@ Die Zusammenfassung ist eine Überprüfungshilfe, die über dem normalen PR-Abla
391
409
 
392
410
  ## Versionspinning (Kopiervariante) {#version-pinning-copy-variant}
393
411
 
394
- Standardmäßig installiert der Kopiervarianten-Workflow `@agent-native/core@latest` zur Laufzeit, sodass bei jedem Wiederholungslauf automatisch das neueste CLI übernommen wird. Wenn Ihr CI reproduzierbare Tools benötigt, legen Sie die Repository-Variable **`RECAP_CLI_VERSION`** fest, um die installierte Version anzuheften:
412
+ Standardmäßig installiert der Kopiervarianten-Workflow `@agent-native/recap-cli@latest` zur Laufzeit, sodass bei jedem Wiederholungslauf automatisch das neueste CLI übernommen wird. Wenn Ihr CI reproduzierbare Tools benötigt, legen Sie die Repository-Variable **`RECAP_CLI_VERSION`** fest, um die installierte Version anzuheften:
395
413
 
396
414
  1. Gehen Sie zu **Einstellungen → Geheimnisse und Variablen → Actions → Variablen** Ihres Repos.
397
415
  2. Erstellen Sie eine Variable namens `RECAP_CLI_VERSION` mit einem Wert wie `1.5.0`.
@@ -402,7 +420,7 @@ Verwenden Sie für die wiederverwendbare Caller-Variante stattdessen die Eingabe
402
420
 
403
421
  ## Zulassungsliste für geheime Scans
404
422
 
405
- Vor der Veröffentlichung einer Zusammenfassung führt der Workflow `npx @agent-native/core@latest recap scan` aus, um wahrscheinliche Geheimnisse im Diff zu erkennen. Jeder PR, dessen Diff mit einem bekannten geheimen Muster übereinstimmt, wird mit einem erläuternden Kommentar blockiert – die Zusammenfassung wird nicht veröffentlicht und es werden keine Diff-Inhalte an den Codierungsagenten gesendet.
423
+ Vor der Veröffentlichung einer Zusammenfassung führt der Workflow `npx @agent-native/recap-cli@latest recap scan` aus, um wahrscheinliche Geheimnisse im Diff zu erkennen. Jeder PR, dessen Diff mit einem bekannten geheimen Muster übereinstimmt, wird mit einem erläuternden Kommentar blockiert – die Zusammenfassung wird nicht veröffentlicht und es werden keine Diff-Inhalte an den Codierungsagenten gesendet.
406
424
 
407
425
  In seltenen Fällen verfügt ein Repo über absichtliche Test-Fixtures oder nicht geheime Zeichenfolgen, die oberflächlich betrachtet geheimen Mustern ähneln (z. B. ein Fixture-Schlüssel in einer Testdatei). Um ein falsch positives Ergebnis zu unterdrücken, erstellen Sie `.github/recap-scan-allowlist` im Stammverzeichnis Ihres Repositorys.
408
426
 
@@ -436,7 +454,7 @@ Die Zulassungsliste wird nur vom Secret-Scan-Gate konsultiert. Es hat keinen Ein
436
454
 
437
455
  ### Warum die wiederverwendbare Variante verwenden?
438
456
 
439
- Das Standardinstallationsprogramm kopiert den vollständigen ~360-Zeilen-Workflow YAML in Ihr Repo (die Option **Kopieren**). Dies ist die richtige Wahl für Air-Gap-Repos oder Repos, die jede Zeile ihrer Ausführung prüfen müssen. Der Nachteil ist, dass Fehlerkorrekturen und Verbesserungen Sie nie erreichen – Sie müssen `npx @agent-native/core@latest recap setup` nach jeder Veröffentlichung manuell erneut ausführen.
457
+ Das Standardinstallationsprogramm kopiert den vollständigen ~360-Zeilen-Workflow YAML in Ihr Repo (die Option **Kopieren**). Dies ist die richtige Wahl für Air-Gap-Repos oder Repos, die jede Zeile ihrer Ausführung prüfen müssen. Der Nachteil ist, dass Fehlerkorrekturen und Verbesserungen Sie nie erreichen – Sie müssen `npx @agent-native/recap-cli@latest recap setup` nach jeder Veröffentlichung manuell erneut ausführen.
440
458
 
441
459
  Die Option **wiederverwendbar** schreibt stattdessen einen dünnen Aufrufer mit ca. 20 Leitungen. Es wird über `uses:` an `BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml` delegiert. Jeder Aufrufer ruft automatisch die neueste Logik ab, wenn der Workflow ausgeführt wird, ohne dass eine lokale Aktualisierung erforderlich ist.
442
460
 
@@ -449,7 +467,7 @@ Die Option **wiederverwendbar** schreibt stattdessen einen dünnen Aufrufer mit
449
467
 
450
468
  ### Anrufer-Snippet
451
469
 
452
- Das schreibt `npx @agent-native/core@latest recap setup --reusable` (oder Sie können es manuell einfügen):
470
+ Das schreibt `npx @agent-native/recap-cli@latest recap setup --reusable` (oder Sie können es manuell einfügen):
453
471
 
454
472
  ```yaml
455
473
  name: PR Visual Recap
@@ -484,7 +502,7 @@ jobs:
484
502
  skill-source: ${{ vars.VISUAL_RECAP_SKILL_SOURCE || 'auto' }}
485
503
  runs-on: ${{ vars.VISUAL_RECAP_RUNS_ON || '"ubuntu-latest"' }}
486
504
  gate-runs-on: ${{ vars.VISUAL_RECAP_GATE_RUNS_ON || 'ubuntu-latest' }}
487
- # cli-version: "latest" # pin to a specific @agent-native/core version
505
+ # cli-version: "latest" # pin to a specific @agent-native/recap-cli version
488
506
  ```
489
507
 
490
508
  Es gelten dieselben Geheimnisse und Variablen wie unter [Secrets and variables](#secrets-and-variables). Der wiederverwendbare Aufrufer leitet `VISUAL_RECAP_RUNS_ON` als `runs-on` für den vollständigen Job und `VISUAL_RECAP_GATE_RUNS_ON` als einfaches `gate-runs-on`-Label für das Gate weiter. Ohne Eingabe verwenden beide `ubuntu-latest`.
@@ -493,15 +511,15 @@ Es gelten dieselben Geheimnisse und Variablen wie unter [Secrets and variables](
493
511
 
494
512
  ```bash
495
513
  # Schreiben Sie den Thin Caller anstelle der vollständigen Kopie:
496
- npx @agent-native/core@latest recap setup --reusable
514
+ npx @agent-native/recap-cli@latest recap setup --reusable
497
515
 
498
516
  # Oder mit einer angehefteten Referenz zur Reproduzierbarkeit:
499
- npx @agent-native/core@latest recap setup --reusable --ref v1.2.3
517
+ npx @agent-native/recap-cli@latest recap setup --reusable --ref v1.2.3
500
518
  ```
501
519
 
502
520
  Beide Varianten schreiben den Workflow nach `.github/workflows/pr-visual-recap.yml`. Wenn bereits ein vorhandener Workflow vorhanden ist und dieser abweicht, lehnt der Befehl ab und fordert Sie auf, `--force` zum Überschreiben zu übergeben.
503
521
 
504
- Führen Sie nach dem Schreiben wie gewohnt `npx @agent-native/core@latest recap doctor` aus, um zu bestätigen, dass die Geheimnisse konfiguriert sind.
522
+ Führen Sie nach dem Schreiben wie gewohnt `npx @agent-native/recap-cli@latest recap doctor` aus, um zu bestätigen, dass die Geheimnisse konfiguriert sind.
505
523
 
506
524
  ### Versionsfixierung
507
525
 
@@ -511,7 +529,7 @@ Standardmäßig verweist der Aufrufer auf `@main`, das immer die neueste veröff
511
529
  uses: BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml@v1.2.3
512
530
  ```
513
531
 
514
- Die `cli-version`-Eingabe steuert, welche `@agent-native/core` CLI-Version im Workflow ausgeführt wird – belassen Sie sie bei `"latest"`, um die neueste Version zu verfolgen, oder heften Sie sie für eine vollständige Reproduzierbarkeit an eine Versionszeichenfolge (z. B. `"1.5.0"`).
532
+ Die `cli-version`-Eingabe steuert, welche `@agent-native/recap-cli` CLI-Version im Workflow ausgeführt wird – belassen Sie sie bei `"latest"`, um die neueste Version zu verfolgen, oder heften Sie sie für eine vollständige Reproduzierbarkeit an eine Versionszeichenfolge (z. B. `"1.5.0"`).
515
533
 
516
534
  ### workflow_call-Ereigniskontext
517
535
 
@@ -214,6 +214,13 @@ Wenn es im ersten Durchgang noch verantwortbare Entscheidungen gibt, kann der Ag
214
214
  Formular **Offene Fragen** am Ende desselben Plans. Beantworten und senden
215
215
  Es wird dem Agenten eine Revisionsrunde gegen den bestehenden Plan eingeleitet.
216
216
 
217
+ ## Kosten und Modellwahl
218
+
219
+ Das Erstellen eines Plans oder einer Zusammenfassung führt eine vollständige agentische Sitzung mit dem LLM Ihres Coding-Agenten aus, keine leichtgewichtige Vorlagenbefüllung – die Kosten skalieren daher mit der Größe des Diffs oder Plans und dem gewählten Modell.
220
+
221
+ - Das eigene Standard-Chat-Modell der App ist Sonnet 5; ändern Sie es jederzeit in den **Einstellungen**. Haiku ist die günstigere Claude-Option, und Luna ist die günstigere Option in der GPT-5.6-Familie.
222
+ - Automatisierte PR-Zusammenfassungen aus der GitHub Action laufen getrennt von der interaktiven App und haben eigene Regler für Modell und Kosten – siehe [PR Visual Recap](/docs/pr-visual-recap) für `VISUAL_RECAP_MODEL`, `VISUAL_RECAP_AGENT` und `VISUAL_RECAP_REASONING`.
223
+
217
224
  ## Was Sie damit machen können
218
225
 
219
226
  - **Überprüfung vor der Implementierung.** React zu Diagrammen, Wireframes, Optionsregisterkarten,