@agent-native/core 0.79.12 → 0.79.15
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.
- package/corpus/README.md +2 -2
- package/corpus/core/CHANGELOG.md +19 -0
- package/corpus/core/docs/content/locales/zh-TW/a2a-protocol.md +68 -68
- package/corpus/core/docs/content/locales/zh-TW/actions.md +82 -82
- package/corpus/core/docs/content/locales/zh-TW/agent-mentions.md +22 -22
- package/corpus/core/docs/content/locales/zh-TW/agent-surfaces.md +82 -82
- package/corpus/core/docs/content/locales/zh-TW/agent-teams.md +29 -29
- package/corpus/core/docs/content/locales/zh-TW/agent-web-surfaces.md +11 -11
- package/corpus/core/docs/content/locales/zh-TW/audit-log.md +16 -16
- package/corpus/core/docs/content/locales/zh-TW/authentication.md +32 -32
- package/corpus/core/docs/content/locales/zh-TW/automations.md +32 -32
- package/corpus/core/docs/content/locales/zh-TW/blueprint-installer.md +19 -19
- package/corpus/core/docs/content/locales/zh-TW/cli-adapters.md +17 -17
- package/corpus/core/docs/content/locales/zh-TW/client.md +62 -62
- package/corpus/core/docs/content/locales/zh-TW/cloneable-saas.md +32 -32
- package/corpus/core/docs/content/locales/zh-TW/code-agents-ui.md +91 -91
- package/corpus/core/docs/content/locales/zh-TW/components.md +51 -51
- package/corpus/core/docs/content/locales/zh-TW/context-awareness.md +66 -66
- package/corpus/core/docs/content/locales/zh-TW/creating-templates.md +39 -39
- package/corpus/core/docs/content/locales/zh-TW/cross-app-sso.md +29 -29
- package/corpus/core/docs/content/locales/zh-TW/database.md +21 -21
- package/corpus/core/docs/content/locales/zh-TW/deployment.md +37 -37
- package/corpus/core/docs/content/locales/zh-TW/dispatch.md +43 -43
- package/corpus/core/docs/content/locales/zh-TW/drop-in-agent.md +34 -34
- package/corpus/core/docs/content/locales/zh-TW/durable-resume.md +18 -18
- package/corpus/core/docs/content/locales/zh-TW/embedding-sdk.md +73 -73
- package/corpus/core/docs/content/locales/zh-TW/evals.md +16 -16
- package/corpus/core/docs/content/locales/zh-TW/extensions.md +81 -81
- package/corpus/core/docs/content/locales/zh-TW/external-agents.md +146 -146
- package/corpus/core/docs/content/locales/zh-TW/faq.md +43 -43
- package/corpus/core/docs/content/locales/zh-TW/file-uploads.md +11 -11
- package/corpus/core/docs/content/locales/zh-TW/frames.md +33 -33
- package/corpus/core/docs/content/locales/zh-TW/getting-started.md +28 -28
- package/corpus/core/docs/content/locales/zh-TW/harness-agents.md +78 -78
- package/corpus/core/docs/content/locales/zh-TW/human-approval.md +27 -27
- package/corpus/core/docs/content/locales/zh-TW/internationalization.md +19 -19
- package/corpus/core/docs/content/locales/zh-TW/key-concepts.md +68 -68
- package/corpus/core/docs/content/locales/zh-TW/local-file-mode.md +50 -50
- package/corpus/core/docs/content/locales/zh-TW/mcp-apps.md +38 -38
- package/corpus/core/docs/content/locales/zh-TW/mcp-clients.md +67 -67
- package/corpus/core/docs/content/locales/zh-TW/mcp-protocol.md +50 -50
- package/corpus/core/docs/content/locales/zh-TW/messaging.md +99 -99
- package/corpus/core/docs/content/locales/zh-TW/migration-workbench.md +6 -6
- package/corpus/core/docs/content/locales/zh-TW/multi-app-workspace.md +39 -39
- package/corpus/core/docs/content/locales/zh-TW/multi-tenancy.md +7 -7
- package/corpus/core/docs/content/locales/zh-TW/native-chat-ui.md +38 -38
- package/corpus/core/docs/content/locales/zh-TW/notifications.md +23 -23
- package/corpus/core/docs/content/locales/zh-TW/observability.md +49 -49
- package/corpus/core/docs/content/locales/zh-TW/observational-memory.md +23 -23
- package/corpus/core/docs/content/locales/zh-TW/onboarding.md +40 -40
- package/corpus/core/docs/content/locales/zh-TW/plan-plugin.md +37 -37
- package/corpus/core/docs/content/locales/zh-TW/pr-visual-recap.md +72 -72
- package/corpus/core/docs/content/locales/zh-TW/processors.md +17 -17
- package/corpus/core/docs/content/locales/zh-TW/progress.md +15 -15
- package/corpus/core/docs/content/locales/zh-TW/pure-agent-apps.md +10 -10
- package/corpus/core/docs/content/locales/zh-TW/real-time-collaboration.md +103 -103
- package/corpus/core/docs/content/locales/zh-TW/recurring-jobs.md +19 -19
- package/corpus/core/docs/content/locales/zh-TW/routing.md +9 -9
- package/corpus/core/docs/content/locales/zh-TW/sandbox-adapters.md +48 -48
- package/corpus/core/docs/content/locales/zh-TW/security.md +49 -49
- package/corpus/core/docs/content/locales/zh-TW/server.md +47 -47
- package/corpus/core/docs/content/locales/zh-TW/sharing.md +22 -22
- package/corpus/core/docs/content/locales/zh-TW/skills-guide.md +46 -46
- package/corpus/core/docs/content/locales/zh-TW/template-analytics.md +40 -40
- package/corpus/core/docs/content/locales/zh-TW/template-assets.md +69 -69
- package/corpus/core/docs/content/locales/zh-TW/template-brain.md +81 -81
- package/corpus/core/docs/content/locales/zh-TW/template-calendar.md +40 -40
- package/corpus/core/docs/content/locales/zh-TW/template-chat.md +27 -27
- package/corpus/core/docs/content/locales/zh-TW/template-clips.md +85 -85
- package/corpus/core/docs/content/locales/zh-TW/template-content.md +65 -66
- package/corpus/core/docs/content/locales/zh-TW/template-design.md +29 -29
- package/corpus/core/docs/content/locales/zh-TW/template-dispatch.md +51 -51
- package/corpus/core/docs/content/locales/zh-TW/template-forms.md +25 -25
- package/corpus/core/docs/content/locales/zh-TW/template-mail.md +71 -71
- package/corpus/core/docs/content/locales/zh-TW/template-plan.md +92 -92
- package/corpus/core/docs/content/locales/zh-TW/template-slides.md +52 -52
- package/corpus/core/docs/content/locales/zh-TW/template-videos.md +30 -30
- package/corpus/core/docs/content/locales/zh-TW/tracking.md +29 -29
- package/corpus/core/docs/content/locales/zh-TW/using-your-agent.md +18 -18
- package/corpus/core/docs/content/locales/zh-TW/voice-input.md +19 -19
- package/corpus/core/docs/content/locales/zh-TW/what-is-agent-native.md +61 -61
- package/corpus/core/docs/content/locales/zh-TW/workspace-connections.md +41 -41
- package/corpus/core/docs/content/locales/zh-TW/workspace-management.md +27 -27
- package/corpus/core/docs/content/locales/zh-TW/workspace.md +58 -58
- package/corpus/core/docs/content/locales/zh-TW/writing-agent-instructions.md +41 -41
- package/corpus/core/docs/content/template-clips.md +48 -2
- package/corpus/core/package.json +2 -1
- package/corpus/core/src/client/AgentPanel.tsx +27 -3
- package/corpus/core/src/deploy/build.ts +417 -42
- package/corpus/core/src/deploy/route-discovery.ts +1 -1
- package/corpus/core/src/server/edge.ts +50 -0
- package/corpus/core/src/styles/agent-native.css +93 -0
- package/corpus/core/src/templates/default/app/i18n/zh-TW.ts +44 -44
- package/corpus/core/src/vite/client.ts +1 -0
- package/corpus/templates/analytics/app/components/layout/Layout.tsx +5 -3
- package/corpus/templates/analytics/app/i18n/zh-TW.ts +69 -70
- package/corpus/templates/analytics/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/assets/app/components/layout/Layout.tsx +3 -3
- package/corpus/templates/assets/app/i18n/zh-TW.ts +82 -82
- package/corpus/templates/assets/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/brain/app/components/layout/Layout.tsx +6 -4
- package/corpus/templates/brain/app/i18n/zh-TW.ts +90 -90
- package/corpus/templates/brain/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/calendar/app/components/layout/AppLayout.tsx +1 -1
- package/corpus/templates/calendar/app/components/layout/Sidebar.tsx +1 -1
- package/corpus/templates/calendar/app/i18n/zh-TW.ts +57 -57
- package/corpus/templates/calendar/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/calendar/server/lib/booking-og-fonts.ts +20 -6
- package/corpus/templates/calendar/server/lib/booking-og-image.ts +17 -9
- package/corpus/templates/chat/app/components/layout/Layout.tsx +5 -3
- package/corpus/templates/chat/app/i18n/zh-TW.ts +3 -3
- package/corpus/templates/chat/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/clips/AGENTS.md +6 -0
- package/corpus/templates/clips/actions/delete-recording-permanent.ts +7 -1
- package/corpus/templates/clips/actions/get-recording-player-data.ts +44 -2
- package/corpus/templates/clips/actions/navigate.ts +2 -0
- package/corpus/templates/clips/actions/save-bug-report-context.ts +173 -0
- package/corpus/templates/clips/actions/view-screen.ts +58 -7
- package/corpus/templates/clips/app/components/recorder/storage-setup-card.tsx +9 -3
- package/corpus/templates/clips/app/hooks/use-navigation-state.ts +17 -0
- package/corpus/templates/clips/app/i18n/ar-SA.ts +31 -0
- package/corpus/templates/clips/app/i18n/de-DE.ts +32 -0
- package/corpus/templates/clips/app/i18n/en-US.ts +32 -0
- package/corpus/templates/clips/app/i18n/es-ES.ts +32 -0
- package/corpus/templates/clips/app/i18n/fr-FR.ts +32 -0
- package/corpus/templates/clips/app/i18n/hi-IN.ts +32 -0
- package/corpus/templates/clips/app/i18n/ja-JP.ts +31 -0
- package/corpus/templates/clips/app/i18n/ko-KR.ts +32 -0
- package/corpus/templates/clips/app/i18n/pt-BR.ts +32 -0
- package/corpus/templates/clips/app/i18n/zh-CN.ts +30 -0
- package/corpus/templates/clips/app/i18n/zh-TW.ts +461 -451
- package/corpus/templates/clips/app/routes/bug-report.done.tsx +126 -0
- package/corpus/templates/clips/app/routes/bug-report.tsx +222 -0
- package/corpus/templates/clips/app/routes/record.tsx +104 -12
- package/corpus/templates/clips/changelog/2026-06-26-brief-network-blips-no-longer-block-recording-or-wrongly-pro.md +6 -0
- package/corpus/templates/clips/changelog/2026-06-26-bug-report-recordings-can-keep-redacted-host-app-context-wit.md +6 -0
- package/corpus/templates/clips/changelog/2026-06-26-bug-report-widgets-can-launch-clips-recordings-from-embedded.md +6 -0
- package/corpus/templates/clips/changelog/2026-06-26-desktop-recording-keeps-connected-users-out-of-the-storage-s.md +6 -0
- package/corpus/templates/clips/changelog/2026-06-26-if-a-recording-can-t-be-uploaded-the-chrome-extension-now-sa.md +6 -0
- package/corpus/templates/clips/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/clips/chrome-extension/public/manifest.json +9 -2
- package/corpus/templates/clips/chrome-extension/src/background.ts +43 -0
- package/corpus/templates/clips/chrome-extension/src/offscreen.ts +111 -6
- package/corpus/templates/clips/chrome-extension/src/popup.ts +18 -7
- package/corpus/templates/clips/desktop/src/app.tsx +53 -19
- package/corpus/templates/clips/server/db/schema.ts +26 -0
- package/corpus/templates/clips/server/lib/public-agent-context.ts +51 -0
- package/corpus/templates/clips/server/plugins/auth.ts +1 -0
- package/corpus/templates/clips/server/plugins/db.ts +28 -0
- package/corpus/templates/clips/server/routes/api/agent-context.json.get.ts +4 -1
- package/corpus/templates/clips/shared/bug-report.ts +161 -0
- package/corpus/templates/content/app/components/layout/Layout.tsx +10 -8
- package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +1 -1
- package/corpus/templates/content/app/i18n/zh-TW.ts +67 -66
- package/corpus/templates/content/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/design/app/components/layout/Layout.tsx +3 -3
- package/corpus/templates/design/app/i18n/zh-TW.ts +44 -44
- package/corpus/templates/design/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/dispatch/app/i18n/zh-TW.ts +5 -4
- package/corpus/templates/dispatch/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/forms/app/components/layout/Layout.tsx +4 -2
- package/corpus/templates/forms/app/components/layout/Sidebar.tsx +1 -1
- package/corpus/templates/forms/app/i18n/zh-TW.ts +48 -48
- package/corpus/templates/forms/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/macros/app/components/layout/AppLayout.tsx +3 -3
- package/corpus/templates/macros/app/i18n/zh-TW.ts +5 -5
- package/corpus/templates/macros/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/mail/app/i18n/zh-TW.ts +83 -83
- package/corpus/templates/mail/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/plan/app/components/layout/Layout.tsx +5 -3
- package/corpus/templates/plan/app/i18n/zh-TW.ts +69 -69
- package/corpus/templates/plan/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/slides/app/components/layout/Layout.tsx +3 -3
- package/corpus/templates/slides/app/i18n/zh-TW.ts +64 -64
- package/corpus/templates/slides/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/videos/app/components/layout/Layout.tsx +2 -2
- package/corpus/templates/videos/app/i18n/zh-TW.ts +54 -54
- package/corpus/templates/videos/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/dist/client/AgentPanel.d.ts.map +1 -1
- package/dist/client/AgentPanel.js +14 -4
- package/dist/client/AgentPanel.js.map +1 -1
- package/dist/collab/routes.d.ts +1 -1
- package/dist/deploy/build.d.ts +3 -1
- package/dist/deploy/build.d.ts.map +1 -1
- package/dist/deploy/build.js +361 -37
- package/dist/deploy/build.js.map +1 -1
- package/dist/deploy/route-discovery.d.ts +1 -1
- package/dist/deploy/route-discovery.js +1 -1
- package/dist/deploy/route-discovery.js.map +1 -1
- package/dist/resources/handlers.d.ts +2 -2
- package/dist/server/edge.d.ts +11 -0
- package/dist/server/edge.d.ts.map +1 -0
- package/dist/server/edge.js +11 -0
- package/dist/server/edge.js.map +1 -0
- package/dist/styles/agent-native.css +93 -0
- package/dist/templates/default/app/i18n/zh-TW.ts +44 -44
- package/dist/vite/client.d.ts.map +1 -1
- package/dist/vite/client.js +1 -0
- package/dist/vite/client.js.map +1 -1
- package/docs/content/locales/zh-TW/a2a-protocol.md +68 -68
- package/docs/content/locales/zh-TW/actions.md +82 -82
- package/docs/content/locales/zh-TW/agent-mentions.md +22 -22
- package/docs/content/locales/zh-TW/agent-surfaces.md +82 -82
- package/docs/content/locales/zh-TW/agent-teams.md +29 -29
- package/docs/content/locales/zh-TW/agent-web-surfaces.md +11 -11
- package/docs/content/locales/zh-TW/audit-log.md +16 -16
- package/docs/content/locales/zh-TW/authentication.md +32 -32
- package/docs/content/locales/zh-TW/automations.md +32 -32
- package/docs/content/locales/zh-TW/blueprint-installer.md +19 -19
- package/docs/content/locales/zh-TW/cli-adapters.md +17 -17
- package/docs/content/locales/zh-TW/client.md +62 -62
- package/docs/content/locales/zh-TW/cloneable-saas.md +32 -32
- package/docs/content/locales/zh-TW/code-agents-ui.md +91 -91
- package/docs/content/locales/zh-TW/components.md +51 -51
- package/docs/content/locales/zh-TW/context-awareness.md +66 -66
- package/docs/content/locales/zh-TW/creating-templates.md +39 -39
- package/docs/content/locales/zh-TW/cross-app-sso.md +29 -29
- package/docs/content/locales/zh-TW/database.md +21 -21
- package/docs/content/locales/zh-TW/deployment.md +37 -37
- package/docs/content/locales/zh-TW/dispatch.md +43 -43
- package/docs/content/locales/zh-TW/drop-in-agent.md +34 -34
- package/docs/content/locales/zh-TW/durable-resume.md +18 -18
- package/docs/content/locales/zh-TW/embedding-sdk.md +73 -73
- package/docs/content/locales/zh-TW/evals.md +16 -16
- package/docs/content/locales/zh-TW/extensions.md +81 -81
- package/docs/content/locales/zh-TW/external-agents.md +146 -146
- package/docs/content/locales/zh-TW/faq.md +43 -43
- package/docs/content/locales/zh-TW/file-uploads.md +11 -11
- package/docs/content/locales/zh-TW/frames.md +33 -33
- package/docs/content/locales/zh-TW/getting-started.md +28 -28
- package/docs/content/locales/zh-TW/harness-agents.md +78 -78
- package/docs/content/locales/zh-TW/human-approval.md +27 -27
- package/docs/content/locales/zh-TW/internationalization.md +19 -19
- package/docs/content/locales/zh-TW/key-concepts.md +68 -68
- package/docs/content/locales/zh-TW/local-file-mode.md +50 -50
- package/docs/content/locales/zh-TW/mcp-apps.md +38 -38
- package/docs/content/locales/zh-TW/mcp-clients.md +67 -67
- package/docs/content/locales/zh-TW/mcp-protocol.md +50 -50
- package/docs/content/locales/zh-TW/messaging.md +99 -99
- package/docs/content/locales/zh-TW/migration-workbench.md +6 -6
- package/docs/content/locales/zh-TW/multi-app-workspace.md +39 -39
- package/docs/content/locales/zh-TW/multi-tenancy.md +7 -7
- package/docs/content/locales/zh-TW/native-chat-ui.md +38 -38
- package/docs/content/locales/zh-TW/notifications.md +23 -23
- package/docs/content/locales/zh-TW/observability.md +49 -49
- package/docs/content/locales/zh-TW/observational-memory.md +23 -23
- package/docs/content/locales/zh-TW/onboarding.md +40 -40
- package/docs/content/locales/zh-TW/plan-plugin.md +37 -37
- package/docs/content/locales/zh-TW/pr-visual-recap.md +72 -72
- package/docs/content/locales/zh-TW/processors.md +17 -17
- package/docs/content/locales/zh-TW/progress.md +15 -15
- package/docs/content/locales/zh-TW/pure-agent-apps.md +10 -10
- package/docs/content/locales/zh-TW/real-time-collaboration.md +103 -103
- package/docs/content/locales/zh-TW/recurring-jobs.md +19 -19
- package/docs/content/locales/zh-TW/routing.md +9 -9
- package/docs/content/locales/zh-TW/sandbox-adapters.md +48 -48
- package/docs/content/locales/zh-TW/security.md +49 -49
- package/docs/content/locales/zh-TW/server.md +47 -47
- package/docs/content/locales/zh-TW/sharing.md +22 -22
- package/docs/content/locales/zh-TW/skills-guide.md +46 -46
- package/docs/content/locales/zh-TW/template-analytics.md +40 -40
- package/docs/content/locales/zh-TW/template-assets.md +69 -69
- package/docs/content/locales/zh-TW/template-brain.md +81 -81
- package/docs/content/locales/zh-TW/template-calendar.md +40 -40
- package/docs/content/locales/zh-TW/template-chat.md +27 -27
- package/docs/content/locales/zh-TW/template-clips.md +85 -85
- package/docs/content/locales/zh-TW/template-content.md +65 -66
- package/docs/content/locales/zh-TW/template-design.md +29 -29
- package/docs/content/locales/zh-TW/template-dispatch.md +51 -51
- package/docs/content/locales/zh-TW/template-forms.md +25 -25
- package/docs/content/locales/zh-TW/template-mail.md +71 -71
- package/docs/content/locales/zh-TW/template-plan.md +92 -92
- package/docs/content/locales/zh-TW/template-slides.md +52 -52
- package/docs/content/locales/zh-TW/template-videos.md +30 -30
- package/docs/content/locales/zh-TW/tracking.md +29 -29
- package/docs/content/locales/zh-TW/using-your-agent.md +18 -18
- package/docs/content/locales/zh-TW/voice-input.md +19 -19
- package/docs/content/locales/zh-TW/what-is-agent-native.md +61 -61
- package/docs/content/locales/zh-TW/workspace-connections.md +41 -41
- package/docs/content/locales/zh-TW/workspace-management.md +27 -27
- package/docs/content/locales/zh-TW/workspace.md +58 -58
- package/docs/content/locales/zh-TW/writing-agent-instructions.md +41 -41
- package/docs/content/template-clips.md +48 -2
- package/package.json +2 -1
- package/src/templates/default/app/i18n/zh-TW.ts +44 -44
|
@@ -7,39 +7,39 @@ description: "安裝 Agent-Native 計畫 skills(/visual-plan、/visual-recap
|
|
|
7
7
|
|
|
8
8
|
Agent-Native **Plan** 應用程式作為一個可安裝的捆綁包提供。一次安裝即可新增計畫斜線指令 skills **並**連線託管計畫 MCP 連線器,以便代理可以生成計畫,並且 skills 可以將它們直接發布到計畫應用程式中。
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## 你得到什麼 {#what-you-get}
|
|
11
11
|
|
|
12
12
|
一次安裝即可為您提供:
|
|
13
13
|
|
|
14
14
|
- **兩個 skills** — `/visual-plan`(規範入口點)和 `/visual-recap`。
|
|
15
15
|
- **計畫 MCP 連線器** — 針對 `https://plan.agent-native.com` 上的託管應用程式進行註冊(MCP 端點 `https://plan.agent-native.com/_agent-native/mcp`,伺服器名稱 `plan`)。
|
|
16
16
|
|
|
17
|
-
```an-diagram title="
|
|
17
|
+
```an-diagram title="三條路由,一攬子" summary="通用 CLI、Claude Code 外掛和 Codex 外掛都安裝相同的兩個技能以及託管計畫連線器。"
|
|
18
18
|
{
|
|
19
19
|
"html": "<div class=\"diagram-routes\"><div class=\"diagram-col\"><div class=\"diagram-node\">Universal CLI<br><small class=\"diagram-muted\">skills add visual-plan</small></div><div class=\"diagram-node\">Claude Code 外掛<br><small class=\"diagram-muted\">/plugin install</small></div><div class=\"diagram-node\">Codex 外掛<br><small class=\"diagram-muted\">codex plugin add</small></div></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-panel center\"><span class=\"diagram-pill accent\">/visual-plan</span><span class=\"diagram-pill accent\">/visual-recap</span><small class=\"diagram-muted\">two skills</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-box\">Plan MCP connector<br><small class=\"diagram-muted\">plan.agent-native.com/_agent-native/mcp</small></div></div>",
|
|
20
20
|
"css": ".diagram-routes{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.diagram-routes .diagram-col{display:flex;flex-direction:column;gap:10px}.diagram-routes .diagram-arrow{font-size:22px;line-height:1}.diagram-routes .center{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.diagram-routes .center .diagram-pill{margin:2px}"
|
|
21
21
|
}
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
預設情況下,skills 都會發布到託管的計畫應用 -
|
|
25
|
-
MCP
|
|
24
|
+
預設情況下,skills 都會發布到託管的計畫應用 - 他們透過
|
|
25
|
+
MCP 連線器並向您提供連結或行內計畫以供審核。他們從不傾倒
|
|
26
26
|
內嵌 Markdown/ASCII 計畫作為可交付成果放入聊天中。如果計畫工具
|
|
27
27
|
返回`needs auth`、`Unauthorized`或`Session terminated`,重新驗證
|
|
28
|
-
|
|
29
|
-
壽命長(預設30天,滑動365
|
|
30
|
-
|
|
28
|
+
連線器而不是退回到行內輸出。存取權杖是
|
|
29
|
+
壽命長(預設30天,滑動365天重新整理),所以這種情況應該很少見;
|
|
30
|
+
當發生這種情況時,輕量級修復是:
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
33
|
npx -y @agent-native/core@latest reconnect https://plan.agent-native.com --client codex
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
`reconnect
|
|
37
|
-
用戶端 — 無需重新安裝。重新連線後啟動一個新的Codex
|
|
36
|
+
`reconnect`透過 URL 為選定的本機尋找並重新整理連線器
|
|
37
|
+
用戶端 — 無需重新安裝。重新連線後啟動一個新的Codex對話串,這樣
|
|
38
38
|
工具註冊表重新載入。在 Claude 程式碼中,相當於 `/mcp` →
|
|
39
39
|
**驗證/重新連線**,或與 `--client claude-code` 相同的指令。
|
|
40
40
|
|
|
41
41
|
例外是明確的**本機檔案隱私模式**。當你要求沒有資料庫時
|
|
42
|
-
寫入或設定`AGENT_NATIVE_PLANS_MODE=local-files`,skills
|
|
42
|
+
寫入或設定`AGENT_NATIVE_PLANS_MODE=local-files`,skills不得呼叫
|
|
43
43
|
MCP 計畫連線器。他們寫 `plans/<slug>/plan.mdx` 加上可選
|
|
44
44
|
`canvas.mdx`、`prototype.mdx` 和 `.plan-state.json`,然後使用以下指令進行本機預覽:
|
|
45
45
|
|
|
@@ -60,8 +60,8 @@ npx @agent-native/core@latest plan local serve --dir plans/<slug> --kind plan --
|
|
|
60
60
|
網路),因此頁面掛在“載入計畫”上。已在 macOS `--open` 上
|
|
61
61
|
更喜歡 Chrome/Chromium/Edge/Brave;如果 Safari 仍然開啟,請重新開啟列印的
|
|
62
62
|
Chromium 瀏覽器中的 URL。
|
|
63
|
-
- **服務的URL被寫入`plans/<slug>/.plan-url`**(用
|
|
64
|
-
`--url-file`)
|
|
63
|
+
- **服務的 URL 被寫入`plans/<slug>/.plan-url`**(用
|
|
64
|
+
`--url-file`)。背景或無頭代理可以讀取該檔案,而不是
|
|
65
65
|
抓取長時間執行的 `serve` 標準輸出。將其視為本機權杖檔案並且
|
|
66
66
|
不要提交。
|
|
67
67
|
- **當沒有可用瀏覽器時進行無頭驗證**:
|
|
@@ -71,7 +71,7 @@ npx @agent-native/core@latest plan local serve --dir plans/<slug> --kind plan --
|
|
|
71
71
|
- **首先執行 `plan local check`。**它根據計畫驗證 MDX
|
|
72
72
|
渲染器的塊架構(包括 `checklist` 專案等必填欄位
|
|
73
73
|
`id`/`label` 和 `question-form` 問題 `id`/`title`/`mode`),因此創作
|
|
74
|
-
|
|
74
|
+
錯誤在瀏覽器切換之前出現,而不是作為載入程式卡住。
|
|
75
75
|
|
|
76
76
|
對於目前儲存庫中的資料夾,直接本機路由包括 `?path=...`,因此
|
|
77
77
|
本機計畫應用程式可以將瀏覽器編輯儲存到儲存庫資料夾中。計畫
|
|
@@ -82,7 +82,7 @@ npx @agent-native/core@latest plan local serve --dir plans/<slug> --kind plan --
|
|
|
82
82
|
除非您明確表示,評論、螢幕截圖和計畫歷史紀錄均不可用
|
|
83
83
|
稍後發布。
|
|
84
84
|
|
|
85
|
-
```an-diagram title="託管模式與本機檔案模式" summary="
|
|
85
|
+
```an-diagram title="託管模式與本機檔案模式" summary="預設情況下技能透過連線器發布;本機檔案模式將 MDX 寫入磁盤並透過本機主機橋進行預覽。"
|
|
86
86
|
{
|
|
87
87
|
"html": "<div class=\"diagram-modes\"><div class=\"diagram-card\"><span class=\"diagram-pill accent\">預設 · 託管</span><strong>發布到 Plan 應用</strong><small class=\"diagram-muted\">MCP connector → hosted DB → share links, comments, history, screenshots</small></div><div class=\"diagram-card\"><span class=\"diagram-pill warn\">本機檔案隱私</span><strong>將 MDX 寫入磁盤</strong><small class=\"diagram-muted\">plan.mdx + canvas.mdx + prototype.mdx → localhost bridge → hosted Plan UI reads local source. No 資料庫寫入s until <code>publish-visual-plan</code>.</small></div></div>",
|
|
88
88
|
"css": ".diagram-modes{display:flex;gap:14px;flex-wrap:wrap}.diagram-modes .diagram-card{flex:1 1 260px;display:flex;flex-direction:column;gap:6px;padding:16px 18px}"
|
|
@@ -95,21 +95,21 @@ Agent Native 桌面有一個單獨的託管計畫本機檔案同步路徑:
|
|
|
95
95
|
計畫資料庫作為事實來源;當目標達到時使用本機檔案隱私模式
|
|
96
96
|
沒有計畫資料庫寫入。
|
|
97
97
|
|
|
98
|
-
> 外掛(`agent-native-visual-plans`)帶有app id `visual-plans
|
|
98
|
+
> 外掛(`agent-native-visual-plans`)帶有app id `visual-plans`,這就是為什麼 Claude 程式碼外掛名稱和Codex外掛名稱都是`agent-native-visual-plans`。計畫應用的顯示名稱為“Agent-Native 計畫”。
|
|
99
99
|
|
|
100
100
|
## 安裝路由 {#install}
|
|
101
101
|
|
|
102
102
|
有三種方式。**通用 CLI 路由**是我們預設推薦的一種,因為它安裝 skills **並且**允許您在一個流程中選取託管、本機檔案或自託管模式。外掛路由適用於具有一流外掛/市場系統的主機,並預設使用託管計畫。
|
|
103
103
|
|
|
104
|
-
###
|
|
104
|
+
### 通用技能路由(任意 MCP 主機) {#universal}
|
|
105
105
|
|
|
106
|
-
適用於任何主機 - Claude Code、Codex、Cursor、Cline、Goose、ChatGPT 自訂 MCP 應用程式、Claude Cowork 以及任何其他與 MCP
|
|
106
|
+
適用於任何主機 - Claude Code、Codex、Cursor、Cline、Goose、ChatGPT 自訂 MCP 應用程式、Claude Cowork 以及任何其他與 MCP 相容的內容。 Agent-Native CLI 安裝 skills,註冊託管計畫 MCP 連線器,**並在同一步驟中為選定的本機用戶端執行驗證**,因此您的第一個工具呼叫不會遇到 OAuth 牆:
|
|
107
107
|
|
|
108
108
|
```bash
|
|
109
109
|
npx @agent-native/core@latest skills add visual-plan
|
|
110
110
|
```
|
|
111
111
|
|
|
112
|
-
這將安裝 `visual-plan` 以及配套的 `visual-recap` 技能,然後註冊 `plan` 連線器,然後執行驗證(OAuth
|
|
112
|
+
這將安裝 `visual-plan` 以及配套的 `visual-recap` 技能,然後註冊 `plan` 連線器,然後執行驗證(OAuth 提示託管/帳戶支援的共用)。有用的標誌:
|
|
113
113
|
|
|
114
114
|
- `--client codex|claude-code|claude-code-cli|cowork|all` — 為其編寫 MCP 設定的本機代理(預設 `all`)。
|
|
115
115
|
- `--no-connect` — 註冊連線器而不進行驗證;稍後執行 `npx @agent-native/core@latest connect https://plan.agent-native.com --client all`,或者選取更窄的 `--client`。
|
|
@@ -134,7 +134,7 @@ npx @agent-native/core@latest recap doctor
|
|
|
134
134
|
|
|
135
135
|
> 注意:裸機 `npx skills@latest add BuilderIO/agent-native --skill visual-plan`(Vercel/open Skills CLI)安裝**僅說明** - 它不註冊 MCP 連線器。當您也想連線連線器時,請使用上面的 Agent-Native CLI。
|
|
136
136
|
|
|
137
|
-
### Claude程式碼(外掛) {#claude-code}
|
|
137
|
+
### Claude 程式碼(外掛) {#claude-code}
|
|
138
138
|
|
|
139
139
|
公開 `BuilderIO/agent-native` 儲存庫本身就是一個 Claude 程式碼外掛市場,因此您可以直接新增它 - 無需建置步驟。 Claude 內部程式碼:
|
|
140
140
|
|
|
@@ -145,7 +145,7 @@ npx @agent-native/core@latest recap doctor
|
|
|
145
145
|
/mcp # authenticate the Plan connector (one OAuth approval)
|
|
146
146
|
```
|
|
147
147
|
|
|
148
|
-
`/plugin install` 新增了計畫 skills 和 **僅 URL** MCP 設定(包中沒有秘密); `/mcp`→**驗證**完成OAuth握手。當您需要本機檔案或自託管模式時,請使用通用 CLI 路由。
|
|
148
|
+
`/plugin install` 新增了計畫 skills 和 **僅 URL** MCP 設定(包中沒有秘密); `/mcp`→**驗證**完成 OAuth 握手。當您需要本機檔案或自託管模式時,請使用通用 CLI 路由。
|
|
149
149
|
|
|
150
150
|
> 市場目錄名為 `agent-native-apps`,計畫外掛為 `agent-native-visual-plans`,因此安裝目標始終為 `agent-native-visual-plans@agent-native-apps`。
|
|
151
151
|
|
|
@@ -159,42 +159,42 @@ codex plugin add agent-native-visual-plans@agent-native-apps
|
|
|
159
159
|
codex mcp login plan # 瀏覽器中的 OAuth
|
|
160
160
|
```
|
|
161
161
|
|
|
162
|
-
安裝後,**啟動新的 Codex
|
|
162
|
+
安裝後,**啟動新的 Codex 對話串**,以便 skills 和 MCP 工具載入到工作階段中。該外掛附帶一個僅限 URL 的連線器(`[mcp_servers.plan]` → `https://plan.agent-native.com/_agent-native/mcp`); `codex mcp login plan` 執行 OAuth 流程。如果您更喜歡使用一個指令來同時安裝和驗證,或者需要本機檔案或自託管模式,則上面的通用 CLI 路由也適用於 Codex (`npx @agent-native/core@latest skills add visual-plan --client codex`)。
|
|
163
163
|
|
|
164
|
-
> **較舊的安裝:**如果您的設定仍然有一個 `agent-native-plans` 條目指向相同的 URL,為 Codex 執行 `npx -y @agent-native/core@latest reconnect https://plan.agent-native.com --client codex`,或者與您的目標 `--client`
|
|
164
|
+
> **較舊的安裝:**如果您的設定仍然有一個 `agent-native-plans` 條目指向相同的 URL,為 Codex 執行 `npx -y @agent-native/core@latest reconnect https://plan.agent-native.com --client codex`,或者與您的目標 `--client` 執行相同的指令,則將其合併為規範的 `plan` 名稱。
|
|
165
165
|
|
|
166
166
|
## 更新 {#updates}
|
|
167
167
|
|
|
168
168
|
外掛路由自動更新 - 您無需重新打包或重新新增市場來進行日常技能更改:
|
|
169
169
|
|
|
170
|
-
- **Claude Code** - 市場條目設定 `autoUpdate: true` 並且外掛使用 commit-SHA 版本控制,因此 Claude Code
|
|
171
|
-
- **Codex** — 外掛 `version` 嵌入了捆綁的 skills 和 MCP 端點(例如 `1.0.0+codex.<hash>`)的內容哈希,因此任何技能或端點更改都會產生新版本。 Codex的啟動自動升級會自行重新安裝設定的git
|
|
172
|
-
- **通用 CLI
|
|
170
|
+
- **Claude Code** - 市場條目設定 `autoUpdate: true` 並且外掛使用 commit-SHA 版本控制,因此 Claude Code 在啟動時從儲存庫中擷取新版本;執行`/reload-plugins`來啟用。每次對儲存庫預設分支的推送都會自動到達已安裝的使用者。
|
|
171
|
+
- **Codex** — 外掛 `version` 嵌入了捆綁的 skills 和 MCP 端點(例如 `1.0.0+codex.<hash>`)的內容哈希,因此任何技能或端點更改都會產生新版本。 Codex的啟動自動升級會自行重新安裝設定的git市場;只需**啟動一個新對話串**即可取得更改。日常更新無需手動`codex plugin marketplace upgrade`。
|
|
172
|
+
- **通用 CLI 路由** — 執行 `npx @agent-native/core@latest skills status visual-plan` 來檢查複製的技能資料夾,或執行 `npx @agent-native/core@latest skills update visual-plan` 來重新整理它們。當您還想重新註冊/驗證連線器時,重新執行 `skills add visual-plan` 仍然有效。 `@latest` 始終從已發布的 `@agent-native/core` 包中擷取目前的 skills。
|
|
173
173
|
|
|
174
|
-
連線器指向**託管**應用程式,因此計畫應用程式的 actions
|
|
174
|
+
連線器指向**託管**應用程式,因此計畫應用程式的 actions 和即時工具表面始終反映已部署的版本,無論您何時安裝;只有捆綁的技能說明遵循上述更新機制。
|
|
175
175
|
|
|
176
|
-
> **維護者:** 市場捆綁包(`.claude-plugin/`、`.agents/plugins/`)是由 `pnpm sync:plan-marketplace` 根據規範計畫 skills
|
|
176
|
+
> **維護者:** 市場捆綁包(`.claude-plugin/`、`.agents/plugins/`)是由 `pnpm sync:plan-marketplace` 根據規範計畫 skills 產生的,並由 `pnpm guard:plan-marketplace` 在 CI 中進行驗證,因此發布的市場始終與規範 skills 匹配。編輯技能,執行`pnpm sync:plan-marketplace`,然後提交。
|
|
177
177
|
|
|
178
|
-
##
|
|
178
|
+
## 您需要提交什麼嗎? {#submission}
|
|
179
179
|
|
|
180
|
-
|
|
180
|
+
**分發或安裝此程式不需要提交或審核。** `BuilderIO/agent-native` 是一個自託管的公開 git 市場,因此使用者可以使用上面的指令直接在 **Claude 程式碼和 Codex** 上新增它 - 無需申請或核准。通用 CLI 路由根本不需要市場。
|
|
181
181
|
|
|
182
|
-
|
|
182
|
+
如果您想要公開清單,可選的可發現性:
|
|
183
183
|
|
|
184
|
-
- **Claude
|
|
185
|
-
- **Codex** 有一個 OpenAI
|
|
184
|
+
- **Claude 程式碼**有一個社群市場,您可以*可選*提交到清單(提交加上自動審核)。 Anthropic 管理的官方市場由 Anthropic 自行決定列出 — 沒有開放的自助應用程式。兩者都不需要使用上面的安裝指令。
|
|
185
|
+
- **Codex** 有一個 OpenAI 策劃的外掛目錄(一個封閉的允許清單,作為合作伙伴而不是自助提交)。自託管 git 市場和 CLI 路由無需提交即可工作。
|
|
186
186
|
|
|
187
187
|
簡而言之:將其作為自託管/公開 git 市場發布,使用者直接安裝;僅當您希望將其列出以供發現時才提交到精選目錄。
|
|
188
188
|
|
|
189
189
|
## 外掛與技能 {#plugin-vs-skill}
|
|
190
190
|
|
|
191
|
-
|
|
191
|
+
**技能**是代理在工作匹配時讀取的單一 `SKILL.md` 指令檔案。 **外掛**(Claude 程式碼市場外掛或 Codex 外掛)是一個捆綁一個或多個 skills **加上** MCP 連線器和中繼資料的套件,因此主機可以一步安裝所有內容。
|
|
192
192
|
|
|
193
|
-
在底層,所有三個路由均由 `npx @agent-native/core@latest app-skill` CLI 從同一來源生成:`app-skill pack`
|
|
193
|
+
在底層,所有三個路由均由 `npx @agent-native/core@latest app-skill` CLI 從同一來源生成:`app-skill pack` 建置市場/外掛轉接器,而 `skills add` 是友好的一步安裝程式,還可以註冊和驗證 MCP 連線器。請參閱 [Skills Guide](/docs/skills-guide) 了解應用程式技能清單格式,並參閱 [External Agents](/docs/external-agents) 了解連線任何 MCP 主機和 `npx @agent-native/core@latest connect` 流。
|
|
194
194
|
|
|
195
|
-
##
|
|
195
|
+
## 下一步是什麼 {#whats-next}
|
|
196
196
|
|
|
197
197
|
- [**Visual Plans**](/docs/template-plan) — skills 的用途以及如何使用它們
|
|
198
|
-
- [**PR Visual Recap**](/docs/pr-visual-recap) -
|
|
199
|
-
- [**Skills Guide**](/docs/skills-guide) -
|
|
198
|
+
- [**PR Visual Recap**](/docs/pr-visual-recap) - 在每個 pull request 上自動執行 `/visual-recap`
|
|
199
|
+
- [**Skills Guide**](/docs/skills-guide) - 應用程式支援的 skills 和清單格式
|
|
200
200
|
- [**External Agents**](/docs/external-agents) — 連線任何 MCP 主機和往返工件
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
|
-
title: "
|
|
3
|
-
description: "GitHub 操作,在每個 PR 上執行儲存庫的視覺回顧技能。 LLM
|
|
2
|
+
title: "PR 視覺回顧"
|
|
3
|
+
description: "GitHub 操作,在每個 PR 上執行儲存庫的視覺回顧技能。 LLM 編碼代理讀取差異,發布互動式回顧計畫,顯示資訊檢查,並發布帶有行內螢幕截圖的置頂 PR 評論。資訊性和非阻塞。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
#
|
|
6
|
+
# PR 視覺回顧
|
|
7
7
|
|
|
8
|
-
PR Visual Recap 是一個 GitHub
|
|
8
|
+
PR Visual Recap 是一個 GitHub 操作,它將每個 pull request 轉變為**視覺化程式碼審查**。每次推送時,LLM 編碼代理都會根據 PR 差異執行最新的捆綁 [`visual-recap`](/docs/template-plan) 技能(或者 `VISUAL_RECAP_SKILL_SOURCE=repo` 時您的儲存庫的提交副本),向託管計畫應用程式發布結構化回顧計畫,在執行時顯示資訊性 `Visual Recap` 檢查,並更新插入**一條置頂 PR 評論**,該評論連結到互動式計畫,並在評論中嵌入**行內螢幕截圖**。
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
這不是確定性差異渲染器。該操作呼叫真正的編碼代理(預設情況下為 Claude 程式碼 CLI,或 OpenAI Codex CLI),該代理讀取更改,決定重要內容,並透過呼叫計畫 MCP 工具 `create-visual-recap`(與 `/visual-recap` 斜線指令使用的工具相同)來編寫概要。您將獲得變化的高空模式/API/前後檢視,而不是原始差異牆。
|
|
11
11
|
|
|
12
|
-
回顧是**資訊性且非阻塞**。它建立一個檢查行,以便審閱者可以看到生成正在進行中,但這不是必需的檢查,它永遠不會阻止 PR
|
|
12
|
+
回顧是**資訊性且非阻塞**。它建立一個檢查行,以便審閱者可以看到生成正在進行中,但這不是必需的檢查,它永遠不會阻止 PR,也永遠不會取代讀取實際的差異。置頂評論是一種審閱輔助工具,而不是簽字。
|
|
13
13
|
|
|
14
14
|
## 它的作用
|
|
15
15
|
|
|
@@ -17,46 +17,46 @@ PR Visual Recap 是一個 GitHub 操作,它將每個拉取請求轉變為**可
|
|
|
17
17
|
|
|
18
18
|
1. 收集 PR 基礎和頭部之間的有界差異。
|
|
19
19
|
2. 使用 `Visual recap in progress` 建立資訊性 `Visual Recap` GitHub 檢查。
|
|
20
|
-
3. 針對該差異執行設定的編碼代理。代理會讀取捆綁的 `visual-recap`
|
|
20
|
+
3. 針對該差異執行設定的編碼代理。代理會讀取捆綁的 `visual-recap` 技能指南(或您的儲存庫固定副本)並撰寫回顧,並透過 `create-visual-recap` 發布。
|
|
21
21
|
4. 讀取代理寫給 `recap-url.txt` 的已發布計畫 URL。
|
|
22
22
|
5. 在無頭 Chrome 中開啟 URL 並截取明暗模式下渲染的平面圖。
|
|
23
|
-
6. 將 PNG
|
|
24
|
-
7.
|
|
23
|
+
6. 將 PNG 上傳到“計畫”應用上已簽名的公開圖片路由。
|
|
24
|
+
7. 在互動式回顧的連結旁邊插入一條置頂 PR 評論,將螢幕截圖**行內**嵌入到 `<picture>` 元素(透過 GitHub 的camo 圖片代理提供)。
|
|
25
25
|
8. 以成功、跳過或中立的方式完成 `Visual Recap` 檢查。
|
|
26
26
|
|
|
27
|
-
```an-diagram title="每次 PR
|
|
27
|
+
```an-diagram title="每次 PR 推送都會發生什麼" summary="有界差異為真正的編碼代理提供資訊,該代理編寫了回顧;工作流程會對其進行螢幕截圖並插入一條置頂評論。"
|
|
28
28
|
{
|
|
29
29
|
"html": "<div class=\"diagram-recap\"><div class=\"diagram-node\">PR 推送<br><small class=\"diagram-muted\">bounded base…head diff</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-node\">編碼 Agent<br><small class=\"diagram-muted\">Claude Code / Codex 讀取 diff</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-panel center\"><span class=\"diagram-pill accent\">create-visual-recap</span><small class=\"diagram-muted\">publishes recap plan</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-node\">無頭 Chrome<br><small class=\"diagram-muted\">light + dark screenshots</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-box\">一條置頂 PR 評論<br><small class=\"diagram-muted\">inline screenshot + plan link</small></div></div><div class=\"diagram-foot diagram-muted\">Plus an informational <span class=\"diagram-pill\">Visual Recap</span> check — non-blocking, never required.</div>",
|
|
30
30
|
"css": ".diagram-recap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.diagram-recap .diagram-arrow{font-size:20px;line-height:1}.diagram-recap .center{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.diagram-recap .diagram-foot{flex-basis:100%;margin-top:10px;font-size:13px}"
|
|
31
31
|
}
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
重新推送會更新相同的計畫和相同的置頂評論 - 沒有孤立的計畫,沒有垃圾評論。
|
|
35
35
|
|
|
36
36
|
## 安裝
|
|
37
37
|
|
|
38
38
|
互動安裝套餐時,Agent-Native CLI 詢問是否新增
|
|
39
|
-
|
|
39
|
+
自動 PR 視覺回顧。同意寫入 GitHub 操作,或新增它
|
|
40
40
|
隨時明確:
|
|
41
41
|
|
|
42
42
|
```bash
|
|
43
43
|
npx @agent-native/core@latest skills add visual-plan --with-github-action
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
-
這將安裝 `visual-plan` 技能(其中包括操作執行的 `visual-recap` 技能)並將 `.github/workflows/pr-visual-recap.yml`
|
|
46
|
+
這將安裝 `visual-plan` 技能(其中包括操作執行的 `visual-recap` 技能)並將 `.github/workflows/pr-visual-recap.yml` 寫入您的儲存庫。工作流程透過 `npx @agent-native/core@latest recap <subcommand>` 呼叫**發布的 CLI 子指令** — 包括 `gate`、`collect-diff`、`block-reference`、`scan`、`build-prompt`、`publish`、`shot`、`comment`、`check` 和`usage` - 因此沒有任何內容作為幫助程式指令碼複製到您的儲存庫中。 `setup`和`doctor`是您本機執行的互動式助手; `gate` 是工作流程在每次回顧之前執行的安全門步驟。
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
然後執行引導設定幫助程式:
|
|
49
49
|
|
|
50
50
|
```bash
|
|
51
51
|
npx @agent-native/core@latest recap setup
|
|
52
52
|
npx @agent-native/core@latest recap doctor
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
-
`recap setup
|
|
55
|
+
`recap setup`重新整理工作流程,使用`gh`設定GitHub Actions
|
|
56
56
|
當值可從 env 或本機計畫獲得時的秘密/變數
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
發布權杖儲存,並列印任何它無法列印的確切缺失指令
|
|
58
|
+
設定。秘密值透過標準輸入傳送到 `gh`,而不是指令參數。提交
|
|
59
|
+
產生的工作流程檔案並開啟 PR 以檢視其執行。
|
|
60
60
|
|
|
61
61
|
預設情況下,工作流程根據最新捆綁的內容建置其代理提示
|
|
62
62
|
`@agent-native/core@latest` 中的 `visual-recap` 指導,包括任何同級
|
|
@@ -109,7 +109,7 @@ npx @agent-native/core@latest connect https://plan.agent-native.com --service-to
|
|
|
109
109
|
```
|
|
110
110
|
|
|
111
111
|
該指令在瀏覽器中對您進行驗證,然後列印服務權杖
|
|
112
|
-
僅一次 -
|
|
112
|
+
僅一次 - 將其儲存為 `PLAN_RECAP_TOKEN` 秘密。稍後使用
|
|
113
113
|
`list-org-service-tokens` 和 `revoke-org-service-token` actions
|
|
114
114
|
計畫應用程式。
|
|
115
115
|
|
|
@@ -132,16 +132,16 @@ npx @agent-native/core@latest recap setup
|
|
|
132
132
|
| ------------------------ | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
|
|
133
133
|
| `OPENAI_API_KEY` | — | 秘密。與 `VISUAL_RECAP_AGENT=codex` 一起設定以使用 Codex 執行回顧。 |
|
|
134
134
|
| `VISUAL_RECAP_AGENT` | `claude` | 變數。選取編碼代理後端(`claude` 或 `codex`)。 |
|
|
135
|
-
| `VISUAL_RECAP_MODEL` | 每個CLI的預設值
|
|
135
|
+
| `VISUAL_RECAP_MODEL` | 每個 CLI 的預設值 | 變數。固定模型 - 例如`gpt-5.5` 表示 Codex,或 Claude 型號 ID。取消設定使用 CLI 自己的預設值。 |
|
|
136
136
|
| `VISUAL_RECAP_REASONING` | 每個模型的預設值 | 變數。推理深度:`none`、`minimal`、`low`、`medium`、`high` 或 `xhigh`。適用於Codex後端。 |
|
|
137
137
|
| `RECAP_CLI_VERSION` | `latest` | 變數。固定工作流程安裝的 `@agent-native/core` CLI 版本 - 例如`1.5.0`。參見[Version pinning](#version-pinning-copy-variant)。 |
|
|
138
138
|
| `PLAN_RECAP_APP_URL` | `https://plan.agent-native.com` | 秘密。僅當在不同來源自行託管計畫應用時。 |
|
|
139
139
|
|
|
140
|
-
|
|
140
|
+
工作流自動偵測如何呼叫其助手 CLI(此 monorepo 內的本機來源,在其他地方發布的 `@agent-native/core`),因此無需設定 `RECAP_CLI` 變數。
|
|
141
141
|
|
|
142
142
|
## 評論內嵌截圖
|
|
143
143
|
|
|
144
|
-
代理發布概要後,工作流程會在無頭 Chrome 中以淺色和深色模式對渲染的計畫進行螢幕截圖,並將 PNG
|
|
144
|
+
代理發布概要後,工作流程會在無頭 Chrome 中以淺色和深色模式對渲染的計畫進行螢幕截圖,並將 PNG 上傳到計畫應用程式上已簽名的公開圖片路徑。然後,置頂 PR 評論將這些螢幕截圖**內嵌**與 `<picture>` 元素一起嵌入 - GitHub 透過其迷彩代理重新提供它們,因此審閱者可以直接在評論中看到與其 GitHub 主題匹配的預覽,而無需開啟任何內容。當他們想要探索、評論或註解時,完整互動計畫的連結就位於其旁邊。
|
|
145
145
|
|
|
146
146
|
## 分叉 PR
|
|
147
147
|
|
|
@@ -149,17 +149,17 @@ npx @agent-native/core@latest recap setup
|
|
|
149
149
|
|
|
150
150
|
主要的 `pr-visual-recap.yml` 工作流程在普通的 `pull_request` 觸發器上觸發,**不是** `pull_request_target`。因此,分叉 PR 執行時**無法存取儲存庫機密**,因此工作流程不會發現 `PLAN_RECAP_TOKEN` 並且完全無操作 - 不會發布失敗,不會暴露憑證。對於來自同一儲存庫中的分支的 PR,自動執行 Recaps,其中機密可用。
|
|
151
151
|
|
|
152
|
-
|
|
152
|
+
這也意味著您可以在秘密存在之前\*\*合併工作流檔案:在沒有設定權杖的情況下,每次執行都是安靜的無操作,直到您設定秘密為止。 `gate` 步驟還會自動跳過草稿 PR 和機器人編寫的 PR,因此預設情況下不會執行觸發器回顧。
|
|
153
153
|
|
|
154
154
|
### 選取加入標籤門控分叉工作流程
|
|
155
155
|
|
|
156
|
-
如果您想生成分叉 PR 的摘要,可以使用第二個工作流程檔案:`.github/workflows/pr-visual-recap-fork.yml`。它使用 `pull_request_target`(使用基本儲存庫機密執行),但從不簽出或執行分叉程式碼。具有 GitHub 作者關聯 `OWNER`、`MEMBER` 或 `COLLABORATOR` 的可信分叉作者會自動執行。外部分叉 PR 需要在 recap
|
|
156
|
+
如果您想生成分叉 PR 的摘要,可以使用第二個工作流程檔案:`.github/workflows/pr-visual-recap-fork.yml`。它使用 `pull_request_target`(使用基本儲存庫機密執行),但從不簽出或執行分叉程式碼。具有 GitHub 作者關聯 `OWNER`、`MEMBER` 或 `COLLABORATOR` 的可信分叉作者會自動執行。外部分叉 PR 需要在 recap 代理執行之前透過新的 `recap` 標籤事件明確的**每頭維護者選取加入**。
|
|
157
157
|
|
|
158
158
|
要安裝它,請將檔案從 [BuilderIO/agent-native](https://github.com/BuilderIO/agent-native/blob/main/.github/workflows/pr-visual-recap-fork.yml) 與現有的 `pr-visual-recap.yml` 一起複製到儲存庫的 `.github/workflows/` 目錄中。相同的秘密(`PLAN_RECAP_TOKEN`、`ANTHROPIC_API_KEY`)適用。
|
|
159
159
|
|
|
160
160
|
```an-diagram title="分叉 PR 同意門" summary="預設情況下,分叉 PR 沒有任何秘密;受信任的作者自動執行,外部貢獻者需要新的維護者回顧標籤。"
|
|
161
161
|
{
|
|
162
|
-
"html": "<div class=\"diagram-fork\"><div class=\"diagram-node\">Fork PR 已開啟<br><small class=\"diagram-muted\">main workflow has no secrets</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-card\"><span class=\"diagram-pill ok\">可信作者</span><small class=\"diagram-muted\">OWNER、MEMBER 或 COLLABORATOR 自動執行</small></div><div class=\"diagram-card\"><span class=\"diagram-pill warn\">外部貢獻者</span><small class=\"diagram-muted\">維護者審核 diff 後再應用 <code>recap</code></small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-panel center\">門禁檢查<br><small class=\"diagram-muted\">fork PR? & trusted or fresh label?</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-box ok\">回顧執行<br><small class=\"diagram-muted\">僅基礎 repo 程式碼 · fork diff
|
|
162
|
+
"html": "<div class=\"diagram-fork\"><div class=\"diagram-node\">Fork PR 已開啟<br><small class=\"diagram-muted\">main workflow has no secrets</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-card\"><span class=\"diagram-pill ok\">可信作者</span><small class=\"diagram-muted\">OWNER、MEMBER 或 COLLABORATOR 自動執行</small></div><div class=\"diagram-card\"><span class=\"diagram-pill warn\">外部貢獻者</span><small class=\"diagram-muted\">維護者審核 diff 後再應用 <code>recap</code></small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-panel center\">門禁檢查<br><small class=\"diagram-muted\">fork PR? & trusted or fresh label?</small></div><div class=\"diagram-arrow diagram-muted\" aria-hidden=\"true\">→</div><div class=\"diagram-box ok\">回顧執行<br><small class=\"diagram-muted\">僅基礎 repo 程式碼 · fork diff 作為文字輸入</small></div></div>",
|
|
163
163
|
"css": ".diagram-fork{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.diagram-fork .diagram-arrow{font-size:20px;line-height:1}.diagram-fork .center{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.diagram-fork .diagram-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px}"
|
|
164
164
|
}
|
|
165
165
|
```
|
|
@@ -171,53 +171,53 @@ npx @agent-native/core@latest recap setup
|
|
|
171
171
|
3. 外部貢獻者要求維護人員檢查目前的差異(特別是對於提示注入型內容 - 見下文),然後將 `recap` 標籤應用於 PR。
|
|
172
172
|
4. 外部貢獻者標籤門是每個頭 SHA:如果貢獻者推送更多提交,則下一個同步事件將跳過,直到維護者在檢查新差異後刪除並重新應用 `recap`。
|
|
173
173
|
|
|
174
|
-
### fork
|
|
174
|
+
### fork 工作流程做什麼以及 NOT 做什麼
|
|
175
175
|
|
|
176
|
-
| 工作流程DOES
|
|
177
|
-
|
|
|
178
|
-
| 在**基本分支引用**處簽出**基本儲存庫** - 僅受信任的程式碼
|
|
179
|
-
|
|
|
180
|
-
| 執行 `git diff base...refs/recap/fork-head` —
|
|
181
|
-
| 執行**基礎儲存庫的**視覺回顧技能和代理設定
|
|
182
|
-
|
|
|
183
|
-
|
|
|
176
|
+
| 工作流程DOES | 工作流程執行 NOT |
|
|
177
|
+
| ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
|
|
178
|
+
| 在**基本分支引用**處簽出**基本儲存庫** - 僅受信任的程式碼 | 從 fork 中簽出或執行任何程式碼 |
|
|
179
|
+
| 取得fork head作為遠端引用(`git fetch origin pull/<n>/head:refs/recap/fork-head`)——取得提交是安全的 | 從 fork 安裝套件、執行 fork 指令碼或將 fork 內容評估為程式碼 |
|
|
180
|
+
| 執行 `git diff base...refs/recap/fork-head` — 兩個已取得物件的純文字差異 | 將差異用作 LLM 文字輸入之外的任何內容 |
|
|
181
|
+
| 執行**基礎儲存庫的**視覺回顧技能和代理設定 | 從 fork 載入任何技能或設定 |
|
|
182
|
+
| 透過與第一方 PR 相同的秘密掃描步驟(失敗關閉)傳遞差異 | 跳過秘密掃描 |
|
|
183
|
+
| 向代理提示新增明確的提示強化註解,將差異內容標記為不受信任 | 授予代理除正常回顧代理之外的任何其他權限 |
|
|
184
184
|
|
|
185
|
-
###
|
|
185
|
+
### 為什麼在標記之前必須檢查差異
|
|
186
186
|
|
|
187
|
-
fork diff
|
|
187
|
+
fork diff 是攻擊者控制的文字,recap 代理將其讀取為輸入。精心設計的 diff 可能包含提示注入內容 - 例如,看起來像代理指令的 diff 行 - 旨在使 recap 代理採取非預期的 actions (例如,外洩發布權杖或產生誤導性的 recap 內容)。
|
|
188
188
|
|
|
189
189
|
在應用 `recap` 標籤之前,瀏覽差異:
|
|
190
190
|
|
|
191
191
|
- 讀起來像直接指令或角色指令的行(“忽略先前的指令...”、“您現在...”、“將權杖寫入...”)。
|
|
192
|
-
-
|
|
192
|
+
- 不尋常的檔名可能會在系統提示時被誤讀。
|
|
193
193
|
- 新增的檔案中的編碼內容可能會解碼為指令。
|
|
194
194
|
|
|
195
|
-
|
|
195
|
+
這些緩解措施已經在工作流程中分層(秘密掃描、敏感路徑門控、提示強化註解、受限代理工具允許清單),但標籤審查是主要防線。
|
|
196
196
|
|
|
197
197
|
### 與主工作流程的關系
|
|
198
198
|
|
|
199
|
-
這兩個工作流程檔案是獨立的。對於非分叉 PR 更新,`pr-visual-recap.yml` 是唯一執行的工作流程。對於分叉 PR,正常工作流程在其分叉門處退出,`pr-visual-recap-fork.yml` 會為受信任的同一組織作者自動執行,或者在外部貢獻者的新維護者 `recap`
|
|
199
|
+
這兩個工作流程檔案是獨立的。對於非分叉 PR 更新,`pr-visual-recap.yml` 是唯一執行的工作流程。對於分叉 PR,正常工作流程在其分叉門處退出,`pr-visual-recap-fork.yml` 會為受信任的同一組織作者自動執行,或者在外部貢獻者的新維護者 `recap` 標籤之後自動執行。它們共用相同的置頂評論標記和計畫 ID 對話串,因此 PR 和分支 PR 都會對同一 PR 生成單一更新插入的評論。
|
|
200
200
|
|
|
201
201
|
### 自修改守衛 {#self-modifying-guard}
|
|
202
202
|
|
|
203
|
-
當 PR 觸及以下任何路徑時,`gate` 步驟會完全跳過回顧,因此 PR
|
|
203
|
+
當 PR 觸及以下任何路徑時,`gate` 步驟會完全跳過回顧,因此 PR 永遠無法重寫可信回顧作業載入並外洩機密的工作流程、技能或代理設定:
|
|
204
204
|
|
|
205
205
|
| 路徑模式 | 原因 |
|
|
206
206
|
| ------------------------------------------ | ---------------------------------------- |
|
|
207
207
|
| `.github/workflows/pr-visual-recap.yml` | 工作流程本身 |
|
|
208
208
|
| `**/skills/visual-(recap\|plan\|plans)/**` | The visual-recap skill the agent follows |
|
|
209
|
-
| `**/.claude/**` |
|
|
210
|
-
| `**/CLAUDE.md` |
|
|
211
|
-
| `**/AGENTS.md` |
|
|
212
|
-
| `**/.mcp.json` | 執行器載入的MCP伺服器設定
|
|
209
|
+
| `**/.claude/**` | 執行程式載入的代理設定 |
|
|
210
|
+
| `**/CLAUDE.md` | 執行程式載入的代理指令 |
|
|
211
|
+
| `**/AGENTS.md` | 執行程式載入的代理指令 |
|
|
212
|
+
| `**/.mcp.json` | 執行器載入的 MCP 伺服器設定 |
|
|
213
213
|
|
|
214
214
|
在 `BuilderIO/agent-native` monorepo 中,工作流程從受信任的基本分支來源而不是 PR 頭來源執行回顧 CLI。這使得正常的包更改(包括 `packages/core/**`)可以進行回顧,而無需執行 PR 修改的 CLI 程式碼。
|
|
215
215
|
|
|
216
216
|
## 本機檔案隱私模式
|
|
217
217
|
|
|
218
218
|
GitHub 操作專為託管、可共用的 PR 審核而設計。如果你想要一個
|
|
219
|
-
|
|
220
|
-
|
|
219
|
+
回顧而不將回顧內容傳送到 Agent-Native 計畫資料庫,執行
|
|
220
|
+
相同的幫助程式在本機檔案模式下本機流動:
|
|
221
221
|
|
|
222
222
|
```bash
|
|
223
223
|
npx @agent-native/core@latest recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
|
|
@@ -225,7 +225,7 @@ npx @agent-native/core@latest recap scan --diff recap.diff
|
|
|
225
225
|
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
|
|
226
226
|
```
|
|
227
227
|
|
|
228
|
-
|
|
228
|
+
將產生的 `recap-prompt.md` 交給您的編碼代理。在本機檔案模式
|
|
229
229
|
提示指示代理寫入 `plans/pr-123-visual-recap/plan.mdx`
|
|
230
230
|
加上可選的視覺檔案,然後執行:
|
|
231
231
|
|
|
@@ -235,19 +235,19 @@ npx @agent-native/core@latest plan local serve --dir plans/pr-123-visual-recap -
|
|
|
235
235
|
|
|
236
236
|
返回的 URL 開啟託管計畫 UI,同時瀏覽器讀取回顧 MDX
|
|
237
237
|
來自本機主機橋。回顧內容未寫入託管計畫
|
|
238
|
-
資料庫,URL僅適用於執行網橋的機器。如果你執行
|
|
238
|
+
資料庫,URL 僅適用於執行網橋的機器。如果你執行
|
|
239
239
|
本機計畫應用程式具有相同的 `PLAN_LOCAL_DIR`,
|
|
240
|
-
`/local-plans/pr-123-visual-recap`
|
|
240
|
+
`/local-plans/pr-123-visual-recap` 路由也有效。儲存庫支援的資料夾可以
|
|
241
241
|
以 `/local-plans/pr-123-visual-recap?path=plans%2Fpr-123-visual-recap` 的形式開啟。
|
|
242
|
-
|
|
242
|
+
此模式停用託管的置頂 PR 評論、內嵌螢幕截圖上傳,
|
|
243
243
|
使用附件和瀏覽器評論,直到您明確發布為止。
|
|
244
244
|
|
|
245
245
|
## 它是資訊性的,而不是門
|
|
246
246
|
|
|
247
247
|
概述是在正常 PR 流程之上的複習輔助工具:
|
|
248
248
|
|
|
249
|
-
- 它顯示 `Visual Recap`
|
|
250
|
-
-
|
|
249
|
+
- 它顯示 `Visual Recap` 檢查行以提高可見性,但它**不是必需的檢查**並且永遠不會阻止合併。
|
|
250
|
+
- 生成或發布失敗會中立地完成,並顯示為解釋性置頂註解,而不是不相關程式碼上的紅色 X。
|
|
251
251
|
- 回顧及其螢幕截圖**並不意味著差異已被審查**。審閱者仍然需要閱讀實際更改的行。
|
|
252
252
|
|
|
253
253
|
## 版本固定(複製變體) {#version-pinning-copy-variant}
|
|
@@ -259,20 +259,20 @@ npx @agent-native/core@latest plan local serve --dir plans/pr-123-visual-recap -
|
|
|
259
259
|
|
|
260
260
|
該變數是可選的。保持未設定(或將其設定為 `latest`)以跟蹤最新版本。
|
|
261
261
|
|
|
262
|
-
|
|
262
|
+
對於可重用呼叫程式變體,請使用 `cli-version` 輸入(請參閱可重用部分中的 [Version pinning](#version-pinning))。
|
|
263
263
|
|
|
264
264
|
## 秘密掃描允許清單
|
|
265
265
|
|
|
266
|
-
在發布回顧之前,工作流程執行 `npx @agent-native/core@latest recap scan`
|
|
266
|
+
在發布回顧之前,工作流程執行 `npx @agent-native/core@latest recap scan` 以偵測差異中可能的秘密。任何其 diff 與已知秘密模式匹配的 PR 都會被阻止並帶有解釋性註解 - 不會發布摘要,並且不會將 diff 內容傳送到編碼代理。
|
|
267
267
|
|
|
268
268
|
在極少數情況下,儲存庫具有故意的測試裝置或表面上類似於秘密模式的非秘密字串(例如,測試檔案中的裝置金鑰)。要抑制誤報,請在儲存庫的根目錄中建立 `.github/recap-scan-allowlist`。
|
|
269
269
|
|
|
270
270
|
### 格式
|
|
271
271
|
|
|
272
|
-
|
|
272
|
+
每個非空白、非註解行都是一個 **文字子字串** 或 **`/regex/flags`** 模式:
|
|
273
273
|
|
|
274
274
|
```
|
|
275
|
-
# 以 #
|
|
275
|
+
# 以 # 開頭的行是註解。
|
|
276
276
|
|
|
277
277
|
# 文字子字串 — 允許包含該字串的任何 diff 行。
|
|
278
278
|
sk-test-fixture1234567890abcdef
|
|
@@ -291,32 +291,32 @@ EXAMPLE_API_KEY=placeholder-value
|
|
|
291
291
|
- 空檔案相當於沒有檔案。
|
|
292
292
|
- 格式錯誤的正則表達式行被視為文字字串。
|
|
293
293
|
|
|
294
|
-
允許清單僅由秘密掃描門查閱。它不會影響編碼代理可以讀取的內容 -
|
|
294
|
+
允許清單僅由秘密掃描門查閱。它不會影響編碼代理可以讀取的內容 - 如果門透過,代理無論如何都會收到完整的差異。
|
|
295
295
|
|
|
296
296
|
## 采用可重複使用的工作流程
|
|
297
297
|
|
|
298
|
-
###
|
|
298
|
+
### 為什麼使用可重用變體?
|
|
299
299
|
|
|
300
|
-
|
|
300
|
+
預設安裝程式將完整的約 360 行工作流程 YAML 複製到您的儲存庫中(**複製**選項)。對於氣隙儲存庫或需要審核每一行執行內容的儲存庫來說,這是正確的選取。缺點是錯誤修復和改進永遠不會到達您的手中 - 您需要在每次發布後手動重新執行 `npx @agent-native/core@latest recap setup`。
|
|
301
301
|
|
|
302
|
-
**可重用**選項改為編寫一個精簡的約 20
|
|
302
|
+
**可重用**選項改為編寫一個精簡的約 20 行呼叫程式。它透過`uses:`委托給`BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml`。當工作流程執行時,每個呼叫者都會自動取得最新邏輯,無需本機更新。
|
|
303
303
|
|
|
304
304
|
| | 複製(預設) | 可重複使用 |
|
|
305
305
|
| ---------------------- | --------------------------- | -------------------------------- |
|
|
306
306
|
| 儲存庫中的工作流程大小 | ~360 行 | ~20 行 |
|
|
307
|
-
|
|
|
307
|
+
| 自動修復 | 否 — 重新執行 `recap setup` | 是 |
|
|
308
308
|
| 氣隙/完全可審計性 | 是 | 否 |
|
|
309
|
-
| 可固定到特定版本 |
|
|
309
|
+
| 可固定到特定版本 | 僅透過本機編輯 | 是 - 將 `@v1.2.3` 設定為 `uses:` |
|
|
310
310
|
|
|
311
|
-
###
|
|
311
|
+
### 呼叫者片段
|
|
312
312
|
|
|
313
313
|
這是`npx @agent-native/core@latest recap setup --reusable`寫的(或者你可以手動貼上):
|
|
314
314
|
|
|
315
315
|
```yaml
|
|
316
316
|
name: PR Visual Recap
|
|
317
317
|
|
|
318
|
-
#
|
|
319
|
-
#
|
|
318
|
+
# 瘦呼叫者 — 完整的工作流邏輯位於 BuilderIO/agent-native 中。
|
|
319
|
+
# 修復和改進會在每次執行時自動到達此儲存庫。
|
|
320
320
|
# 要固定特定版本以實現可重複性,請將 '@main' 替換為
|
|
321
321
|
# 標籤或 SHA、e.g。 '@<x2/>' 或 '@abc1234'。
|
|
322
322
|
|
|
@@ -348,10 +348,10 @@ jobs:
|
|
|
348
348
|
|
|
349
349
|
適用 [Secrets and variables](#secrets-and-variables) 中描述的相同秘密和變數 - 在儲存庫設定中以與複製變體相同的方式設定它們。
|
|
350
350
|
|
|
351
|
-
###
|
|
351
|
+
### 透過 CLI 安裝
|
|
352
352
|
|
|
353
353
|
```bash
|
|
354
|
-
#
|
|
354
|
+
# 編寫瘦呼叫者而不是完整副本:
|
|
355
355
|
npx @agent-native/core@latest recap setup --reusable
|
|
356
356
|
|
|
357
357
|
# 或者使用固定參考來實現可重複性:
|
|
@@ -364,7 +364,7 @@ npx @agent-native/core@latest recap setup --reusable --ref v1.2.3
|
|
|
364
364
|
|
|
365
365
|
### 版本固定
|
|
366
366
|
|
|
367
|
-
|
|
367
|
+
預設情況下,呼叫者引用 `@main`,它始終使用可重用工作流程的最新發布版本。對於需要可重現 CI 的正式環境儲存庫,請固定到標籤或 SHA:
|
|
368
368
|
|
|
369
369
|
```yaml
|
|
370
370
|
uses: BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml@v1.2.3
|
|
@@ -372,13 +372,13 @@ uses: BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml@v1.2
|
|
|
372
372
|
|
|
373
373
|
`cli-version` 輸入控制工作流程中執行的 `@agent-native/core` CLI 版本 - 將其保留在 `"latest"` 以跟蹤最新版本,或將其固定到版本字串(例如 `"1.5.0"`)以實現完全可重複性。
|
|
374
374
|
|
|
375
|
-
### workflow_call
|
|
375
|
+
### workflow_call事件脈絡
|
|
376
376
|
|
|
377
|
-
`workflow_call`
|
|
377
|
+
`workflow_call` 工作流程繼承**呼叫者的**事件脈絡。可重用工作流程使用 `github.event.pull_request.*` 表達式來讀取 PR 編號、頭 SHA、基礎 SHA、合併時間戳和 PR 中繼資料 - 僅當呼叫者在 `pull_request` 上觸發時,這些才能正常工作。上面的呼叫者程式碼片段已經包含正確的事件型別。包含 `closed` 事件,因此合併的 PR 回顧可以用 `merged_at` 標記,並在以後作為已發布的工作進行搜尋。
|
|
378
378
|
|
|
379
|
-
不要在 `workflow_dispatch` 或 `push`
|
|
379
|
+
不要在 `workflow_dispatch` 或 `push` 上觸發呼叫者 - 這些事件不攜帶 `pull_request` 負載,並且門將跳過“無 pull_request 負載”的回顧。
|
|
380
380
|
|
|
381
381
|
## 相關
|
|
382
382
|
|
|
383
383
|
- [Visual Plans](/docs/template-plan) — `/visual-plan` 和 `/visual-recap` skills、託管計畫連線器以及此操作發布到的互動式審核介面。
|
|
384
|
-
- [Skills](/docs/skills-guide) —
|
|
384
|
+
- [Skills](/docs/skills-guide) — 將 Agent-Native skills 安裝到您的編碼代理中。
|