claude-code-autoconfig 1.0.113 → 1.0.115
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/commands/autoconfig-update.md +147 -146
- package/.claude/commands/autoconfig.md +366 -365
- package/.claude/commands/commit-and-push.md +22 -21
- package/.claude/commands/enable-retro.md +1 -0
- package/.claude/commands/gls.md +89 -88
- package/.claude/commands/recover-context.md +1 -0
- package/.claude/commands/show-docs.md +1 -0
- package/.claude/commands/sync-claude-md.md +1 -0
- package/.claude/commands/test.md +11 -10
- package/.claude/feedback/FEEDBACK.md +12 -0
- package/bin/cli.js +36 -12
- package/package.json +1 -1
- package/.claude/updates/002-recover-context.md +0 -148
|
@@ -1,146 +1,147 @@
|
|
|
1
|
-
<!-- @description Manages and installs updates to Claude Code configuration. -->
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
| `@
|
|
40
|
-
| `@
|
|
41
|
-
| `@
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
-
|
|
115
|
-
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
- `
|
|
120
|
-
- `
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
1
|
+
<!-- @description Manages and installs updates to Claude Code configuration. -->
|
|
2
|
+
<!-- @version 1 -->
|
|
3
|
+
|
|
4
|
+
<!-- @applied
|
|
5
|
+
-->
|
|
6
|
+
|
|
7
|
+
# Autoconfig Update
|
|
8
|
+
|
|
9
|
+
Check for and install pending updates to your Claude Code configuration.
|
|
10
|
+
|
|
11
|
+
**Style guideline**: Work silently through Steps 1-3. Do not narrate internal steps, implementation details, or progress messages (e.g., "Let me check...", "The @applied block is empty..."). The first output the user sees should be the formatted summary in Step 4 (or the "up to date" message).
|
|
12
|
+
|
|
13
|
+
## Step 1: Pull Latest Updates
|
|
14
|
+
|
|
15
|
+
Run this command via Bash to pull new update files from the latest package:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx claude-code-autoconfig@latest --pull-updates
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
This copies any new update `.md` files into `.claude/updates/` and refreshes this command file (preserving the `@applied` block above).
|
|
22
|
+
|
|
23
|
+
After the command completes, check `.claude/updates/` directory. If it doesn't exist or is empty, output:
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
No new updates available. You're up to date.
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Then stop — do not continue to further steps.
|
|
30
|
+
|
|
31
|
+
## Step 2: Parse Update Files
|
|
32
|
+
|
|
33
|
+
Read all `.md` files in `.claude/updates/` matching the pattern `NNN-*.md` (e.g., `001-debug-methodology.md`).
|
|
34
|
+
|
|
35
|
+
For each file, extract metadata from the HTML comment headers at the top:
|
|
36
|
+
|
|
37
|
+
| Header | Pattern | Required |
|
|
38
|
+
|--------|---------|----------|
|
|
39
|
+
| `@title` | `<!-- @title (.+?) -->` | Yes |
|
|
40
|
+
| `@type` | `<!-- @type (.+?) -->` | Yes |
|
|
41
|
+
| `@description` | `<!-- @description (.+?) -->` | Yes |
|
|
42
|
+
| `@files` | `<!-- @files (.+?) -->` | Yes |
|
|
43
|
+
|
|
44
|
+
Extract the numeric ID from the filename prefix (e.g., `001` from `001-debug-methodology.md`).
|
|
45
|
+
|
|
46
|
+
Skip any files that are malformed (missing required headers) with a warning.
|
|
47
|
+
|
|
48
|
+
## Step 3: Filter Already Applied
|
|
49
|
+
|
|
50
|
+
Parse the `<!-- @applied -->` block in THIS file (`.claude/commands/autoconfig-update.md`) to get the list of already-applied update IDs. Extract the three-digit ID from the start of each line.
|
|
51
|
+
|
|
52
|
+
Filter out any updates whose ID appears in the applied list. If no pending updates remain, output:
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
All updates are already installed. You're up to date.
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Then stop.
|
|
59
|
+
|
|
60
|
+
## Step 4: Display Summary
|
|
61
|
+
|
|
62
|
+
**Important**: Do NOT narrate your internal steps (e.g., "The @applied block is empty" or "Let me check..."). Go straight to the formatted output below. The user doesn't need to see implementation details.
|
|
63
|
+
|
|
64
|
+
Output the pending updates using this exact format. Use `═` horizontal dividers only (no vertical borders — they render poorly in Claude Code). Render the dividers and header in **yellow** (ANSI `\x1b[33m`) to visually match the CLI's yellow "READY TO UPDATE" box and distinguish this from regular Claude output:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
════════════════════════════════════════════
|
|
68
|
+
Updates available ({count})
|
|
69
|
+
════════════════════════════════════════════
|
|
70
|
+
|
|
71
|
+
001 ─ Debug Methodology
|
|
72
|
+
002 ─ Some other feature
|
|
73
|
+
|
|
74
|
+
════════════════════════════════════════════
|
|
75
|
+
[1] Install all [2] Review each
|
|
76
|
+
════════════════════════════════════════════
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Replace `{count}` with the number of pending updates. List each update with its ID and title. Wait for the user to respond with 1 or 2.
|
|
80
|
+
|
|
81
|
+
## Step 5a: Install All (User picked 1)
|
|
82
|
+
|
|
83
|
+
For each pending update (in ID order):
|
|
84
|
+
1. Read the update `.md` file body (everything below the metadata comments)
|
|
85
|
+
2. Follow the instructions in the body to apply the update
|
|
86
|
+
3. After successful application, append to the `@applied` block in THIS file:
|
|
87
|
+
```
|
|
88
|
+
{id} - {title}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
After all updates are applied, go to Step 6.
|
|
92
|
+
|
|
93
|
+
## Step 5b: Review Each (User picked 2)
|
|
94
|
+
|
|
95
|
+
For each pending update (in ID order), display using horizontal dividers only (no vertical borders — they render poorly in Claude Code):
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
════════════════════════════════════════════
|
|
99
|
+
UPDATE {n} of {total} {type}
|
|
100
|
+
════════════════════════════════════════════
|
|
101
|
+
|
|
102
|
+
{title}
|
|
103
|
+
|
|
104
|
+
{description}
|
|
105
|
+
|
|
106
|
+
Files: {comma-separated list of files touched}
|
|
107
|
+
|
|
108
|
+
════════════════════════════════════════════
|
|
109
|
+
[y] Install [s] Skip [a] Install all remaining
|
|
110
|
+
════════════════════════════════════════════
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Rendering rules:**
|
|
114
|
+
- Use `═` horizontal dividers only — no `║ ╔ ╗ ╠ ╣ ╚ ╝` vertical/corner characters
|
|
115
|
+
- Content lines are free-flowing (no padding or alignment needed)
|
|
116
|
+
- `{n}` is the position in the pending list (1, 2, 3...), `{total}` is count of pending
|
|
117
|
+
|
|
118
|
+
**User actions:**
|
|
119
|
+
- `y` → Apply this update (follow body instructions), append to `@applied`, show next
|
|
120
|
+
- `s` → Skip this update (do NOT add to `@applied` — it will appear again next run)
|
|
121
|
+
- `a` → Apply this update AND all remaining updates without further prompts
|
|
122
|
+
|
|
123
|
+
After all updates are reviewed, go to Step 6.
|
|
124
|
+
|
|
125
|
+
## Step 6: Summary and Cleanup
|
|
126
|
+
|
|
127
|
+
Show a summary of what happened:
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
✅ Installed: 001, 003
|
|
131
|
+
⏭️ Skipped: 002
|
|
132
|
+
|
|
133
|
+
Run /autoconfig-update again anytime to install skipped updates.
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
If all were installed:
|
|
137
|
+
```
|
|
138
|
+
✅ All updates installed.
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Then delete the `.claude/updates/` directory (it's ephemeral — updates are tracked in the @applied block above).
|
|
142
|
+
|
|
143
|
+
If the user installed any updates that modified `.claude/commands/autoconfig.md`, suggest:
|
|
144
|
+
|
|
145
|
+
```
|
|
146
|
+
Run /sync-claude-md to apply these changes to your current project's CLAUDE.md.
|
|
147
|
+
```
|