Skill Creator
Create Ellama skills that are small enough to trigger reliably, explicit
enough for local models, and backed by deterministic tools when work should not
depend on model memory.
Workflow
Identify concrete trigger examples.
- Ask at most one or two questions if the user has not provided examples.
- Capture what a user would say, what files/tools are involved, and what a
correct output looks like.
- Reuse the location the user gave. If none is given, default to
~/.emacs.d/ellama/skills/ for global skills or skills/ for
project-local skills.
Choose the skill shape.
- Use only
SKILL.md for a simple procedural skill.
- Add
references/ for detailed guidance that should be loaded only when
needed.
- Add
scripts/ for fragile, repetitive, or mechanically checkable work.
- Add
templates/ for reusable task subagent prompts.
- Add
assets/ only for files copied or transformed into final outputs.
Initialize the folder.
- Prefer the bundled initializer:
python3 <skill-dir>/scripts/init_ellama_skill.py <name> --path <dir>.
- Use lowercase letters, digits, and hyphens for names.
- Make the folder name match the
name field.
Write SKILL.md.
- Use YAML frontmatter with at least
name and description.
- Put all trigger conditions in
description; the body is loaded only after
the model has already selected the skill.
- Keep the body as a routing and workflow guide, not a manual.
- Link every reference file from
SKILL.md and say when to read it.
Adapt for Ellama tools.
- Use
read_file to load skill instructions and references.
- Use
grep, grep_in_file, lines_range, and directory_tree before
broad reads.
- Use
write_file for new files and edit_file for precise edits.
- Use
shell_command only when deterministic validation or generation is
worth the extra tool risk.
- Use
ask_user only when a missing answer would make the skill wrong.
- Use
task only for clearly separable work; require subagents to finish
with report_result.
Validate.
- Run
python3 <skill-dir>/scripts/validate_ellama_skill.py <target-skill>.
- Run or smoke-test any added scripts.
- For skills that use
task, check template placeholders against the
documented arguments object.
Iterate from real failures.
- Prefer changing a script, template, reference, or validation check over
adding vague warnings to
SKILL.md.
- When a small model repeats the same mistake, add a mechanical example or a
narrower instruction near the step where the mistake happens.
Ellama References
Read only the file needed for the current decision:
references/ellama-skill-format.md: Ellama skill structure, frontmatter,
discovery paths, task templates, and validation rules.
references/small-model-skill-design.md: How to make skills robust for
small/local models.
references/porting-codex-skills.md: How to port Codex/OpenAI skills to
Ellama without copying incompatible assumptions.
Output Shape
When creating or updating a skill, report:
Skill path:
Files created or changed:
Validation:
Notes:
Keep the final answer short. Mention only meaningful tradeoffs, missing inputs,
or validation that could not be run.
1---2name: skill-creator3description: Create or update Ellama Agent Skills. Use when designing new skills, porting skills from other agent systems, improving SKILL.md instructions, adding bundled resources, validating metadata, or adapting skills for small/local models.4---56# Skill Creator78Create Ellama skills that are small enough to trigger reliably, explicit9enough for local models, and backed by deterministic tools when work should not10depend on model memory.1112## Workflow13141. Identify concrete trigger examples.15 - Ask at most one or two questions if the user has not provided examples.16 - Capture what a user would say, what files/tools are involved, and what a17 correct output looks like.18 - Reuse the location the user gave. If none is given, default to19 `~/.emacs.d/ellama/skills/` for global skills or `skills/` for20 project-local skills.21222. Choose the skill shape.23 - Use only `SKILL.md` for a simple procedural skill.24 - Add `references/` for detailed guidance that should be loaded only when25 needed.26 - Add `scripts/` for fragile, repetitive, or mechanically checkable work.27 - Add `templates/` for reusable `task` subagent prompts.28 - Add `assets/` only for files copied or transformed into final outputs.29303. Initialize the folder.31 - Prefer the bundled initializer:32 `python3 <skill-dir>/scripts/init_ellama_skill.py <name> --path <dir>`.33 - Use lowercase letters, digits, and hyphens for names.34 - Make the folder name match the `name` field.35364. Write `SKILL.md`.37 - Use YAML frontmatter with at least `name` and `description`.38 - Put all trigger conditions in `description`; the body is loaded only after39 the model has already selected the skill.40 - Keep the body as a routing and workflow guide, not a manual.41 - Link every reference file from `SKILL.md` and say when to read it.42435. Adapt for Ellama tools.44 - Use `read_file` to load skill instructions and references.45 - Use `grep`, `grep_in_file`, `lines_range`, and `directory_tree` before46 broad reads.47 - Use `write_file` for new files and `edit_file` for precise edits.48 - Use `shell_command` only when deterministic validation or generation is49 worth the extra tool risk.50 - Use `ask_user` only when a missing answer would make the skill wrong.51 - Use `task` only for clearly separable work; require subagents to finish52 with `report_result`.53546. Validate.55 - Run `python3 <skill-dir>/scripts/validate_ellama_skill.py <target-skill>`.56 - Run or smoke-test any added scripts.57 - For skills that use `task`, check template placeholders against the58 documented `arguments` object.59607. Iterate from real failures.61 - Prefer changing a script, template, reference, or validation check over62 adding vague warnings to `SKILL.md`.63 - When a small model repeats the same mistake, add a mechanical example or a64 narrower instruction near the step where the mistake happens.6566## Ellama References6768Read only the file needed for the current decision:6970- `references/ellama-skill-format.md`: Ellama skill structure, frontmatter,71 discovery paths, task templates, and validation rules.72- `references/small-model-skill-design.md`: How to make skills robust for73 small/local models.74- `references/porting-codex-skills.md`: How to port Codex/OpenAI skills to75 Ellama without copying incompatible assumptions.7677## Output Shape7879When creating or updating a skill, report:8081```text82Skill path:83Files created or changed:84Validation:85Notes:86```8788Keep the final answer short. Mention only meaningful tradeoffs, missing inputs,89or validation that could not be run.