Content
# Algo-Coach
Interactive algorithm practice coach skill, based on [Code Log](https://programmercarl.com/)'s question bank and learning route.
Through MCP service, it provides question selection, code testing, solution explanation, and practical engineering application scenarios, suitable for algorithm learning, LeetCode brushing, and interview preparation.
## Features
- **Topic Learning Route** — 12 topics (arrays, linked lists, hash tables, binary trees, dynamic programming, etc.), advancing in recommended order
- **Theoretical Review** — Each topic comes with core concepts and basic knowledge explanations
- **Random Question Selection** — Filter by topic and difficulty, including question descriptions, constraints, examples, and multi-language function signatures
- **Code Testing** — Automatic testing of submitted code, instant feedback on pass/fail
- **Progressive Hints** — 4-level hint system (direction → idea → pseudo-code → complete solution), avoiding direct answers
- **Solution Explanation** — Optimal solution code + complexity analysis + key ideas + comparison with user solutions
- **Engineering Applications** — Each question is associated with 1-2 real production system cases (Redis, PostgreSQL, etc.)
- **Three Modes** — Student mode (guided teaching), interview mode (timed challenge), engineering mode (system design association)
- **Multi-Language Support** — Python / Java / C++ / Go / JavaScript / TypeScript
## Installation
### Claude Code
```bash
claude skill install algo-coach.skill
```
Or manually install MCP service:
```bash
claude mcp add --transport stdio algo-coach -- npx -y algo-coach-mcp@latest
```
### Cursor
Create `.cursor/mcp.json` in the project root directory:
```json
{
"mcpServers": {
"algo-coach": {
"command": "npx",
"args": ["-y", "algo-coach-mcp@latest"]
}
}
}
```
### VS Code (GitHub Copilot)
Create `.vscode/mcp.json` in the project root directory:
```json
{
"servers": {
"algo-coach": {
"type": "stdio",
"command": "npx",
"args": ["-y", "algo-coach-mcp@latest"]
}
}
}
```
### Other MCP Compatible Tools
Add the following configuration to the tool's MCP configuration file:
```json
{
"mcpServers": {
"algo-coach": {
"type": "stdio",
"command": "npx",
"args": ["-y", "algo-coach-mcp@latest"]
}
}
}
```
## Usage
After installation, restart the editor or session, then say to AI:
> Give me a hash table question
Or use any trigger word: `practice algorithm`, `brush question`, `algo coach`, `algorithm coach`, `give me a question`
### Instructions During Practice
| Instruction | Effect |
|------|------|
| hint | Get the next-level hint |
| solution | Directly view the solution |
| next | Enter the next question |
| cases | View engineering application cases |
| theory | Review topic basics |
| skip | Skip the current question |
| lang | Switch programming language |
## Project Structure
```
algo-coach/
SKILL.md # Skill definition (main file)
references/
mcp-tools.md # MCP tool API reference
algo-coach.skill # Distributable Skill installation package
```
## MCP Service
This Skill depends on [algo-coach-mcp](https://www.npmjs.com/package/algo-coach-mcp) to provide the following tools:
| Tool | Function |
|------|------|
| `get_topic_roadmap` | Get topic learning route |
| `get_theory` | Get topic theoretical basis |
| `pick_problem` | Randomly select a question |
| `generate_test_cases` | Generate test cases |
| `run_user_code` | Execute user code and verify |
| `get_solution` | Get reference solution |
| `get_real_world_cases` | Get engineering application cases |
Even if the MCP service is not available, the Skill can still run in a degraded mode — AI will complete questions, testing, and explanations based on its own knowledge.
## License
MIT