start-learning
One-time onboarding for the AI Engineering from Scratch curriculum (542 lessons, 20 phases). Interviews the learner, runs the placement quiz, and writes LEARNING.md, a persistent study plan the learn skill drives. Trigger phrases: "start learning", "set up the course", "begin the curriculum", "onboard me", "create my learning plan"
- License 许可
- MIT
- 最近更新
- 2026-11-10
- Stars
- ★ 7.8w
- Forks
- 1.4w
01 前言 Front Matter
- name
- systematic-debugging
- description
- Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
02 资源文件 3
- 参考文档condition-based-waiting.md896 B
- 参考文档defense-in-depth.md761 B
- 参考文档root-cause-tracing.md877 B
03 SKILL.md 正文
Systematic Debugging
Find the cause from evidence before changing behavior. Match the depth of the investigation to the problem; a clear local failure does not need a formal incident process. Use the following phases to avoid speculative fixes.
Phase 1: Root Cause Investigation
BEFORE attempting ANY fix:
-
Read Error Messages Carefully
- Don't skip past errors or warnings
- They often contain the exact solution
- Read stack traces completely
- Note line numbers, file paths, error codes
-
Reproduce Consistently
- Can you trigger it reliably?
- What are the exact steps?
- Does it happen every time?
- If not reproducible -> gather more data, don't guess
-
Check Recent Changes
- What changed that could cause this?
- Git diff, recent commits
- New dependencies, config changes
- Environmental differences
-
Gather Evidence in Multi-Component Systems
WHEN system has multiple components (CI -> build -> signing, API -> service -> database):
When existing evidence does not locate the failure, add targeted diagnostics:
For EACH component boundary: - Log what data enters component - Log what data exits component - Verify environment/config propagation - Check state at each layer Run once to gather evidence showing WHERE it breaks THEN analyze evidence to identify failing component THEN investigate that specific componentFor example, compare a request's identifier, input shape, and result at the API, worker, and database boundaries to locate where behavior diverges. Record redacted state or presence, never secret values or broad environment dumps.
-
Trace Data Flow
WHEN error is deep in call stack:
See
root-cause-tracing.mdin this directory for the complete backward tracing technique.Quick version:
- Where does bad value originate?
- What called this with bad value?
- Keep tracing up until you find the source
- Fix at source, not at symptom
Phase 2: Pattern Analysis
Find the pattern before fixing:
-
Find Working Examples
- Locate similar working code in same codebase
- What works that's similar to what's broken?
-
Compare Against References
- Read the relevant reference implementation and version-specific contracts
- Understand the dependencies and assumptions before applying the pattern
-
Identify Differences
- What's different between working and broken?
- List every difference, however small
- Don't assume "that can't matter"
-
Understand Dependencies
- What other components does this need?
- What settings, config, environment?
- What assumptions does it make?
Phase 3: Hypothesis and Testing
Scientific method:
-
Form Single Hypothesis
- State clearly: "I think X is the root cause because Y"
- Write it down
- Be specific, not vague
-
Test Minimally
- Make the SMALLEST possible change to test hypothesis
- One variable at a time
- Don't fix multiple things at once
-
Verify Before Continuing
- Did it work? Yes -> Phase 4
- Didn't work? Form NEW hypothesis
- DON'T add more fixes on top
-
When You Don't Know
- Say "I don't understand X"
- Don't pretend to know
- Ask for help
- Research more
Phase 4: Implementation
- Create a focused reproduction or regression check for meaningful behavior or security changes. Confirm that it demonstrates the original failure. For low-impact changes, use appropriate existing checks or a manual reproduction.
- Fix the identified cause with a focused change. Avoid unrelated refactoring or stacking several speculative fixes together.
- Verify the original failure and related behavior with
verification-before-completion, then remove temporary diagnostics. - If the fix fails, return to the evidence and reassess the hypothesis. Repeated failures may reveal shared state, coupling, or a flawed assumption. Discuss material design changes with the user; do not infer architectural failure solely from an arbitrary attempt count.
When Process Reveals "No Root Cause"
If systematic investigation reveals issue is truly environmental, timing-dependent, or external:
- You've completed the process
- Document what you investigated
- Implement appropriate handling (retry, timeout, error message)
- Add monitoring/logging for future investigation
Supporting Techniques
These techniques are part of systematic debugging and available in this directory:
root-cause-tracing.md- Trace bugs backward through call stack to find original triggerdefense-in-depth.md- Add validation at multiple layers after finding root causecondition-based-waiting.md- Replace arbitrary timeouts with condition polling
Related skills:
verification-before-completion- Verify fix worked before claiming success
04 同仓库更多 Skills
write-manual
Writes a long technical manual that explains one subject at one pinned version, from its purpose to each request and response. Every listing comes from an offline capture, every claim traces to a ranked source, and an audit must report TOTAL 0. Use it for "write a manual", "write a 101 manual for <subject>", "manual.json", "add a manual section", "build a capture kit", "audit the manual", or "pin a spec version and document it".
motion-figure
Builds figures that move or respond to the reader, in three tiers: SMIL animations and slider widgets inside lessons, interactive mechanism figures that show the named parts of a real system with a computed verdict, and ordered dither bands in the course palette. Triggers: "animated figure", "add a slider widget", "interactive figure", "show how this system works", "make this diagram move", "dither masthead", "mechanism figure", "figure fence".
mcpa-certification
AI-native tutor and onboarding workflow for the MCPA (Model Context Protocol Associate) certification in AI Engineering from Scratch. Use when a learner wants to prepare for the MCPA, resume their certification path, learn the next lesson interactively, run and verify practical labs, take the diagnostic or a full mock, or remediate weak exam domains from GitHub with Claude Code, Codex, ChatGPT, Cursor, or another agent.
lesson-screen
Opens a lesson screen in the browser next to the terminal while a course tutor teaches. It shows the lesson's registered figures, code traces with real values, and clickable predictions. It also builds a figure for the lesson on the fly with the course figure skills and any figure skill the host has installed: a blueprint, a mechanism, an isometric machine, or a 3D model. Clicks return to the tutor as events. Trigger phrases: "open the lesson screen", "show me this visually", "show this in 3D", "draw the architecture", "visualize this lesson", "build a figure for this lesson", "lesson screen".
learn
Interactive lesson tutor for the AI Engineering from Scratch curriculum. Reads LEARNING.md, fetches the next lesson, teaches it section by section in the terminal, quizzes at the end, and records progress. Works cloned or entirely over raw.githubusercontent.com — no setup required. Trigger phrases: "next lesson", "teach me", "continue the course", "let's learn", "resume learning"
learn-reverse-engineering
Focused interactive tutor for the Reverse Engineering path in AI Engineering from Scratch. Start or resume this route when a learner wants to read a compiled program: file formats, disassembly, control flow, lifting, evidence, proof, calling conventions, compiler idioms, linking, types, debugging, bytecode, diffing, symbolic execution, and AI-assisted analysis. Teaches one lesson per invocation and records evidence in REVERSE-ENGINEERING-LEARNING.md.