Not in the top 1,000 by GitHub stars
Far-200/think-before-code
Socratic Agent Skills for learning problem-solving and software-engineering judgment — one question at a time.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/code-review-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/complexity-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/concept-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/debug-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/dry-run-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/dsa-tutor/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/mock-interviewer/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/pattern-transfer-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/problem-decoder/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/specification-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
skills/test-case-coach/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 92318e2094f7
No earlier version was observed for comparison.
Heat
2.4- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- code-review-coach
skills/code-review-coach - complexity-coach
skills/complexity-coach - concept-coach
skills/concept-coach - debug-coach
skills/debug-coach - dry-run-coach
skills/dry-run-coach - dsa-tutor
skills/dsa-tutor - mock-interviewer
skills/mock-interviewer - pattern-transfer-coach
skills/pattern-transfer-coach - problem-decoder
skills/problem-decoder - specification-coach
skills/specification-coach - test-case-coach
skills/test-case-coach
How it works
code-review-coach
When your agent uses it
Use when the learner wants to practise reviewing existing code, a diff, or a pull request through guided questioning — discovering and justifying findings one concern at a time instead of receiving a dumped list or a rewrite. The first non-DSA skill in this suite. Not for chasing an already-observed concrete failure (debug-coach), not for designing a systematic test suite (test-case-coach), not for pure Big-O derivation (complexity-coach), not for solving an unsolved DSA problem (dsa-tutor), and not for a plain exhaustive review or full refactor the learner explicitly wants delivered whole.
What it loads into context
Frontmatter
135 tokensAlways available to the agent
SKILL.md
3,590 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Boundary with neighboring skills
- Activation
- Non-activation
- Circuit breaker
- Required context: the review contract
- Review lenses
- Operating procedure
- Escalation ladder
- Evidence, impact, and severity discipline
- Session continuity
- Design patterns and "best practices"
- Strict restrictions
- Code release condition
- Completion
- What good looks like
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore16,448 bytes
Read SKILL.md
# Code Review Coach
## Why this exists
The premature-answer problem this repository exists to interrupt is
not unique to DSA. Ask an LLM to review code and it produces every
finding at once — fifteen bullet points, a severity for each, and
usually a rewritten version "for reference." The review is complete;
the reviewer's judgment it was supposed to build never forms. The
learner ships the fixes without ever having noticed a single risk
themselves.
This skill exists to make the learner do the noticing: establish what
the code promises, inspect one risk at a time, tie every claim toView the complete source on GitHubcomplexity-coach
When your agent uses it
Use when the learner has a working approach or code and wants to determine or justify its time and space complexity. Focuses purely on Big-O derivation — nested-loop counting, recurrences, amortized cost — not on designing or debugging the algorithm itself. A standalone drill, and a deeper version of the single complexity question dsa-tutor asks during verification.
What it loads into context
Frontmatter
80 tokensAlways available to the agent
SKILL.md
1,020 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Circuit breaker
- Protocol
- Common misconceptions to probe, not correct directly
- What good looks like
- Completion
Files
SKILL.mdcore4,561 bytes
Read SKILL.md
# Complexity Coach
## Why this exists
dsa-tutor asks about complexity once, as one item among several during
verification. That's enough to check the box, but it's not enough to
build the skill of derivation — most learners answer with the
complexity they've memorized for a pattern name, not one they worked
out from the actual code in front of them. This skill exists to drill
the derivation itself, either standalone or as a deeper follow-up to
that single verification question.
This skill does not evaluate whether the algorithm is correct, and it
does not suggest a better approach. If the learner's approach itselfView the complete source on GitHubconcept-coach
When your agent uses it
Use when the learner wants to build understanding of a general programming, software-engineering, systems, or architecture concept — references, recursion, closures, coupling, dependency injection, caching, concurrency, queues, consistency, and similar — through Socratic coaching from their current mental model, with no concrete task behind the question. Not for an unsolved DSA problem (dsa-tutor), a DSA statement to decode (problem-decoder), tracing a concrete input (dry-run-coach), an observed failure in real code (debug-coach), deriving complexity of real code (complexity-coach), designing a test suite (test-case-coach), abstracting a pattern from a solved problem (pattern-transfer-coach), timed interview simulation (mock-interviewer), defining real feature behavior (specification-coach), or reviewing code, a diff, or a PR (code-review-coach). Not for a direct one-shot answer the learner explicitly wants with no coaching, and not a fallback for every question no specialist claims.
What it loads into context
Frontmatter
213 tokensAlways available to the agent
SKILL.md
4,934 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Boundary with neighboring skills
- Activation
- Non-activation
- Circuit breaker
- Inspect before asking
- Core loop
- Mental models over vocabulary
- Tiny concrete examples
- Explanation and escalation discipline
- One focused question per response
- Code policy
- Naming concepts and patterns
- Verification before praise
- Handling misconceptions
- Session continuity
- Strict restrictions
- What good looks like
- Completion
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore22,907 bytes
Read SKILL.md
# Concept Coach
## Why this exists
Every other skill in this repository starts from an artifact: an
unsolved problem, a concrete input, failing code, working code, a
vague feature, a diff. That's deliberate — it's what keeps each one
narrow and routable.
But a lot of real confusion has no artifact yet. "I don't understand
what a closure actually captures." "Why is a race condition a race at
all?" "What does `async`/`await` do underneath?" Nothing is broken,
nothing is being solved, nothing is being reviewed. The learner just
doesn't have a working model of an idea yet — and handing thatView the complete source on GitHubdebug-coach
When your agent uses it
Use when the learner already has written code or pseudocode, knows what it should do, and it isn't doing that — and they want the bug isolated without receiving a rewritten solution. Not for choosing an approach (use dsa-tutor), not for tracing an approach that has no code yet (use dry-run-coach), and not for plain syntax questions with no observed failure.
What it loads into context
Frontmatter
84 tokensAlways available to the agent
SKILL.md
2,702 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Boundary with neighboring skills
- Activation
- Non-activation
- Circuit breaker
- Operating procedure
- Escalation ladder
- Restrictions
- Mistake logging
- Session continuity
- Completion
- What good looks like
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore11,942 bytes
Read SKILL.md
# Debug Coach
## Why this exists
dsa-tutor lists "debug without replacing the learner's code" as one
stage among many in a full session. This skill is the deeper version
of that single stage, the same way `complexity-coach` is the deeper
version of dsa-tutor's verification question and `dry-run-coach` is
the deeper version of its dry-run stage.
Left alone, an LLM asked to debug code drifts toward the fastest fix:
read the function, spot the issue, rewrite it, done. That produces
correct code and teaches nothing. This skill exists to interrupt that
drift and make the learner find the bug themselves.View the complete source on GitHubdry-run-coach
When your agent uses it
Use when the learner already has an approach or algorithm in mind and needs to manually trace it, step by step, on a concrete input to verify or debug their mental model. Not for choosing an approach or writing code — use dsa-tutor for those. Teaches the actual mechanics of tracing, which dsa-tutor only names as a single stage.
What it loads into context
Frontmatter
81 tokensAlways available to the agent
SKILL.md
1,572 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Circuit breaker
- Protocol
- Escalation ladder
- What good looks like
- Session continuity
- Completion
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore6,850 bytes
Read SKILL.md
# Dry Run Coach
## Why this exists
"Dry-run it" is one line in most tutoring flows. In practice, most
learners don't actually trace anything — they eyeball the algorithm,
feel confident, and declare it works. That confidence is exactly what
dsa-tutor's copy-paste detection is built to catch downstream. This
skill exists earlier: it teaches what a real trace looks like, so
there's something rigorous to test in the first place.
This skill does not help pick an approach and does not write code. If
the learner doesn't have an approach yet, send them to dsa-tutor
first. It also traces exactly one concrete input at a time throughView the complete source on GitHubdsa-tutor
When your agent uses it
Use when the user is working through a DSA or LeetCode-style problem and wants to build real problem-solving ability instead of receiving a finished solution. Guides through questions, withholds solutions until genuine struggle has happened, and logs mistakes with root causes instead of surface symptoms.
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
2,672 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- The circuit breaker
- Response protocol
- First response
- Hint escalation
- Code circuit breaker
- Genuine struggle and release condition
- Verification discipline
- Copy-paste detection
- After the problem clicks
- Tutor state awareness
- Session continuity
- Mistake log format
- Strict response behavior
- What good looks like
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore12,596 bytes
Read SKILL.md
# DSA Tutor
## Why this exists
Left alone, an LLM drifts toward maximum helpfulness: stuck user → full
solution, complexity analysis, dry run, code in four languages. That is
the failure mode. It removes the struggle that actually builds the skill.
This skill exists to interrupt that drift on purpose.
Its scope is a DSA problem worked end to end. Reviewing existing
non-DSA application code — a service, a pull request, a module from a
real codebase — is `code-review-coach`'s session, not this one's.
View the complete source on GitHubmock-interviewer
When your agent uses it
Use when the learner explicitly wants a timed, realistic technical-interview simulation for a DSA problem rather than incremental learning support. Minimizes proactive hints during the attempt and gives structured rubric feedback only at the end. This is the opposite interaction mode from dsa-tutor — do not blend the two in one session.
What it loads into context
Frontmatter
71 tokensAlways available to the agent
SKILL.md
936 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Mode contract
- During the attempt
- At the end
- What good looks like
- Boundary with dsa-tutor
Files
SKILL.mdcore4,321 bytes
Read SKILL.md
# Mock Interviewer
## Why this exists
dsa-tutor is built to protect learning: withhold until struggle is
genuine, escalate hints slowly, never let fluency substitute for
understanding. That is deliberately the wrong mode for interview
practice, where hints are scarce, time is finite, and the skill being
built is performing under those constraints — not being scaffolded
through them. This skill exists to simulate that scarcity honestly.
Do not use dsa-tutor's hint ladder here. Softening the pressure
defeats the point of the exercise.
View the complete source on GitHubpattern-transfer-coach
When your agent uses it
Use after the learner has solved or substantially completed a DSA problem and wants to turn it into transferable knowledge — abstracting the structure away from the story, naming signals that suggest or rule out the pattern, and adapting it to exactly one cousin problem. Not for solving the original problem (dsa-tutor), not for generic data-structure or pattern definitions with no solved problem behind them (concept-coach), not for timed interview simulation (mock-interviewer), and not for complexity derivation (complexity-coach).
What it loads into context
Frontmatter
113 tokensAlways available to the agent
SKILL.md
2,381 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Boundary with neighboring skills
- Activation
- Non-activation
- Circuit breaker
- Protocol
- Strict response behavior
- Session continuity
- What good looks like
- Completion
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore10,651 bytes
Read SKILL.md
# Pattern Transfer Coach
## Why this exists
A solved problem is not the same thing as a learned pattern. Most
learners close the tab, and the solution calcifies into a memorized
answer keyed to one story — "the stock one," "the rainwater one" —
that never fires again when the same structure shows up wearing
different nouns.
dsa-tutor already ends a session with one cousin problem. That's the
seed of transfer, not the whole of it. This skill is the deeper
version of that closing step: strip the story off the solution,
name what actually made it work, learn to recognize it — and, just asView the complete source on GitHubproblem-decoder
When your agent uses it
Use when the learner has a raw DSA or LeetCode-style problem statement and needs to pin down exactly what is being asked — inputs, outputs, constraints, and edge cases — before any solving begins. Not for hints, approach design, or debugging; hand off to dsa-tutor once the problem is fully understood.
What it loads into context
Frontmatter
74 tokensAlways available to the agent
SKILL.md
1,542 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Circuit breaker
- What to extract
- Protocol
- What good looks like
- Session continuity
- Handoff
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore6,963 bytes
Read SKILL.md
# Problem Decoder
## Why this exists
A large share of DSA mistakes are not reasoning errors at all — they are
`reading-error`: the learner solved a problem slightly different from
the one that was actually asked. dsa-tutor assumes the problem has
already been read correctly and starts from "describe a brute-force
approach." This skill is the step before that: force a precise reading
before any solving instinct kicks in.
This skill never designs an approach, names a pattern, or gives a
hint toward a solution. Once the problem is fully decoded, hand the
learner back to dsa-tutor.View the complete source on GitHubspecification-coach
When your agent uses it
Use when the learner has a vague feature request, issue, change request, or agent task and wants to turn it into an implementation-ready specification through guided questioning — clarifying observable behaviour, scope, non-goals, constraints, failure behaviour, acceptance criteria, and the smallest verifiable slice, without the model inventing requirements or writing the implementation. Not for reviewing existing code or a diff (code-review-coach), not for diagnosing an already-observed concrete failure (debug-coach), not for designing a systematic test suite around existing code (test-case-coach), not for decoding a DSA problem statement (problem-decoder), not for solving a DSA problem (dsa-tutor), and not for a direct request to have a complete specification, PRD, plan, or implementation delivered immediately.
What it loads into context
Frontmatter
169 tokensAlways available to the agent
SKILL.md
3,982 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Boundary with neighbouring skills
- Activation
- Non-activation
- Circuit breaker
- Vague-language hard stop
- Required context
- Ambiguity prioritisation
- Operating procedure
- Escalation ladder
- Acceptance-criteria discipline
- Strict response behaviour
- Specification artifact
- Session continuity
- Strict restrictions
- What good looks like
- Completion and handoff
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore19,305 bytes
Read SKILL.md
# Specification Coach
## Why this exists
Agents are now asked to implement things. The bottleneck moved.
Hand an implementation agent "add CSV export to the orders page" and
it will not stop. It infers the missing requirements — every field,
every permission, a background job, a retry policy — and starts
coding against a product nobody specified. The code arrives. Whether
it is the *right* code is unanswerable, because nothing was defined
well enough to check it against.
The failure is upstream of the code. A request that two competentView the complete source on GitHubtest-case-coach
When your agent uses it
Use when the learner already has an approach or implementation and wants help designing a compact, justified test suite — finding missing cases, boundary values, or adversarial inputs that stress the algorithm's assumptions. Not for decoding a raw problem statement's implied edge cases (problem-decoder), not for tracing one chosen input step by step (dry-run-coach), not for chasing an already-observed concrete failure (debug-coach), and not for building the approach itself (dsa-tutor).
What it loads into context
Frontmatter
106 tokensAlways available to the agent
SKILL.md
2,416 tokensWhen the skill is activated
Reference documents
901 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this exists
- Boundary with neighboring skills
- Activation
- Non-activation
- Circuit breaker
- Protocol
- Strict response behavior
- What good looks like
- Session continuity
- Completion
Files
../../session-state/checkpoint-template.mddoc4,134 bytesSKILL.mdcore10,874 bytes
Read SKILL.md
# Test Case Coach
## Why this exists
Left alone, an LLM asked "what should I test?" produces a wall of
thirty edge cases in one response. The learner copies them, runs them,
and learns nothing about *why* those cases matter or how to find the
next set themselves. The list is complete; the skill it was supposed
to build never forms.
This skill exists to make the learner design the suite: partition the
input space, pick boundary representatives, attack their own
assumptions, and predict every expected output — one dimension at a
time, with a justification attached to every case that survives.View the complete source on GitHubSkills included
- code-review-coach
- complexity-coach
- concept-coach
- debug-coach
- dry-run-coach
- dsa-tutor
- mock-interviewer
- pattern-transfer-coach
- problem-decoder
- specification-coach
- test-case-coach
Repository facts
- License
- MIT
- Created
- Jul 13, 2026
- Last pushed
- Sep 7, 2026
- Forks
- 4
- Open issues
- 0
- Project activity
- Active
Before you install
Instructions onlyAutomated signals, not a guarantee
Checked Nov 6, 2026
- No broad tool permissions
- No dangerous shell commands
- No network access
- No hidden or obfuscated text
- No instruction overrides
- No executable scripts
- No access to secrets
- No requests to vote in Hot
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
No combined signals at this commit.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md skills/code-review-coach/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/code-review-coach/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/code-review-coach/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/code-review-coach/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/code-review-coach/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/code-review-coach/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.