configs-all 1.0.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/.claude/settings.local.json +3 -0
- package/CLAUDE.md +94 -0
- package/README.md +424 -0
- package/TERMINAL_SHORTCUTS.md +96 -0
- package/WINDOWS_COMPATIBILITY.md +85 -0
- package/WINDOWS_MCP_SETUP.md +133 -0
- package/apps/RectangleConfig.plist +0 -0
- package/apps/Synergy +84 -0
- package/apps/iStat Menus Settings.ismp7 +0 -0
- package/claude/CLAUDE.md +228 -0
- package/claude/commands/changelog.md +36 -0
- package/claude/commands/commit.md +29 -0
- package/claude/commands/context.md +112 -0
- package/claude/commands/dash.md +37 -0
- package/claude/commands/deploy-check.md +37 -0
- package/claude/commands/deps.md +26 -0
- package/claude/commands/duplo.md +56 -0
- package/claude/commands/explain.md +43 -0
- package/claude/commands/fix-and-test.md +46 -0
- package/claude/commands/game-debug.md +66 -0
- package/claude/commands/games.md +53 -0
- package/claude/commands/go.md +147 -0
- package/claude/commands/guard.md +102 -0
- package/claude/commands/handoff.md +66 -0
- package/claude/commands/incident.md +144 -0
- package/claude/commands/init.md +78 -0
- package/claude/commands/k8s-debug.md +31 -0
- package/claude/commands/lint.md +27 -0
- package/claude/commands/merge-all.md +115 -0
- package/claude/commands/merge.md +129 -0
- package/claude/commands/mikpc.md +54 -0
- package/claude/commands/morning.md +72 -0
- package/claude/commands/partymode.md +105 -0
- package/claude/commands/plans.md +88 -0
- package/claude/commands/pr.md +41 -0
- package/claude/commands/prep.md +132 -0
- package/claude/commands/push-sync.md +82 -0
- package/claude/commands/push.md +34 -0
- package/claude/commands/research.md +73 -0
- package/claude/commands/retro.md +95 -0
- package/claude/commands/review-pr.md +96 -0
- package/claude/commands/review.md +41 -0
- package/claude/commands/scaffold-agent.md +45 -0
- package/claude/commands/setup.md +92 -0
- package/claude/commands/ship-prod.md +97 -0
- package/claude/commands/ship.md +82 -0
- package/claude/commands/simplify.md +42 -0
- package/claude/commands/spike.md +110 -0
- package/claude/commands/status.md +37 -0
- package/claude/commands/sync.md +72 -0
- package/claude/commands/test.md +29 -0
- package/claude/commands/triage.md +72 -0
- package/claude/desktop/claude_desktop_config.json +9 -0
- package/claude/hooks.json +15 -0
- package/claude/mcp-servers.duplo.json +8 -0
- package/claude/mcp-servers.json +62 -0
- package/claude/scripts/psdebug.ps1 +7 -0
- package/claude/settings.json +38 -0
- package/claude/settings.local.json +4 -0
- package/claude/statusline-command.sh +94 -0
- package/claude/templates/CLAUDE-k8s-devops.md +58 -0
- package/claude/templates/CLAUDE-python-agent.md +47 -0
- package/claude/templates/CLAUDE-typescript-frontend.md +50 -0
- package/docker/ai-stack/docker-compose.yml +76 -0
- package/docker/ai-stack/searxng/limiter.toml +3 -0
- package/docker/ai-stack/searxng/settings.yml +39 -0
- package/docker/cli/config.json.template +15 -0
- package/docker/cli/daemon.json +9 -0
- package/docker/cli/features.json +3 -0
- package/docker/mcp/catalog.json +9 -0
- package/docker/mcp/catalogs/docker-mcp.yaml +15107 -0
- package/docker/mcp/config.yaml +0 -0
- package/docker/mcp/registry.yaml +37 -0
- package/docker/mcp/tools.yaml +0 -0
- package/docs/context/.gitkeep +0 -0
- package/docs/context/2026-03-02-configs.md +142 -0
- package/docs/handoff/.gitkeep +0 -0
- package/docs/incidents/.gitkeep +0 -0
- package/docs/plans/2026-02-28-autonomous-command-suite-design.md +250 -0
- package/docs/plans/2026-02-28-autonomous-command-suite.md +682 -0
- package/docs/plans/2026-03-01-ai-stack-split-architecture.md +72 -0
- package/docs/plans/2026-03-02-ai-stack-expansion.md +33 -0
- package/docs/plans/2026-03-02-merge-commands-design.md +58 -0
- package/docs/plans/2026-03-02-merge-commands.md +354 -0
- package/docs/research/.gitkeep +0 -0
- package/docs/research/2026-03-02-configs-repo-architecture.md +152 -0
- package/docs/retros/.gitkeep +0 -0
- package/docs/retros/2026-03-01-ai-stack-split-architecture.md +38 -0
- package/docs/spikes/.gitkeep +0 -0
- package/gh/config.yml +16 -0
- package/gh/hosts.yml +5 -0
- package/gh/main.json +103 -0
- package/ghostty/config +90 -0
- package/git/config/base.gitconfig +46 -0
- package/git/config/chiefmikey.gitconfig +11 -0
- package/git/config/personal.gitconfig +10 -0
- package/git/config/work.gitconfig +14 -0
- package/ide/cursor/extensions.txt +111 -0
- package/ide/cursor/keybindings.json +307 -0
- package/ide/cursor/mcp.json +92 -0
- package/ide/cursor/settings.json +544 -0
- package/ide/vscode/extensions.txt +120 -0
- package/ide/vscode/insiders/extensions.txt +119 -0
- package/ide/vscode/insiders/keybindings.json +294 -0
- package/ide/vscode/insiders/settings.json +518 -0
- package/ide/vscode/keybindings.json +294 -0
- package/ide/vscode/settings.json +526 -0
- package/ide/vscode/vscode/extensions.txt +43 -0
- package/iterm/Mikey Pro.json +951 -0
- package/iterm/com.googlecode.iterm2.plist +5549 -0
- package/iterm/font/MesloLGS NF Bold Italic.ttf +0 -0
- package/iterm/font/MesloLGS NF Bold.ttf +0 -0
- package/iterm/font/MesloLGS NF Italic.ttf +0 -0
- package/iterm/font/MesloLGS NF Regular.ttf +0 -0
- package/package.json +15 -0
- package/scripts/ai/deploy-ai-stack.sh +119 -0
- package/scripts/ai/fix-ai-proxy.service +12 -0
- package/scripts/ai/fix-ai-proxy.sh +25 -0
- package/scripts/brew/search/brew-search-results.sh +19 -0
- package/scripts/brew/search/brew-search.sh +34 -0
- package/scripts/brew/upgrade/brew-upgrade-autoupdate.sh +5 -0
- package/scripts/brew/upgrade/brew-upgrade-full-auto.sh +89 -0
- package/scripts/brew/upgrade/brew-upgrade-full.sh +159 -0
- package/scripts/docker/cleanup/docker-cleanup-manage.sh +163 -0
- package/scripts/docker/cleanup/docker-cleanup.cron +12 -0
- package/scripts/docker/cleanup/docker-cleanup.sh +280 -0
- package/scripts/docker/install/README.md +23 -0
- package/scripts/docker/install/docker-al2.sh +7 -0
- package/scripts/docker/install/docker-compose-al2.sh +15 -0
- package/scripts/gh/auth/auth.sh +12 -0
- package/scripts/gh/config/gh-config.sh +3 -0
- package/scripts/gh/gist/gh-gist-create.sh +29 -0
- package/scripts/gh/gist/gh-gist-delete.sh +1 -0
- package/scripts/gh/gist/gh-gist-edit.sh +8 -0
- package/scripts/gh/gpg-key/gh-gpg-key-add.sh +3 -0
- package/scripts/gh/install/install.sh +7 -0
- package/scripts/gh/label/gh-label-clone.sh +0 -0
- package/scripts/gh/label/gh-label-create.sh +0 -0
- package/scripts/gh/label/gh-label-delete.sh +0 -0
- package/scripts/gh/label/gh-label-edit.sh +0 -0
- package/scripts/gh/label/gh-label-list.sh +0 -0
- package/scripts/gh/secret/gh-secret-delete.sh +24 -0
- package/scripts/gh/secret/gh-secret-set.sh +70 -0
- package/scripts/gh/ssh-key/gh-ssh-key-add.sh +8 -0
- package/scripts/git/add/git-add.sh +3 -0
- package/scripts/git/auth/README.md +11 -0
- package/scripts/git/auth/https.sh +20 -0
- package/scripts/git/auth/ssh-mac.sh +41 -0
- package/scripts/git/branch-delete/git-branch-delete.sh +16 -0
- package/scripts/git/checkout/git-checkout-stash.sh +32 -0
- package/scripts/git/temp/git-temp-pull.sh +6 -0
- package/scripts/git/temp/git-temp-push.sh +5 -0
- package/scripts/install/fresh.zsh +34 -0
- package/scripts/install/full-install.zsh +193 -0
- package/scripts/linux/codedeploy/README.md +19 -0
- package/scripts/linux/codedeploy/linux-codedeploy-al2.sh +13 -0
- package/scripts/linux/codedeploy/linux-codedeploy-index.sh +16 -0
- package/scripts/linux/codedeploy/linux-codedeploy-ubuntu.sh +14 -0
- package/scripts/linux/coredns/README.md +17 -0
- package/scripts/linux/coredns/linux-coredns-al2.sh +29 -0
- package/scripts/linux/wifi/01-netconf.yaml +21 -0
- package/scripts/linux/wifi/wifi-ubuntu.sh +17 -0
- package/scripts/mac/dock-sort/mac-dock-sort.sh +87 -0
- package/scripts/mac/dropbox-ignore/mac-dropbox-ignore.sh +12 -0
- package/scripts/mac/sudo-askpass/mac-sudo-askpass.sh +50 -0
- package/scripts/mac/sudo-askpass/setup-sudo-password.sh +49 -0
- package/scripts/mac/upgrade/mac-upgrade.sh +21 -0
- package/scripts/mac/vpn/mac-vpn.sh +4 -0
- package/scripts/mcp/aws-mcp-wrapper.ps1 +97 -0
- package/scripts/mcp/aws-mcp-wrapper.sh +53 -0
- package/scripts/mcp/duplo-mcp-wrapper.sh +31 -0
- package/scripts/mcp/filesystem-mcp-wrapper.ps1 +43 -0
- package/scripts/mcp/filesystem-mcp-wrapper.sh +34 -0
- package/scripts/mcp/git-mcp-wrapper.ps1 +42 -0
- package/scripts/mcp/git-mcp-wrapper.sh +33 -0
- package/scripts/mcp/github-mcp-wrapper.ps1 +43 -0
- package/scripts/mcp/github-mcp-wrapper.sh +19 -0
- package/scripts/mcp/kubernetes-mcp-wrapper.ps1 +22 -0
- package/scripts/mcp/kubernetes-mcp-wrapper.sh +16 -0
- package/scripts/mcp/mcp-launcher.ps1 +56 -0
- package/scripts/mcp/mcp-launcher.sh +71 -0
- package/scripts/mcp/mongodb-mcp-wrapper.ps1 +26 -0
- package/scripts/mcp/mongodb-mcp-wrapper.sh +17 -0
- package/scripts/mcp/notion-mcp-wrapper.ps1 +23 -0
- package/scripts/mcp/notion-mcp-wrapper.sh +14 -0
- package/scripts/mcp/postgres-mcp-wrapper.ps1 +23 -0
- package/scripts/mcp/postgres-mcp-wrapper.sh +16 -0
- package/scripts/npm/ncu/npm-ncu.sh +24 -0
- package/scripts/npm/upgrade/npm-upgrade.sh +51 -0
- package/scripts/qmk/build_reviung41.sh +28 -0
- package/scripts/qmk/sync_unicorne.sh +44 -0
- package/scripts/sync/README.md +64 -0
- package/scripts/sync/config-common.zsh +882 -0
- package/scripts/sync/pull-configs.ps1 +33 -0
- package/scripts/sync/pull-configs.zsh +278 -0
- package/scripts/sync/push-configs.ps1 +91 -0
- package/scripts/sync/push-configs.zsh +384 -0
- package/shell/alias/alias-d.zsh +333 -0
- package/shell/alias/alias.zsh +36 -0
- package/shell/alias/categories/development.zsh +157 -0
- package/shell/alias/categories/environment.zsh +13 -0
- package/shell/alias/categories/git.zsh +40 -0
- package/shell/alias/categories/github-functions.zsh +459 -0
- package/shell/alias/categories/network.zsh +46 -0
- package/shell/alias/categories/path.zsh +46 -0
- package/shell/alias/categories/system.zsh +78 -0
- package/shell/alias/categories/wolfe-server.zsh +11 -0
- package/shell/powershell/Microsoft.PowerShell_profile.ps1 +208 -0
- package/shell/zsh/.p10k.zsh +1832 -0
- package/shell/zsh/.zshrc +87 -0
- package/shell/zsh/config/completion.zsh +31 -0
- package/shell/zsh/config/functions.zsh +31 -0
- package/shell/zsh/config/keybindings.zsh +13 -0
- package/shell/zsh/config/options.zsh +56 -0
- package/shell/zsh/config/plugins.zsh +83 -0
- package/shell/zsh/config/variables.zsh +191 -0
- package/shell/zsh/powerlevel10k.zsh-theme +83 -0
- package/shell/zsh/zsh-autosuggestions.zsh +871 -0
- package/ssh/config +46 -0
- package/ssh/config.duplo +21 -0
- package/ssh/config.mikpc +35 -0
- package/ssh/personal_signing.pub +1 -0
- package/templates/.envrc.example +34 -0
- package/templates/.envrc.quickstart +17 -0
- package/wezterm/wezterm.lua +249 -0
- package/wsl/.wslconfig +3 -0
- package/wsl/wsl.conf +18 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
## Security & Quality Audit
|
|
2
|
+
|
|
3
|
+
Proactive security and code quality audit of a specific area or the full codebase. Produces a persistent audit artifact that future `/prep`, `/review`, and `/review-pr` agents can reference for known vulnerabilities and security posture.
|
|
4
|
+
|
|
5
|
+
### Input
|
|
6
|
+
$ARGUMENTS - optional: scope to audit (directory path, file path, or area like "authentication", "API endpoints", "dependencies"). If omitted, audits the full codebase.
|
|
7
|
+
|
|
8
|
+
### Instructions
|
|
9
|
+
|
|
10
|
+
**Before delegating, gather project context:**
|
|
11
|
+
1. Read `docs/context/` for the most recent context snapshot — understand the architecture
|
|
12
|
+
2. Read the project CLAUDE.md if it exists — understand conventions
|
|
13
|
+
3. Read `docs/research/` for any prior audits (`*audit*`, `*security*`) — don't duplicate findings
|
|
14
|
+
4. Read `docs/incidents/` — have there been security-related incidents before?
|
|
15
|
+
|
|
16
|
+
**Then delegate this task to a subagent using the Agent tool with `model: "sonnet"` and `subagent_type: "general-purpose"`.** Pass the full prompt below (with context injected) to the subagent and relay its result.
|
|
17
|
+
|
|
18
|
+
### Subagent prompt
|
|
19
|
+
|
|
20
|
+
You are a security-focused code auditor. Audit the scope: `$ARGUMENTS` (or full codebase if empty).
|
|
21
|
+
|
|
22
|
+
**Project Context:**
|
|
23
|
+
[Inject Architecture, Tech Stack, Conventions from docs/context if available]
|
|
24
|
+
[Inject any prior audit findings from docs/research if available]
|
|
25
|
+
[Inject any security-related incidents from docs/incidents if available]
|
|
26
|
+
|
|
27
|
+
1. **Determine audit scope:**
|
|
28
|
+
- If a specific path/area was given, focus there but note cross-cutting concerns
|
|
29
|
+
- If full codebase, prioritize: auth → API boundaries → data handling → dependencies → config → infrastructure
|
|
30
|
+
|
|
31
|
+
2. **OWASP Top 10 scan** (check each against actual code):
|
|
32
|
+
- **Injection:** SQL/NoSQL injection, command injection, LDAP injection, template injection
|
|
33
|
+
- **Broken Auth:** Hardcoded credentials, weak session management, missing MFA references
|
|
34
|
+
- **Sensitive Data:** Secrets in code, unencrypted storage, excessive logging of PII
|
|
35
|
+
- **XXE:** XML parsing without entity restrictions
|
|
36
|
+
- **Broken Access Control:** Missing authorization checks, IDOR, path traversal
|
|
37
|
+
- **Misconfig:** Debug mode in production, default credentials, overly permissive CORS
|
|
38
|
+
- **XSS:** Unsanitized user input in templates/responses
|
|
39
|
+
- **Insecure Deserialization:** Untrusted data deserialization
|
|
40
|
+
- **Known Vulnerabilities:** Outdated dependencies with CVEs
|
|
41
|
+
- **Insufficient Logging:** Missing audit trails for sensitive operations
|
|
42
|
+
|
|
43
|
+
3. **Dependency audit:**
|
|
44
|
+
- If `package.json` exists: run `npm audit` (or check `package-lock.json` for known CVEs)
|
|
45
|
+
- If `requirements.txt`/`pyproject.toml` exists: check for known vulnerable versions
|
|
46
|
+
- If `go.mod` exists: check for vulnerable modules
|
|
47
|
+
- Flag any dependencies that are severely outdated (2+ major versions behind)
|
|
48
|
+
|
|
49
|
+
4. **Secret scanning:**
|
|
50
|
+
- Search for patterns: API keys, tokens, passwords, connection strings, private keys
|
|
51
|
+
- Check `.env` files, config files, hardcoded strings
|
|
52
|
+
- Verify `.gitignore` covers sensitive files
|
|
53
|
+
- Check git history for accidentally committed secrets: `git log --diff-filter=D --name-only -- '*.env' '*.key' '*.pem'`
|
|
54
|
+
|
|
55
|
+
5. **Infrastructure audit** (if applicable):
|
|
56
|
+
- K8s manifests: resource limits, security contexts, network policies, RBAC
|
|
57
|
+
- Dockerfiles: running as root, unnecessary packages, secrets in layers
|
|
58
|
+
- Terraform: overly permissive IAM, public S3 buckets, unencrypted resources
|
|
59
|
+
- CI/CD: secrets in plaintext, missing branch protections
|
|
60
|
+
|
|
61
|
+
6. **Code quality signals** (security-adjacent):
|
|
62
|
+
- Error handling that leaks internal details to users
|
|
63
|
+
- Missing input validation at system boundaries
|
|
64
|
+
- Race conditions in concurrent code
|
|
65
|
+
- Unsafe type assertions or casts
|
|
66
|
+
- Missing rate limiting on public endpoints
|
|
67
|
+
|
|
68
|
+
7. **Write findings** to `docs/research/YYYY-MM-DD-audit-<scope-slug>.md`:
|
|
69
|
+
|
|
70
|
+
```markdown
|
|
71
|
+
# Security Audit: <Scope>
|
|
72
|
+
_Date: YYYY-MM-DD_
|
|
73
|
+
_Scope: <what was audited>_
|
|
74
|
+
_Severity Summary: X critical, Y high, Z medium, W low_
|
|
75
|
+
|
|
76
|
+
## Critical Findings
|
|
77
|
+
### Finding 1: [Title]
|
|
78
|
+
- **Severity:** Critical/High/Medium/Low
|
|
79
|
+
- **Location:** file:line
|
|
80
|
+
- **Description:** What the vulnerability is
|
|
81
|
+
- **Impact:** What could happen if exploited
|
|
82
|
+
- **Recommendation:** How to fix it
|
|
83
|
+
- **Evidence:** Code snippet or command output
|
|
84
|
+
|
|
85
|
+
## Dependency Status
|
|
86
|
+
| Package | Current | Latest | CVEs | Action Needed |
|
|
87
|
+
|---------|---------|--------|------|---------------|
|
|
88
|
+
|
|
89
|
+
## Secret Scan Results
|
|
90
|
+
- [Results of secret scanning]
|
|
91
|
+
|
|
92
|
+
## Infrastructure Findings
|
|
93
|
+
- [If applicable]
|
|
94
|
+
|
|
95
|
+
## Positive Observations
|
|
96
|
+
- [What's already done well — important for maintaining good practices]
|
|
97
|
+
|
|
98
|
+
## Recommended Actions
|
|
99
|
+
Priority-ordered list of what to fix and in what order.
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
8. **Report back** with: total findings by severity, critical items requiring immediate action, and the audit file path.
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
## Session Handoff
|
|
2
|
+
|
|
3
|
+
Capture current session state so the next Claude session picks up seamlessly without re-explanation. Run this before ending a session or switching contexts.
|
|
4
|
+
|
|
5
|
+
**Do NOT delegate this command to a subagent.** This is an orchestration command — Opus runs it directly.
|
|
6
|
+
|
|
7
|
+
### Input
|
|
8
|
+
$ARGUMENTS - optional notes about what to highlight or context to preserve. If omitted, auto-detects from git state, open tasks, and recent changes.
|
|
9
|
+
|
|
10
|
+
### Instructions
|
|
11
|
+
|
|
12
|
+
1. **Gather current state** by running these checks in parallel:
|
|
13
|
+
- `git status` — uncommitted changes and their files
|
|
14
|
+
- `git diff --stat` — scope of uncommitted work
|
|
15
|
+
- `git log --oneline -10` — recent commits this session
|
|
16
|
+
- `git branch --show-current` — current branch
|
|
17
|
+
- Check `docs/plans/` for any `_Status: IN PROGRESS_` plans
|
|
18
|
+
- Check `docs/spikes/` for any `_Status: IN PROGRESS_` spikes
|
|
19
|
+
- Check `docs/incidents/` for any `_Status: ACTIVE_` or `_Status: MITIGATED_` incidents
|
|
20
|
+
- Check `docs/handoff/` for prior handoff docs (understand continuity)
|
|
21
|
+
- Read project CLAUDE.md for project context
|
|
22
|
+
|
|
23
|
+
2. **Analyze the session:**
|
|
24
|
+
- What was the user working on? (Infer from commits, changes, and $ARGUMENTS)
|
|
25
|
+
- What decisions were made? (Check docs/plans/ for new or updated plans, recent commits)
|
|
26
|
+
- What's incomplete? (Uncommitted changes, IN PROGRESS plans, IN PROGRESS spikes, partially done steps)
|
|
27
|
+
- What's blocked? (Failed tests, unresolved issues, pending external dependencies)
|
|
28
|
+
- Are there active incidents? (ACTIVE or MITIGATED — flag these prominently)
|
|
29
|
+
|
|
30
|
+
3. **Write the handoff** to `docs/handoff/YYYY-MM-DD.md` (if one already exists for today, use `YYYY-MM-DD-HHMMSS.md`):
|
|
31
|
+
|
|
32
|
+
```markdown
|
|
33
|
+
# Session Handoff
|
|
34
|
+
_Date: YYYY-MM-DD_
|
|
35
|
+
_Branch: <current branch>_
|
|
36
|
+
_Machine: <hostname>_
|
|
37
|
+
|
|
38
|
+
## What Was Done
|
|
39
|
+
Brief summary of work completed this session. Reference commits.
|
|
40
|
+
|
|
41
|
+
## Current State
|
|
42
|
+
- Uncommitted changes and their purpose
|
|
43
|
+
- In-progress plans and which step they're on
|
|
44
|
+
- Build/test status (passing? known failures?)
|
|
45
|
+
|
|
46
|
+
## Decisions Made
|
|
47
|
+
Key decisions from this session that the next session needs to know.
|
|
48
|
+
|
|
49
|
+
## Blockers & Open Questions
|
|
50
|
+
Anything unresolved that needs attention.
|
|
51
|
+
|
|
52
|
+
## What's Next
|
|
53
|
+
Prioritized list of remaining work, most important first.
|
|
54
|
+
|
|
55
|
+
## Context That Would Be Lost
|
|
56
|
+
Anything non-obvious that the next session needs to understand —
|
|
57
|
+
workarounds applied, why a certain approach was chosen, things
|
|
58
|
+
that were tried and didn't work.
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
4. **If $ARGUMENTS provided,** incorporate the user's notes into the relevant sections.
|
|
62
|
+
|
|
63
|
+
5. Report the file path and a brief summary of the handoff state.
|
|
64
|
+
|
|
65
|
+
### Integration
|
|
66
|
+
All doc-consuming commands (`/prep`, `/go`, `/plans`, `/init`, etc.) should check `docs/handoff/` for the most recent entry when starting a new session.
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
## Incident Response — Structured Production Fire Management
|
|
2
|
+
|
|
3
|
+
When production is broken, follow this structured incident workflow. Prioritizes mitigation first, then root cause, then fix, then postmortem. Produces a persistent incident artifact so agents can resume if interrupted and future agents learn from past incidents.
|
|
4
|
+
|
|
5
|
+
Different from `/triage` (which routes to the right command) — this IS the command when something is actively broken.
|
|
6
|
+
|
|
7
|
+
**Do NOT delegate this command to a subagent.** This is an orchestration command — Opus runs it directly.
|
|
8
|
+
|
|
9
|
+
### Input
|
|
10
|
+
$ARGUMENTS - optional: description of what's broken (error message, alert, user report). If omitted, check for ACTIVE or MITIGATED incidents to resume.
|
|
11
|
+
|
|
12
|
+
### Instructions
|
|
13
|
+
|
|
14
|
+
1. **Check for existing incidents:**
|
|
15
|
+
- If `$ARGUMENTS` is empty, scan `docs/incidents/` for `_Status: ACTIVE_` or `_Status: MITIGATED_` — resume the most recent one
|
|
16
|
+
- If no active incidents exist and no arguments given, tell the user "No active incidents found. Provide a description of what's broken."
|
|
17
|
+
- If resuming, read the incident doc and pick up from the current phase
|
|
18
|
+
|
|
19
|
+
2. **Load context:**
|
|
20
|
+
- Read `docs/context/` for the most recent context snapshot — understand the architecture fast
|
|
21
|
+
- Read project CLAUDE.md if it exists
|
|
22
|
+
- Read `docs/incidents/` for related past incidents — has this happened before?
|
|
23
|
+
- Read `docs/research/` for any relevant deep dives on the affected area
|
|
24
|
+
|
|
25
|
+
3. **Create the incident document** at `docs/incidents/YYYY-MM-DD-<incident-slug>.md`:
|
|
26
|
+
|
|
27
|
+
```markdown
|
|
28
|
+
# Incident: <Brief Title>
|
|
29
|
+
_Status: ACTIVE_
|
|
30
|
+
_Reported: YYYY-MM-DD HH:MM_
|
|
31
|
+
_Severity: P1/P2/P3_
|
|
32
|
+
_Phase: Assessment_
|
|
33
|
+
_LastCompletedPhase: 0_
|
|
34
|
+
|
|
35
|
+
## Report
|
|
36
|
+
What was reported. Error messages, symptoms, user impact.
|
|
37
|
+
|
|
38
|
+
## Impact Assessment
|
|
39
|
+
_Phase 1_
|
|
40
|
+
- **Users affected:**
|
|
41
|
+
- **Services affected:**
|
|
42
|
+
- **Data at risk:**
|
|
43
|
+
- **Revenue/business impact:**
|
|
44
|
+
|
|
45
|
+
## Timeline
|
|
46
|
+
| Time | Event |
|
|
47
|
+
|------|-------|
|
|
48
|
+
| HH:MM | Incident reported |
|
|
49
|
+
|
|
50
|
+
## Mitigation
|
|
51
|
+
_Phase 2_
|
|
52
|
+
**Goal:** Stop the bleeding. Not a permanent fix — just reduce impact.
|
|
53
|
+
- **Action taken:**
|
|
54
|
+
- **Result:**
|
|
55
|
+
- **Verified by:**
|
|
56
|
+
|
|
57
|
+
## Root Cause Analysis
|
|
58
|
+
_Phase 3_
|
|
59
|
+
**Immediate cause:**
|
|
60
|
+
**Contributing factors:**
|
|
61
|
+
**Evidence:**
|
|
62
|
+
|
|
63
|
+
## Fix
|
|
64
|
+
_Phase 4_
|
|
65
|
+
**What was changed:**
|
|
66
|
+
**Files modified:**
|
|
67
|
+
**Verification:**
|
|
68
|
+
|
|
69
|
+
## Postmortem
|
|
70
|
+
_Phase 5_
|
|
71
|
+
### What happened
|
|
72
|
+
### What went well
|
|
73
|
+
### What went poorly
|
|
74
|
+
### Action items
|
|
75
|
+
- [ ] Action 1 — preventive measure
|
|
76
|
+
- [ ] Action 2 — detection improvement
|
|
77
|
+
### Lessons learned
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
4. **Phase 1 — Impact Assessment (DO THIS FAST):**
|
|
81
|
+
- Determine severity:
|
|
82
|
+
- **P1:** Service down, data loss, or security breach — drop everything
|
|
83
|
+
- **P2:** Degraded service, partial outage, or significant user impact
|
|
84
|
+
- **P3:** Minor issue, workaround exists, limited user impact
|
|
85
|
+
- Identify affected services, users, and data
|
|
86
|
+
- Add to Timeline
|
|
87
|
+
- Update `_Phase: Assessment_`, `_Severity: P[1-3]_`
|
|
88
|
+
|
|
89
|
+
5. **Phase 2 — Mitigation (STOP THE BLEEDING):**
|
|
90
|
+
- Find the fastest way to reduce impact — this is NOT the permanent fix
|
|
91
|
+
- Options to consider (fastest first):
|
|
92
|
+
- Rollback to last known good state
|
|
93
|
+
- Feature flag / disable the broken feature
|
|
94
|
+
- Scale up / restart affected services
|
|
95
|
+
- Redirect traffic / enable maintenance mode
|
|
96
|
+
- Hotfix the immediate symptom
|
|
97
|
+
- Apply the mitigation
|
|
98
|
+
- Verify it worked — check logs, metrics, user reports
|
|
99
|
+
- Update Timeline and `_Status: MITIGATED_`, `_Phase: Mitigation_`, `_LastCompletedPhase: 2_`
|
|
100
|
+
|
|
101
|
+
6. **Phase 3 — Root Cause Analysis:**
|
|
102
|
+
- Now that the fire is out, investigate properly
|
|
103
|
+
- Check logs, traces, metrics around the incident time
|
|
104
|
+
- Check recent deployments — `git log --oneline -20`, CI/CD history
|
|
105
|
+
- Check recent config changes
|
|
106
|
+
- Check external dependencies (API outages, DNS, cloud provider status)
|
|
107
|
+
- Identify the immediate cause AND contributing factors
|
|
108
|
+
- Document evidence (log snippets, metrics, git history)
|
|
109
|
+
- Update `_Phase: Root Cause_`, `_LastCompletedPhase: 3_`
|
|
110
|
+
|
|
111
|
+
7. **Phase 4 — Fix:**
|
|
112
|
+
- Implement the permanent fix (not just the mitigation)
|
|
113
|
+
- Run full verification: tests, lint, build
|
|
114
|
+
- Verify the fix addresses the root cause, not just the symptom
|
|
115
|
+
- If the mitigation IS the fix, document why
|
|
116
|
+
- Update Timeline and `_Phase: Fix_`, `_LastCompletedPhase: 4_`
|
|
117
|
+
|
|
118
|
+
8. **Phase 5 — Postmortem:**
|
|
119
|
+
- Fill in the Postmortem section honestly — no blame, focus on systems
|
|
120
|
+
- Identify action items:
|
|
121
|
+
- **Preventive:** How do we stop this from happening again?
|
|
122
|
+
- **Detective:** How do we catch this faster next time?
|
|
123
|
+
- **Corrective:** What else needs fixing as a result?
|
|
124
|
+
- Extract lessons learned
|
|
125
|
+
- **Feed back into the system:**
|
|
126
|
+
- Update `docs/context/` if architecture understanding changed
|
|
127
|
+
- Update project CLAUDE.md with "never do X again" rules if applicable
|
|
128
|
+
- Update MEMORY.md if this is a cross-project learning
|
|
129
|
+
- Create follow-up tasks/spikes for action items that need more work
|
|
130
|
+
- Update `_Status: RESOLVED_`, `_Phase: Postmortem_`, `_LastCompletedPhase: 5_`
|
|
131
|
+
- Add `_Resolved: YYYY-MM-DD HH:MM_`
|
|
132
|
+
- Add `_Duration: Xh Ym_` (from report to resolution)
|
|
133
|
+
- Add `_RootCause: one-line summary_`
|
|
134
|
+
|
|
135
|
+
9. **Report:** Incident summary, severity, duration, root cause, fix applied, action items, and lessons learned.
|
|
136
|
+
|
|
137
|
+
### Critical Rules
|
|
138
|
+
|
|
139
|
+
- **Mitigate first, investigate second.** Never spend 30 minutes debugging while production is down if a rollback would fix it in 2 minutes.
|
|
140
|
+
- **Update status faithfully.** If interrupted at any phase, the status and `_LastCompletedPhase_` tell the next agent exactly where to pick up.
|
|
141
|
+
- **Evidence over speculation.** Root cause must be supported by logs, metrics, or code — not guesses.
|
|
142
|
+
- **No blame.** Postmortems focus on systems and processes, not people.
|
|
143
|
+
- **Check for past incidents.** If this happened before, reference the previous incident and explain why the prior fix didn't prevent recurrence.
|
|
144
|
+
- **Action items are mandatory.** Every incident must produce at least one preventive and one detective action item.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
## Initialize Repository for Autonomous Work
|
|
2
|
+
|
|
3
|
+
Fully prepare a repository for autonomous Claude sessions. Generates or validates the project CLAUDE.md, produces deep research, and builds a context snapshot — everything an agent needs to work effectively without re-exploration.
|
|
4
|
+
|
|
5
|
+
This is `/prep` without the plan phase. Run this when onboarding to a new repo or refreshing a repo's documentation artifacts.
|
|
6
|
+
|
|
7
|
+
**Do NOT delegate this command to a subagent.** This is an orchestration command — Opus runs it directly.
|
|
8
|
+
|
|
9
|
+
### Input
|
|
10
|
+
$ARGUMENTS - optional: brief description of the project's purpose or focus area for research
|
|
11
|
+
|
|
12
|
+
### Instructions
|
|
13
|
+
|
|
14
|
+
Execute these three phases in order, carrying all context forward between phases.
|
|
15
|
+
|
|
16
|
+
#### Phase 1: Setup — Project CLAUDE.md
|
|
17
|
+
|
|
18
|
+
1. **Check for existing CLAUDE.md** in the project root.
|
|
19
|
+
|
|
20
|
+
2. **If one exists — validate and fortify:**
|
|
21
|
+
- Detect the current tech stack, project structure, commands, and conventions
|
|
22
|
+
- Compare each section of the existing CLAUDE.md against current codebase reality
|
|
23
|
+
- Fix stale information (outdated commands, wrong directory structure, missing tech stack entries)
|
|
24
|
+
- Add missing sections that should exist based on what you detected
|
|
25
|
+
- Strengthen weak sections with real observations from the code
|
|
26
|
+
- Preserve user-added content and customizations — never destructively rewrite
|
|
27
|
+
- Report what was changed and why
|
|
28
|
+
|
|
29
|
+
3. **If none exists — generate fresh:**
|
|
30
|
+
- Detect tech stack, project structure, commands, conventions, testing setup
|
|
31
|
+
- Write `./CLAUDE.md` with real values — no placeholders, no generic content
|
|
32
|
+
- Sections: Project Overview, Tech Stack, Architecture, Commands, Conventions, Common Mistakes, Testing
|
|
33
|
+
- Keep it under 80 lines. Don't duplicate global `~/CLAUDE.md` instructions.
|
|
34
|
+
|
|
35
|
+
#### Phase 2: Research — Deep Codebase Understanding
|
|
36
|
+
|
|
37
|
+
4. **Read existing documentation:**
|
|
38
|
+
- The CLAUDE.md you just created/validated
|
|
39
|
+
- ALL files in `docs/research/` if the directory exists
|
|
40
|
+
- ALL files in `docs/context/` if the directory exists
|
|
41
|
+
- MEMORY.md if accessible
|
|
42
|
+
|
|
43
|
+
5. **Deep codebase exploration** using parallel Explore subagents:
|
|
44
|
+
- Trace data flow end-to-end for the primary use case
|
|
45
|
+
- Read function bodies, not just signatures
|
|
46
|
+
- Follow imports to understand real dependencies
|
|
47
|
+
- Check tests to understand intended behavior and edge cases
|
|
48
|
+
- Look at recent git history on key files for "why" context
|
|
49
|
+
|
|
50
|
+
6. **Verify ALL findings against actual code — this is non-negotiable.** The value of this system depends on docs being accurate. Never trust documentation blindly. Check git log since each doc's date for relevant changes. Run actual commands to verify documented instructions still work. Every claim carried forward must be verified against current reality.
|
|
51
|
+
|
|
52
|
+
7. **Write or update** `docs/research/YYYY-MM-DD-<topic>.md`:
|
|
53
|
+
- If an existing research doc covers this area and is still accurate, update it
|
|
54
|
+
- If no research exists or it's stale, create a new one
|
|
55
|
+
- Use the standard research format: Overview, Architecture, Data Flow, Patterns & Conventions, Dependencies, Gotchas, Open Questions
|
|
56
|
+
|
|
57
|
+
#### Phase 3: Context — Repo Knowledge Snapshot
|
|
58
|
+
|
|
59
|
+
8. **Build or update the context snapshot:**
|
|
60
|
+
- If `docs/context/` has an existing doc, read it and verify against current state
|
|
61
|
+
- Update stale sections, add new context discovered during research
|
|
62
|
+
- If no context doc exists, create one
|
|
63
|
+
|
|
64
|
+
9. **Write or update** `docs/context/YYYY-MM-DD-<repo-name>.md`:
|
|
65
|
+
- Overview, Tech Stack, Project Structure, Architecture
|
|
66
|
+
- Development Workflow (exact build/test/lint/deploy commands)
|
|
67
|
+
- Testing infrastructure, Dependencies, Environment
|
|
68
|
+
- Recent Trajectory (last 20-30 commits), Gotchas
|
|
69
|
+
|
|
70
|
+
#### Report
|
|
71
|
+
|
|
72
|
+
10. **Output all file paths** and a summary:
|
|
73
|
+
- CLAUDE.md: created or what was validated/changed
|
|
74
|
+
- Research: what was learned or updated
|
|
75
|
+
- Context: what was captured or changed
|
|
76
|
+
- Open Questions: highlight anything unclear that may need a deeper `/research` pass
|
|
77
|
+
|
|
78
|
+
The repo is now fully prepared for autonomous work. Future sessions will read these artifacts first, saving significant context and tokens.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
## Kubernetes Debug
|
|
2
|
+
|
|
3
|
+
**IMPORTANT: Immediately delegate this entire task to a subagent using the Agent tool with `model: "sonnet"` and `subagent_type: "general-purpose"`.** Do not run any kubectl commands yourself. Pass the full prompt below to the subagent and relay its result.
|
|
4
|
+
|
|
5
|
+
### Input
|
|
6
|
+
$ARGUMENTS - description of the issue or resource to debug (e.g., "pods crashing in staging", "configmap not updating", "deployment stuck")
|
|
7
|
+
|
|
8
|
+
### Subagent prompt
|
|
9
|
+
|
|
10
|
+
You are debugging a Kubernetes issue. The issue is: $ARGUMENTS
|
|
11
|
+
|
|
12
|
+
1. Identify the namespace context from the description.
|
|
13
|
+
|
|
14
|
+
2. Run diagnostic commands in parallel:
|
|
15
|
+
- `kubectl get pods -n <namespace>` to check pod status
|
|
16
|
+
- `kubectl get events -n <namespace> --sort-by='.lastTimestamp'` for recent events
|
|
17
|
+
- `kubectl describe` on the problematic resource
|
|
18
|
+
|
|
19
|
+
3. If pods are crashing:
|
|
20
|
+
- `kubectl logs <pod> -n <namespace> --tail=100` for current logs
|
|
21
|
+
- `kubectl logs <pod> -n <namespace> --previous --tail=100` for crash logs
|
|
22
|
+
|
|
23
|
+
4. If deployment issues:
|
|
24
|
+
- `kubectl rollout status deployment/<name> -n <namespace>`
|
|
25
|
+
- Check resource limits, image pull errors, or config issues
|
|
26
|
+
|
|
27
|
+
5. If ConfigMap/Secret issues:
|
|
28
|
+
- Verify the resource exists and has expected keys
|
|
29
|
+
- Check if pods referencing it have been restarted since last update
|
|
30
|
+
|
|
31
|
+
6. Provide a clear diagnosis with root cause. Suggest a fix and validate it with `--dry-run=client` first. Only suggest and validate fixes — do NOT apply them. Report back and let the user decide.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
## Lint & Format
|
|
2
|
+
|
|
3
|
+
**IMPORTANT: Immediately delegate this entire task to a subagent using the Agent tool with `model: "haiku"` and `subagent_type: "general-purpose"`.** Do not run any commands yourself. Pass the full prompt below to the subagent and relay its result.
|
|
4
|
+
|
|
5
|
+
### Subagent prompt
|
|
6
|
+
|
|
7
|
+
You are running linters and formatters on the current project and fixing any issues.
|
|
8
|
+
|
|
9
|
+
1. Detect the project type by checking for config files:
|
|
10
|
+
- `package.json` → Node/TS project
|
|
11
|
+
- `pyproject.toml` / `setup.py` → Python project
|
|
12
|
+
- Both → run both
|
|
13
|
+
|
|
14
|
+
2. For TypeScript/JavaScript projects:
|
|
15
|
+
- Check that `eslint.config.js` uses `@mikey-pro/eslint-config` if this is a JS/TS project (per project standards). Do NOT add `eslint-disable` inline comments — the mikey-pro config has `noInlineConfig: true`.
|
|
16
|
+
- Run `npx prettier --write .` to format
|
|
17
|
+
- Run `npx eslint --fix .` to lint and auto-fix
|
|
18
|
+
- If either command fails, report the errors
|
|
19
|
+
|
|
20
|
+
3. For Python projects:
|
|
21
|
+
- Run `ruff check --fix .` to lint and auto-fix
|
|
22
|
+
- Run `ruff format .` to format
|
|
23
|
+
- If ruff is not available, try `python -m black .` and `python -m flake8 .`
|
|
24
|
+
|
|
25
|
+
4. Run `git diff --stat` to show what changed
|
|
26
|
+
|
|
27
|
+
5. Report: what was fixed, what still has errors, and whether any files were modified
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
## Merge All PRs — Batch Review, Fix & Merge
|
|
2
|
+
|
|
3
|
+
Autonomously review, fix, and merge all open PRs. Dispatches parallel subagents to review each PR simultaneously, then merges sequentially (oldest first) to avoid conflicts.
|
|
4
|
+
|
|
5
|
+
### Input
|
|
6
|
+
$ARGUMENTS - optional filter flags passed to `gh pr list` (e.g., `--author @me`, `--label ready-to-merge`). Default: all open PRs.
|
|
7
|
+
|
|
8
|
+
### Instructions
|
|
9
|
+
|
|
10
|
+
**Do NOT delegate this command to a subagent.** This is an orchestration command — Opus runs it directly and dispatches subagents for each PR.
|
|
11
|
+
|
|
12
|
+
**Before starting, gather project context:**
|
|
13
|
+
1. Read `docs/context/` for the most recent context snapshot — extract Architecture, Conventions, Testing, and Gotchas sections
|
|
14
|
+
2. Read the project CLAUDE.md if it exists — extract Conventions and Common Mistakes sections
|
|
15
|
+
3. Read `docs/incidents/` for recent incidents
|
|
16
|
+
4. Read `docs/spikes/` for recent spikes
|
|
17
|
+
|
|
18
|
+
#### Phase 1: Discover PRs
|
|
19
|
+
|
|
20
|
+
1. **List all open PRs:**
|
|
21
|
+
```bash
|
|
22
|
+
gh pr list --state open $ARGUMENTS --json number,title,headRefName,baseRefName,author,createdAt --jq 'sort_by(.number)'
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
2. **If zero PRs:** Report "No open PRs found." and stop.
|
|
26
|
+
|
|
27
|
+
3. **Report what was found:**
|
|
28
|
+
```
|
|
29
|
+
Found N open PRs:
|
|
30
|
+
- #1 — title (branch → base)
|
|
31
|
+
- #2 — title (branch → base)
|
|
32
|
+
...
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
#### Phase 2: Parallel Review
|
|
36
|
+
|
|
37
|
+
4. **Dispatch one Sonnet subagent per PR** using the Agent tool with `model: "sonnet"` and `subagent_type: "general-purpose"`. Launch ALL subagents in a single message (parallel).
|
|
38
|
+
|
|
39
|
+
Each subagent gets the same prompt as the `/merge` command's subagent prompt (Phases 1-2 only: load + review/fix loop), but with a modified ending:
|
|
40
|
+
|
|
41
|
+
**Instead of merging**, the subagent should:
|
|
42
|
+
- Complete the review and fix loop (max 3 iterations)
|
|
43
|
+
- Run pre-merge verification (CI checks, tests, lint)
|
|
44
|
+
- Report back with:
|
|
45
|
+
```
|
|
46
|
+
PR #<number>: READY | NOT READY | NEEDS HUMAN REVIEW
|
|
47
|
+
- Review iterations: <count>
|
|
48
|
+
- Fixes applied: <list or "None">
|
|
49
|
+
- CI status: passing | failing | pending
|
|
50
|
+
- Blockers: <list or "None">
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Inject the project context** (gathered above) into each subagent prompt.
|
|
54
|
+
|
|
55
|
+
5. **Collect all subagent results.** Wait for all to complete.
|
|
56
|
+
|
|
57
|
+
#### Phase 3: Sequential Merge
|
|
58
|
+
|
|
59
|
+
6. **For each PR marked READY** (process in order of PR number, oldest first):
|
|
60
|
+
|
|
61
|
+
a. **Re-check CI status** (fixes may have triggered new CI runs):
|
|
62
|
+
```bash
|
|
63
|
+
gh pr checks $PR_NUMBER
|
|
64
|
+
```
|
|
65
|
+
If checks are still running, wait up to 5 minutes.
|
|
66
|
+
|
|
67
|
+
b. **Check for merge conflicts** (earlier merges may have created conflicts):
|
|
68
|
+
```bash
|
|
69
|
+
gh pr view $PR_NUMBER --json mergeable --jq '.mergeable'
|
|
70
|
+
```
|
|
71
|
+
If `CONFLICTING`, skip this PR and note it in the report.
|
|
72
|
+
|
|
73
|
+
c. **Merge:**
|
|
74
|
+
```bash
|
|
75
|
+
gh pr merge $PR_NUMBER --merge --delete-branch
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
d. **Verify:** `gh pr view $PR_NUMBER --json state --jq '.state'` should return "MERGED"
|
|
79
|
+
|
|
80
|
+
7. **For PRs marked NOT READY or NEEDS HUMAN REVIEW:** Skip and include in report.
|
|
81
|
+
|
|
82
|
+
#### Phase 4: Report
|
|
83
|
+
|
|
84
|
+
8. **Generate summary report:**
|
|
85
|
+
```
|
|
86
|
+
## Merge All Report
|
|
87
|
+
|
|
88
|
+
### Successfully Merged
|
|
89
|
+
| PR | Title | Iterations | Fixes | Status |
|
|
90
|
+
|----|-------|-----------|-------|--------|
|
|
91
|
+
| #1 | title | 0 | None | Merged |
|
|
92
|
+
| #3 | title | 2 | fix: ... | Merged |
|
|
93
|
+
|
|
94
|
+
### Skipped
|
|
95
|
+
| PR | Title | Reason |
|
|
96
|
+
|----|-------|--------|
|
|
97
|
+
| #2 | title | Merge conflict after #1 merged |
|
|
98
|
+
| #4 | title | Requires human review approval |
|
|
99
|
+
| #5 | title | 3 fix iterations exhausted — issues remain |
|
|
100
|
+
|
|
101
|
+
### Summary
|
|
102
|
+
- **Total PRs:** N
|
|
103
|
+
- **Merged:** N
|
|
104
|
+
- **Skipped:** N
|
|
105
|
+
- **Action needed:** [list any PRs that need manual attention]
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Critical Rules
|
|
109
|
+
|
|
110
|
+
- **NEVER merge a PR that isn't READY.**
|
|
111
|
+
- **Merge oldest first** to minimize conflict cascading.
|
|
112
|
+
- **If a merge creates conflicts in later PRs, skip them** — don't try to resolve cross-PR conflicts.
|
|
113
|
+
- **Max 3 fix iterations per PR** — same as `/merge`.
|
|
114
|
+
- **Report everything** — the user needs to know what was merged, what was skipped, and why.
|
|
115
|
+
- **NEVER use --squash or --rebase.** Always use --merge to preserve full git history.
|