skills/ai-request-skill/SKILL.md
Request or contribute a new AI skill that does not exist yet. Use when DSPy supports something but there is no skill for it — helps you build the skill and submit a PR, or file an issue requesting it. Also use when the user says there should be a skill for this, can we make a skill, I want to contribute a skill, none of the ai- skills cover my use case, how do I add a new skill, submit a skill, or open a PR for a missing skill.
npx skillsauth add lebsral/dspy-programming-not-prompting-lms-skills ai-request-skillInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The user needs a DSPy capability that doesn't have a skill yet. Help them contribute it or request it.
This skill always ends with a concrete action on GitHub:
lebsral/DSPy-Programming-not-prompting-LMs-skillslebsral/DSPy-Programming-not-prompting-LMs-skills describing what's neededDo not stop at "here's what the PR/issue would look like" — actually create it using gh pr create or gh issue create.
If $ARGUMENTS is provided, use it. Otherwise ask: "What DSPy capability do you need that isn't covered by an existing skill?"
Verify this is something DSPy actually supports. If it's outside DSPy's scope entirely (e.g., "build a React frontend"), say so and suggest appropriate tools instead.
Check the existing skills in skills/ or ai-* to make sure there isn't already a skill that covers this. If there's a close match, suggest it instead.
Summarize back to the user:
Ask the user:
Would you like to:
- Build the skill — I'll help you create it with proper testing and prepare a PR
- Request the skill — I'll draft a GitHub issue so the maintainers know it's needed
Check whether the /skill-creator skill is available (it's from the anthropics/skills repo). If available, delegate to it — it handles the full create-test-iterate workflow including evaluation, benchmarking, and description optimization.
When delegating to /skill-creator, first read the repo standards so the skill matches conventions:
docs/skill-standards.md — the full authoring checklist (naming, descriptions, gotchas, cross-refs, progressive disclosure, provider-agnostic code)docs/skills-spec.md — the Claude Code skills format (frontmatter fields, file structure, supporting files)CLAUDE.md — repo-level conventions (dual naming, web-developer language, 500-line limit)Pass the contents of these files as context to /skill-creator so it generates a skill that matches repo standards on the first pass.
Then let skill-creator run its workflow: draft → test → review → iterate → package.
Build the skill manually. First read the standards:
docs/skill-standards.md for the full authoring checklistdocs/skills-spec.md for the Claude Code skills formatskills/ to match tone and structureInstall skill-creator for future use:
npx skills add anthropics/skills/skill-creator
Follow the structure in docs/skill-standards.md. Key points:
<WHAT>. Use when <triggers>. Also: <more triggers>. — plain YAML scalar, no quotes# or ... comment, copy-pasteable with importsreference.md for dspy- skills or ai- skills that heavily reference DSPy APIsCreate 2-3 test prompts — realistic requests a developer would make. Run them with the skill active and verify the outputs make sense.
After creating (and optionally testing) the skill files, submit a pull request. Do all of these steps — don't stop at "here's what to do":
README.md — add a row to the problem catalog table in the appropriate positiongit checkout -b add-ai-<problem-name>git add skills/ai-<problem-name>/ README.md && git commit -m "Add ai-<problem-name> skill"git push -u origin add-ai-<problem-name>gh pr create \
--repo lebsral/DSPy-Programming-not-prompting-LMs-skills \
--title "Add ai-<problem-name> skill" \
--body "$(cat <<'EOF'
## Summary
- **Problem**: <what the user is solving>
- **DSPy features**: <modules, patterns used>
- **Example invocation**: `/ai-<problem-name> <example prompt>`
## Files
- `skills/ai-<problem-name>/SKILL.md` — main instructions
- `skills/ai-<problem-name>/examples.md` — worked examples
- `README.md` — catalog table updated
EOF
)"
Return the PR URL to the user when done.
File a GitHub issue on the repo. Do not just draft it — actually submit it:
gh issue create \
--repo lebsral/DSPy-Programming-not-prompting-LMs-skills \
--title "Skill request: ai-<problem-name>" \
--assignee lebsral \
--body "$(cat <<'EOF'
## Problem
<What the user is trying to do, in their words>
## DSPy capability
<Which DSPy modules, integrations, or patterns would power this>
## Example use case
<A concrete scenario where this skill would help>
## Suggested trigger phrases
<2-3 phrases a developer might say that should route to this skill>
EOF
)"
Return the issue URL to the user when done.
Validate against docs/skill-standards.md (the authoritative checklist). Key items:
/ai-do back-link# or ... commentreference.md for dspy- skills (or ai- skills that heavily use DSPy APIs)/ai-do catalog updated with new routing entrydescription: Monitor AI quality... not description: "Monitor AI quality..."./ai-do routing table. New skills are invisible if /ai-do cannot route to them. Every PR adding a skill must also add a row to the ai-do catalog so the routing skill knows the new skill exists.dspy- skill when the user describes a problem. If the user says "I need AI that monitors quality," build an ai-observability skill (problem-first), not dspy-langfuse (tool-first). The dspy- prefix is only for users who already know which DSPy concept they want./skill-creator without passing DSPy context. If skill-creator is available, it does not know DSPy conventions by default. Always pass the DSPy-specific context block (dual naming, provider-agnostic code, reference.md pattern) or the resulting skill will not match repo standards.Install any skill:
npx skills add lebsral/DSPy-Programming-not-prompting-LMs-skills --skill <name>
/ai-dodocs/skill-standards.md/ai-do if you do not have it — it routes any AI problem to the right skill and is the fastest way to work: npx skills add lebsral/DSPy-Programming-not-prompting-LMs-skills --skill ai-dotools
See what is happening during optimizer.compile() instead of waiting blind. Use when you want to watch optimization progress, see scores as they come in, know if your optimizer is working, check if optimization is stuck, understand why optimization is taking too long, get live progress during compile, monitor convergence, detect overfitting during optimization, interpret optimization results, or pick the right tool for watching optimization. Also used for optimizer progress bar, is my optimizer doing anything, optimization seems stuck, how long will optimization take, watch GEPA run, watch MIPROv2 run, live optimization dashboard, optimizer not improving, scores not going up, optimization taking forever, see what optimizer is doing, debug slow optimization, optimization visibility, optimizer metrics, track compile progress, optimization observability.
testing
Use when you want the highest-quality prompt optimization DSPy offers — jointly optimizes instructions and few-shot demos, with auto=light/medium/heavy presets. Common scenarios - you want the best possible accuracy from prompt optimization, jointly tuning instructions and few-shot demonstrations, using auto presets for different compute budgets, or when COPRO or BootstrapFewShot alone are not reaching your accuracy target. Related - ai-improving-accuracy, dspy-copro, dspy-bootstrap-few-shot. Also used for dspy.MIPROv2, best DSPy optimizer, highest quality optimization, auto=light medium heavy, joint instruction and demo optimization, most powerful prompt optimizer, MIPROv2 vs COPRO vs BootstrapFewShot, which optimizer should I use, state of the art prompt optimization, when to use MIPROv2, optimize both instructions and examples, heavy optimization for production, best optimizer for accuracy.
testing
Use LangWatch for DSPy auto-tracing and real-time optimizer progress. Use when you want to set up LangWatch, langwatch.dspy.init, auto-tracing DSPy, real-time optimization dashboard, optimizer progress tracking, app.langwatch.ai, or DSPy optimizer dashboard. Also used for langwatch setup, pip install langwatch, langwatch trace, optimizer progress, real-time optimization, watch optimizer run, LangWatch self-hosted, langwatch docker, langwatch vs langtrace, langwatch autotrack_dspy.
data-ai
Use when you want to optimize instructions without few-shot examples — a lightweight alternative to COPRO when you do not have or do not want to use demonstrations. Common scenarios - optimizing instructions when you do not have or do not want to use few-shot demonstrations, lightweight instruction search as a first step, tasks where examples in the prompt confuse the model, or when you want fast instruction optimization without the cost of COPRO. Related - ai-improving-accuracy, dspy-copro, dspy-miprov2. Also used for dspy.GEPA, instruction optimization without demos, lightweight prompt optimization, optimize instructions only, no few-shot examples needed, GEPA vs COPRO, quick instruction search, when demonstrations hurt performance, zero-shot optimization, instruction-only optimizer, simplest instruction tuner, fast prompt optimization, skip few-shot and just tune instructions, optimize Pydantic field descriptions, GEPA structured output, GEPA does not optimize field desc.