gskill - Auto-Learn Skills for Coding Agents
Automatically learn repository-specific skills by generating synthetic tasks and evolving skills through reflective optimization.
When to Use
- Agent is making similar mistakes on a repo
- Want to improve agent pass rate on specific codebase
- Setting up a new repo for agent work
- After significant codebase changes
Prerequisites
- SWE-smith installed at
~/SWE-smith - GEPA installed at
~/gepa - opencode available in PATH
- Target repo has tests
Commands
Generate Tasks
gskill generate-tasks --repo ~/prime-radiant-ai --max-tasks 100
Creates ~/prime-radiant-ai/.gskill/tasks.jsonl with synthetic bug-fix tasks.
Evolve Skills
gskill evolve --repo ~/prime-radiant-ai
Runs GEPA optimization loop. Outputs learned skill to .gskill/learned/SKILL.md.
Evaluate Skill
gskill evaluate --repo ~/prime-radiant-ai --skill .gskill/learned/SKILL.md
Tests a skill against tasks to measure pass rate.
Workflow
- Generate tasks for your repo (one-time or after major changes)
- Evolve skills using GEPA (takes 1-4 hours depending on max_metric_calls)
- Review learned skill in
.gskill/learned/SKILL.md - Install skill to
.claude/skills/learned/SKILL.mdin target repo - Measure improvement with
gskill evaluate
Output
Learned skills are stored in:
{repo}/.gskill/
├── tasks.jsonl # Generated tasks
├── evolution_log.jsonl # GEPA iteration log
└── learned/
└── SKILL.md # Learned skill
Example Learned Skill
3) Always check for NULL before aggregation
- Pattern: `COALESCE(column, 0)` or `column IS NOT NULL`
- Failure: NULL propagates, crashes downstream
- Test: `test_null_handling.py`
7) Use idempotent upserts for sync operations
- Pattern: `ON CONFLICT (id) DO UPDATE`
- Failure: Duplicate rows on retry
- Test: `test_sync_idempotency.py`
Configuration
| Parameter | Default | Description |
|---|---|---|
max_metric_calls | 100 | GEPA evaluation budget |
reflection_model | glm-5 | LLM for skill reflection |
language | python | Target language (python, typescript, javascript) |
Related Skills
skill-creator- For manual skill creationcontext-*- Repo-specific context skills
