Minor Changes
- 4ac7aae: Complete the remaining Phase 7 product surfaces in
apps/web: add canonical registry graph exploration, deterministic runtime trace replay, evaluation metrics from the committed planning dataset and golden fixture, and a Changeset-backed release/changelog viewer. These routes use server-onlyhr-skills-buildAPIs, client-safe Headless UI disclosures, semantic CSS classes, responsive layouts, and Playwright coverage across desktop and mobile Chromium. - a65f4c5: Added a production public documentation application with a searchable HR skill catalog and static skill pages generated from the canonical registry and source content.
- b1e9f67: Added three repository agent skills —
.agents/skills/clack,.agents/skills/jscpd, and.agents/skills/dry-refactoring— documenting this repo's actual@clack/promptsusage and duplicate-detection/refactoring conventions. Fixed generated PR review comments (skill-reviewCLI) linking to relative paths that don't resolve inside a GitHub PR comment body; they now use absolute GitHub blob URLs. Fixed thedescriptionfield format in.github/skill-template.mdand.claude/commands/new-skill.md, which used a YAML folded block scalar inconsistent withdocs/engineering/format.mdand every existing skill. - 622d2ea: Extended the Phase 7 public documentation experience with canonical
hr-skills-buildserver/client API integration, a planner playground backed by the browser-safe planning APIs, related-skill recommendations, TailwindCSS v4 styling infrastructure, accessible Headless UI disclosure controls, and Inter font optimization throughnext/font. Updated filesystem compatibility in the server API dependency graph so the web app can build under Next.js runtime environments. - 8dfd5a3: Improve the
apps/webdiscovery experience with a compact responsive navigation, clearer homepage starting paths, catalog active-filter chips and sorting, stronger empty-state guidance, and consistent semantic styling. Add Playwright coverage for the redesigned navigation and catalog interactions across desktop and mobile Chromium.
Patch Changes
-
b1e9f67: Added
docs/engineering/api.md, an API reference documenting the public functions and types exported fromhr-skills-build. -
b0901a9: Fixed
dist/hr-skills.zipanddist/hr-skills.skillbeing written as structurally invalid archives.buildZipBufferdeclared its running byte position asconst currentOffset = 0, so every central-directory entry and the end-of-central-directory record recorded offset0. Readers still listed the entries (they self-heal the central-directory offset), but extracting anything past the first file failed with "Bad magic number for file header" — andbuild-skillsreportedOK (zip)regardless. Both archives now round-trip all 823+ entries.Added
--help/-hto every CLI, handled inrunClibefore any work runs.--helppreviously fell through as a positional argument:bun run evaluate --helpran the entire evaluation suite,bun run plan --helpandbun run execute --helpbuilt the registry and generated a plan for the literal intent"--help", andbun run recommend --helpbuilt all 146 skills before failing withUnknown skill ID: "--help". Help now exits 0 without doing any work.Fixed errors thrown while a spinner was running being erased from the terminal. A live
@clack/promptsspinner repaints by erasing the lines beneath it and its exit handler stamps "Canceled" over the area, so the real message never appeared — a missingregistry/skills.jsonreported only "Canceled". CLI spinners are now created throughcliSpinner(), which letsrunClistop the spinner with the actual error.Fixed
bun run evaluate --update-goldenexiting 0 even when cases failed, which silently baselined those failures into the golden fixtures. It now exits 1 and reports the failing count. Unknown flags are rejected instead of ignored, so a typo'd--update-goldensno longer performs a plain reporting pass.Fixed
bun run recommend <skill> --limit 0(and a non-numeric--limit) reporting "No recommendations available" — blaming the skill for a bad flag.--limitis now validated as a positive integer, and a flag in the positional slot prints usage instead of spending a full registry build to reportUnknown skill ID: "--limit".Improved
bun run validateoutput: it now shows progress for the two slowest phases instead of running silently, reports each failing skill once with its message rather than twice (the first time as a bare name), sorts issues so repeat runs over an unchanged tree emit identical logs, uses an error glyph rather than a warning for the fatal "no skills found" case, and closes the output box on failure paths instead of leaving it unterminated. -
b1e9f67: Rewrote
skills-refSKILL.mdfrontmatter parser to use theyamlpackage instead of manual string splitting, fixing edge cases in frontmatter detection and makingSkillPropertiesSchemaa strict schema (unknown frontmatter keys are now rejected). Fixed.claude-plugin/marketplace.jsonto include the required$schemaandownerfields. Fixed the release workflow (publish.yml) building distribution artifacts with an invalid Turborepo filter/flag combination that could fail or silently skip the build. -
cbe30bb: Enhanced prose clarity, structure, and domain accuracy for
hr-vietnam-context,hr-talent-acquisition, andhr-performance-managementskills. -
b1e9f67: Fixed a polynomial-time regular expression denial-of-service (ReDoS) vulnerability in
analyzeIntentdelimiter parsing (CodeQL alertjs/polynomial-redos, CWE-1333/400/730). The affected regex is reachable from user-controlled CLI input (plan/executeintent argv).