Run Gauntlet Challenge
SkillAI & modelsPresents adaptive codebase challenge questions with multiple-choice and trace exercises. Use when testing contributor knowledge of the codebase.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Run Gauntlet Challenge skill
What this skill tells your AI
The instructions your AI receives, as published by athola/claude-night-market in plugins/gauntlet/skills/challenge/SKILL.md and read by ahel’s review.
Present challenges from the knowledge base and evaluate answers.
When NOT To Use
- The knowledge base does not exist yet (use
gauntlet:extract) - A staged path for a new contributor (use
gauntlet:onboard)
In-Loop Provider Setup
Before generating a challenge, register the in-loop variation provider so we do not call out to the Anthropic API just to spawn a sibling Claude (issue #464). Outside Claude Code this is a no-op and the default Anthropic provider remains active.
from gauntlet.providers.in_loop import (
register_in_loop_provider_if_inside_claude_code,
)
register_in_loop_provider_if_inside_claude_code()
Steps
-
Load state: read
.gauntlet/knowledge.jsonand developer progress -
Check for pending challenge: if
.gauntlet/state/pending_challenge.jsonexists, evaluate the developer's most recent message as an answer before generating a new one -
Generate challenge: use adaptive weighting to select a knowledge entry and challenge type
-
Present challenge: show the question with context
-
Evaluate answer: score the response (pass/partial/fail)
-
Record result: update developer progress and streak
-
On pass: write pass token if from pre-commit gate. Show next challenge if in session.
-
On fail: show correct answer with explanation. Present a new challenge.
Scoring
| Result | Score | Streak |
|---|---|---|
| Pass | 1.0 | +1 |
| Partial | 0.5 | reset |
| Fail | 0.0 | reset |
Exit Criteria
-
.gauntlet/knowledge.jsonexists and is readable before a challenge is generated; if missing, the skill surfaces the error and suggests runninggauntlet:extract - Each challenge attempt results in a score (1.0/0.5/0.0) written to the developer's progress store and a streak update applied
-
.gauntlet/state/pending_challenge.jsonis evaluated before generating a new challenge when it exists; the file is removed or updated after evaluation - On fail, the correct answer and explanation are shown before the next challenge is presented (not skipped silently)
Signals
- GitHub stars
- 337
- Forks
- 34
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
challenge-athola- Source
- github.com/athola/claude-night-market