Skip to content
Back to skills

Challenge

ASecurity

Presents adaptive codebase challenge questions with multiple-choice and trace exercises. Use when testing contributor knowledge of the codebase.

  • 3 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 12, 2026
ai-agentspythongotestinggitapi

Works with

  • claude code
  • api

Security analysis

A100/100

Scanned September 12, 2026

npx -y skills add thedixitjain/the-mega-skill-library --skill challenge --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Challenge?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Challenge
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thedixitjain-challenge-the-mega-skill-library/badge)](https://www.skillsdirectory.com/skills/thedixitjain-challenge-the-mega-skill-library)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: challenge
description: "Presents adaptive codebase challenge questions with multiple-choice and trace exercises. Use when testing contributor knowledge of the codebase."
category: engineering-core
source_repo: athola/claude-night-market
source_path: "plugins/gauntlet/skills/challenge/SKILL.md"
source_url: https://github.com/athola/claude-night-market/blob/HEAD/plugins/gauntlet/skills/challenge/SKILL.md
---


# Run Gauntlet Challenge

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.

```python
from gauntlet.providers.in_loop import (
    register_in_loop_provider_if_inside_claude_code,
)
register_in_loop_provider_if_inside_claude_code()
```

## Steps

1. **Load state**: read `.gauntlet/knowledge.json` and developer
   progress

2. **Check for pending challenge**: if
   `.gauntlet/state/pending_challenge.json` exists, evaluate the
   developer's most recent message as an answer before generating
   a new one

3. **Generate challenge**: use adaptive weighting to select a
   knowledge entry and challenge type

4. **Present challenge**: show the question with context

5. **Evaluate answer**: score the response (pass/partial/fail)

6. **Record result**: update developer progress and streak

7. **On pass**: write pass token if from pre-commit gate. Show
   next challenge if in session.

8. **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.json` exists and is readable before a
  challenge is generated; if missing, the skill surfaces the error
  and suggests running `gauntlet: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.json` is 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)

---

**Source:** [`athola/claude-night-market`](https://github.com/athola/claude-night-market) → `plugins/gauntlet/skills/challenge/SKILL.md`

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.