agentleFS
yarikletoyarikleto/claude-teacher-plugin/skills/compare/SKILL.md

compare

Skill9 starsChanged 2 months agoMITView on GitHub

Use when the student wants a structured side-by-side comparison of two concepts — creates a researched comparison table, usage scenarios, misconceptions, and key takeaway adapted to the student's level

16 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use evaluate, create and 6 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • NVIDIASkill

    evaluate

    Scores existing Sports Intelligence AVLM inference outputs with avlm/evals: MCQ accuracy (run_mcq_eval.sh, INFERENCE_DIR), open-ended LLM-as-judge scores (needs CLIENT_API_KEY for the configured judge endpoint), tennis category breakdowns, run comparisons, chance-level sanity checks and triage of mcq_results.json or llm_judge_results.json. Use when the user asks to score, evaluate, benchmark or compare predictions.jsonl from inference runs, or to explain a suspicious accuracy. Not for running inference, training, quantization, data preparation, or third-party API model inference: never open, list or run anything under avlm/evals/inference_3rdparty, including when the user asks for it; it is excluded from the release.

    Also in 3 projects that use this

  • MicrosoftSkill

    create

    Also in 3 projects that use this

  • aakash-dharSkill

    optimize

    Analyzes code for performance issues including slow algorithms, memory leaks, unnecessary re-renders, database query problems, and resource bottlenecks. Use when the user says "this is slow", "optimize this", "performance issue", "why is this taking so long?", or "make this faster".

    Also in 4 projects that use this

  • AnthropicSkill

    analyze

    Answer data questions -- from quick lookups to full analyses. Use when looking up a single metric, investigating what's driving a trend or drop, comparing segments over time, or preparing a formal data report for stakeholders.

    Also in 3 projects that use this

  • OpenAISkill

    audit

    Audit or critique a product flow, journey, workflow, funnel, onboarding path, checkout path, settings path, screen, or multi-step product experience by capturing screenshots first, then reporting UX, design, and accessibility findings inline from that evidence. Use Figma only when the user explicitly asks for a board. Use when the user asks to audit, review, critique, inspect, assess, analyze, evaluate, or give feedback on a product experience.

    Also in 6 projects that use this

  • MicrosoftSkill

    report

    Turn an exploration (threads, findings, charts) into a single Markdown report — note, blog post, executive summary, KPI dashboard, slide brief, or multi-section analytical report, with embedded charts.

    Also in 3 projects that use this

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. 0 are common, 8 are distinctive, and 9 are very specific to this project.

  • 0

    Common

    Most of the 15 edited versions we read keep these.

  • 8

    Distinctive

    This author's own choices. Worth a look.

  • 9

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Before accessing education data, read ${CLAUDE_PLUGIN_ROOT}/references/education-data.md.

    line 9
  2. Very specific:

    Read <education-db>/student.json — adapt to level, interests, and learning style

    line 29
  3. Very specific:

    Read <education-db>/dashboard.json — check if either concept is already tracked

    line 30
  4. Very specific:

    If tracked, read <education-db>/topics/<concept>.json for each — check depth, misconceptions

    line 31
  5. Distinctive:

    Use WebSearch to research BOTH concepts: before writing the comparison — never rely solely on training data.

    line 32
  6. Distinctive:

    Always research first: Use WebSearch for both concepts before writing.

    line 93
  7. Very specific:

    Adapt to student level: Read student.json:

    line 94
  8. Distinctive:

    Use the student's interests for analogies: If they like gaming, music, sports — weave those into the "when to use which" scenarios or the …

    line 98
  9. Distinctive:

    Respect dislikes: If the student dislikes dry textbook comparisons, lead with real-world scenarios.

    line 99
  10. Distinctive:

    Address known misconceptions first: If either concept has unresolved misconceptions in its topic file, the "Common misconceptions" section …

    line 100
  11. Distinctive:

    Keep the table scannable: Use short values in table cells.

    line 101
  12. Distinctive:

    Be honest about overlap: If the concepts are not strictly either/or (e.g., "you can use both together"), say so clearly.

    line 102
  13. Distinctive:

    After generating the comparison:

    line 113
  14. Very specific:

    Update only last_seen to today

    line 126
  15. Very specific:

    Add the other concept to related_topics if not already present

    line 127
  16. Very specific:

    Update last_seen for any tracked concepts

    line 131
  17. Very specific:

    If either concept is new and has not been covered before, do NOT create a topic entry — comparisons alone are not enough to mark a topic as …

    line 132

“Common” is measured: kept by at least 6 in 10 of the 15 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Requested topic/task: $ARGUMENTS

Before accessing education data, read ${CLAUDE_PLUGIN_ROOT}/references/education-data.md. Resolve every <education-db> below using that contract. Current session ID: ${CLAUDE_SESSION_ID}.

Compare — Side-by-Side Concept Comparisons

Creates a structured, researched comparison of two concepts. Adapts depth and language to the student's level. Results are saved to both project-local and global education docs.

Invocation

/claude-teacher:compare <concept A> vs <concept B>

