一键导入
hotfix-done
Exit hotfix mode. Guided merge chain: hotfix -> main -> feature branches. Cleans up worktree. Usage: /cal:hotfix-done
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Exit hotfix mode. Guided merge chain: hotfix -> main -> feature branches. Cleans up worktree. Usage: /cal:hotfix-done
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
SwiftUI iOS/macOS 27 delta reference (WWDC 2026) — Apple-authored references vendored from Xcode 27's exported agent skills, plus Cal SDK-verified extras. Use for any SwiftUI work targeting SDK 27. Use when a SwiftUI view using @State fails to compile with "used before being initialized", "invalid redeclaration of synthesized property", or "extraneous argument label" errors after an SDK update (@State became a macro in SDK 27 — the obvious fix of reordering init assignments is WRONG; consult references/state-macro.md first); when @ViewBuilder/@ContentBuilder code hits ambiguous overloads in overlay/background or type-check regressions; when adding drag-to-reorder to any container via reorderable()/reorderContainer; when working with AsyncImage caching or AsyncImage(request:); when adding swipe actions to rows outside List via swipeActionsContainer(); when controlling toolbar overflow (visibilityPriority, ToolbarOverflowMenu, toolbarMinimizeBehavior); when presenting alert/confirmationDialog from an optional i
iOS/macOS/iPadOS 27 framework reference (WWDC 2026). Corrects stale model knowledge about App Intents, App Schemas, Foundation Models, and Siri AI. Invoke when building or reviewing iOS 27 / WWDC 2026 features, or when a model assumes iOS 26 / SiriKit is current.
Apple Liquid Glass (iOS 26, refined in 27) design system reference. Invoke when building UI, reviewing visual design, or implementing glass effects, background extension, tab bar minimize, typography, spacing, animations, or accessibility.
Advance the pipeline - find and execute next step
Project setup - scan codebase, create Cal structure, generate or improve CLAUDE.md
Scan codebase for small code hygiene wins — TODOs, dead code, naming issues. General-purpose tool for any project.
| name | hotfix-done |
| description | Exit hotfix mode. Guided merge chain: hotfix -> main -> feature branches. Cleans up worktree. Usage: /cal:hotfix-done |
Purpose: Structured exit from hotfix mode with guided merge chain, tagging, and worktree cleanup.
Check cal/active-hotfix.json exists. If not, say: "No active hotfix found. Nothing to do."
Read the state file:
cat cal/active-hotfix.json
# Check the hotfix worktree for uncommitted changes
git -C .worktrees/hotfix-$VERSION status --short
If uncommitted changes: Warn and ask to commit first. Do NOT proceed.
The merge chain from active-hotfix.json defines the order. Walk it step by step with user confirmation at each stage.
Show the user what will merge:
# Show commits that will merge
git log main..hotfix/$VERSION --oneline
# Show file summary
git diff main..hotfix/$VERSION --stat
Ask: "Merge hotfix/$VERSION into main? ($N commits, $M files changed)"
If confirmed:
git checkout main
git merge hotfix/$VERSION -m "[hotfix-merge] Merge hotfix/$VERSION into main"
On conflict:
git diff --name-only --diff-filter=UAsk: "Tag this as v$VERSION on main?"
If confirmed:
git tag v$VERSION
For each feature branch in the merge chain (after main):
# Show what will merge
git log $FEATURE_BRANCH..main --oneline
git diff $FEATURE_BRANCH..main --stat
Ask: "Merge main into $FEATURE_BRANCH? ($N commits, $M files changed)"
If confirmed:
git checkout $FEATURE_BRANCH
git merge main -m "Merge main (with hotfix/$VERSION) into $FEATURE_BRANCH"
On conflict: Same protocol — show, explain, offer help, never auto-resolve.
After all merges complete:
# Remove the worktree
git worktree remove .worktrees/hotfix-$VERSION
# Delete the hotfix branch (it's merged)
git branch -d hotfix/$VERSION
# Remove the state file
rm cal/active-hotfix.json
# Return to the parked branch
git checkout $PARKED_BRANCH
Update the ## Current Work section back to normal mode:
## Current Work
**Branch:** `$PARKED_BRANCH`
**Mode:** normal
**Active:** <resume previous ticket or run /cal:next>
Hotfix $VERSION complete.
Merged: hotfix/$VERSION -> main -> $FEATURE_BRANCHES
Tagged: v$VERSION
Worktree: cleaned up
Branch: back on $PARKED_BRANCH
Resume feature work or run `/cal:next` for next ticket.
If the user says "abort" or "cancel" during the merge chain:
If the hotfix branch exists on remote:
git push origin --delete hotfix/$VERSION
Ask before deleting the remote branch.
If new feature branches were created since the hotfix started, they won't be in the merge chain. Cal should check:
git branch --no-merged main
And warn: "These branches don't have the hotfix yet: $BRANCHES. Merge main into them separately."
[hotfix-merge] tag in commit messages allows the main-protect hook to pass.