Skip to content

feat(demo): add an installed skill-library demo (--kind skill_library) - #881

Open
Birfy wants to merge 1 commit into
mainfrom
feat/878-demo-skill-library
Open

Birfy wants to merge 1 commit into
mainfrom
feat/878-demo-skill-library

Conversation

@Birfy

@Birfy Birfy commented Nov 8, 2026

Copy link
Copy Markdown
Collaborator

Closes #878

What changed

agentdescent demo is the offline Path A entry, but it only evolved a single one-rule skill and then pointed people at python -m examples.skill_library_evolution — a command that fails outside a source checkout because examples/ is not in the wheel.

agentdescent demo --kind skill_library now builds a two-skill */SKILL.md tree (csv-total, date-parse), runs it through the same Path A machinery with the offline agent and stub reflector, and prints the usual show / apply --dry-run / init --kind skill_library next steps. --algorithm archive_selection works with that kind; text-only cards and evoskill are still refused. demo --json keeps the #862 contract.

The default demo smoke note, README, docs/quickstart-skill.md and docs/usage.md lead with the installed command. examples/skill_library_evolution.py stays as the source-checkout CLI (--dry-run, --agent, --install-to) and imports the shared fixture.

Verification at the tip

Tip SHA: 90389cd
Ran:

  • pytest tests/test_demo.py tests/test_skill_library_example.py tests/test_skill_library_kind.py tests/test_guess_kind_skill_library.py tests/test_changelog_fragments.py::test_real_fragments_are_valid → 52 passed
  • agentdescent demo --kind skill_library --json from /tmp (no repo cwd) → ok, kind=skill_library, held-out 0.000 → 1.000, two */SKILL.md written
    Not run:
  • full suite — CI

Closes #878

agentdescent demo --kind skill_library builds a two-skill */SKILL.md
tree and runs it offline from any cwd. The default demo smoke note and
README / quickstart / usage now point at that command instead of
python -m examples.skill_library_evolution, which only works from a
source checkout. The examples module stays as a thin wrapper around
the shared fixture.
@Birfy

Birfy commented Nov 8, 2026

Copy link
Copy Markdown
Collaborator Author

Verdict: PASS
Tip SHA: 90389cd
Ran: pytest tests/test_demo.py tests/test_skill_library_example.py tests/test_skill_library_kind.py tests/test_guess_kind_skill_library.py tests/test_changelog_fragments.py::test_real_fragments_are_valid at the tip → 52 passed; agentdescent demo --kind skill_library --json from /tmp (no repo cwd) → ok, kind=skill_library, held-out 0.000 → 1.000 over two committed rounds, csv-total/ and date-parse/ written. risk_gate.py from main → T3 (638 changed lines / 8 files exceed the T2 size cap of 250 / 12).
Not run: full suite (CI covers 3.9–3.13).

Correctness. The installed CLI now has an offline multi-skill path: demo --kind skill_library writes ≥2 */SKILL.md, runs them as a kind=skill_library EvolveSpec (same Path A compose as init), and keeps demo --json (ok, kind, rewards, learned, next). The default demo smoke no longer recommends python -m examples.skill_library_evolution, which is ModuleNotFoundError outside a checkout; README / docs/quickstart-skill.md / docs/usage.md lead with the wheel command. --algorithm archive_selection runs on the library fixture; text-only cards and evoskill are still refused before the work dir is created. The checkout example remains a thin wrapper around the shared fixture, so its existing tests still cover --dry-run / evolve_library.

Risk. T3 by size, not by kind: this is demo/docs/CLI fixture work, not a core-loop or installer change. Still needs Danyang's merge click under the T3 rule (no --auto, no --admin).

@github-actions github-actions Bot added the risk:T3 Risk tier T3 (core loop, release, process; needs Danyang's click), set by the controller label Nov 8, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:T3 Risk tier T3 (core loop, release, process; needs Danyang's click), set by the controller

Projects

None yet

Development

Successfully merging this pull request may close these issues.

demo: offline skill-library demo only reachable via source-only examples/ module (ModuleNotFoundError from an install)

1 participant