@simpleapps-com/augur-skills 2026.3.11 → 2026.3.13
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/package.json
CHANGED
|
@@ -19,7 +19,7 @@ This skill is a **stub, not an archive**. New packages are created, existing pac
|
|
|
19
19
|
|
|
20
20
|
**Always read the installed packages in your project's `node_modules/`:**
|
|
21
21
|
|
|
22
|
-
1.
|
|
22
|
+
1. Use `Glob("repo/node_modules/@simpleapps-com/*")` to discover ALL available packages — there may be packages not listed here
|
|
23
23
|
2. Read `repo/node_modules/@simpleapps-com/<package>/package.json` for the `exports` field to find available sub-paths
|
|
24
24
|
3. Read files in `repo/node_modules/@simpleapps-com/<package>/dist/` to understand the current API surface
|
|
25
25
|
4. Do NOT look at the source repo or other folders — only read what is installed in your project's `node_modules/`
|
|
@@ -42,7 +42,7 @@ These are starting hints — not a complete list. Always check `node_modules/@si
|
|
|
42
42
|
|
|
43
43
|
When considering custom code:
|
|
44
44
|
|
|
45
|
-
1.
|
|
45
|
+
1. Use `Glob("repo/node_modules/@simpleapps-com/*")` to see what's installed
|
|
46
46
|
2. Read the package's `package.json` `exports` and its `dist/` files for available functions, hooks, and components
|
|
47
47
|
3. Look for the hook triple pattern in augur-hooks: `use<Name>`, `get<Name>Options`, `get<Name>Key`
|
|
48
48
|
4. Check augur-web for UI components before building custom ones
|
|
@@ -70,10 +70,14 @@ The augur packages exist to share common code across ALL Node projects. When you
|
|
|
70
70
|
|
|
71
71
|
The goal is to grow the packages over time so sites write less custom code.
|
|
72
72
|
|
|
73
|
+
## augur-doctor
|
|
74
|
+
|
|
75
|
+
`augur-doctor` ships with `@simpleapps-com/augur-config`. It checks version alignment, latest versions, and platform standard conformance. Run via `pnpm augur-doctor .` from the site directory — pre-approved, no permission prompt. For full documentation, see the augur-packages wiki page `guide-site-assessment.md` (use the cross-project wiki path from `simpleapps:wiki`).
|
|
76
|
+
|
|
73
77
|
## Platform Standards
|
|
74
78
|
|
|
75
79
|
- **Icons:** `react-icons/lu`
|
|
76
80
|
- **Tailwind:** v4, CSS-first
|
|
77
81
|
- **Validation:** Valibot (not Zod, not Yup)
|
|
78
82
|
- **Auth:** NextAuth 5 via package auth factory
|
|
79
|
-
- **Reference site:**
|
|
83
|
+
- **Reference site:** Ask the user which site to reference. Use `Grep`, `Glob`, and `Read` with the project path (see `simpleapps:project-defaults` for layout). MUST NOT use `find`, `grep`, or other shell commands.
|
|
@@ -6,6 +6,10 @@ user-invocable: false
|
|
|
6
6
|
|
|
7
7
|
# Bash Simplicity
|
|
8
8
|
|
|
9
|
+
## Why This Matters
|
|
10
|
+
|
|
11
|
+
Every permission prompt makes the user the bottleneck. If the user doesn't see the prompt for an hour, that hour is lost — the agent is blocked, the task stalls, and the system designed for autonomous work stops working. The entire plugin system exists to remove the user as the bottleneck. A permission prompt works directly against that goal. Use dedicated tools and simple commands to avoid ever triggering one.
|
|
12
|
+
|
|
9
13
|
## One Command Per Call
|
|
10
14
|
|
|
11
15
|
MUST run each Bash command as a separate, simple call. MUST NOT chain commands with `&&`, `||`, pipes, or sub-shells. Complex commands trigger permission prompts and break automation.
|
|
@@ -13,8 +17,15 @@ MUST run each Bash command as a separate, simple call. MUST NOT chain commands w
|
|
|
13
17
|
Wrong: `git -C repo status && pnpm typecheck && pnpm test`
|
|
14
18
|
Right: Three separate Bash calls, one per command.
|
|
15
19
|
|
|
16
|
-
Wrong: `pnpm --filter
|
|
17
|
-
Right: `pnpm --filter
|
|
20
|
+
Wrong: `pnpm --filter <site> run typecheck 2>&1; echo "EXIT: $?"`
|
|
21
|
+
Right: `pnpm --filter <site> run typecheck` — the Bash tool already captures stderr and exit codes. Never add `2>&1`, `; echo $?`, or other shell plumbing — it triggers permission prompts for no benefit.
|
|
22
|
+
|
|
23
|
+
Wrong: `gh issue close 367 --repo org/repo --comment "$(< tmp/file.txt)" 2>&1`
|
|
24
|
+
Right: Write the comment to a tmp file, then use two separate calls:
|
|
25
|
+
1. `gh issue comment 367 --repo org/repo --body-file tmp/file.txt`
|
|
26
|
+
2. `gh issue close 367 --repo org/repo`
|
|
27
|
+
|
|
28
|
+
MUST NOT use `$()` command substitution in Bash commands — it triggers a permission prompt every time. Write content to a tmp file first, then pass it with a `-F`, `--body-file`, or similar flag.
|
|
18
29
|
|
|
19
30
|
## Use Dedicated Tools
|
|
20
31
|
|
|
@@ -33,6 +44,22 @@ Reserve Bash for commands that have no dedicated tool equivalent: build tools, t
|
|
|
33
44
|
These commands are **denied** in project settings and will always be rejected — do not attempt them:
|
|
34
45
|
`cd`, `cat`, `grep`, `rg`, `find`, `sed`, `awk`, `head`, `tail`, `sleep`, `kill`, `pkill`
|
|
35
46
|
|
|
47
|
+
MUST NOT use `node -e` or `python -c` to run inline scripts — these trigger permission prompts. If you need to read a file, use the Read tool. If you need to process data, do it in your response, not in a shell script.
|
|
48
|
+
|
|
49
|
+
## Cross-Project Searching
|
|
50
|
+
|
|
51
|
+
When looking at another project's code, use dedicated tools with the project path — MUST NOT use shell commands:
|
|
52
|
+
|
|
53
|
+
Wrong: `find {path}/repo -name "*.ts" -exec grep -l "pattern" {} \; 2>/dev/null | head -10`
|
|
54
|
+
Right: `Grep(pattern: "pattern", path: "{path}/repo", glob: "*.ts")`
|
|
55
|
+
|
|
56
|
+
Wrong: `ls {path}/repo/src/components/`
|
|
57
|
+
Right: `Glob(pattern: "{path}/repo/src/components/**/*")`
|
|
58
|
+
|
|
59
|
+
All project paths are known and predictable (see `simpleapps:wiki` Cross-Project Wiki Access). MUST NOT search the filesystem with `find` or download from the internet — just use the dedicated tool with the known path.
|
|
60
|
+
|
|
36
61
|
## Check Before Prompting
|
|
37
62
|
|
|
38
63
|
Before running a command that will trigger a permission prompt, check the wiki and project settings for approved commands. The wiki documents which commands are pre-approved and how to invoke them. Unnecessary permission prompts interrupt the user's flow.
|
|
64
|
+
|
|
65
|
+
**`pnpm:*` is pre-approved** — any command in `package.json` scripts runs without permission via `pnpm <script>`. If a tool needs to run repeatedly (linters, formatters, test runners), it SHOULD be a `package.json` script so it can run via pnpm without prompting. Suggest adding missing scripts when you notice the gap.
|
|
@@ -61,6 +61,8 @@ This avoids shell quoting issues with HEREDOCs and `cd` permission blocks. The W
|
|
|
61
61
|
|
|
62
62
|
MUST use `--repo simpleapps-com/<repo>` on every `gh` call. MUST ask the user which repo — never assume.
|
|
63
63
|
|
|
64
|
+
**MUST NOT use `$()` or inline content in `gh` commands.** Any `gh` command that needs a body, comment, or multi-line text MUST use the file-based flag (`--body-file`, `--comment-file`, etc.). Write the content to `tmp/` using the Write tool first, then pass the file path. This avoids `$()` command substitution which triggers a permission prompt every time. Delete the tmp file after the command succeeds.
|
|
65
|
+
|
|
64
66
|
### Title
|
|
65
67
|
|
|
66
68
|
Conventional commit style: `fix: description`, `feat: description`, `chore: description`. Under 70 characters.
|
|
@@ -89,9 +91,14 @@ Bug reports also include **Steps to Reproduce** and **Current Behavior** with er
|
|
|
89
91
|
gh issue create --repo simpleapps-com/<repo> --title "type: desc" --body "..."
|
|
90
92
|
gh issue list --repo simpleapps-com/<repo>
|
|
91
93
|
gh issue view <number> --repo simpleapps-com/<repo>
|
|
92
|
-
gh issue close <number> --repo simpleapps-com/<repo>
|
|
94
|
+
gh issue close <number> --repo simpleapps-com/<repo>
|
|
93
95
|
```
|
|
94
96
|
|
|
97
|
+
For closing with a comment, use two calls (avoids `$()` permission prompts):
|
|
98
|
+
1. Write comment to `tmp/issue-comment.txt` using the Write tool
|
|
99
|
+
2. `gh issue comment <number> --repo simpleapps-com/<repo> --body-file tmp/issue-comment.txt`
|
|
100
|
+
3. `gh issue close <number> --repo simpleapps-com/<repo>`
|
|
101
|
+
|
|
95
102
|
Include `Closes #N` in commit body to auto-close issues.
|
|
96
103
|
|
|
97
104
|
### Commenting on existing issues
|
|
@@ -115,17 +122,19 @@ Target repos:
|
|
|
115
122
|
| Shared frontend packages | `simpleapps-com/augur-packages` |
|
|
116
123
|
| TypeScript API SDK | `simpleapps-com/augur-api` |
|
|
117
124
|
|
|
118
|
-
Example cross-link in issue body: `Upstream: simpleapps-com/augur#44` or `Local impact: simpleapps-com
|
|
125
|
+
Example cross-link in issue body: `Upstream: simpleapps-com/augur#44` or `Local impact: simpleapps-com/<site>#3`
|
|
119
126
|
|
|
120
127
|
## Pull Requests
|
|
121
128
|
|
|
122
129
|
```bash
|
|
123
|
-
gh pr create --repo simpleapps-com/<repo> --title "title" --body
|
|
130
|
+
gh pr create --repo simpleapps-com/<repo> --title "title" --body-file tmp/pr-body.txt
|
|
124
131
|
gh pr list --repo simpleapps-com/<repo>
|
|
125
132
|
gh pr view <number> --repo simpleapps-com/<repo>
|
|
126
133
|
gh pr merge <number> --repo simpleapps-com/<repo>
|
|
127
134
|
```
|
|
128
135
|
|
|
136
|
+
Write PR body to `tmp/pr-body.txt` using the Write tool first — MUST NOT use `--body "$(cat ...)"` or any `$()` substitution.
|
|
137
|
+
|
|
129
138
|
## Cross-Linking with Basecamp
|
|
130
139
|
|
|
131
140
|
For client tasks originating in Basecamp, see `simpleapps:workflow` for the full cross-linking process.
|
|
@@ -15,12 +15,9 @@ All projects live under `~/projects/` in two groups:
|
|
|
15
15
|
```
|
|
16
16
|
~/projects/
|
|
17
17
|
├── simpleapps/ # Internal repos (augur-*, shared infra)
|
|
18
|
-
│
|
|
19
|
-
│ ├── augur-packages/
|
|
20
|
-
│ └── augur/
|
|
18
|
+
│ └── <repo-name>/
|
|
21
19
|
└── clients/ # Client site repos
|
|
22
|
-
|
|
23
|
-
└── directsupplyinc/
|
|
20
|
+
└── <site-name>/
|
|
24
21
|
```
|
|
25
22
|
|
|
26
23
|
- Internal repos go in `~/projects/simpleapps/`
|
|
@@ -88,6 +88,20 @@ When asked to save, document, or record knowledge — use the wiki, MUST NOT use
|
|
|
88
88
|
|
|
89
89
|
If in doubt, it belongs in the wiki. The cost of putting shared knowledge in memory is that it dies with the session — no other agent, project, or computer will ever see it.
|
|
90
90
|
|
|
91
|
+
## Cross-Project Wiki Access
|
|
92
|
+
|
|
93
|
+
All projects follow the same directory layout (see `simpleapps:project-defaults`). Every project's wiki is at a predictable path relative to the project root: `{project}/wiki/`. When the user asks you to check another project's wiki or code, use the project-defaults layout to find it.
|
|
94
|
+
|
|
95
|
+
**Before reading another project's wiki, pull the latest:**
|
|
96
|
+
`git -C {path-to-project}/wiki pull`
|
|
97
|
+
|
|
98
|
+
**MUST use dedicated tools for cross-project access — MUST NOT use shell commands:**
|
|
99
|
+
- Read files: `Read("{path-to-project}/wiki/Page.md")`
|
|
100
|
+
- Search code: `Grep(pattern: "...", path: "{path-to-project}/repo")`
|
|
101
|
+
- Find files: `Glob(pattern: "{path-to-project}/repo/**/*.ts")`
|
|
102
|
+
|
|
103
|
+
MUST NOT use `find`, `grep`, `cat`, `ls`, or any shell command to explore other projects. The paths are known — use the dedicated tools directly.
|
|
104
|
+
|
|
91
105
|
## Keep It Lean
|
|
92
106
|
|
|
93
107
|
- Document patterns and principles, not exhaustive lists
|