@qvac/skills
v0.1.14
Published
Skills for the QV.AC app — the SKILL.md tree plus a content-addressed bundle of it.
Readme
@qvac/skills
Skills for QV.AC.
A skill is a directory under skills/ with a SKILL.md in it, plus whatever
else it needs alongside — reference notes, scripts, a schema. The SKILL.md
front matter is what the harness reads to build its catalog.
The package ships the tree itself and a bundled copy of it, so consumers that can't read a filesystem still get the same bytes.
Entry points
| Import | Contents | Needs a filesystem |
| ----------------------- | ---------------------------------------- | ------------------ |
| @qvac/skills | skillsDir, skillsUrl, SKILLS_HASH | yes |
| @qvac/skills/bundled | SKILLS (path → content), SKILLS_HASH | no |
| @qvac/skills/hash | SKILLS_HASH alone | no |
| @qvac/skills/skills/* | a single file by path | no |
All of them work on Node and Bare. skillsDir only points at anything real
where the package was installed to disk, though — a Bare worklet ships no
node_modules, so it imports ./bundled and writes the tree out itself.
SKILLS_HASH is a sha256 over the sorted path\0content\0 stream, truncated
to 16 hex chars. Consumers key a materialized directory on it, so it has to
match hashBundledSkills in the harness byte for byte.
Development
npm test # node + bare
npm run lintbundled.js and hash.js are generated from skills/ by scripts/build.mjs
License
Apache-2.0
