@fitlab-ai/agent-infra 0.8.4 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.ts +2 -2
- package/dist/bin/cli.js +2 -2
- package/dist/bin/internal-cli.js +98 -0
- package/dist/lib/decide.js +81 -90
- package/dist/lib/defaults.json +9 -0
- package/dist/lib/git/review-snapshot.js +79 -0
- package/dist/lib/git/workflow.js +101 -0
- package/dist/lib/init.js +5 -0
- package/dist/lib/internal/git-workflow.js +42 -0
- package/dist/lib/internal/platform-checks.js +119 -0
- package/dist/lib/internal/platform-comment.js +129 -0
- package/dist/lib/internal/platform-context.js +46 -0
- package/dist/lib/internal/platform-issue.js +142 -0
- package/dist/lib/internal/platform-pr.js +146 -0
- package/dist/lib/internal/release-workflow.js +217 -0
- package/dist/lib/internal/task-artifact.js +67 -0
- package/dist/lib/internal/task-context.js +43 -0
- package/dist/lib/internal/task-event.js +70 -0
- package/dist/lib/internal/task-ledger.js +114 -0
- package/dist/lib/internal/task-lifecycle.js +58 -0
- package/dist/lib/internal/task-short-id.js +83 -0
- package/dist/lib/internal/task-snapshot.js +47 -0
- package/dist/lib/internal/task-verify.js +50 -0
- package/dist/lib/internal/task-warning.js +74 -0
- package/dist/lib/platform/adapters.js +14 -0
- package/dist/lib/platform/context.js +146 -0
- package/dist/lib/platform/github-client.js +124 -0
- package/dist/lib/platform/issue-comments.js +409 -0
- package/dist/lib/platform/issue-metadata.js +183 -0
- package/dist/lib/platform/issues.js +617 -0
- package/dist/lib/platform/metadata-labels.js +28 -0
- package/dist/lib/platform/pr-checks.js +216 -0
- package/dist/lib/platform/pr-summary.js +88 -0
- package/dist/lib/platform/pull-request-metadata.js +38 -0
- package/dist/lib/platform/pull-requests.js +338 -0
- package/dist/lib/platform/releases.js +82 -0
- package/dist/lib/platform/types.js +22 -0
- package/dist/lib/platform/verification-required.js +78 -0
- package/dist/lib/platform/verification-sync.js +1014 -0
- package/dist/lib/platform/verification.js +6 -0
- package/dist/lib/release/channels.js +31 -0
- package/dist/lib/release/workflow.js +32 -0
- package/dist/lib/render.js +3 -2
- package/dist/lib/run/index.js +24 -7
- package/dist/lib/sandbox/capture.js +25 -3
- package/dist/lib/sandbox/commands/create.js +66 -26
- package/dist/lib/sandbox/commands/enter.js +34 -11
- package/dist/lib/sandbox/commands/list-running.js +10 -8
- package/dist/lib/sandbox/commands/show.js +2 -2
- package/dist/lib/sandbox/commands/start.js +53 -15
- package/dist/lib/sandbox/engine.js +33 -3
- package/dist/lib/sandbox/engines/colima.js +2 -2
- package/dist/lib/sandbox/index.js +6 -6
- package/dist/lib/sandbox/mounts.js +36 -0
- package/dist/lib/sandbox/recovery.js +562 -0
- package/dist/lib/sandbox/runtimes/base.dockerfile +4 -0
- package/dist/lib/sandbox/task-resolver.js +5 -1
- package/dist/lib/sandbox/tools.js +19 -0
- package/dist/lib/server/daemon.js +9 -0
- package/dist/lib/server/process-control.js +66 -73
- package/dist/lib/server/process-state.js +168 -0
- package/dist/lib/server/protocol.js +5 -5
- package/dist/lib/task/activity-log.js +61 -0
- package/dist/lib/task/artifact-lifecycle.js +427 -0
- package/dist/lib/task/command-options.js +30 -0
- package/dist/lib/task/commands/cat.js +36 -6
- package/dist/lib/task/commands/decisions.js +80 -46
- package/dist/lib/task/commands/files.js +21 -7
- package/dist/lib/task/commands/grep.js +55 -7
- package/dist/lib/task/commands/issue-body.js +23 -14
- package/dist/lib/task/commands/log.js +27 -70
- package/dist/lib/task/commands/show.js +20 -7
- package/dist/lib/task/commands/status.js +18 -8
- package/dist/lib/task/decision-intents.js +154 -0
- package/dist/lib/task/decision-items.js +53 -0
- package/dist/lib/task/events.js +318 -0
- package/dist/lib/task/frontmatter.js +159 -1
- package/dist/lib/task/implementation-inputs.js +117 -0
- package/dist/lib/task/index.js +12 -9
- package/dist/lib/task/issue-form.js +19 -6
- package/dist/lib/task/ledger-intents.js +185 -0
- package/dist/lib/task/ledger.js +65 -35
- package/dist/lib/task/lifecycle.js +484 -0
- package/dist/lib/task/resolve-ref.js +152 -32
- package/dist/lib/task/review-artifacts.js +101 -0
- package/dist/lib/task/review-fingerprint.js +46 -0
- package/dist/lib/task/sections.js +358 -4
- package/dist/lib/task/short-id.js +292 -7
- package/dist/lib/task/snapshot.js +95 -0
- package/dist/lib/task/verification-checks.js +8 -0
- package/dist/lib/task/verification-config.js +14 -0
- package/dist/lib/task/verification-engine.js +906 -0
- package/dist/lib/task/verification-review.js +3 -0
- package/dist/lib/task/verification-types.js +2 -0
- package/dist/lib/task/verification.js +113 -0
- package/dist/lib/task/workflow-warning-intents.js +131 -0
- package/dist/lib/task/workflow-warnings.js +10 -78
- package/dist/lib/task/write.js +241 -0
- package/dist/lib/update.js +2 -0
- package/lib/decide.ts +57 -97
- package/lib/defaults.json +9 -0
- package/lib/git/review-snapshot.ts +73 -0
- package/lib/git/workflow.ts +101 -0
- package/lib/init.ts +9 -0
- package/lib/internal/git-workflow.ts +37 -0
- package/lib/internal/platform-checks.ts +101 -0
- package/lib/internal/platform-comment.ts +99 -0
- package/lib/internal/platform-context.ts +33 -0
- package/lib/internal/platform-issue.ts +116 -0
- package/lib/internal/platform-pr.ts +119 -0
- package/lib/internal/release-workflow.ts +186 -0
- package/lib/internal/task-artifact.ts +47 -0
- package/lib/internal/task-context.ts +35 -0
- package/lib/internal/task-event.ts +51 -0
- package/lib/internal/task-ledger.ts +86 -0
- package/lib/internal/task-lifecycle.ts +41 -0
- package/lib/internal/task-short-id.ts +55 -0
- package/lib/internal/task-snapshot.ts +32 -0
- package/lib/internal/task-verify.ts +33 -0
- package/lib/internal/task-warning.ts +50 -0
- package/lib/platform/adapters.ts +30 -0
- package/lib/platform/context.ts +164 -0
- package/lib/platform/github-client.ts +146 -0
- package/lib/platform/issue-comments.ts +479 -0
- package/lib/platform/issue-metadata.ts +250 -0
- package/lib/platform/issues.ts +691 -0
- package/lib/platform/metadata-labels.ts +33 -0
- package/lib/platform/pr-checks.ts +246 -0
- package/lib/platform/pr-summary.ts +90 -0
- package/lib/platform/pull-request-metadata.ts +69 -0
- package/lib/platform/pull-requests.ts +380 -0
- package/lib/platform/releases.ts +71 -0
- package/lib/platform/types.ts +74 -0
- package/lib/platform/verification-required.ts +83 -0
- package/{templates/.agents/scripts/platform-adapters/platform-sync.github.js → lib/platform/verification-sync.ts} +221 -363
- package/lib/platform/verification.ts +11 -0
- package/lib/release/channels.ts +30 -0
- package/lib/release/workflow.ts +31 -0
- package/lib/render.ts +3 -2
- package/lib/run/index.ts +25 -7
- package/lib/sandbox/capture.ts +29 -3
- package/lib/sandbox/commands/create.ts +75 -28
- package/lib/sandbox/commands/enter.ts +38 -11
- package/lib/sandbox/commands/list-running.ts +10 -8
- package/lib/sandbox/commands/show.ts +2 -2
- package/lib/sandbox/commands/start.ts +50 -16
- package/lib/sandbox/engine.ts +37 -3
- package/lib/sandbox/engines/colima.ts +2 -2
- package/lib/sandbox/index.ts +6 -6
- package/lib/sandbox/mounts.ts +55 -0
- package/lib/sandbox/recovery.ts +828 -0
- package/lib/sandbox/runtimes/base.dockerfile +4 -0
- package/lib/sandbox/task-resolver.ts +5 -1
- package/lib/sandbox/tools.ts +31 -0
- package/lib/server/daemon.ts +9 -0
- package/lib/server/process-control.ts +70 -71
- package/lib/server/process-state.ts +183 -0
- package/lib/server/protocol.ts +5 -5
- package/lib/task/activity-log.ts +62 -0
- package/lib/task/artifact-lifecycle.ts +484 -0
- package/lib/task/command-options.ts +32 -0
- package/lib/task/commands/cat.ts +22 -9
- package/lib/task/commands/decisions.ts +49 -47
- package/lib/task/commands/files.ts +14 -6
- package/lib/task/commands/grep.ts +34 -7
- package/lib/task/commands/issue-body.ts +16 -16
- package/lib/task/commands/log.ts +17 -70
- package/lib/task/commands/show.ts +14 -6
- package/lib/task/commands/status.ts +17 -7
- package/lib/task/decision-intents.ts +163 -0
- package/lib/task/decision-items.ts +64 -0
- package/lib/task/events.ts +320 -0
- package/lib/task/frontmatter.ts +202 -2
- package/lib/task/implementation-inputs.ts +137 -0
- package/lib/task/index.ts +12 -9
- package/lib/task/issue-form.ts +20 -6
- package/lib/task/ledger-intents.ts +201 -0
- package/lib/task/ledger.ts +77 -31
- package/lib/task/lifecycle.ts +458 -0
- package/lib/task/resolve-ref.ts +197 -36
- package/{templates/.agents/scripts/lib/review-artifacts.js → lib/task/review-artifacts.ts} +11 -12
- package/{templates/.agents/scripts/lib/post-review-commit.js → lib/task/review-fingerprint.ts} +20 -10
- package/lib/task/sections.ts +486 -4
- package/lib/task/short-id.ts +403 -9
- package/lib/task/snapshot.ts +143 -0
- package/lib/task/verification-checks.ts +9 -0
- package/lib/task/verification-config.ts +20 -0
- package/{templates/.agents/scripts/validate-artifact.js → lib/task/verification-engine.ts} +257 -451
- package/lib/task/verification-review.ts +9 -0
- package/lib/task/verification-types.ts +29 -0
- package/lib/task/verification.ts +156 -0
- package/lib/task/workflow-warning-intents.ts +142 -0
- package/lib/task/workflow-warnings.ts +10 -78
- package/lib/task/write.ts +468 -0
- package/lib/update.ts +6 -0
- package/package.json +5 -2
- package/templates/.agents/README.en.md +6 -3
- package/templates/.agents/README.zh-CN.md +6 -3
- package/templates/.agents/rules/README.en.md +6 -5
- package/templates/.agents/rules/README.zh-CN.md +6 -5
- package/templates/.agents/rules/create-issue.en.md +1 -1
- package/templates/.agents/rules/create-issue.github.en.md +5 -184
- package/templates/.agents/rules/create-issue.github.zh-CN.md +12 -178
- package/templates/.agents/rules/create-issue.zh-CN.md +1 -1
- package/templates/.agents/rules/human-decision-context.en.md +36 -0
- package/templates/.agents/rules/human-decision-context.zh-CN.md +36 -0
- package/templates/.agents/rules/issue-fields.github.en.md +4 -148
- package/templates/.agents/rules/issue-fields.github.zh-CN.md +9 -144
- package/templates/.agents/rules/issue-pr-commands.en.md +43 -3
- package/templates/.agents/rules/issue-pr-commands.github.en.md +15 -220
- package/templates/.agents/rules/issue-pr-commands.github.zh-CN.md +23 -213
- package/templates/.agents/rules/issue-pr-commands.zh-CN.md +45 -3
- package/templates/.agents/rules/issue-sync.en.md +1 -1
- package/templates/.agents/rules/issue-sync.github.en.md +14 -301
- package/templates/.agents/rules/issue-sync.github.zh-CN.md +36 -287
- package/templates/.agents/rules/issue-sync.zh-CN.md +1 -1
- package/templates/.agents/rules/milestone-inference.en.md +1 -1
- package/templates/.agents/rules/milestone-inference.github.en.md +7 -119
- package/templates/.agents/rules/milestone-inference.github.zh-CN.md +8 -108
- package/templates/.agents/rules/milestone-inference.zh-CN.md +1 -1
- package/templates/.agents/rules/next-step-output.en.md +12 -11
- package/templates/.agents/rules/next-step-output.zh-CN.md +12 -11
- package/templates/.agents/rules/no-mid-flow-questions.en.md +3 -3
- package/templates/.agents/rules/no-mid-flow-questions.zh-CN.md +3 -3
- package/templates/.agents/rules/pr-checks-commands.en.md +16 -3
- package/templates/.agents/rules/pr-checks-commands.github.en.md +10 -54
- package/templates/.agents/rules/pr-checks-commands.github.zh-CN.md +19 -47
- package/templates/.agents/rules/pr-checks-commands.zh-CN.md +30 -3
- package/templates/.agents/rules/pr-sync.en.md +30 -3
- package/templates/.agents/rules/pr-sync.github.en.md +12 -115
- package/templates/.agents/rules/pr-sync.github.zh-CN.md +26 -104
- package/templates/.agents/rules/pr-sync.zh-CN.md +43 -3
- package/templates/.agents/rules/review-handshake.en.md +13 -9
- package/templates/.agents/rules/review-handshake.zh-CN.md +13 -9
- package/templates/.agents/rules/task-management.en.md +11 -2
- package/templates/.agents/rules/task-management.zh-CN.md +11 -3
- package/templates/.agents/rules/task-short-id.en.md +25 -29
- package/templates/.agents/rules/task-short-id.zh-CN.md +20 -23
- package/templates/.agents/scripts/lib/agent-infra-package.js +141 -0
- package/templates/.agents/scripts/task-short-id.js +71 -533
- package/templates/.agents/skills/analyze-task/SKILL.en.md +22 -55
- package/templates/.agents/skills/analyze-task/SKILL.zh-CN.md +26 -59
- package/templates/.agents/skills/analyze-task/config/verify.en.json +1 -3
- package/templates/.agents/skills/analyze-task/config/verify.zh-CN.json +1 -3
- package/templates/.agents/skills/block-task/SKILL.en.md +21 -47
- package/templates/.agents/skills/block-task/SKILL.zh-CN.md +23 -47
- package/templates/.agents/skills/block-task/config/verify.json +1 -2
- package/templates/.agents/skills/cancel-task/SKILL.en.md +16 -45
- package/templates/.agents/skills/cancel-task/SKILL.zh-CN.md +16 -45
- package/templates/.agents/skills/cancel-task/config/verify.json +1 -2
- package/templates/.agents/skills/check-task/SKILL.en.md +6 -3
- package/templates/.agents/skills/check-task/SKILL.zh-CN.md +6 -3
- package/templates/.agents/skills/close-codescan/SKILL.en.md +6 -24
- package/templates/.agents/skills/close-codescan/SKILL.zh-CN.md +6 -24
- package/templates/.agents/skills/close-dependabot/SKILL.en.md +6 -24
- package/templates/.agents/skills/close-dependabot/SKILL.zh-CN.md +6 -24
- package/templates/.agents/skills/code-task/SKILL.en.md +22 -35
- package/templates/.agents/skills/code-task/SKILL.zh-CN.md +28 -44
- package/templates/.agents/skills/code-task/config/verify.en.json +3 -3
- package/templates/.agents/skills/code-task/config/verify.zh-CN.json +3 -3
- package/templates/.agents/skills/code-task/reference/dual-mode.en.md +13 -9
- package/templates/.agents/skills/code-task/reference/dual-mode.zh-CN.md +13 -9
- package/templates/.agents/skills/code-task/reference/fix-mode.en.md +1 -1
- package/templates/.agents/skills/code-task/reference/fix-mode.zh-CN.md +1 -1
- package/templates/.agents/skills/code-task/reference/report-template.en.md +11 -1
- package/templates/.agents/skills/code-task/reference/report-template.zh-CN.md +11 -1
- package/templates/.agents/skills/commit/SKILL.en.md +18 -14
- package/templates/.agents/skills/commit/SKILL.zh-CN.md +18 -14
- package/templates/.agents/skills/commit/config/verify.json +1 -2
- package/templates/.agents/skills/commit/reference/commit-message.en.md +1 -11
- package/templates/.agents/skills/commit/reference/commit-message.zh-CN.md +1 -11
- package/templates/.agents/skills/commit/reference/issue-metadata-sync.en.md +4 -8
- package/templates/.agents/skills/commit/reference/issue-metadata-sync.zh-CN.md +4 -8
- package/templates/.agents/skills/commit/reference/pr-summary-sync.en.md +6 -18
- package/templates/.agents/skills/commit/reference/pr-summary-sync.zh-CN.md +5 -17
- package/templates/.agents/skills/commit/reference/task-status-update.en.md +42 -2
- package/templates/.agents/skills/commit/reference/task-status-update.zh-CN.md +42 -2
- package/templates/.agents/skills/complete-manual-validation/SKILL.en.md +13 -36
- package/templates/.agents/skills/complete-manual-validation/SKILL.zh-CN.md +13 -36
- package/templates/.agents/skills/complete-manual-validation/config/verify.en.json +1 -3
- package/templates/.agents/skills/complete-manual-validation/config/verify.zh-CN.json +1 -3
- package/templates/.agents/skills/complete-manual-validation/reference/summary-update.en.md +10 -54
- package/templates/.agents/skills/complete-manual-validation/reference/summary-update.zh-CN.md +10 -79
- package/templates/.agents/skills/complete-task/SKILL.en.md +59 -63
- package/templates/.agents/skills/complete-task/SKILL.zh-CN.md +59 -63
- package/templates/.agents/skills/complete-task/config/verify.en.json +11 -6
- package/templates/.agents/skills/complete-task/config/verify.zh-CN.json +11 -6
- package/templates/.agents/skills/create-pr/SKILL.en.md +19 -44
- package/templates/.agents/skills/create-pr/SKILL.zh-CN.md +19 -43
- package/templates/.agents/skills/create-pr/config/verify.json +1 -2
- package/templates/.agents/skills/create-pr/reference/comment-publish.en.md +8 -12
- package/templates/.agents/skills/create-pr/reference/comment-publish.zh-CN.md +7 -11
- package/templates/.agents/skills/create-task/SKILL.en.md +12 -13
- package/templates/.agents/skills/create-task/SKILL.zh-CN.md +12 -13
- package/templates/.agents/skills/create-task/config/verify.json +1 -2
- package/templates/.agents/skills/import-codescan/SKILL.en.md +2 -2
- package/templates/.agents/skills/import-codescan/SKILL.zh-CN.md +2 -2
- package/templates/.agents/skills/import-codescan/config/verify.json +1 -2
- package/templates/.agents/skills/import-dependabot/SKILL.en.md +2 -2
- package/templates/.agents/skills/import-dependabot/SKILL.zh-CN.md +2 -2
- package/templates/.agents/skills/import-dependabot/config/verify.json +1 -2
- package/templates/.agents/skills/import-issue/SKILL.en.md +9 -13
- package/templates/.agents/skills/import-issue/SKILL.zh-CN.md +10 -14
- package/templates/.agents/skills/import-issue/config/verify.json +1 -2
- package/templates/.agents/skills/init-milestones/SKILL.en.md +2 -2
- package/templates/.agents/skills/init-milestones/SKILL.zh-CN.md +2 -2
- package/templates/.agents/skills/init-milestones/scripts/init-milestones.github.sh +5 -4
- package/templates/.agents/skills/plan-task/SKILL.en.md +17 -42
- package/templates/.agents/skills/plan-task/SKILL.zh-CN.md +22 -49
- package/templates/.agents/skills/plan-task/config/verify.en.json +1 -3
- package/templates/.agents/skills/plan-task/config/verify.zh-CN.json +1 -3
- package/templates/.agents/skills/post-release/SKILL.en.md +11 -81
- package/templates/.agents/skills/post-release/SKILL.zh-CN.md +8 -78
- package/templates/.agents/skills/refine-title/SKILL.en.md +1 -1
- package/templates/.agents/skills/refine-title/SKILL.zh-CN.md +1 -1
- package/templates/.agents/skills/release/SKILL.en.md +16 -163
- package/templates/.agents/skills/release/SKILL.zh-CN.md +15 -162
- package/templates/.agents/skills/restore-task/SKILL.en.md +11 -29
- package/templates/.agents/skills/restore-task/SKILL.zh-CN.md +11 -29
- package/templates/.agents/skills/restore-task/config/verify.json +1 -2
- package/templates/.agents/skills/review-analysis/SKILL.en.md +13 -25
- package/templates/.agents/skills/review-analysis/SKILL.zh-CN.md +13 -33
- package/templates/.agents/skills/review-analysis/config/verify.en.json +3 -4
- package/templates/.agents/skills/review-analysis/config/verify.zh-CN.json +3 -4
- package/templates/.agents/skills/review-analysis/reference/output-templates.en.md +9 -12
- package/templates/.agents/skills/review-analysis/reference/output-templates.zh-CN.md +9 -12
- package/templates/.agents/skills/review-analysis/reference/report-template.en.md +9 -2
- package/templates/.agents/skills/review-analysis/reference/report-template.zh-CN.md +9 -2
- package/templates/.agents/skills/review-analysis/reference/review-criteria.en.md +7 -0
- package/templates/.agents/skills/review-analysis/reference/review-criteria.zh-CN.md +7 -0
- package/templates/.agents/skills/review-code/SKILL.en.md +22 -36
- package/templates/.agents/skills/review-code/SKILL.zh-CN.md +23 -41
- package/templates/.agents/skills/review-code/config/verify.en.json +5 -5
- package/templates/.agents/skills/review-code/config/verify.zh-CN.json +5 -5
- package/templates/.agents/skills/review-code/reference/output-templates.en.md +56 -18
- package/templates/.agents/skills/review-code/reference/output-templates.zh-CN.md +56 -18
- package/templates/.agents/skills/review-code/reference/report-template.en.md +12 -4
- package/templates/.agents/skills/review-code/reference/report-template.zh-CN.md +12 -4
- package/templates/.agents/skills/review-code/reference/review-criteria.en.md +7 -0
- package/templates/.agents/skills/review-code/reference/review-criteria.zh-CN.md +7 -0
- package/templates/.agents/skills/review-plan/SKILL.en.md +13 -25
- package/templates/.agents/skills/review-plan/SKILL.zh-CN.md +13 -33
- package/templates/.agents/skills/review-plan/config/verify.en.json +3 -4
- package/templates/.agents/skills/review-plan/config/verify.zh-CN.json +3 -4
- package/templates/.agents/skills/review-plan/reference/output-templates.en.md +9 -12
- package/templates/.agents/skills/review-plan/reference/output-templates.zh-CN.md +9 -12
- package/templates/.agents/skills/review-plan/reference/report-template.en.md +9 -2
- package/templates/.agents/skills/review-plan/reference/report-template.zh-CN.md +9 -2
- package/templates/.agents/skills/review-plan/reference/review-criteria.en.md +7 -0
- package/templates/.agents/skills/review-plan/reference/review-criteria.zh-CN.md +7 -0
- package/templates/.agents/skills/update-agent-infra/SKILL.en.md +6 -3
- package/templates/.agents/skills/update-agent-infra/SKILL.zh-CN.md +6 -3
- package/templates/.agents/skills/update-agent-infra/scripts/sync-templates.js +177 -151
- package/templates/.agents/skills/watch-pr/SKILL.en.md +24 -14
- package/templates/.agents/skills/watch-pr/SKILL.zh-CN.md +25 -15
- package/templates/.agents/skills/watch-pr/config/verify.json +1 -2
- package/templates/.agents/skills/watch-pr/reference/monitor-and-heal.en.md +2 -2
- package/templates/.agents/skills/watch-pr/reference/monitor-and-heal.zh-CN.md +2 -2
- package/templates/.agents/templates/task.en.md +6 -1
- package/templates/.agents/templates/task.zh-CN.md +6 -1
- package/templates/.claude/commands/analyze-task.en.md +1 -1
- package/templates/.claude/commands/analyze-task.zh-CN.md +1 -1
- package/templates/.claude/commands/block-task.en.md +1 -1
- package/templates/.claude/commands/block-task.zh-CN.md +1 -1
- package/templates/.claude/commands/cancel-task.en.md +1 -1
- package/templates/.claude/commands/cancel-task.zh-CN.md +1 -1
- package/templates/.claude/commands/check-task.en.md +1 -1
- package/templates/.claude/commands/check-task.zh-CN.md +1 -1
- package/templates/.claude/commands/code-task.en.md +1 -1
- package/templates/.claude/commands/code-task.zh-CN.md +1 -1
- package/templates/.claude/commands/commit.en.md +1 -0
- package/templates/.claude/commands/commit.zh-CN.md +1 -0
- package/templates/.claude/commands/complete-manual-validation.en.md +1 -1
- package/templates/.claude/commands/complete-manual-validation.zh-CN.md +1 -1
- package/templates/.claude/commands/complete-task.en.md +1 -1
- package/templates/.claude/commands/complete-task.zh-CN.md +1 -1
- package/templates/.claude/commands/create-pr.en.md +1 -1
- package/templates/.claude/commands/create-pr.zh-CN.md +1 -1
- package/templates/.claude/commands/plan-task.en.md +1 -1
- package/templates/.claude/commands/plan-task.zh-CN.md +1 -1
- package/templates/.claude/commands/review-analysis.en.md +1 -1
- package/templates/.claude/commands/review-analysis.zh-CN.md +1 -1
- package/templates/.claude/commands/review-code.en.md +1 -1
- package/templates/.claude/commands/review-code.zh-CN.md +1 -1
- package/templates/.claude/commands/review-plan.en.md +1 -1
- package/templates/.claude/commands/review-plan.zh-CN.md +1 -1
- package/templates/.claude/commands/watch-pr.en.md +1 -1
- package/templates/.claude/commands/watch-pr.zh-CN.md +1 -1
- package/templates/.gemini/commands/_project_/analyze-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/analyze-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/block-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/block-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/cancel-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/cancel-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/check-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/check-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/code-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/code-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/commit.en.toml +4 -0
- package/templates/.gemini/commands/_project_/commit.zh-CN.toml +4 -0
- package/templates/.gemini/commands/_project_/complete-manual-validation.en.toml +2 -0
- package/templates/.gemini/commands/_project_/complete-manual-validation.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/complete-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/complete-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/create-pr.en.toml +2 -0
- package/templates/.gemini/commands/_project_/create-pr.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/plan-task.en.toml +2 -0
- package/templates/.gemini/commands/_project_/plan-task.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/review-analysis.en.toml +2 -0
- package/templates/.gemini/commands/_project_/review-analysis.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/review-code.en.toml +2 -0
- package/templates/.gemini/commands/_project_/review-code.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/review-plan.en.toml +2 -0
- package/templates/.gemini/commands/_project_/review-plan.zh-CN.toml +2 -0
- package/templates/.gemini/commands/_project_/watch-pr.en.toml +2 -0
- package/templates/.gemini/commands/_project_/watch-pr.zh-CN.toml +2 -0
- package/templates/.git-hooks/check-large-files.cjs +92 -0
- package/templates/.git-hooks/check-version-format.sh +5 -1
- package/templates/.git-hooks/pre-commit +1 -0
- package/templates/.opencode/commands/analyze-task.en.md +1 -1
- package/templates/.opencode/commands/analyze-task.zh-CN.md +1 -1
- package/templates/.opencode/commands/check-task.en.md +1 -1
- package/templates/.opencode/commands/check-task.zh-CN.md +1 -1
- package/templates/.opencode/commands/code-task.en.md +1 -1
- package/templates/.opencode/commands/code-task.zh-CN.md +1 -1
- package/templates/.opencode/commands/commit.en.md +2 -0
- package/templates/.opencode/commands/commit.zh-CN.md +2 -0
- package/templates/.opencode/commands/complete-task.en.md +1 -1
- package/templates/.opencode/commands/complete-task.zh-CN.md +1 -1
- package/templates/.opencode/commands/plan-task.en.md +1 -1
- package/templates/.opencode/commands/plan-task.zh-CN.md +1 -1
- package/templates/.opencode/commands/review-analysis.en.md +1 -1
- package/templates/.opencode/commands/review-analysis.zh-CN.md +1 -1
- package/templates/.opencode/commands/review-code.en.md +1 -1
- package/templates/.opencode/commands/review-code.zh-CN.md +1 -1
- package/templates/.opencode/commands/review-plan.en.md +1 -1
- package/templates/.opencode/commands/review-plan.zh-CN.md +1 -1
- package/templates/.agents/scripts/platform-adapters/platform-sync.js +0 -13
- package/templates/.agents/scripts/review-diff-fingerprint.js +0 -99
- package/templates/.agents/scripts/workflow-warnings.js +0 -290
- package/templates/.agents/skills/code-task/scripts/detect-mode.js +0 -257
- package/templates/.agents/skills/release/scripts/manage-milestones.github.sh +0 -80
- package/templates/.agents/skills/release/scripts/manage-milestones.sh +0 -6
|
@@ -2,188 +2,41 @@
|
|
|
2
2
|
name: release
|
|
3
3
|
description: >
|
|
4
4
|
Run the version release workflow.
|
|
5
|
-
Use when
|
|
5
|
+
Use when preparing and publishing a version. Parameter: X.Y.Z.
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
#
|
|
8
|
+
# Release
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Release state is derived from external facts and prepare/publish require separate authorization.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## 1. Validate Input and Entropy Report
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
Confirm SemVer and the human release checkpoint.
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
Extract version from arguments. Must match `X.Y.Z` format.
|
|
19
|
-
|
|
20
|
-
Parse components:
|
|
21
|
-
- MAJOR = X, MINOR = Y, PATCH = Z
|
|
22
|
-
- Release version = `X.Y.Z`
|
|
23
|
-
|
|
24
|
-
If format is invalid, error: "Version format incorrect, expected X.Y.Z (e.g. 1.2.3)"
|
|
25
|
-
|
|
26
|
-
### 2. Verify Clean Workspace
|
|
16
|
+
## 2. Inspect Facts
|
|
27
17
|
|
|
28
18
|
```bash
|
|
29
|
-
|
|
19
|
+
agent-infra-internal release-workflow inspect {version}
|
|
30
20
|
```
|
|
31
21
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
### 3. Pre-release Verification
|
|
35
|
-
|
|
36
|
-
<!-- TODO: Replace with your project's pre-release verification steps -->
|
|
37
|
-
|
|
38
|
-
Run any checks that must pass before preparing a release:
|
|
22
|
+
## 3. Prepare
|
|
39
23
|
|
|
40
24
|
```bash
|
|
41
|
-
|
|
42
|
-
# TODO: Replace with your project's test/build verification commands
|
|
25
|
+
agent-infra-internal release-workflow prepare {version} --entropy-report {path}
|
|
43
26
|
```
|
|
44
27
|
|
|
45
|
-
|
|
46
|
-
- Confirm the release is being prepared from the correct branch for your project
|
|
47
|
-
- Run the full validation commands required by your release process
|
|
48
|
-
|
|
49
|
-
Handling rules:
|
|
50
|
-
- If the current branch is unexpected, print a warning or exit based on your policy
|
|
51
|
-
- If any verification command fails, stop the release process and fix the issue first
|
|
52
|
-
|
|
53
|
-
### 4. Update Version References
|
|
54
|
-
|
|
55
|
-
<!-- TODO: Replace with your project's version update steps -->
|
|
56
|
-
|
|
57
|
-
Search for version references in project files and update them:
|
|
58
|
-
|
|
59
|
-
```bash
|
|
60
|
-
# Find files with version references
|
|
61
|
-
# Search for current version pattern
|
|
62
|
-
# Update version strings
|
|
63
|
-
```
|
|
28
|
+
Stop after prepare; never publish implicitly.
|
|
64
29
|
|
|
65
|
-
|
|
66
|
-
- `package.json` (Node.js)
|
|
67
|
-
- `package-lock.json` (Node.js; run `npm install --package-lock-only` after updating `package.json`)
|
|
68
|
-
- `pom.xml` (Maven)
|
|
69
|
-
- `setup.py` / `pyproject.toml` (Python)
|
|
70
|
-
- `version.go` (Go)
|
|
71
|
-
- `README.md` (documentation)
|
|
72
|
-
- `SECURITY.md` / `SECURITY.zh-CN.md` (supported version table)
|
|
73
|
-
|
|
74
|
-
**Exclude from version replacement**:
|
|
75
|
-
- `.agents/`, `.agents/workspace/`, `.claude/`, `.codex/`, `.gemini/`, `.opencode/` (AI tool configs)
|
|
76
|
-
|
|
77
|
-
If the project uses `package-lock.json`, run `npm install --package-lock-only` after updating `package.json` so the lockfile version stays in sync.
|
|
78
|
-
|
|
79
|
-
### 5. Rebuild Artifacts
|
|
80
|
-
|
|
81
|
-
<!-- TODO: Replace with your project's artifact rebuild steps -->
|
|
82
|
-
|
|
83
|
-
If version updates affect generated files, embedded metadata, or bundled assets, rebuild them now:
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
# TODO: Replace with your project's rebuild command(s)
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
Execution guidance:
|
|
90
|
-
- Run this after updating version references so generated artifacts pick up the new version
|
|
91
|
-
- If your project has no generated artifacts, document that explicitly in the project-specific skill
|
|
92
|
-
- If the rebuild fails, stop the release process and fix the build first
|
|
93
|
-
|
|
94
|
-
### 6. Create Release Commit
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
git add -A
|
|
98
|
-
git commit -m "chore: release v{version}"
|
|
99
|
-
```
|
|
30
|
+
## 4. Publish Separately
|
|
100
31
|
|
|
101
|
-
|
|
32
|
+
Only after explicit user authorization:
|
|
102
33
|
|
|
103
34
|
```bash
|
|
104
|
-
|
|
35
|
+
agent-infra-internal release-workflow publish {version}
|
|
105
36
|
```
|
|
106
37
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
Close the milestone for the released version when it exists, and create the missing planning milestones for the next cycle.
|
|
110
|
-
|
|
111
|
-
Run:
|
|
112
|
-
|
|
113
|
-
```bash
|
|
114
|
-
bash .agents/skills/release/scripts/manage-milestones.sh "$MAJOR" "$MINOR" "$PATCH"
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
The script is responsible for:
|
|
118
|
-
- Read `.agents/rules/label-milestone-setup.md` before this step
|
|
119
|
-
- Use its milestone list and update commands to load and adjust current milestones
|
|
120
|
-
- Closing `{MAJOR}.{MINOR}.{PATCH}` when it exists and is still open
|
|
121
|
-
- Ensuring `{MAJOR}.{MINOR}.{PATCH+1}` and `{MAJOR}.{MINOR}.x` exist
|
|
122
|
-
- When `PATCH=0`, also ensuring `{MAJOR}.{MINOR+1}.0` and `{MAJOR}.{MINOR+1}.x`
|
|
123
|
-
- Printing a milestone summary with the released milestone action and new milestone count
|
|
124
|
-
|
|
125
|
-
### 9. Output Summary
|
|
126
|
-
|
|
127
|
-
> **IMPORTANT**: All TUI command formats listed below must be output in full. Do not show only the format for the current AI agent. If `.agents/.airc.json` configures custom TUIs (via `customTUIs`), read each tool's `name` and `invoke`, then add the matching command line in the same format (`${skillName}` becomes the skill name and `${projectName}` becomes the project name).
|
|
128
|
-
|
|
129
|
-
```
|
|
130
|
-
Release v{version} prepared.
|
|
131
|
-
|
|
132
|
-
Release info:
|
|
133
|
-
- Version: {version}
|
|
134
|
-
- Release commit: {commit-hash}
|
|
135
|
-
- Tag: v{version}
|
|
136
|
-
|
|
137
|
-
Files updated: {count}
|
|
138
|
-
|
|
139
|
-
Next steps (manual):
|
|
140
|
-
|
|
141
|
-
1. Push branch:
|
|
142
|
-
git push origin {current-branch}
|
|
143
|
-
|
|
144
|
-
2. Push tag:
|
|
145
|
-
git push origin v{version}
|
|
146
|
-
|
|
147
|
-
3. (Optional) Generate release notes:
|
|
148
|
-
- Claude Code / OpenCode: /create-release-note {version}
|
|
149
|
-
- Gemini CLI: /{{project}}:create-release-note {version}
|
|
150
|
-
- Codex CLI: $create-release-note {version}
|
|
151
|
-
|
|
152
|
-
4. (Optional) Run post-release follow-up tasks:
|
|
153
|
-
- Claude Code / OpenCode: /post-release
|
|
154
|
-
- Gemini CLI: /{{project}}:post-release
|
|
155
|
-
- Codex CLI: $post-release
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
### Rollback Instructions
|
|
159
|
-
|
|
160
|
-
If something went wrong:
|
|
161
|
-
```bash
|
|
162
|
-
# Delete tag
|
|
163
|
-
git tag -d v{version}
|
|
164
|
-
|
|
165
|
-
# Reset commit
|
|
166
|
-
git reset --soft HEAD~1
|
|
167
|
-
|
|
168
|
-
# Restore files
|
|
169
|
-
git checkout -- .
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
## Notes
|
|
173
|
-
|
|
174
|
-
1. **Clean workspace required**: Must have no uncommitted changes
|
|
175
|
-
2. **No auto-push**: All operations are local only; user pushes manually
|
|
176
|
-
3. **Pre-release verification**: Replace the Step 3 TODOs with the branch, test, and validation commands your release process requires
|
|
177
|
-
4. **Generated artifacts**: Replace the Step 5 TODOs when version changes affect generated files, bundled assets, or embedded metadata
|
|
178
|
-
5. **Release automation**: If pushing a tag triggers CI/CD or package publishing, confirm the required credentials and pipeline settings first
|
|
179
|
-
6. **Version replacement scope**: Search determines which files to update; exclude AI tool directories
|
|
180
|
-
7. **Adapt to your project**: The version update and rebuild steps above are generic; customize them for your project's versioning scheme
|
|
181
|
-
8. **Milestone coordination**: Releases should create the next planning milestones automatically; initialize the taxonomy first with `init-milestones` when needed
|
|
38
|
+
Push refs normally, preserve partial success for replay, and never force push.
|
|
182
39
|
|
|
183
|
-
##
|
|
40
|
+
## 5. Report Facts
|
|
184
41
|
|
|
185
|
-
|
|
186
|
-
- Dirty workspace: Prompt to commit or stash
|
|
187
|
-
- Verification failure: Display the failing check and stop the release
|
|
188
|
-
- Artifact rebuild failure: Display the build error and stop the release
|
|
189
|
-
- Git operation failure: Display error and provide rollback instructions
|
|
42
|
+
Show the snapshot and every TUI command. Treat unknown external state as blocked.
|
|
@@ -2,188 +2,41 @@
|
|
|
2
2
|
name: release
|
|
3
3
|
description: >
|
|
4
4
|
执行版本发布流程。
|
|
5
|
-
|
|
5
|
+
当准备切出并发布新版本时使用。参数:版本号(X.Y.Z)。
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# 版本发布
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
发布由事实驱动,并拆为独立授权的 prepare 与 publish。
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## 1. 检查输入与 entropy 报告
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
确认 SemVer 和人工发布检查点已满足。
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
从参数中提取版本。必须匹配 `X.Y.Z` 格式。
|
|
19
|
-
|
|
20
|
-
解析组件:
|
|
21
|
-
- MAJOR = X,MINOR = Y,PATCH = Z
|
|
22
|
-
- 发布版本 = `X.Y.Z`
|
|
23
|
-
|
|
24
|
-
如果格式无效,报错:"Version format incorrect, expected X.Y.Z (e.g. 1.2.3)"
|
|
25
|
-
|
|
26
|
-
### 2. 验证工作区干净
|
|
16
|
+
## 2. 检查事实
|
|
27
17
|
|
|
28
18
|
```bash
|
|
29
|
-
|
|
19
|
+
agent-infra-internal release-workflow inspect {version}
|
|
30
20
|
```
|
|
31
21
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
### 3. 发布前验证
|
|
35
|
-
|
|
36
|
-
<!-- TODO: 替换为你的项目发布前验证步骤 -->
|
|
37
|
-
|
|
38
|
-
运行所有在准备发布前必须通过的检查:
|
|
22
|
+
## 3. 准备发布
|
|
39
23
|
|
|
40
24
|
```bash
|
|
41
|
-
|
|
42
|
-
# TODO: 替换为你的项目测试/构建验证命令
|
|
25
|
+
agent-infra-internal release-workflow prepare {version} --entropy-report {path}
|
|
43
26
|
```
|
|
44
27
|
|
|
45
|
-
|
|
46
|
-
- 确认发布使用的是项目规定的分支
|
|
47
|
-
- 运行你的发布流程要求的完整校验命令
|
|
48
|
-
|
|
49
|
-
处理规则:
|
|
50
|
-
- 如果当前分支不符合预期,按项目策略输出警告或直接退出
|
|
51
|
-
- 如果任何验证命令失败,停止发布流程并先修复问题
|
|
52
|
-
|
|
53
|
-
### 4. 更新版本引用
|
|
54
|
-
|
|
55
|
-
<!-- TODO: 替换为你的项目版本更新步骤 -->
|
|
56
|
-
|
|
57
|
-
搜索项目文件中的版本引用并更新:
|
|
58
|
-
|
|
59
|
-
```bash
|
|
60
|
-
# 查找包含版本引用的文件
|
|
61
|
-
# 搜索当前版本模式
|
|
62
|
-
# 更新版本字符串
|
|
63
|
-
```
|
|
28
|
+
prepare 后停止,不得隐式 publish。
|
|
64
29
|
|
|
65
|
-
|
|
66
|
-
- `package.json`(Node.js)
|
|
67
|
-
- `package-lock.json`(Node.js;更新 `package.json` 后运行 `npm install --package-lock-only` 同步锁文件)
|
|
68
|
-
- `pom.xml`(Maven)
|
|
69
|
-
- `setup.py` / `pyproject.toml`(Python)
|
|
70
|
-
- `version.go`(Go)
|
|
71
|
-
- `README.md`(文档)
|
|
72
|
-
- `SECURITY.md` / `SECURITY.zh-CN.md`(支持版本表格)
|
|
73
|
-
|
|
74
|
-
**排除以下目录的版本替换**:
|
|
75
|
-
- `.agents/`、`.agents/workspace/`、`.claude/`、`.codex/`、`.gemini/`、`.opencode/`(AI 工具配置)
|
|
76
|
-
|
|
77
|
-
如果项目使用 `package-lock.json`,在更新 `package.json` 后运行 `npm install --package-lock-only`,确保锁文件中的版本号保持同步。
|
|
78
|
-
|
|
79
|
-
### 5. 重新生成构建产物
|
|
80
|
-
|
|
81
|
-
<!-- TODO: 替换为你的项目产物重建步骤 -->
|
|
82
|
-
|
|
83
|
-
如果版本更新会影响生成文件、内嵌元数据或打包产物,现在重新生成它们:
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
# TODO: 替换为你的项目构建/重建命令
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
执行要求:
|
|
90
|
-
- 在更新版本引用后运行,确保生成产物使用最新版本号
|
|
91
|
-
- 如果项目没有生成产物,请在项目特化版本中明确说明
|
|
92
|
-
- 如果重建失败,停止发布流程并先修复构建问题
|
|
93
|
-
|
|
94
|
-
### 6. 创建发布提交
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
git add -A
|
|
98
|
-
git commit -m "chore: release v{version}"
|
|
99
|
-
```
|
|
30
|
+
## 4. 独立发布
|
|
100
31
|
|
|
101
|
-
|
|
32
|
+
仅在用户明确授权后执行:
|
|
102
33
|
|
|
103
34
|
```bash
|
|
104
|
-
|
|
35
|
+
agent-infra-internal release-workflow publish {version}
|
|
105
36
|
```
|
|
106
37
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
为已发布版本关闭对应版本里程碑,并为下一轮创建缺失的规划里程碑。
|
|
110
|
-
|
|
111
|
-
执行:
|
|
112
|
-
|
|
113
|
-
```bash
|
|
114
|
-
bash .agents/skills/release/scripts/manage-milestones.sh "$MAJOR" "$MINOR" "$PATCH"
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
脚本负责:
|
|
118
|
-
- 执行前先读取 `.agents/rules/label-milestone-setup.md`
|
|
119
|
-
- 使用其中的 milestone 查询与更新命令读取和调整当前里程碑
|
|
120
|
-
- 在 `{MAJOR}.{MINOR}.{PATCH}` 存在且仍为开启状态时将其关闭
|
|
121
|
-
- 确保 `{MAJOR}.{MINOR}.{PATCH+1}` 与 `{MAJOR}.{MINOR}.x` 存在
|
|
122
|
-
- 当 `PATCH=0` 时,同时确保 `{MAJOR}.{MINOR+1}.0` 与 `{MAJOR}.{MINOR+1}.x`
|
|
123
|
-
- 输出包含已发布里程碑动作和新建数量的汇总
|
|
124
|
-
|
|
125
|
-
### 9. 输出摘要
|
|
126
|
-
|
|
127
|
-
> **重要**:以下「下一步」中列出的所有 TUI 命令格式必须完整输出,不要只展示当前 AI 代理对应的格式。如果 `.agents/.airc.json` 中配置了自定义 TUI(`customTUIs`),读取每个工具的 `name` 和 `invoke`,按同样格式补充对应命令行(`${skillName}` 替换为技能名,`${projectName}` 替换为项目名)。
|
|
128
|
-
|
|
129
|
-
```
|
|
130
|
-
版本 v{version} 已准备好发布。
|
|
131
|
-
|
|
132
|
-
发布信息:
|
|
133
|
-
- 版本:{version}
|
|
134
|
-
- 发布提交:{commit-hash}
|
|
135
|
-
- 标签:v{version}
|
|
136
|
-
|
|
137
|
-
已更新文件数:{数量}
|
|
138
|
-
|
|
139
|
-
下一步(手动执行):
|
|
140
|
-
|
|
141
|
-
1. 推送分支:
|
|
142
|
-
git push origin {current-branch}
|
|
143
|
-
|
|
144
|
-
2. 推送标签:
|
|
145
|
-
git push origin v{version}
|
|
146
|
-
|
|
147
|
-
3.(可选)生成发布说明:
|
|
148
|
-
- Claude Code / OpenCode:/create-release-note {version}
|
|
149
|
-
- Gemini CLI:/{{project}}:create-release-note {version}
|
|
150
|
-
- Codex CLI:$create-release-note {version}
|
|
151
|
-
|
|
152
|
-
4.(可选)执行发布后处理:
|
|
153
|
-
- Claude Code / OpenCode:/post-release
|
|
154
|
-
- Gemini CLI:/{{project}}:post-release
|
|
155
|
-
- Codex CLI:$post-release
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
### 回滚说明
|
|
159
|
-
|
|
160
|
-
如果出了问题:
|
|
161
|
-
```bash
|
|
162
|
-
# 删除标签
|
|
163
|
-
git tag -d v{version}
|
|
164
|
-
|
|
165
|
-
# 重置提交
|
|
166
|
-
git reset --soft HEAD~1
|
|
167
|
-
|
|
168
|
-
# 恢复文件
|
|
169
|
-
git checkout -- .
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
## 注意事项
|
|
173
|
-
|
|
174
|
-
1. **需要干净的工作区**:必须没有未提交的变更
|
|
175
|
-
2. **不自动推送**:所有操作仅在本地执行;用户手动推送
|
|
176
|
-
3. **发布前验证**:将步骤 3 的 TODO 替换为你的项目所需的分支、测试和验证命令
|
|
177
|
-
4. **生成产物**:如果版本变化会影响生成文件、打包产物或内嵌元数据,需要将步骤 5 的 TODO 替换为实际命令
|
|
178
|
-
5. **发布自动化**:如果推送标签会触发 CI/CD 或包发布,请先确认所需凭据和流水线配置
|
|
179
|
-
6. **版本替换范围**:通过搜索确定需要更新哪些文件;排除 AI 工具目录
|
|
180
|
-
7. **适配你的项目**:以上版本更新和产物重建步骤是通用的;请根据你的项目版本方案进行定制
|
|
181
|
-
8. **里程碑联动**:发布时自动创建下一轮里程碑;如果里程碑体系未初始化,建议先运行 `init-milestones`
|
|
38
|
+
逐 ref 普通 push;部分成功可重放,禁止 force push。
|
|
182
39
|
|
|
183
|
-
##
|
|
40
|
+
## 5. 输出事实摘要
|
|
184
41
|
|
|
185
|
-
|
|
186
|
-
- 工作区不干净:提示提交或暂存
|
|
187
|
-
- 验证失败:显示失败的检查并停止发布流程
|
|
188
|
-
- 产物重建失败:显示构建错误并停止发布流程
|
|
189
|
-
- Git 操作失败:显示错误并提供回滚说明
|
|
42
|
+
完整展示 snapshot 和后续 TUI 命令;unknown 必须视为 blocked。
|
|
@@ -12,7 +12,7 @@ Restore local task workspace files from platform Issue comments that contain syn
|
|
|
12
12
|
## Boundary / Critical Rules
|
|
13
13
|
|
|
14
14
|
- Restore files only from comments that match the marker registry in `.agents/rules/issue-sync.md`
|
|
15
|
-
- Restore into `.agents/workspace
|
|
15
|
+
- Restore into a controlled staging directory under `.agents/workspace/`, then let lifecycle validate and place it under `active/{task-id}/`
|
|
16
16
|
- Stop immediately if the target directory already exists and ask the user to resolve the conflict first
|
|
17
17
|
- After executing this skill, you **must** immediately update the restored `task.md`
|
|
18
18
|
|
|
@@ -22,15 +22,9 @@ Version stamp rule: when creating or updating `task.md` frontmatter, read `.agen
|
|
|
22
22
|
|
|
23
23
|
> If `{task-id}` matches `^[#]?[0-9]+$` (bare numeric or `#`-prefixed), follow the "SKILL parameter resolver" section of `.agents/rules/task-short-id.md`; treat `{task-id}` as the resolved full `TASK-YYYYMMDD-HHMMSS` form for every downstream command.
|
|
24
24
|
|
|
25
|
-
## Step Start:
|
|
25
|
+
## Step Start: Local Lifecycle Boundary
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
- {YYYY-MM-DD HH:mm:ss±HH:MM} — **Restore Task [started]** by {agent} — started
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
`ai task log` pairs it with the done entry written on completion onto one row (in progress → done). See the "Activity Log started / done dual-marker convention" in `.agents/rules/task-management.md`.
|
|
27
|
+
Comment parsing must not write the formal active directory. Step 6 declares one restore intent that validates staging and atomically commits base metadata, the started/done pair, final placement, and short-id allocation.
|
|
34
28
|
|
|
35
29
|
## Steps
|
|
36
30
|
|
|
@@ -45,7 +39,7 @@ If the user provided `{task-id}`, validate the `TASK-{yyyyMMdd-HHmmss}` format.
|
|
|
45
39
|
|
|
46
40
|
### 2. Fetch Issue Comments
|
|
47
41
|
|
|
48
|
-
|
|
42
|
+
Run `agent-infra-internal platform-comment list --issue {issue-number}` to read all paginated comments while preserving order and comment IDs; the intent owns platform context, authentication, and upstream resolution.
|
|
49
43
|
|
|
50
44
|
### 3. Determine the task-id and Files to Restore
|
|
51
45
|
|
|
@@ -77,40 +71,28 @@ For each file:
|
|
|
77
71
|
- concatenate chunk bodies into the final file content
|
|
78
72
|
|
|
79
73
|
Before writing any file, verify that:
|
|
80
|
-
-
|
|
74
|
+
- no formal active, blocked, or completed directory exists for the task id
|
|
75
|
+
- the unique `.agents/workspace/.restore-staging-*` path shares the active workspace filesystem
|
|
81
76
|
|
|
82
77
|
If the directory already exists, stop immediately and tell the user to handle it manually first.
|
|
83
78
|
|
|
84
79
|
### 5. Write the Local Files
|
|
85
80
|
|
|
86
|
-
Create
|
|
81
|
+
Create the controlled staging directory and write files back in this order:
|
|
87
82
|
|
|
88
83
|
1. `task.md`
|
|
89
84
|
2. every other restored artifact file in filename order
|
|
90
85
|
|
|
91
86
|
Write only files that were actually recovered from Issue comments. Do not invent missing files.
|
|
92
87
|
|
|
93
|
-
### 6.
|
|
94
|
-
|
|
95
|
-
Get the current time:
|
|
88
|
+
### 6. Apply the Restore Lifecycle Intent
|
|
96
89
|
|
|
97
90
|
```bash
|
|
98
|
-
|
|
91
|
+
agent-infra-internal task-lifecycle {task-id} restore --agent {agent} \
|
|
92
|
+
--staging-dir "{staging-dir}" --issue-number {issue-number}
|
|
99
93
|
```
|
|
100
94
|
|
|
101
|
-
|
|
102
|
-
- `status`: `active`
|
|
103
|
-
- `assigned_to`: {current AI agent}
|
|
104
|
-
- `updated_at`: {current time}
|
|
105
|
-
- `agent_infra_version`: value from `.agents/rules/version-stamp.md`
|
|
106
|
-
|
|
107
|
-
Append an Activity Log entry indicating the task was restored from the platform Issue.
|
|
108
|
-
|
|
109
|
-
**Re-allocate short id** (the task directory is back under `active/`; alloc a new `#N`, which may differ from the pre-archival value):
|
|
110
|
-
|
|
111
|
-
```bash
|
|
112
|
-
node .agents/scripts/task-short-id.js alloc "$task_id"
|
|
113
|
-
```
|
|
95
|
+
Only `status=applied|no-op` means restore completed. The core validates task/Issue identity, file types, and artifact topology before exposing the active path, then commits metadata, Activity Log, placement, and short-id allocation. On `status=failed`, show recovery fields and retry the same intent; do not move staging or allocate manually.
|
|
114
96
|
|
|
115
97
|
### 7. Inform User
|
|
116
98
|
|
|
@@ -12,7 +12,7 @@ description: >
|
|
|
12
12
|
## 行为边界 / 关键规则
|
|
13
13
|
|
|
14
14
|
- 只从匹配 `.agents/rules/issue-sync.md` 标记注册表的评论恢复文件
|
|
15
|
-
-
|
|
15
|
+
- 先恢复到 `.agents/workspace/` 内的受控 staging,校验后由 lifecycle 原子落位到 `active/{task-id}/`
|
|
16
16
|
- 如果目标目录已存在,立即停止并提示用户先处理目录冲突
|
|
17
17
|
- 执行本技能后,你**必须**立即更新恢复出的 `task.md`
|
|
18
18
|
|
|
@@ -22,15 +22,9 @@ description: >
|
|
|
22
22
|
|
|
23
23
|
> 如果 `{task-id}` 入参匹配 `^[#]?[0-9]+$`(裸数字或带 `#` 前缀),先读取 `.agents/rules/task-short-id.md` 的「SKILL 入参解析」段执行解析;后续命令视 `{task-id}` 为解析后的全长 `TASK-YYYYMMDD-HHMMSS` 形式。
|
|
24
24
|
|
|
25
|
-
##
|
|
25
|
+
## 步骤开始:本地生命周期边界
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
- {YYYY-MM-DD HH:mm:ss±HH:MM} — **Restore Task [started]** by {agent} — started
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
`ai task log` 会把它与完成时写入的 done 条目配对成一行(进行中 → 已完成)。约定见 `.agents/rules/task-management.md` 的「Activity Log started / done 双标记约定」。
|
|
27
|
+
评论解析阶段不写正式 active 目录。步骤 6 的单次 restore intent 统一校验 staging,并原子完成基础元数据、started/done 日志、正式落位和短号分配。
|
|
34
28
|
|
|
35
29
|
## 执行步骤
|
|
36
30
|
### 1. 验证输入与环境
|
|
@@ -44,7 +38,7 @@ description: >
|
|
|
44
38
|
|
|
45
39
|
### 2. 获取 Issue 评论
|
|
46
40
|
|
|
47
|
-
|
|
41
|
+
调用 `agent-infra-internal platform-comment list --issue {issue-number}` 读取全部分页评论,保留原始顺序和评论 ID;平台上下文、认证和 upstream 由 internal intent 处理。
|
|
48
42
|
|
|
49
43
|
### 3. 确定 task-id 与待恢复文件
|
|
50
44
|
|
|
@@ -76,40 +70,28 @@ description: >
|
|
|
76
70
|
- 拼接得到最终文件内容
|
|
77
71
|
|
|
78
72
|
在写文件前检查:
|
|
79
|
-
- `.agents/workspace/active/{task-id}/`
|
|
73
|
+
- `.agents/workspace/active/{task-id}/`、`blocked/{task-id}/`、`completed/{task-id}/` 均不存在
|
|
74
|
+
- 创建唯一 `.agents/workspace/.restore-staging-*` 路径,且与 active 位于同一文件系统
|
|
80
75
|
|
|
81
76
|
如果目录已存在,立即停止并提示用户先手动处理。
|
|
82
77
|
|
|
83
78
|
### 5. 写回本地文件
|
|
84
79
|
|
|
85
|
-
|
|
80
|
+
创建受控 staging 目录,按以下顺序写回:
|
|
86
81
|
|
|
87
82
|
1. `task.md`
|
|
88
83
|
2. 其余产物文件(按文件名排序)
|
|
89
84
|
|
|
90
85
|
仅写回从 Issue 评论中实际恢复出的文件,不补造缺失文件。
|
|
91
86
|
|
|
92
|
-
### 6.
|
|
93
|
-
|
|
94
|
-
获取当前时间:
|
|
87
|
+
### 6. 执行 restore 生命周期意图
|
|
95
88
|
|
|
96
89
|
```bash
|
|
97
|
-
|
|
90
|
+
agent-infra-internal task-lifecycle {task-id} restore --agent {agent} \
|
|
91
|
+
--staging-dir "{staging-dir}" --issue-number {issue-number}
|
|
98
92
|
```
|
|
99
93
|
|
|
100
|
-
|
|
101
|
-
- `status`:`active`
|
|
102
|
-
- `assigned_to`:{当前 AI 代理}
|
|
103
|
-
- `updated_at`:{当前时间}
|
|
104
|
-
- `agent_infra_version`:按 `.agents/rules/version-stamp.md` 取值
|
|
105
|
-
|
|
106
|
-
追加 Activity Log,说明任务已从平台 Issue 还原。
|
|
107
|
-
|
|
108
|
-
**重新分配短号**(已把任务目录写回 `active/`,需要在锁内重新 alloc;新短号可能与归档前不同):
|
|
109
|
-
|
|
110
|
-
```bash
|
|
111
|
-
node .agents/scripts/task-short-id.js alloc "$task_id"
|
|
112
|
-
```
|
|
94
|
+
仅 `status=applied|no-op` 视为恢复完成。核心在正式 active 路径暴露前校验 task/Issue 身份、文件类型与 artifact topology,并统一更新 active 元数据、Activity Log、目录和短号。`status=failed` 时展示 recovery 字段,以同一 intent 重试;不得手工移动 staging 或分配短号。
|
|
113
95
|
|
|
114
96
|
### 7. 告知用户
|
|
115
97
|
|