Examples:

  • /claude-teacher:compare TCP vs UDP
  • /claude-teacher:compare REST vs GraphQL
  • /claude-teacher:compare mutex vs semaphore
  • /claude-teacher:compare Docker vs VMs
  • /claude-teacher:compare SQL vs NoSQL

Process

  1. Parse the two concepts from the invocation (prefer vs or versus; ask if the boundary is ambiguous instead of splitting names that contain and)
  2. Read <education-db>/student.json — adapt to level, interests, and learning style
  3. Read <education-db>/dashboard.json — check if either concept is already tracked
  4. If tracked, read <education-db>/topics/<concept>.json for each — check depth, misconceptions
  5. Use WebSearch to research BOTH concepts before writing the comparison — never rely solely on training data. Search for official documentation, authoritative articles, and recent best-practice guides for each concept.
  6. Generate the structured comparison (see Output Format below)
  7. Save comparison to docs and update DB (see DB Update below)

Output Format

Present the comparison in this exact structure:

── Compare: [Concept A] vs [Concept B] ──────────────────

## What they are

**[Concept A]:** [One-line summary]
**[Concept B]:** [One-line summary]

## Side-by-side comparison

| Feature            | [Concept A]       | [Concept B]       |
|--------------------|-------------------|-------------------|
| [Feature 1]        | [Value/behavior]  | [Value/behavior]  |
| [Feature 2]        | [Value/behavior]  | [Value/behavior]  |
| [Feature 3]        | [Value/behavior]  | [Value/behavior]  |
| ...                | ...               | ...               |

Include 5-8 rows covering the most important differentiators.
Adapt column detail to student level (beginner = simpler terms, advanced = precise technical language).

## When to use which

**Choose [Concept A] when:**
- [Concrete scenario 1]
- [Concrete scenario 2]
- [Concrete scenario 3]

**Choose [Concept B] when:**
- [Concrete scenario 1]
- [Concrete scenario 2]
- [Concrete scenario 3]

## Common misconceptions

- **Misconception:** "[common wrong belief]"
  **Reality:** [correction with explanation]

- **Misconception:** "[another common wrong belief]"
  **Reality:** [correction with explanation]

Include 2-4 misconceptions. If the student has recorded misconceptions about either topic, address those FIRST.

## Key takeaway

> [One memorable sentence that captures the essential difference]

**Sources:** [list 2-4 links to official docs, RFCs, or authoritative articles used]

──────────────────────────────────────────────────────────

Rules

  1. Always research first. Use WebSearch for both concepts before writing. Every factual claim must be backed by a source. List sources at the end.
  2. Adapt to student level. Read student.json:
    • Beginner: use analogies from their interests, simpler terms, fewer rows in the table
    • Intermediate: balance precision with clarity, include practical examples
    • Advanced: use precise technical language, include edge cases and nuances
  3. Use the student's interests for analogies. If they like gaming, music, sports — weave those into the "when to use which" scenarios or the key takeaway.
  4. Respect dislikes. If the student dislikes dry textbook comparisons, lead with real-world scenarios. If they dislike oversimplification, include nuanced details.
  5. Address known misconceptions first. If either concept has unresolved misconceptions in its topic file, the "Common misconceptions" section must address those before generic ones.
  6. Keep the table scannable. Use short values in table cells. If a cell needs elaboration, add a footnote below the table.
  7. Be honest about overlap. If the concepts are not strictly either/or (e.g., "you can use both together"), say so clearly.
  8. After the comparison, suggest next steps:
    Want to go deeper?
    - /claude-teacher:ascii [concept] — visualize how each works under the hood
    - /claude-teacher:quiz-me [concept] — test your understanding of either concept
    - /claude-teacher:challenge [concept] — hands-on practice with one of them

DB Update

After generating the comparison:

1. Save comparison doc to both locations:

  • Global: <education-db>/docs/<concept-a>-vs-<concept-b>.md
  • Project-local: docs/<concept-a>-vs-<concept-b>.md (if docs/ directory exists in the project)

Each saved doc includes:

  • The full comparison output
  • Sources/links used
  • Date saved
  • Related topics

2. Update topic files — for each concept that exists in <education-db>/topics/:

  • Update only last_seen to today
  • Add the other concept to related_topics if not already present
  • Preserve last_reviewed, next_review, and review_interval_days until an assessment

3. Update dashboard <education-db>/dashboard.json:

  • Update last_seen for any tracked concepts
  • If either concept is new and has not been covered before, do NOT create a topic entry — comparisons alone are not enough to mark a topic as learned. Instead, suggest: "Want me to teach [concept] in depth? Then we can track it."

4. Append to session log <education-db>/sessions/[date].jsonl:

{"time": "[now]", "event": "compare", "concepts": ["<concept-a>", "<concept-b>"], "level_adapted": "<student-level>"}

Integration with Other Skills

  • /claude-teacher:ascii [concept] — visualize how each concept works under the hood (suggest after comparison)
  • /claude-teacher:quiz-me [concept] — test understanding of either concept after comparing
  • /claude-teacher:challenge [concept] — hands-on practice with one of the compared concepts
  • /claude-teacher:save-progress — comparison results are auto-saved, but student can explicitly checkpoint

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.