@silverassist/agents-toolkit 2.3.0 → 2.5.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/LICENSE +2 -2
- package/README.md +166 -33
- package/bin/cli.js +511 -16
- package/package.json +1 -1
- package/src/index.js +49 -9
- package/templates/agents/AGENTS.md +33 -5
- package/templates/shared/hooks/lint-format.json +1 -0
- package/templates/shared/hooks/validate-tsx.json +1 -0
- package/templates/shared/instructions/caching.instructions.md +121 -0
- package/templates/shared/instructions/seo-ai-optimization.instructions.md +272 -0
- package/templates/shared/prompts/_partials/release-node.md +58 -0
- package/templates/shared/prompts/_partials/release-wordpress.md +56 -0
- package/templates/shared/prompts/_partials/validations.md +1 -0
- package/templates/shared/prompts/create-github-pr.prompt.md +147 -0
- package/templates/shared/prompts/create-plan.prompt.md +8 -0
- package/templates/shared/prompts/finalize-github-pr.prompt.md +129 -0
- package/templates/shared/prompts/prepare-github-release.prompt.md +134 -0
- package/templates/shared/prompts/review-code.prompt.md +12 -0
- package/templates/shared/prompts/work-github-issue.prompt.md +1 -1
- package/templates/shared/skills/README.md +25 -3
- package/templates/shared/skills/nextjs-caching/SKILL.md +184 -0
- package/templates/shared/prompts/prepare-release.prompt.md +0 -74
package/LICENSE
CHANGED
|
@@ -35,7 +35,7 @@ URL for them above, as well as copies of any plain-text lines
|
|
|
35
35
|
beginning with `Required Notice:` that the licensor provided
|
|
36
36
|
with the software. For example:
|
|
37
37
|
|
|
38
|
-
> Required Notice: Copyright SilverAssist (https://silverassist.com)
|
|
38
|
+
> Required Notice: Copyright SilverAssist (<https://silverassist.com>)
|
|
39
39
|
|
|
40
40
|
## Changes and New Works License
|
|
41
41
|
|
|
@@ -132,4 +132,4 @@ of your licenses.
|
|
|
132
132
|
|
|
133
133
|
---
|
|
134
134
|
|
|
135
|
-
Required Notice: Copyright 2026 SilverAssist (https://silverassist.com)
|
|
135
|
+
Required Notice: Copyright 2026 SilverAssist (<https://silverassist.com>)
|
package/README.md
CHANGED
|
@@ -64,19 +64,24 @@ AGENTS.md # Copilot Coding Agent instructions (proje
|
|
|
64
64
|
│ ├── analyze-ticket.prompt.md
|
|
65
65
|
│ ├── create-plan.prompt.md
|
|
66
66
|
│ ├── work-ticket.prompt.md
|
|
67
|
-
│ └── ...
|
|
67
|
+
│ └── ... # 10 prompts total (depends on --tracker)
|
|
68
68
|
├── instructions/
|
|
69
69
|
│ ├── typescript.instructions.md
|
|
70
70
|
│ ├── react-components.instructions.md
|
|
71
|
-
│
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
│ └── ... # filtered by --stack
|
|
72
|
+
└── skills/ # Symlinks → ../../.agents/skills/ (npx skills standard)
|
|
73
|
+
├── domain-driven-design -> ../../.agents/skills/domain-driven-design
|
|
74
|
+
├── testing-patterns -> ../../.agents/skills/testing-patterns
|
|
75
|
+
└── ... # filtered by --stack
|
|
76
|
+
.agents/
|
|
77
|
+
└── skills/ # Canonical store (single source of truth)
|
|
76
78
|
├── domain-driven-design/
|
|
77
|
-
|
|
79
|
+
├── testing-patterns/
|
|
80
|
+
└── ... # 9 skills total, filtered by --stack
|
|
78
81
|
```
|
|
79
82
|
|
|
83
|
+
> **Skills follow the [`npx skills`](https://github.com/vercel-labs/skills) standard.** The real skill files live once in the canonical `.agents/skills/` store, and each agent's `skills/` directory contains symlinks to it — a single source of truth shared across Copilot, Claude Code, and Codex. Use `--copy` to materialize real copies instead of symlinks (e.g. on Windows without developer mode; symlinks also fall back to copies automatically when unsupported).
|
|
84
|
+
|
|
80
85
|
**Running prompts in VS Code:**
|
|
81
86
|
|
|
82
87
|
1. Open Command Palette (`Cmd+Shift+P` / `Ctrl+Shift+P`)
|
|
@@ -96,26 +101,37 @@ This creates the following structure:
|
|
|
96
101
|
|
|
97
102
|
```
|
|
98
103
|
CLAUDE.md # Project instructions for Claude Code (project root)
|
|
104
|
+
.agents/
|
|
105
|
+
└── skills/ # Canonical skills store (single source of truth)
|
|
106
|
+
├── domain-driven-design/
|
|
107
|
+
├── testing-patterns/
|
|
108
|
+
└── ... # 9 skills total, filtered by --stack
|
|
99
109
|
.claude/
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
110
|
+
├── commands/
|
|
111
|
+
│ ├── _partials/
|
|
112
|
+
│ ├── analyze-ticket.md
|
|
113
|
+
│ ├── create-plan.md
|
|
114
|
+
│ ├── work-ticket.md
|
|
115
|
+
│ └── ... # 10 commands total (depends on --tracker)
|
|
116
|
+
└── skills/ # Symlinks → ../../.agents/skills/ (read natively by Claude Code)
|
|
117
|
+
├── domain-driven-design -> ../../.agents/skills/domain-driven-design
|
|
118
|
+
├── testing-patterns -> ../../.agents/skills/testing-patterns
|
|
119
|
+
└── ... # filtered by --stack
|
|
106
120
|
.github/
|
|
107
|
-
|
|
108
|
-
└── skills/ # Shared with Copilot
|
|
121
|
+
└── instructions/ # Shared with Copilot
|
|
109
122
|
```
|
|
110
123
|
|
|
124
|
+
> Skills now install to `.claude/skills/` (where Claude Code reads them natively) as symlinks to the canonical `.agents/skills/` store — no longer to `.github/skills/`.
|
|
125
|
+
|
|
111
126
|
**Running commands in Claude Code:**
|
|
112
127
|
|
|
113
128
|
Type `/` in the chat to see all available slash commands:
|
|
114
129
|
|
|
115
130
|
```
|
|
116
|
-
/analyze-
|
|
117
|
-
/work-
|
|
118
|
-
/create-pr
|
|
131
|
+
/analyze-github-issue
|
|
132
|
+
/work-github-issue
|
|
133
|
+
/create-github-pr
|
|
134
|
+
/finalize-github-pr
|
|
119
135
|
```
|
|
120
136
|
|
|
121
137
|
### Codex
|
|
@@ -136,17 +152,20 @@ AGENTS.md # Project instructions for Codex (project
|
|
|
136
152
|
│ ├── analyze-ticket.prompt.md
|
|
137
153
|
│ ├── create-plan.prompt.md
|
|
138
154
|
│ ├── work-ticket.prompt.md
|
|
139
|
-
│ └── ...
|
|
155
|
+
│ └── ... # 10 prompts total (depends on --tracker)
|
|
140
156
|
├── instructions/
|
|
141
157
|
│ ├── typescript.instructions.md
|
|
142
158
|
│ ├── react-components.instructions.md
|
|
143
|
-
│
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
159
|
+
│ └── ... # filtered by --stack
|
|
160
|
+
└── skills/ # Symlinks → ../../.agents/skills/ (npx skills standard)
|
|
161
|
+
├── domain-driven-design -> ../../.agents/skills/domain-driven-design
|
|
162
|
+
├── testing-patterns -> ../../.agents/skills/testing-patterns
|
|
163
|
+
└── ... # filtered by --stack
|
|
164
|
+
.agents/
|
|
165
|
+
└── skills/ # Canonical store (single source of truth)
|
|
148
166
|
├── domain-driven-design/
|
|
149
|
-
|
|
167
|
+
├── testing-patterns/
|
|
168
|
+
└── ... # 9 skills total, filtered by --stack
|
|
150
169
|
```
|
|
151
170
|
|
|
152
171
|
### Global Install (Optional)
|
|
@@ -208,8 +227,11 @@ The same set of prompts is available for all supported tools.
|
|
|
208
227
|
| `work-ticket` | Start working on a Jira ticket | `{ticket-id}` | Jira |
|
|
209
228
|
| `work-github-issue` | Start working on a GitHub issue | `{issue-number}` | GitHub |
|
|
210
229
|
| `prepare-pr` | Prepare code for PR | — | All |
|
|
211
|
-
| `create-pr` | Create a pull request | `{ticket-id}` | Jira |
|
|
212
|
-
| `
|
|
230
|
+
| `create-pr` | Create a pull request (Jira) | `{ticket-id}` | Jira |
|
|
231
|
+
| `create-github-pr` | Create a pull request (GitHub) | `{issue-number}` | GitHub |
|
|
232
|
+
| `finalize-pr` | Finalize and merge PR (Jira) | `{ticket-id}` | Jira |
|
|
233
|
+
| `finalize-github-pr` | Finalize and merge PR (GitHub) | `{issue-number}` | GitHub |
|
|
234
|
+
| `prepare-github-release` | Prepare a GitHub release (auto-detects WordPress vs Node, tag vs Release) | — | GitHub |
|
|
213
235
|
|
|
214
236
|
### Utility
|
|
215
237
|
|
|
@@ -221,6 +243,8 @@ The same set of prompts is available for all supported tools.
|
|
|
221
243
|
|
|
222
244
|
### Workflow Stages
|
|
223
245
|
|
|
246
|
+
**Jira workflow:**
|
|
247
|
+
|
|
224
248
|
```
|
|
225
249
|
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
|
|
226
250
|
│ 1. Analyze │────▶│ 2. Plan │────▶│ 3. Work │
|
|
@@ -234,6 +258,21 @@ The same set of prompts is available for all supported tools.
|
|
|
234
258
|
└─────────────────┘ └─────────────────┘ └─────────────────┘
|
|
235
259
|
```
|
|
236
260
|
|
|
261
|
+
**GitHub workflow:**
|
|
262
|
+
|
|
263
|
+
```
|
|
264
|
+
┌──────────────────────┐ ┌─────────────────┐ ┌──────────────────────┐
|
|
265
|
+
│ 1. Analyze │────▶│ 2. Plan │────▶│ 3. Work │
|
|
266
|
+
│ analyze-github-issue│ │ create-plan │ │ work-github-issue │
|
|
267
|
+
└──────────────────────┘ └─────────────────┘ └──────────────────────┘
|
|
268
|
+
│
|
|
269
|
+
▼
|
|
270
|
+
┌──────────────────────┐ ┌──────────────────────┐ ┌─────────────────┐
|
|
271
|
+
│ 6. Finalize │◀────│ 5. Create PR │◀─│ 4. Prepare │
|
|
272
|
+
│ finalize-github-pr │ │ create-github-pr │ │ prepare-pr │
|
|
273
|
+
└──────────────────────┘ └──────────────────────┘ └─────────────────┘
|
|
274
|
+
```
|
|
275
|
+
|
|
237
276
|
## CLI Reference
|
|
238
277
|
|
|
239
278
|
### install
|
|
@@ -259,6 +298,7 @@ npx @silverassist/agents-toolkit@latest install [options]
|
|
|
259
298
|
| `--partials-only` | Only install partials |
|
|
260
299
|
| `--skills-only` | Only install skills |
|
|
261
300
|
| `--hooks-only` | Only install hooks (PostToolUse validation scripts) |
|
|
301
|
+
| `--copy` | Copy skills into each agent dir instead of symlinking to `.agents/skills/` |
|
|
262
302
|
| `--dry-run` | Show what would be installed without making changes |
|
|
263
303
|
|
|
264
304
|
**Examples:**
|
|
@@ -308,7 +348,7 @@ npx @silverassist/agents-toolkit@latest update --global
|
|
|
308
348
|
|
|
309
349
|
### update
|
|
310
350
|
|
|
311
|
-
Update all prompts to the latest version. **Overwrites existing files** (equivalent to `install --force`).
|
|
351
|
+
Update all prompts to the latest version. **Overwrites existing files and refreshes the skills lockfile** (equivalent to `install --force`).
|
|
312
352
|
|
|
313
353
|
```bash
|
|
314
354
|
npx @silverassist/agents-toolkit@latest update [options]
|
|
@@ -318,6 +358,28 @@ npx @silverassist/agents-toolkit@latest update --codex
|
|
|
318
358
|
|
|
319
359
|
> ⚠️ **Warning:** This will replace any customizations you've made to the installed files.
|
|
320
360
|
|
|
361
|
+
### restore
|
|
362
|
+
|
|
363
|
+
Restore skills from the lockfile. Reads `agents-toolkit-lock.json` and reinstalls all skills with the correct symlinks. Designed for post-clone setup and CI pipelines.
|
|
364
|
+
|
|
365
|
+
```bash
|
|
366
|
+
npx @silverassist/agents-toolkit@latest restore
|
|
367
|
+
npx @silverassist/agents-toolkit@latest restore --force # overwrite existing files
|
|
368
|
+
npx @silverassist/agents-toolkit@latest restore --dry-run # preview only
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
> If the lockfile was written by a different package version, `restore` warns but still proceeds.
|
|
372
|
+
|
|
373
|
+
### status
|
|
374
|
+
|
|
375
|
+
Check whether installed skills match the lockfile. Useful in CI to detect drift (manually edited skills or stale installs).
|
|
376
|
+
|
|
377
|
+
```bash
|
|
378
|
+
npx @silverassist/agents-toolkit@latest status
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
Exits with code `0` if all skills are up-to-date, `1` if any skill is `missing` or `modified`.
|
|
382
|
+
|
|
321
383
|
### list
|
|
322
384
|
|
|
323
385
|
List all available prompts and skills.
|
|
@@ -340,6 +402,8 @@ npx @silverassist/agents-toolkit@latest list
|
|
|
340
402
|
| Get latest version (discard customizations) | `update` |
|
|
341
403
|
| Update specific category only | `update --prompts-only` |
|
|
342
404
|
| Preview what would change | `install --dry-run` |
|
|
405
|
+
| Restore skills after clone / CI | `restore` |
|
|
406
|
+
| Check if skills are in sync | `status` |
|
|
343
407
|
|
|
344
408
|
## Partials
|
|
345
409
|
|
|
@@ -353,6 +417,8 @@ Reusable prompt fragments shared between tools:
|
|
|
353
417
|
| `github-integration.md` | GitHub issue operations (MCP) |
|
|
354
418
|
| `documentation.md` | Documentation standards |
|
|
355
419
|
| `pr-template.md` | Pull request templates (GitHub Issues + Jira) |
|
|
420
|
+
| `release-node.md` | Node/npm release bump & quality checks (used by `prepare-github-release`) |
|
|
421
|
+
| `release-wordpress.md` | WordPress plugin release bump & quality checks (used by `prepare-github-release`) |
|
|
356
422
|
|
|
357
423
|
## Instructions
|
|
358
424
|
|
|
@@ -365,6 +431,8 @@ File-type specific guidelines applied automatically by Copilot and available as
|
|
|
365
431
|
| `server-actions.instructions.md` | `**/actions/*.ts` | Next.js Server Actions |
|
|
366
432
|
| `tests.instructions.md` | `*.test.ts, *.test.tsx` | Testing patterns |
|
|
367
433
|
| `css-styling.instructions.md` | `*.css, *.tsx` | Tailwind CSS & shadcn/ui standards |
|
|
434
|
+
| `caching.instructions.md` | `next.config.*, src/proxy.ts, src/lib/**, **/route.ts, **/page.tsx` | Next.js caching: read-vs-mutation fetch caching, ISR tiers, CDN invalidation |
|
|
435
|
+
| `seo-ai-optimization.instructions.md` | `*.tsx` | Semantic HTML, accessibility tree, metadata, JSON-LD & E-E-A-T for AI Search |
|
|
368
436
|
|
|
369
437
|
## Skills
|
|
370
438
|
|
|
@@ -374,17 +442,51 @@ Specialized knowledge guides for domain-specific patterns:
|
|
|
374
442
|
|-------|-------------|
|
|
375
443
|
| `component-architecture` | React component patterns, folder structure, naming conventions |
|
|
376
444
|
| `domain-driven-design` | DDD principles, domain organization, barrel exports |
|
|
445
|
+
| `nextjs-caching` | Next.js caching strategy: read-vs-mutation fetch, ISR tiers, CDN invalidation, diagnosing dynamic-render leaks |
|
|
377
446
|
| `testing-patterns` | Jest + RTL patterns for Next.js 15 and Server Actions |
|
|
378
447
|
|
|
379
|
-
|
|
448
|
+
Skills follow the [`npx skills`](https://github.com/vercel-labs/skills) standard: the real files live once in the canonical `.agents/skills/` store, and each agent's `skills/` directory symlinks to it (single source of truth, easy updates). Pass `--copy` to materialize real copies instead.
|
|
449
|
+
|
|
450
|
+
**GitHub Copilot** — skills are symlinked into `.github/skills/`. Reference a skill explicitly:
|
|
380
451
|
|
|
381
452
|
```
|
|
382
453
|
@workspace Use the component-architecture skill to create a new payment form
|
|
383
454
|
```
|
|
384
455
|
|
|
385
|
-
**Claude Code** — skills are
|
|
456
|
+
**Claude Code** — skills are symlinked into `.claude/skills/`, where Claude Code reads them natively, and can be referenced in any prompt or command.
|
|
457
|
+
|
|
458
|
+
**Codex** — skills are symlinked into `.github/skills/` and can be referenced from `AGENTS.md` and task context.
|
|
386
459
|
|
|
387
|
-
|
|
460
|
+
### Skills Lockfile
|
|
461
|
+
|
|
462
|
+
When skills are installed, an `agents-toolkit-lock.json` file is written to the project root. This lockfile records each installed skill with its SHA-256 hash (same algorithm used by `npx skills`), allowing teammates and CI pipelines to restore the exact same skill files without committing them to the repository.
|
|
463
|
+
|
|
464
|
+
**Recommended `.gitignore` entries** (automatically appended by `install`):
|
|
465
|
+
|
|
466
|
+
```gitignore
|
|
467
|
+
# agents-toolkit managed — regenerate with: npx @silverassist/agents-toolkit restore
|
|
468
|
+
.agents/skills/
|
|
469
|
+
.github/skills/
|
|
470
|
+
.claude/skills/
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
**Workflow:**
|
|
474
|
+
|
|
475
|
+
```bash
|
|
476
|
+
# Developer A — installs and commits only the lockfile
|
|
477
|
+
npx @silverassist/agents-toolkit@latest install
|
|
478
|
+
git add agents-toolkit-lock.json
|
|
479
|
+
git commit -m "chore: add agents-toolkit skills"
|
|
480
|
+
|
|
481
|
+
# Developer B / CI — after cloning, restores skills from the lockfile
|
|
482
|
+
npx @silverassist/agents-toolkit@latest restore
|
|
483
|
+
|
|
484
|
+
# Check sync status in CI
|
|
485
|
+
npx @silverassist/agents-toolkit@latest status # exits 1 if any skill is missing/modified
|
|
486
|
+
|
|
487
|
+
# Update skills to latest package version
|
|
488
|
+
npx @silverassist/agents-toolkit@latest update # rewrites lockfile with new hashes
|
|
489
|
+
```
|
|
388
490
|
|
|
389
491
|
## Hooks
|
|
390
492
|
|
|
@@ -419,6 +521,13 @@ npx @silverassist/agents-toolkit@latest install --hooks-only
|
|
|
419
521
|
npx @silverassist/agents-toolkit@latest install --hooks-only --global
|
|
420
522
|
```
|
|
421
523
|
|
|
524
|
+
> **How hook paths resolve.** Copilot runs a hook `command` from the workspace root, not
|
|
525
|
+
> the hooks directory. Each generated config therefore sets a `cwd` so `scripts/<name>.sh`
|
|
526
|
+
> resolves: `.github/hooks` (relative, portable) for project installs and the absolute hooks
|
|
527
|
+
> path for global installs. Configs also declare the required `version: 1` field. If you
|
|
528
|
+
> installed hooks with an older version and see `scripts/<name>.sh: No such file or directory`,
|
|
529
|
+
> re-run the install with `--force` to regenerate the configs.
|
|
530
|
+
|
|
422
531
|
## Agent Instructions Files
|
|
423
532
|
|
|
424
533
|
### AGENTS.md (Copilot/Codex Agent)
|
|
@@ -440,12 +549,36 @@ Installed at the project root with `--claude`. Contains project-wide instruction
|
|
|
440
549
|
|
|
441
550
|
- Node.js 18+
|
|
442
551
|
- Git installed and configured
|
|
443
|
-
- **For Jira tracker:** Atlassian MCP configured
|
|
444
|
-
- **For GitHub tracker:** GitHub MCP configured
|
|
552
|
+
- **For Jira tracker:** Atlassian MCP configured (see below)
|
|
553
|
+
- **For GitHub tracker:** GitHub MCP configured (see below)
|
|
445
554
|
- **For GitHub Copilot:** VS Code with GitHub Copilot extension
|
|
446
555
|
- **For Claude Code:** Claude Code CLI or VS Code extension
|
|
447
556
|
- **For Codex:** Codex CLI/session running at project root
|
|
448
557
|
|
|
558
|
+
### MCP Server Configuration
|
|
559
|
+
|
|
560
|
+
The Jira and GitHub workflow prompts rely on MCP servers to read/write tickets and pull requests.
|
|
561
|
+
Add a `.mcp.json` file to your project root (or use VS Code's MCP settings) to register the servers:
|
|
562
|
+
|
|
563
|
+
```json
|
|
564
|
+
{
|
|
565
|
+
"servers": {
|
|
566
|
+
"atlassian": {
|
|
567
|
+
"type": "http",
|
|
568
|
+
"url": "https://mcp.atlassian.com/v1/mcp"
|
|
569
|
+
},
|
|
570
|
+
"github": {
|
|
571
|
+
"type": "http",
|
|
572
|
+
"url": "https://api.githubcopilot.com/mcp/"
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
```
|
|
577
|
+
|
|
578
|
+
> You only need to include the server(s) matching your `--tracker` choice.
|
|
579
|
+
> The Atlassian MCP uses OAuth — authenticate once with `npx @atlassian/mcp-server auth` or via the VS Code MCP UI.
|
|
580
|
+
> The GitHub MCP is authenticated automatically when you are signed in to GitHub Copilot.
|
|
581
|
+
|
|
449
582
|
## License
|
|
450
583
|
|
|
451
584
|
[PolyForm Noncommercial License 1.0.0](https://github.com/SilverAssist/agents-toolkit/blob/main/LICENSE)
|