@softspark/ai-toolkit 4.2.2 → 4.2.4
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/CHANGELOG.md +30 -0
- package/README.md +5 -5
- package/action.yml +1 -1
- package/app/.claude-plugin/plugin.json +1 -1
- package/app/agents/seo-specialist.md +3 -3
- package/app/skills/ci/SKILL.md +1 -1
- package/app/skills/ci/templates/github-actions-node.yml +2 -2
- package/app/skills/ci/templates/github-actions-python.yml +1 -1
- package/app/skills/ci-cd-patterns/SKILL.md +8 -8
- package/app/skills/csharp-patterns/SKILL.md +1 -1
- package/app/skills/docker-devops/SKILL.md +4 -4
- package/kb/procedures/ecosystem-sync-sop.md +1 -1
- package/kb/reference/ci-integration.md +2 -2
- package/llms-full.txt +3 -3
- package/manifest.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,36 @@ Versioning follows [Semantic Versioning](https://semver.org/).
|
|
|
7
7
|
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
+
## v4.2.4 - GitHub Actions Node 24 readiness (2026-05-12)
|
|
11
|
+
|
|
12
|
+
Patch release. Removes GitHub Actions Node 20 action-runtime deprecation warnings from CI, publish, and reusable action surfaces.
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
|
|
16
|
+
- **GitHub Actions runtime** - Updated `actions/setup-node` from `v4` to `v6` in CI, publish, and reusable composite action workflows.
|
|
17
|
+
- **Generated CI guidance** - Refreshed CI templates, CI/CD skill examples, Docker DevOps examples, and LLM index output to use current GitHub Actions action versions.
|
|
18
|
+
|
|
19
|
+
### Verification
|
|
20
|
+
|
|
21
|
+
- Source checked against the official [`actions/setup-node` documentation](https://github.com/actions/setup-node), which documents `v6` usage and Node 24 action runtime support.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## v4.2.3 - SEO FAQ rich results deprecation (2026-05-12)
|
|
26
|
+
|
|
27
|
+
Patch release. Updates `seo-specialist` guidance after Google deprecated FAQ rich results.
|
|
28
|
+
|
|
29
|
+
### Changed
|
|
30
|
+
|
|
31
|
+
- **SEO structured data guidance** - `seo-specialist` now treats `FAQPage` as deprecated for Google rich results and recommends keeping it only when explicitly targeting non-Google engines.
|
|
32
|
+
- **Citability schema checklist** - Prioritizes `Article`, `HowTo`, `QAPage`, and `Person` schema guidance for Google-facing SEO/GEO work.
|
|
33
|
+
|
|
34
|
+
### Verification
|
|
35
|
+
|
|
36
|
+
- Source checked against [Google Search Central `FAQPage` structured data documentation](https://developers.google.com/search/docs/appearance/structured-data/faqpage).
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
10
40
|
## v4.2.2 - Legacy hook duplicate cleanup (2026-05-12)
|
|
11
41
|
|
|
12
42
|
Patch release. Cleans up legacy untagged hook duplicates found during post-release verification of v4.2.1.
|
package/README.md
CHANGED
|
@@ -8,13 +8,13 @@
|
|
|
8
8
|
[](app/agents/)
|
|
9
9
|
[](tests/)
|
|
10
10
|
|
|
11
|
-
## What's New in v4.2.
|
|
11
|
+
## What's New in v4.2.4
|
|
12
12
|
|
|
13
|
-
Patch release
|
|
13
|
+
Patch release removing Node 20 action-runtime warnings from GitHub Actions.
|
|
14
14
|
|
|
15
|
-
- **
|
|
16
|
-
- **
|
|
17
|
-
- **
|
|
15
|
+
- **CI action runtime**: `ci.yml`, `publish.yml`, and the reusable `action.yml` now use `actions/setup-node@v6`.
|
|
16
|
+
- **Generated guidance**: CI templates and CI/CD skill examples now use current GitHub Actions versions.
|
|
17
|
+
- **Release readiness**: the next publish run executes on the Node 24-compatible action runtime.
|
|
18
18
|
|
|
19
19
|
See [CHANGELOG.md](CHANGELOG.md) for full history.
|
|
20
20
|
|
package/action.yml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-toolkit",
|
|
3
3
|
"description": "Professional-grade Claude Code toolkit with persona presets, skill security auditor, expanded lifecycle hooks, experimental opt-in plugin packs, benchmark harvesting, and multi-tool support.",
|
|
4
|
-
"version": "4.2.
|
|
4
|
+
"version": "4.2.4",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "SoftSpark",
|
|
7
7
|
"url": "https://github.com/softspark"
|
|
@@ -39,7 +39,7 @@ Optimization for both classical search engines AND generative engines (ChatGPT,
|
|
|
39
39
|
|
|
40
40
|
### Structured Data
|
|
41
41
|
- Schema.org markup
|
|
42
|
-
- Rich snippets
|
|
42
|
+
- Rich snippets (note: Google dropped FAQ rich results on May 7, 2026; Search Console API support removed August 2026)
|
|
43
43
|
- Knowledge graph
|
|
44
44
|
- Breadcrumbs
|
|
45
45
|
|
|
@@ -157,7 +157,7 @@ Goal: get cited by ChatGPT, Claude, Perplexity, Gemini, and Google AI Overviews
|
|
|
157
157
|
5. **Named author + author bio with credentials.** Authority signal that survives synthesis.
|
|
158
158
|
6. **Original quotes from named experts.** Quotation blocks are over-represented in LLM citations.
|
|
159
159
|
7. **Comparison tables with explicit labels.** Tables are extracted whole; vague prose is summarised away.
|
|
160
|
-
8. **Schema.org `Article`, `
|
|
160
|
+
8. **Schema.org `Article`, `HowTo`, `QAPage`, `Person`.** Mandatory for entity disambiguation. `FAQPage` schema: Google dropped FAQ rich results on **May 7, 2026** (Search Console API removed August 2026) — keep markup only if targeting other engines (Bing, etc.).
|
|
161
161
|
9. **`llms.txt` at site root.** Curated index of canonical pages for LLM crawlers (Anthropic-proposed convention).
|
|
162
162
|
10. **Stable URLs with semantic slugs.** LLMs cache citations — URL changes erase your authority overnight.
|
|
163
163
|
11. **Cross-linking with descriptive anchors.** "this article" is dead anchor text; use the actual claim.
|
|
@@ -189,7 +189,7 @@ Goal: get cited by ChatGPT, Claude, Perplexity, Gemini, and Google AI Overviews
|
|
|
189
189
|
- [ ] At least one comparison table OR numbered list per long-form page
|
|
190
190
|
- [ ] Author block with real name (not "Admin"), role, and ≥30 words of bio
|
|
191
191
|
- [ ] Schema.org `Article` with `author` (`Person` + `sameAs`), `datePublished`, `dateModified`
|
|
192
|
-
- [ ] Schema.org `FAQPage
|
|
192
|
+
- [ ] ~~Schema.org `FAQPage`~~ — Google dropped FAQ rich results on **May 7, 2026**; Search Console reporting ends June 2026, API removed August 2026. Remove or keep only if targeting non-Google engines.
|
|
193
193
|
- [ ] `dateModified` updated AND visible "Updated: [date]" text present
|
|
194
194
|
- [ ] `llms.txt` at site root with curated canonical URLs
|
|
195
195
|
- [ ] Page contains at least 3 unique data points (numbers, dates, version strings)
|
package/app/skills/ci/SKILL.md
CHANGED
|
@@ -88,7 +88,7 @@ Use `ci-cd-patterns` skill for pipeline templates and best practices.
|
|
|
88
88
|
- GitHub Actions YAML parses `on:` as a reserved word only when unquoted. Writing `"on":` (quoted) produces a valid-looking file whose workflow **never triggers**. YAML anchors in this field also silently break.
|
|
89
89
|
- GitLab CI's `rules:` and `only:/except:` are mutually exclusive at the job level. Mixing them fails parse on pipeline run but not at `git push` time — test with `gitlab-ci-lint` before committing.
|
|
90
90
|
- `secrets.*` in GitHub Actions is undefined in workflows triggered from **forked** PRs (security boundary). Jobs that need secrets must gate on `github.event.pull_request.head.repo.full_name == github.repository` or use `pull_request_target` carefully.
|
|
91
|
-
- `actions/checkout@
|
|
91
|
+
- `actions/checkout@v6` defaults to `fetch-depth: 1` (shallow). Commands that need history (`git log`, `git describe`, conventional-commit tools) fail with misleading errors — set `fetch-depth: 0` for those jobs.
|
|
92
92
|
|
|
93
93
|
## When NOT to Use
|
|
94
94
|
|
|
@@ -14,10 +14,10 @@ jobs:
|
|
|
14
14
|
node-version: [18, 20, 22]
|
|
15
15
|
|
|
16
16
|
steps:
|
|
17
|
-
- uses: actions/checkout@
|
|
17
|
+
- uses: actions/checkout@v6
|
|
18
18
|
|
|
19
19
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
20
|
-
uses: actions/setup-node@
|
|
20
|
+
uses: actions/setup-node@v6
|
|
21
21
|
with:
|
|
22
22
|
node-version: ${{ matrix.node-version }}
|
|
23
23
|
cache: 'npm'
|
|
@@ -23,8 +23,8 @@ jobs:
|
|
|
23
23
|
lint:
|
|
24
24
|
runs-on: ubuntu-latest
|
|
25
25
|
steps:
|
|
26
|
-
- uses: actions/checkout@
|
|
27
|
-
- uses: actions/setup-node@
|
|
26
|
+
- uses: actions/checkout@v6
|
|
27
|
+
- uses: actions/setup-node@v6
|
|
28
28
|
with:
|
|
29
29
|
node-version: 20
|
|
30
30
|
cache: "npm"
|
|
@@ -39,8 +39,8 @@ jobs:
|
|
|
39
39
|
matrix:
|
|
40
40
|
node-version: [18, 20, 22]
|
|
41
41
|
steps:
|
|
42
|
-
- uses: actions/checkout@
|
|
43
|
-
- uses: actions/setup-node@
|
|
42
|
+
- uses: actions/checkout@v6
|
|
43
|
+
- uses: actions/setup-node@v6
|
|
44
44
|
with:
|
|
45
45
|
node-version: ${{ matrix.node-version }}
|
|
46
46
|
cache: "npm"
|
|
@@ -55,8 +55,8 @@ jobs:
|
|
|
55
55
|
runs-on: ubuntu-latest
|
|
56
56
|
needs: test
|
|
57
57
|
steps:
|
|
58
|
-
- uses: actions/checkout@
|
|
59
|
-
- uses: actions/setup-node@
|
|
58
|
+
- uses: actions/checkout@v6
|
|
59
|
+
- uses: actions/setup-node@v6
|
|
60
60
|
with:
|
|
61
61
|
node-version: 20
|
|
62
62
|
cache: "npm"
|
|
@@ -73,7 +73,7 @@ jobs:
|
|
|
73
73
|
test:
|
|
74
74
|
runs-on: ubuntu-latest
|
|
75
75
|
steps:
|
|
76
|
-
- uses: actions/checkout@
|
|
76
|
+
- uses: actions/checkout@v6
|
|
77
77
|
- uses: actions/setup-python@v5
|
|
78
78
|
with:
|
|
79
79
|
python-version: "3.12"
|
|
@@ -90,7 +90,7 @@ jobs:
|
|
|
90
90
|
runs-on: ubuntu-latest
|
|
91
91
|
needs: test
|
|
92
92
|
steps:
|
|
93
|
-
- uses: actions/checkout@
|
|
93
|
+
- uses: actions/checkout@v6
|
|
94
94
|
- uses: docker/setup-buildx-action@v3
|
|
95
95
|
- uses: docker/login-action@v3
|
|
96
96
|
with:
|
|
@@ -417,7 +417,7 @@ dotnet_diagnostic.CA1848.severity = warning
|
|
|
417
417
|
### CI (GitHub Actions)
|
|
418
418
|
```yaml
|
|
419
419
|
steps:
|
|
420
|
-
- uses: actions/checkout@
|
|
420
|
+
- uses: actions/checkout@v6
|
|
421
421
|
- uses: actions/setup-dotnet@v4
|
|
422
422
|
with: { dotnet-version: '9.0.x' }
|
|
423
423
|
- run: dotnet restore
|
|
@@ -157,8 +157,8 @@ jobs:
|
|
|
157
157
|
test:
|
|
158
158
|
runs-on: ubuntu-latest
|
|
159
159
|
steps:
|
|
160
|
-
- uses: actions/checkout@
|
|
161
|
-
- uses: actions/setup-node@
|
|
160
|
+
- uses: actions/checkout@v6
|
|
161
|
+
- uses: actions/setup-node@v6
|
|
162
162
|
with:
|
|
163
163
|
node-version: '20'
|
|
164
164
|
cache: 'npm'
|
|
@@ -172,7 +172,7 @@ jobs:
|
|
|
172
172
|
if: github.ref == 'refs/heads/main'
|
|
173
173
|
runs-on: ubuntu-latest
|
|
174
174
|
steps:
|
|
175
|
-
- uses: actions/checkout@
|
|
175
|
+
- uses: actions/checkout@v6
|
|
176
176
|
- name: Deploy to production
|
|
177
177
|
run: |
|
|
178
178
|
# Deploy commands
|
|
@@ -192,7 +192,7 @@ jobs:
|
|
|
192
192
|
test:
|
|
193
193
|
runs-on: ubuntu-latest
|
|
194
194
|
steps:
|
|
195
|
-
- uses: actions/checkout@
|
|
195
|
+
- uses: actions/checkout@v6
|
|
196
196
|
- uses: actions/setup-python@v5
|
|
197
197
|
with:
|
|
198
198
|
python-version: '3.12'
|
|
@@ -231,7 +231,7 @@ jobs:
|
|
|
231
231
|
doctor:
|
|
232
232
|
runs-on: ubuntu-latest
|
|
233
233
|
steps:
|
|
234
|
-
- uses: actions/checkout@
|
|
234
|
+
- uses: actions/checkout@v6
|
|
235
235
|
- run: python3 scripts/ecosystem_doctor.py --format text | tee /tmp/doctor.txt
|
|
236
236
|
- run: python3 scripts/ecosystem_doctor.py --check
|
|
237
237
|
```
|
|
@@ -25,7 +25,7 @@ jobs:
|
|
|
25
25
|
validate:
|
|
26
26
|
runs-on: ubuntu-latest
|
|
27
27
|
steps:
|
|
28
|
-
- uses: actions/checkout@
|
|
28
|
+
- uses: actions/checkout@v6
|
|
29
29
|
- uses: softspark/ai-toolkit@v1
|
|
30
30
|
with:
|
|
31
31
|
command: validate
|
|
@@ -50,7 +50,7 @@ jobs:
|
|
|
50
50
|
For simpler setups without the action:
|
|
51
51
|
|
|
52
52
|
```yaml
|
|
53
|
-
- uses: actions/setup-node@
|
|
53
|
+
- uses: actions/setup-node@v6
|
|
54
54
|
with:
|
|
55
55
|
node-version: 20
|
|
56
56
|
- run: npx @softspark/ai-toolkit validate
|
package/llms-full.txt
CHANGED
|
@@ -4372,7 +4372,7 @@ jobs:
|
|
|
4372
4372
|
doctor:
|
|
4373
4373
|
runs-on: ubuntu-latest
|
|
4374
4374
|
steps:
|
|
4375
|
-
- uses: actions/checkout@
|
|
4375
|
+
- uses: actions/checkout@v6
|
|
4376
4376
|
- run: python3 scripts/ecosystem_doctor.py --format text | tee /tmp/doctor.txt
|
|
4377
4377
|
- run: python3 scripts/ecosystem_doctor.py --check
|
|
4378
4378
|
```
|
|
@@ -6534,7 +6534,7 @@ jobs:
|
|
|
6534
6534
|
validate:
|
|
6535
6535
|
runs-on: ubuntu-latest
|
|
6536
6536
|
steps:
|
|
6537
|
-
- uses: actions/checkout@
|
|
6537
|
+
- uses: actions/checkout@v6
|
|
6538
6538
|
- uses: softspark/ai-toolkit@v1
|
|
6539
6539
|
with:
|
|
6540
6540
|
command: validate
|
|
@@ -6559,7 +6559,7 @@ jobs:
|
|
|
6559
6559
|
For simpler setups without the action:
|
|
6560
6560
|
|
|
6561
6561
|
```yaml
|
|
6562
|
-
- uses: actions/setup-node@
|
|
6562
|
+
- uses: actions/setup-node@v6
|
|
6563
6563
|
with:
|
|
6564
6564
|
node-version: 20
|
|
6565
6565
|
- run: npx @softspark/ai-toolkit validate
|
package/manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@softspark/ai-toolkit",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.4",
|
|
4
4
|
"description": "AI coding toolkit: 107 skills, 44 agents, 12-editor write-through (Claude, Cursor, Windsurf, Copilot, Gemini, Cline, Roo, Aider, Augment, Antigravity, Codex, opencode), machine-enforced safety constitution, SARIF audit, signed npm provenance.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"claude",
|