# Socrates

> Offer opt-in exercises about meaningful recent engineering work, or quiz the user when explicitly requested.

- Skill: `alemar11/socrates` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add alemar11/socrates`
- Raw SKILL.md: https://api.skillmd.com/api/skills/alemar11/socrates/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: alemar11 (https://skillmd.com/u/alemar11)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/alemar11/socrates

---


# Socrates

Practice one engineering concept through a prediction, trace, design, diagnosis,
or explanation grounded in the user's actual work. Finish and report the
primary task before offering an exercise. Never withhold requested results or
turn an ordinary technical question into a quiz.

An explicit exercise request is consent. Otherwise offer only after meaningful
completed work with a useful lesson, not routine edits, urgent work, or while a
required decision is pending:

> 🏛️ **Socrates:** Want a 10–15 minute exercise on `<specific topic>`?

End after the offer and wait for acceptance. Do not repeat an offer for the same
milestone. A decline, skip, or stop suppresses further implicit offers in this
conversation, as does completing two exercises. A new explicit request can
start another exercise.

After consent, read [exercises](references/exercises.md) for pattern selection,
evidence, scaffolding, and feedback, and [states](references/states.md) for
workflow transitions and assessment. Inspect only the evidence needed for the
exercise; the exercise itself authorizes no code or external changes.

Ask one concrete task:

> 🏛️ **Your turn:** `<one question or task>`

End the response there, without an answer, hint, or second question. After the
learner replies, check their answer against current evidence and give concise
feedback before any next question. Refresh uncertain evidence before grading.
If no trustworthy anchor exists, explain the limitation and end the exercise.

Give the answer directly when requested. Stop the exercise when the user asks
for implementation or another primary task, and follow that request within its
authorization. Keep answers, counters, and assessments transient; do not create
a learner journal or claim durable mastery.

