@yottagraph-app/aether-instructions 1.0.2 → 1.1.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/README.md +11 -14
- package/commands/{aether_update_instructions.md → update_instructions.md} +37 -33
- package/package.json +1 -1
- /package/commands/{aether_broadchurch_setup.md → broadchurch_setup.md} +0 -0
- /package/commands/{aether_build_my_app.md → build_my_app.md} +0 -0
- /package/commands/{aether_configure_query_server.md → configure_query_server.md} +0 -0
- /package/commands/{aether_deploy_agent.md → deploy_agent.md} +0 -0
- /package/commands/{aether_deploy_mcp.md → deploy_mcp.md} +0 -0
- /package/commands/{aether_update_branding.md → update_branding.md} +0 -0
- /package/commands/{aether_vercel_deploy.md → vercel_deploy.md} +0 -0
- /package/commands/{aether_vercel_setup.md → vercel_setup.md} +0 -0
- /package/rules/{aether_aether.mdc → aether.mdc} +0 -0
- /package/rules/{aether_agents.mdc → agents.mdc} +0 -0
- /package/rules/{aether_api.mdc → api.mdc} +0 -0
- /package/rules/{aether_architecture.mdc → architecture.mdc} +0 -0
- /package/rules/{aether_branding.mdc → branding.mdc} +0 -0
- /package/rules/{aether_cookbook.mdc → cookbook.mdc} +0 -0
- /package/rules/{aether_design.mdc → design.mdc} +0 -0
- /package/rules/{aether_git-support.mdc → git-support.mdc} +0 -0
- /package/rules/{aether_instructions_warning.mdc → instructions_warning.mdc} +0 -0
- /package/rules/{aether_mcp-servers.mdc → mcp-servers.mdc} +0 -0
- /package/rules/{aether_pref.mdc → pref.mdc} +0 -0
- /package/rules/{aether_server.mdc → server.mdc} +0 -0
- /package/rules/{aether_something-broke.mdc → something-broke.mdc} +0 -0
- /package/rules/{aether_ui.mdc → ui.mdc} +0 -0
- /package/skills/{aether_test-api-queries → test-api-queries}/SKILL.md +0 -0
- /package/skills/{aether_test-api-queries → test-api-queries}/query-api.js +0 -0
package/README.md
CHANGED
|
@@ -12,32 +12,29 @@ initialization (`init-project.js`). You don't need to install it directly.
|
|
|
12
12
|
To update to the latest version:
|
|
13
13
|
|
|
14
14
|
```
|
|
15
|
-
/
|
|
15
|
+
/update_instructions
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
This Cursor command will:
|
|
19
19
|
1. Download the latest version of this package
|
|
20
|
-
2.
|
|
20
|
+
2. Replace files in `.cursor/` that are listed in `.cursor/.aether-instructions-manifest`
|
|
21
21
|
3. Extract fresh files from the package
|
|
22
22
|
4. Commit the changes
|
|
23
23
|
|
|
24
24
|
### File Naming Convention
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
This separates package-provided files from your own custom files. Files with
|
|
32
|
-
the `aether_` prefix will be overwritten on update; your non-prefixed files
|
|
33
|
-
are untouched.
|
|
26
|
+
Package files keep their original names under `.cursor/rules/`,
|
|
27
|
+
`.cursor/commands/`, and `.cursor/skills/`. Which paths are owned by the
|
|
28
|
+
package is recorded in `.cursor/.aether-instructions-manifest`. Only those
|
|
29
|
+
paths are overwritten on update; other files under `.cursor/` are not touched
|
|
30
|
+
by the updater.
|
|
34
31
|
|
|
35
32
|
### Customizing Rules/Commands
|
|
36
33
|
|
|
37
|
-
To customize
|
|
38
|
-
1. Copy it to a new
|
|
34
|
+
To customize something that ships with the package:
|
|
35
|
+
1. Copy it to a new filename (a path not listed in the manifest)
|
|
39
36
|
2. Make your changes to the copy
|
|
40
|
-
3. Your copy won't be
|
|
37
|
+
3. Your copy won't be replaced when you run `/update_instructions`
|
|
41
38
|
|
|
42
39
|
## For Maintainers
|
|
43
40
|
|
|
@@ -47,6 +44,6 @@ This package is built from `aether-dev` sources. To publish:
|
|
|
47
44
|
2. Run `/publish_instructions --bump patch --publish`
|
|
48
45
|
|
|
49
46
|
The publish command:
|
|
50
|
-
- Copies source files
|
|
47
|
+
- Copies source files to `packages/aether-instructions/` with their original names
|
|
51
48
|
- Bumps the version
|
|
52
49
|
- Publishes to npmjs
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
# Update
|
|
1
|
+
# Update Instructions
|
|
2
2
|
|
|
3
3
|
Update Cursor rules, commands, and skills from the `@yottagraph-app/aether-instructions` npm package.
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
This command downloads the latest
|
|
7
|
+
This command downloads the latest instructions package and extracts it to your `.cursor/` directory. A manifest file (`.cursor/.aether-instructions-manifest`) tracks which files came from the package so updates only replace package-provided files.
|
|
8
8
|
|
|
9
9
|
**What happens:**
|
|
10
10
|
1. Downloads the latest `@yottagraph-app/aether-instructions` package
|
|
11
|
-
2. Deletes
|
|
12
|
-
3.
|
|
11
|
+
2. Deletes files listed in the existing manifest
|
|
12
|
+
3. Cleans up any legacy `aether_*` prefixed files from older versions
|
|
13
13
|
4. Extracts fresh files from the package
|
|
14
|
-
5.
|
|
14
|
+
5. Writes a new manifest
|
|
15
|
+
6. Commits the changes
|
|
15
16
|
|
|
16
|
-
**Your files are safe:** Only files
|
|
17
|
+
**Your files are safe:** Only files listed in the manifest are touched during updates. If you've created your own rules or commands, they won't be modified.
|
|
17
18
|
|
|
18
19
|
---
|
|
19
20
|
|
|
@@ -64,18 +65,23 @@ The extracted content is in `$TEMP_DIR/package/`.
|
|
|
64
65
|
|
|
65
66
|
---
|
|
66
67
|
|
|
67
|
-
## Step 4: Delete
|
|
68
|
+
## Step 4: Delete Previously Installed Files
|
|
68
69
|
|
|
69
|
-
|
|
70
|
+
Read the manifest and delete listed files:
|
|
70
71
|
|
|
71
72
|
```bash
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
if [ -f .cursor/.aether-instructions-manifest ]; then
|
|
74
|
+
while IFS= read -r rel; do
|
|
75
|
+
rm -rf ".cursor/$rel"
|
|
76
|
+
done < .cursor/.aether-instructions-manifest
|
|
77
|
+
fi
|
|
74
78
|
```
|
|
75
79
|
|
|
76
|
-
|
|
80
|
+
Also clean up legacy `aether_*` files from older package versions:
|
|
77
81
|
|
|
78
82
|
```bash
|
|
83
|
+
rm -f .cursor/rules/aether_*.mdc
|
|
84
|
+
rm -f .cursor/commands/aether_*.md
|
|
79
85
|
rm -rf .cursor/skills/aether_*/
|
|
80
86
|
```
|
|
81
87
|
|
|
@@ -99,18 +105,22 @@ cp -r "$TEMP_DIR/package/skills/"* .cursor/skills/ 2>/dev/null || true
|
|
|
99
105
|
|
|
100
106
|
---
|
|
101
107
|
|
|
102
|
-
## Step 6:
|
|
108
|
+
## Step 6: Write Manifest and Version Marker
|
|
103
109
|
|
|
104
|
-
|
|
110
|
+
Build a manifest of all installed files (one relative path per line):
|
|
105
111
|
|
|
106
112
|
```bash
|
|
107
|
-
|
|
113
|
+
MANIFEST=""
|
|
114
|
+
for f in .cursor/rules/*.mdc; do [ -f "$f" ] && MANIFEST="$MANIFEST\nrules/$(basename "$f")"; done
|
|
115
|
+
for f in .cursor/commands/*.md; do [ -f "$f" ] && MANIFEST="$MANIFEST\ncommands/$(basename "$f")"; done
|
|
116
|
+
for d in .cursor/skills/*/; do [ -d "$d" ] && MANIFEST="$MANIFEST\nskills/$(basename "$d")"; done
|
|
117
|
+
echo -e "$MANIFEST" > .cursor/.aether-instructions-manifest
|
|
108
118
|
```
|
|
109
119
|
|
|
110
120
|
Write the version marker:
|
|
111
121
|
|
|
112
122
|
```bash
|
|
113
|
-
|
|
123
|
+
grep -o '"version": *"[^"]*"' "$TEMP_DIR/package/package.json" | grep -o '[0-9][^"]*' > .cursor/.aether-instructions-version
|
|
114
124
|
```
|
|
115
125
|
|
|
116
126
|
---
|
|
@@ -130,10 +140,10 @@ rm -rf "$TEMP_DIR"
|
|
|
130
140
|
Count what was installed:
|
|
131
141
|
|
|
132
142
|
```bash
|
|
133
|
-
|
|
134
|
-
ls .cursor/rules
|
|
135
|
-
ls .cursor/commands
|
|
136
|
-
ls -d .cursor/skills
|
|
143
|
+
wc -l < .cursor/.aether-instructions-manifest
|
|
144
|
+
ls .cursor/rules/*.mdc 2>/dev/null | wc -l
|
|
145
|
+
ls .cursor/commands/*.md 2>/dev/null | wc -l
|
|
146
|
+
ls -d .cursor/skills/*/ 2>/dev/null | wc -l
|
|
137
147
|
```
|
|
138
148
|
|
|
139
149
|
Report to user:
|
|
@@ -149,11 +159,11 @@ Report to user:
|
|
|
149
159
|
Commit the updated instruction files:
|
|
150
160
|
|
|
151
161
|
```bash
|
|
152
|
-
git add .cursor/rules/
|
|
153
|
-
git commit -m "Update
|
|
162
|
+
git add .cursor/rules/ .cursor/commands/ .cursor/skills/ .cursor/.aether-instructions-version .cursor/.aether-instructions-manifest
|
|
163
|
+
git commit -m "Update instructions to vX.Y.Z"
|
|
154
164
|
```
|
|
155
165
|
|
|
156
|
-
> Changes committed. Your
|
|
166
|
+
> Changes committed. Your instructions are now up to date.
|
|
157
167
|
|
|
158
168
|
---
|
|
159
169
|
|
|
@@ -169,15 +179,9 @@ If `npm pack` fails with a registry error:
|
|
|
169
179
|
If you get permission errors:
|
|
170
180
|
> Try running with appropriate permissions, or check that `.cursor/` is writable.
|
|
171
181
|
|
|
172
|
-
### Want to customize a rule
|
|
182
|
+
### Want to customize a rule or command?
|
|
173
183
|
|
|
174
|
-
If you need to modify
|
|
175
|
-
1.
|
|
176
|
-
2.
|
|
177
|
-
3.
|
|
178
|
-
|
|
179
|
-
Example:
|
|
180
|
-
```bash
|
|
181
|
-
cp .cursor/rules/aether_api.mdc .cursor/rules/api_custom.mdc
|
|
182
|
-
# Edit api_custom.mdc as needed
|
|
183
|
-
```
|
|
184
|
+
If you need to modify a package-provided file:
|
|
185
|
+
1. Edit it directly — your changes will persist until the next update
|
|
186
|
+
2. To preserve changes across updates, copy it to a new name first
|
|
187
|
+
3. Remove the original's entry from `.cursor/.aether-instructions-manifest` so it won't be deleted on update
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|