@eltonssouza/development-utility-kit 0.15.1 → 0.16.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/.claude/skills/_vendor/NOTICE.md +11 -0
- package/.claude/skills/_vendor/mattpocock-LICENSE +21 -0
- package/.claude/skills/_vendor/vendored.json +15 -0
- package/.claude/skills/diagnose/SKILL.md +117 -0
- package/.claude/skills/diagnose/scripts/hitl-loop.template.sh +41 -0
- package/.claude/skills/grill-with-docs/ADR-FORMAT.md +47 -0
- package/.claude/skills/grill-with-docs/CONTEXT-FORMAT.md +60 -0
- package/.claude/skills/grill-with-docs/SKILL.md +88 -0
- package/.claude/skills/improve-codebase-architecture/DEEPENING.md +37 -0
- package/.claude/skills/improve-codebase-architecture/HTML-REPORT.md +123 -0
- package/.claude/skills/improve-codebase-architecture/INTERFACE-DESIGN.md +44 -0
- package/.claude/skills/improve-codebase-architecture/LANGUAGE.md +53 -0
- package/.claude/skills/improve-codebase-architecture/SKILL.md +81 -0
- package/.claude/skills/prototype/LOGIC.md +79 -0
- package/.claude/skills/prototype/SKILL.md +30 -0
- package/.claude/skills/prototype/UI.md +112 -0
- package/.claude/skills/setup-matt-pocock-skills/SKILL.md +121 -0
- package/.claude/skills/setup-matt-pocock-skills/domain.md +51 -0
- package/.claude/skills/setup-matt-pocock-skills/issue-tracker-github.md +22 -0
- package/.claude/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +23 -0
- package/.claude/skills/setup-matt-pocock-skills/issue-tracker-local.md +19 -0
- package/.claude/skills/setup-matt-pocock-skills/triage-labels.md +15 -0
- package/.claude/skills/tdd/SKILL.md +109 -0
- package/.claude/skills/tdd/deep-modules.md +33 -0
- package/.claude/skills/tdd/interface-design.md +31 -0
- package/.claude/skills/tdd/mocking.md +59 -0
- package/.claude/skills/tdd/refactoring.md +10 -0
- package/.claude/skills/tdd/tests.md +61 -0
- package/.claude/skills/triage/AGENT-BRIEF.md +168 -0
- package/.claude/skills/triage/OUT-OF-SCOPE.md +101 -0
- package/.claude/skills/triage/SKILL.md +103 -0
- package/.claude/skills/zoom-out/SKILL.md +7 -0
- package/README.repo.md +1 -1
- package/bin/lib/lint.js +16 -1
- package/package.json +1 -1
package/README.repo.md
CHANGED
|
@@ -404,7 +404,7 @@ Full vault under [`docs/brain/`](docs/brain/) — browse via Obsidian. Live ADR
|
|
|
404
404
|
|
|
405
405
|
Honest thanks to:
|
|
406
406
|
|
|
407
|
-
- **[`
|
|
407
|
+
- **[`mattpocock/skills`](https://github.com/mattpocock/skills)** — by **[Matt Pocock](https://github.com/mattpocock)** ([aihero.dev](https://www.aihero.dev/my-grill-me-skill-has-gone-viral)). The relentless `grill-me` discovery interview is Matt's design. As of **v0.16.0** the harness is **adopting Matt's full issue-tracker engineering workflow** (ADR-049, MIT): we **vendor** his skills — `diagnose`, `grill-with-docs`, `improve-codebase-architecture`, `prototype`, `setup-matt-pocock-skills`, `tdd`, `triage`, `zoom-out` (and, in a later sprint, `to-prd`/`to-issues`) — under `.claude/skills/` with his `LICENSE` + a `NOTICE` (see `.claude/skills/_vendor/`). They are bundled, not re-authored; upstream is the source of truth. The staged migration is in `docs/plans/PLAN_mattpocock-workflow-adoption.md`.
|
|
408
408
|
- **[`caveman`](https://github.com/JuliusBrussee/caveman)** — by **[Julius Brussee](https://github.com/JuliusBrussee)**. The telegraphic communication mode that saves us 65–75% of output tokens with zero technical loss. We use it as the default style in this harness; the compression rules, the levels (lite/full/ultra), and the auto-clarity carve-outs are Julius's work.
|
|
409
409
|
- **[`impeccable`](https://github.com/pbakaus/impeccable)** — by **[Paul Bakaus](https://github.com/pbakaus)**. The design-refinement skill (`polish | harden | audit`) that drives our visual-quality gate. Paul's `npx skills add pbakaus/impeccable` distribution pattern also directly inspired our own `npx @eltonssouza/development-utility-kit install` installer (ADR-018).
|
|
410
410
|
- **[`rtk`](https://github.com/rtk-ai/rtk)** — by the **[rtk-ai](https://github.com/rtk-ai) team**. The Rust Token Killer CLI proxy that powers the live "RTK savings" widget on the `duk dashboard` (`rtk gain --format json` → `/api/rtk`). The 60–90% savings on dev operations we surface in the dashboard are RTK's, not ours.
|
package/bin/lib/lint.js
CHANGED
|
@@ -174,9 +174,23 @@ function findStackPacks() {
|
|
|
174
174
|
// ── Category 1: skills.frontmatter ──────────────────────────────────────────
|
|
175
175
|
|
|
176
176
|
const SKILL_REQUIRED_FIELDS = ['name', 'description', 'tools', 'model'];
|
|
177
|
+
// Vendored third-party skills are valid Claude Code skills as-authored upstream;
|
|
178
|
+
// `tools`/`model` are a harness-internal convention, not a Claude Code requirement.
|
|
179
|
+
const VENDORED_REQUIRED_FIELDS = ['name', 'description'];
|
|
180
|
+
|
|
181
|
+
function loadVendoredSkillNames() {
|
|
182
|
+
try {
|
|
183
|
+
const p = path.join(packageRoot(), '.claude', 'skills', '_vendor', 'vendored.json');
|
|
184
|
+
const data = JSON.parse(fs.readFileSync(p, 'utf8'));
|
|
185
|
+
return new Set(Array.isArray(data.skills) ? data.skills : []);
|
|
186
|
+
} catch {
|
|
187
|
+
return new Set();
|
|
188
|
+
}
|
|
189
|
+
}
|
|
177
190
|
|
|
178
191
|
function checkSkillsFrontmatter() {
|
|
179
192
|
const violations = [];
|
|
193
|
+
const vendored = loadVendoredSkillNames();
|
|
180
194
|
for (const skill of findSkills()) {
|
|
181
195
|
const content = readSafe(skill.path);
|
|
182
196
|
if (content === null) {
|
|
@@ -184,7 +198,8 @@ function checkSkillsFrontmatter() {
|
|
|
184
198
|
continue;
|
|
185
199
|
}
|
|
186
200
|
const { frontmatter } = extractFrontmatter(content);
|
|
187
|
-
|
|
201
|
+
const required = vendored.has(skill.name) ? VENDORED_REQUIRED_FIELDS : SKILL_REQUIRED_FIELDS;
|
|
202
|
+
for (const f of required) {
|
|
188
203
|
if (!frontmatter[f]) {
|
|
189
204
|
violations.push({
|
|
190
205
|
category: 'skills', severity: ERROR, file: skill.path, line: 1,
|