Skip to content

fix(manifest): register brainpy-state and brainx-general-guard, relocate NEST branch - #7

Merged
chaoming0625 merged 3 commits into
mainfrom
fix/register-brainpy-state-and-general-guard-skills
Jul 29, 2026
Merged

fix(manifest): register brainpy-state and brainx-general-guard, relocate NEST branch#7
chaoming0625 merged 3 commits into
mainfrom
fix/register-brainpy-state-and-general-guard-skills

Conversation

@chaoming0625

@chaoming0625 chaoming0625 commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Why CI was failing

Every recent run of Agent Skills validation failed at the Verify the skill manifest step:

manifest.json does not match the skill directories.
Manifest:    brainevent brainstate brainunit brainx-install
Directories: brainevent brainpy-state brainstate brainunit brainx-general-guard brainx-install

skills/brainpy-state/ and skills/brainx-general-guard/ were added without matching manifest.json entries. The workflow compares the sorted manifest array against the sorted directory listing and fails on any difference in either direction (AGENTS.md rule 6). The failure happened before the per-skill validation step ever ran, so no skill was actually being validated in CI.

The same omission left both directories out of package.json files (rule 7). CI does not check that, so it was a latent packaging bug: manifest.json would have declared skills the published tarball did not contain, and installation/lib/bundle.js rejects undeclared directories under skills/.

Changes

1. Register the two skillsmanifest.json and package.json files. This is the CI fix.

2. Relocate the NEST-compatible branchskills/brainpy-state/NEST-compatible/ violated rule 1, which permits only references/, scripts/, and agents/ beneath a skill. Moved to references/nest-compatible/, flattening its inner references/ into the grouping directory and keeping scripts/ alongside, mirroring the existing references/brainstate-dynamics/ layout.

Routing links in the branch are now skill-root-relative, matching SKILL.md and references/brainstate-dynamics/. This removes a real hazard: nest-workflow.md routed to `references/model-library.md`, which after the move would resolve against the skill's own references/ directory instead of the NEST branch. Inbound links in SKILL.md and references/component-selection.md, plus the layout tree, nested-branch table, and script paths in plan.md, were updated to match.

No skill prose or API content changed — the relocation is paths only.

Verification

All six skills validate:

$ for d in skills/*/; do python -c 'from skills_ref.cli import main; main()' validate "${d%/}"; done
Valid skill: skills/brainevent
Valid skill: skills/brainpy-state
Valid skill: skills/brainstate
Valid skill: skills/brainunit
Valid skill: skills/brainx-general-guard
Valid skill: skills/brainx-install

Manifest check passes, and every skill now has only rule 1 subdirectories:

manifest matches: brainevent brainpy-state brainstate brainunit brainx-general-guard brainx-install
skills/brainevent/:           references
skills/brainpy-state/:        references
skills/brainstate/:           agents references scripts
skills/brainunit/:            references
skills/brainx-general-guard/: references
skills/brainx-install/:       references

Every backticked .md/.py routing target under skills/brainpy-state/ was resolved against the filesystem; all now exist. The only unresolved names are upstream NEST example filenames quoted inside script docstrings, which are prose, not routing links.

Pre-existing issue, not fixed here

references/brainstate-dynamics/brain-dynamics-event-driven-operators.md has a "## Used by" block listing references/brainstate-dynamics/dynamics-and-integration.md and references/brainstate-dynamics/brain-dynamics-snn-workflows.md. Neither file exists in this skill; they look like skills/brainstate/ paths. Present in HEAD before this branch and left untouched.

The skills/brainpy-state/ and skills/brainx-general-guard/ directories were
added without matching manifest.json entries, so the Agent Skills validation
workflow failed on every run: its manifest check compares the sorted skills
array against the sorted skill directories and rejects any difference.

Add both entries to manifest.json, and add the matching paths to the
package.json files list so the published tarball actually contains the
directories that manifest.json declares.

Both skills pass `skills-ref validate` unchanged.
AGENTS.md rule 1 permits only references/, scripts/, and agents/ beneath a
skill, with references/ allowed one further grouping level. The NEST branch
sat in a top-level NEST-compatible/ directory with its own nested references/
and scripts/, which no validator enforces but which no other skill follows.

Relocate the whole branch to references/nest-compatible/, flattening its inner
references/ into the grouping directory and keeping scripts/ alongside, which
mirrors the existing references/brainstate-dynamics/ layout.

Normalize the branch's routing links to skill-root-relative paths, matching
SKILL.md and references/brainstate-dynamics/. This also removes a real hazard:
nest-workflow.md routed to `references/model-library.md`, which after the move
would resolve against the skill's own references/ directory rather than the
NEST branch.

Update the inbound links in SKILL.md and references/component-selection.md, and
the layout tree, nested-branch table, and script paths in plan.md.

No skill content changes; all six skills still pass `skills-ref validate`.
@chaoming0625 chaoming0625 changed the title fix(manifest): register brainpy-state and brainx-general-guard skills fix(manifest): register brainpy-state and brainx-general-guard, relocate NEST branch Jul 29, 2026
@chaoming0625
chaoming0625 merged commit 46a51c4 into main Jul 29, 2026
3 checks passed
@chaoming0625
chaoming0625 deleted the fix/register-brainpy-state-and-general-guard-skills branch July 29, 2026 06:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant