Skill creator
Open-source, local-first desktop AI research workbench for scientific computing with Python/R, MCP bioinformatics tools, SSH/WSL/GPU runtimes, and OpenAI/Anthropic models.
npx -y skills add xuzhougeng/wisp-science --skill skill-creatorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Create, update, validate, and evaluate Wisp skills. Use when authoring a project-local or installable skill, refining its trigger description, adding deterministic scripts or Python sidecars, or testing whether another Agent can follow the workflow.
SKILL.md
4.2 KB, as published. Nobody here has run it
Create Wisp skills
Author project-local skills under .wisp/skills/<name>/. Wisp also discovers
bundled skills, user-installed skills, and paths configured by
WISP_SKILLS_PATH, but only normal project paths are directly writable through
Agent file tools.
Structure
<skill-name>/
├── SKILL.md
├── kernel.py # optional pure helper definitions
├── scripts/ # optional standalone deterministic programs
├── references/ # optional detailed domain material
└── assets/ # optional output templates or static inputs
Keep SKILL.md concise. Put triggering information in frontmatter
description; put essential procedure in the body; move detailed variants to
one-level-deep references. Add only resources the workflow actually uses.
Workflow
- Define concrete user requests that should trigger the skill and the expected outputs.
- Search existing skills before creating a duplicate.
- Choose a lowercase hyphenated name and create
.wisp/skills/<name>/SKILL.mdwithwrite. - Add reusable scripts before writing long inline code examples. Execute every new script on representative local data.
- Add
kernel.pyonly for small reusable Python helpers. Loading a skill does not inject Wisp tools into Python. The rendered skill supplies a one-timeexec(compile(open(...)))instruction that defines the sidecar names in the persistentpythonkernel. - Validate structure with this skill's
scripts/quick_validate.py <skill-directory>. - Refresh or reopen the project if the new skill does not yet appear, then find
it with
search_skillsand load it withuse_skill. - Exercise the skill on realistic tasks. When explicit Wisp delegation is available, use a fresh bounded task with only the skill path and user-style request; do not leak the expected answer into the evaluation prompt.
For a user-wide installation, ask the user to install the validated folder via Settings → Skills. There is no Agent-side publish, overwrite, or delete API.
Frontmatter
At minimum include:
---
name: my-skill
description: Perform X. Use when the user asks for Y, Z, or related output.
---
The folder name and name should match. The description is the primary trigger;
state both what the skill does and when it should be selected.
Python sidecar rules
Keep top-level code definition-only:
- allow imports, function definitions, and literal constant assignments;
- defer optional third-party imports into function bodies;
- do not run work, access the network, or modify files at load time;
- do not depend on injected Agent, Run, credential, artifact, or model objects;
- pass paths and configuration explicitly;
- use
pythonto call helpers after the one-time loader instruction.
Use scripts/ instead when a helper is a standalone CLI, exceeds roughly one
hundred lines, needs argument parsing, or should run through run_in_context.
Evaluation resources
Use the bundled scripts only when their extra rigor is useful:
scripts/run_eval.pyfor test prompts;scripts/aggregate_benchmark.pyfor repeated result aggregation;scripts/generate_report.pyandeval-viewer/for human review;scripts/improve_description.pyfor trigger-description experiments;scripts/package_skill.pyto package a validated skill folder.
Inspect each script's CLI help before running it. Keep evaluation artifacts out of the skill folder unless they are intentional reusable resources.
Wisp boundaries
search_skillsanduse_skilldo not edit the catalog.- Project file tools cannot manage user-wide installed skills outside granted workspace paths.
run_in_contextexecutes deterministic work; it does not publish skills or call models.- Specialist creation is separate. Load
customizeand usesave_specialistonly when that explicit tool is advertised.