{"id":"4ee553a1-0612-4d4d-a4d2-275be3887ae0","entityType":"agent","slug":"clawhub-trondw-math-worksheets","name":"Math Worksheets","canonicalUrl":"https://www.xpersona.co/agent/clawhub-trondw-math-worksheets","canonicalPath":"/agent/clawhub-trondw-math-worksheets","generatedAt":"2026-10-12T20:16:23.183Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T22:01:57.501Z","emptyReason":null},"description":"Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat... Skill: Math Worksheets Owner: trondw Summary: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat... Tags: latest:2.0.0 Version history: v2.0.0 | 2026-02-24T06:48:04.382Z | auto **Major update: worksheet verification now uses structured data files (JSON), improving reliability and security.** - Replaced code-base","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 988 downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s175jxj1rjk3azjdda2kdgbaps884t6j:math-worksheets","sourceUrl":"https://clawhub.ai/trondw/math-worksheets","homepage":"https://clawhub.ai/trondw/skills/math-worksheets","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/trondw/math-worksheets","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/trondw/skills/math-worksheets","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":60,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat..."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T22:01:57.501Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T22:01:57.501Z","emptyReason":null},"stars":null,"forks":null,"downloads":988,"likes":null,"task":null,"library":null,"packageName":null,"latestVersion":"2.0.0","tractionLabel":"988 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T22:01:57.430Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T22:01:57.501Z","lastCrawledAt":"2026-10-11T22:01:57.430Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T22:01:57.430Z","lastVerifiedAt":null,"highlights":[{"version":"2.0.0","createdAt":"2026-02-24T06:48:04.382Z","changelog":"**Major update: worksheet verification now uses structured data files (JSON), improving reliability and security.** - Replaced code-based verification (\"verify.py\" with explicit Python check calls) with a JSON-based format, interpreted by the bundled script. - Updated documentation to require a JSON verification file describing each problem and its expected answer. - `scripts/verify.py` now parses the JSON verification file and evaluates answers using SymPy—no generated code is executed. - Removed legacy script `scripts/fetch_model_config.sh` as part of verification process cleanup. - README and guides updated to reflect the new workflow for problem verification.","fileCount":11,"zipByteSize":19320},{"version":"0.1.0","createdAt":"2026-02-22T23:33:34.897Z","changelog":"math-worksheets 0.1.0 - Initial release: generate professional K–12 math practice worksheets and full step-by-step answer keys as PDFs. - Automatically selects and uses the best available reasoning model for accurate problem generation; falls back gracefully with clear recommendations. - Supports all typical worksheet formats: coordinate grids, geometric figures, tables, multi-part problems. - Auto-verifies generated problems using SymPy or manual review scripts before compiling worksheets. - Outputs three documents per request: student worksheet, answer key, and concise skills summary/study guide. - Compiles all worksheets using LaTeX via tectonic—no installation or account required.","fileCount":12,"zipByteSize":20482}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s175jxj1rjk3azjdda2kdgbaps884t6j:math-worksheets","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-12T20:16:23.182Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-trondw-math-worksheets/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T22:01:57.501Z","emptyReason":null},"readme":"Skill: Math Worksheets\n\nOwner: trondw\n\nSummary: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat...\n\nTags: latest:2.0.0\n\nVersion history:\n\nv2.0.0 | 2026-02-24T06:48:04.382Z | auto\n\n**Major update: worksheet verification now uses structured data files (JSON), improving reliability and security.**\n\n- Replaced code-based verification (\"verify.py\" with explicit Python check calls) with a JSON-based format, interpreted by the bundled script.\n- Updated documentation to require a JSON verification file describing each problem and its expected answer.\n- `scripts/verify.py` now parses the JSON verification file and evaluates answers using SymPy—no generated code is executed.\n- Removed legacy script `scripts/fetch_model_config.sh` as part of verification process cleanup.\n- README and guides updated to reflect the new workflow for problem verification.\n\nv0.1.0 | 2026-02-22T23:33:34.897Z | auto\n\nmath-worksheets 0.1.0\n\n- Initial release: generate professional K–12 math practice worksheets and full step-by-step answer keys as PDFs.\n- Automatically selects and uses the best available reasoning model for accurate problem generation; falls back gracefully with clear recommendations.\n- Supports all typical worksheet formats: coordinate grids, geometric figures, tables, multi-part problems.\n- Auto-verifies generated problems using SymPy or manual review scripts before compiling worksheets.\n- Outputs three documents per request: student worksheet, answer key, and concise skills summary/study guide.\n- Compiles all worksheets using LaTeX via tectonic—no installation or account required.\n\nArchive index:\n\nArchive v2.0.0: 11 files, 19320 bytes\n\nFiles: README.md (3868b), references/latex-templates.md (9257b), references/model-rankings.json (920b), references/model-rankings.md (2445b), references/problem-library.md (4447b), scripts/check_reasoning_model.sh (3417b), scripts/compile.sh (1091b), scripts/run_verify.sh (2044b), scripts/verify.py (5616b), SKILL.md (9186b), _meta.json (134b)\n\nFile v2.0.0:SKILL.md\n\n---\nname: math-worksheets\ndescription: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any math topic from elementary through high school (Pre-Algebra, Algebra 1/2, Geometry, Pre-Calc). Handles coordinate plane grids, geometric figures, tables, and multi-part problems. Use when a user asks for a math worksheet, practice problems, homework help sheet, or answer key for any K-12 math topic.\n---\n\n# Math Worksheet Generator\n\nGenerate a student worksheet PDF + full step-by-step answer key PDF for any K-12 math topic. Compiles LaTeX with `tectonic` (no TeX installation required — it auto-downloads packages).\n\n## Model Selection (Automatic)\n\nThis skill auto-detects the best available reasoning model and uses it for problem generation. Reasoning models (o1, o3, DeepSeek R1, Gemini DeepThink) work through math step-by-step and make significantly fewer errors than standard models.\n\nModel rankings are kept fresh via a three-layer fallback:\n1. **Hosted JSON** (fetched from GitHub, 7-day cache) — updated by maintainers as models ship\n2. **Bundled JSON** (`references/model-rankings.json`) — updated with each skill release on ClawhHub\n3. **Hardcoded defaults** in the script — last-resort, never stale enough to cause failures\n\nTo update rankings without waiting for a skill release: edit the hosted JSON at the GitHub URL in `references/model-rankings.md`. The skill picks it up within 7 days.\n\n**Step 0 — run model detection before anything else:**\n\n```bash\nSKILL_DIR=\"$(dirname \"$0\")\"\nresult=$(bash \"$SKILL_DIR/scripts/check_reasoning_model.sh\")\nstatus=$(echo \"$result\" | awk '{print $1}')   # FOUND, FALLBACK, or NONE\nmodel_alias=$(echo \"$result\" | awk '{print $2}')\nmodel_full=$(echo \"$result\" | awk '{print $3}')\n```\n\nThen branch on the status:\n\n**`FOUND_REASONING`** (o3, o1, DeepThink, DeepSeek R1) — best case, use for problem generation:\n```\nsessions_spawn(task=\"<problem generation prompt>\", model=model_alias)\n```\nNo warning needed. Sub-agent writes the .tex files + verify script, announces completion.\n\n**`FOUND_STRONG`** (Claude Opus) — excellent quality, use it without alarming the user:\n```\nsessions_spawn(task=\"<generation prompt>\", model=model_alias)\n```\nOptionally add a quiet note: *\"Using Opus — solid math accuracy and excellent LaTeX. For the hardest Algebra 2 problems, a reasoning model (DeepThink/o1) would be marginally better.\"*\n\n**`NONE`** — standard model only; proceed but surface a clear recommendation:\n```\n⚠️ No reasoning model or Opus detected. Worksheet generated with [current model].\nFor best accuracy, especially on multi-step problems, configure one of:\n  • Gemini 2.5 Pro DeepThink  — google.generativeai.com (free tier available)\n  • o1 / o3                   — platform.openai.com\n  • DeepSeek R1               — platform.deepseek.com (very affordable)\n  • Claude Opus               — console.anthropic.com\nSymPy verification will catch most errors regardless.\n```\n\n| Status | Model examples | Action |\n|---|---|---|\n| `FOUND_REASONING` | DeepThink, o1, o3, R1 | Spawn silently, no warning |\n| `FOUND_STRONG` | Claude Opus 4.x | Spawn silently, optional quiet note |\n| `NONE` | Sonnet, Flash, GPT-4o | Use current model + show recommendation |\n\n## Prerequisites\n\n```bash\nbrew install tectonic   # macOS/Linux — downloads packages on demand\n```\n\nOutput directory (create if needed): `~/Documents/Worksheets/`\n\n## Workflow\n\n### 1. Gather requirements\n\nAsk (or infer from context):\n- **Student**: name, grade, course (e.g. \"8th grade, Pre-Algebra\")\n- **Topic**: e.g. \"factoring trinomials\", \"solving two-step equations\"\n- **Problem count**: default 10 if not specified\n- **Format preference**: timed quiz, homework practice, mixed difficulty, or topic drill\n\n**Photo input shortcut**: If the user sends a photo of homework or a textbook page, use the `image` tool to extract problem types, format, and difficulty — then mirror that style exactly.\n\n### 2. Design problems\n\nDesign problems appropriate to the student's level. Increase difficulty gradually across the set. Every problem must be mathematically correct — verify your own solutions.\n\nSee `references/problem-library.md` for topic-specific problem type menus.\n\n### 3. Write LaTeX source\n\nWrite **three** `.tex` files to `/tmp/`:\n- `ws_TOPIC_DATE.tex` — student worksheet (blank work areas)\n- `ak_TOPIC_DATE.tex` — answer key (full step-by-step solutions)\n- `ss_TOPIC_DATE.tex` — skills summary / study guide (cheat sheet)\n\nThe **skills summary** is a 1–2 page reference card the student can use while working through the worksheet or when studying. It contains:\n- One section per distinct skill tested (2–5 sections typical)\n- A **formula/rule box** (blue) per skill — the key facts and formulas\n- A **mini worked example** (green) per skill — brief pattern demonstration, simpler than worksheet problems\n- An optional **watch-out box** (orange) — common mistakes worth flagging\n- Optional **key vocabulary** section at the bottom\n\nSee `references/latex-templates.md` → \"Skills Summary / Study Guide Template\" for the full shell and box macros.\n\nSee `references/latex-templates.md` for document templates, coordinate planes, tables, geometric figures, and answer key patterns.\n\n**Required packages** (include in every document):\n```latex\n\\usepackage[margin=1in, top=0.75in, bottom=0.75in]{geometry}\n\\usepackage{amsmath, amssymb}\n\\usepackage{tikz, pgfplots}\n\\usepackage{enumitem, fancyhdr, multicol, array, booktabs}\n\\pgfplotsset{compat=1.18}\n```\n\n**Work space defaults**: `\\vspace{5cm}` per problem; `8cm` for multi-step; `10cm+` for graphs.\n\n### 4. Write and run the verification file\n\nBefore compiling, write `/tmp/verify_TOPIC_DATE.json` — a structured data file describing each problem and its expected answer. The bundled `scripts/verify.py` evaluates this using SymPy. No generated code is ever executed.\n\n```bash\nbash \"$SKILL_DIR/scripts/run_verify.sh\" /tmp/verify_TOPIC_DATE.json\n```\n\n**JSON format:**\n```json\n{\n  \"topic\": \"graphing polynomials\",\n  \"problems\": [\n    {\"id\": 1, \"type\": \"solve\",  \"expr\": \"x**2 - 5*x + 6\",      \"expected\": [2, 3]},\n    {\"id\": 2, \"type\": \"factor\", \"expr\": \"x**2 - 7*x + 12\",     \"expected\": \"(x-3)*(x-4)\"},\n    {\"id\": 3, \"type\": \"eval\",   \"expr\": \"(x-1)*(x+2)\", \"at\": {\"x\": 0}, \"expected\": -2},\n    {\"id\": 4, \"type\": \"zeros\",  \"expr\": \"x*(x-3)**2\",           \"expected\": [0, 3]},\n    {\"id\": 5, \"type\": \"expand\", \"expr\": \"(x+2)**2\",             \"expected\": \"x**2 + 4*x + 4\"},\n    {\"id\": 6, \"type\": \"manual\", \"desc\": \"Graph sketch — verify visually\"}\n  ]\n}\n```\n\n**Type reference:**\n\n| Type | Verifiable? | What it checks |\n|---|---|---|\n| `solve` | ✅ | Roots of expr=0 match expected list |\n| `factor` | ✅ | Factored form matches expected |\n| `expand` | ✅ | Expanded form matches expected |\n| `eval` | ✅ | expr evaluated at given values matches expected |\n| `zeros` | ✅ | Zeros of expr match expected list |\n| `manual` | 👁 | Flagged for human review — never fails automatically |\n\nUse `manual` for: graph sketches, sign charts, word problem setups, proofs.\n\n**If verification fails (exit 1):** fix the LaTeX answer key and re-run. Do not compile until the answer key is correct.\n\n### 5. Compile\n\n```bash\nSKILL_DIR=\"$(dirname \"$0\")\"\nbash \"$SKILL_DIR/scripts/compile.sh\" /tmp/ws_TOPIC_DATE.tex ~/Documents/Worksheets/\nbash \"$SKILL_DIR/scripts/compile.sh\" /tmp/ak_TOPIC_DATE.tex ~/Documents/Worksheets/\nbash \"$SKILL_DIR/scripts/compile.sh\" /tmp/ss_TOPIC_DATE.tex ~/Documents/Worksheets/\n```\n\n### 5. Deliver\n\nSend all three PDFs via the same channel the request came from:\n- **Telegram** → `message` tool with `filePath` (copy to `~/.openclaw/media/outbound/` first)\n- **iMessage/SMS** → `imsg` skill\n- **Email** → `gog` skill (send all three as attachments)\n\nSuggested send order: skills summary first (study guide), then worksheet, then answer key.\n\n**Printing**: Do NOT print unless explicitly asked. If asked, print worksheet + skills summary (not answer key, unless requested). Use `lpr -P <printer_name>`.\n\n## Quality Checklist\n\nBefore compiling, verify each problem:\n- [ ] Mathematically correct (you checked the solution)\n- [ ] Unambiguous problem statement\n- [ ] Appropriate difficulty for the student's level\n- [ ] Sufficient work space\n- [ ] Diagrams/graphs/tables included where needed\n- [ ] Problems vary across the set (not all the same sub-type)\n\n## File Naming\n\n```\nws_algebra2_factoring_2026-02-22.pdf   ← worksheet\nak_algebra2_factoring_2026-02-22.pdf   ← answer key\nss_algebra2_factoring_2026-02-22.pdf   ← skills summary / study guide\n```\n\nPrefix with student name when known: `leo_ws_...`, `leo_ak_...`, `leo_ss_...`\n\n## Troubleshooting\n\n| Problem | Fix |\n|---|---|\n| `tectonic` not found | `brew install tectonic` |\n| Slow first compile | Downloading packages from CTAN — wait 30–60s, faster after |\n| LaTeX error on line N | Check paired `$...$`, matching `\\begin{}/\\end{}` |\n| pgfplots not rendering | Ensure `\\pgfplotsset{compat=1.18}` is in preamble |\n| PDF not created | Read full tectonic output for the specific error |\n\nFile v2.0.0:README.md\n\n# math-worksheets — OpenClaw Skill\n\n**v2.0.0** · [Changelog](#changelog)\n\nGenerate professional math practice worksheets, answer keys, and study guides for K-12 students. Three PDFs every time: worksheet → answer key → skills summary cheat sheet.\n\n## Features\n\n- **Three documents per request** — worksheet, step-by-step answer key, skills summary with formula boxes and mini examples\n- **LaTeX quality** — coordinate planes, geometric figures, tables, multi-part problems via tectonic (no TeX installation required)\n- **SymPy verification** — answers are verified with a computer algebra system before compiling; incorrect answers are caught before reaching students\n- **Auto reasoning-model detection** — automatically uses the best available model (DeepThink, o1/o3, DeepSeek R1, Claude Opus) for math generation; shows setup guidance if none configured. All detection is local — no network calls.\n- **Channel mirroring** — sends back via the same channel the request came from (Telegram, iMessage, email)\n- **K-12 coverage** — Pre-Algebra through Pre-Calculus (see `references/problem-library.md` for full topic menu)\n\n## Install\n\n```bash\nopenclaw skills install math-worksheets\n```\n\nOr download `math-worksheets.skill` from [ClawhHub](https://clawhub.com) and install locally.\n\n**Prerequisites:**\n```bash\nbrew install tectonic   # LaTeX compiler — auto-downloads packages on first use\n```\n\n**Python 3** is also required (standard on macOS). The skill uses it for model detection and answer verification.\n\n**sympy** is required for answer verification:\n```bash\npip3 install sympy\n```\n\n## Usage\n\nJust ask naturally:\n\n> *\"Make Lucy a 20-problem worksheet on exponents and roots\"*\n> *\"Leo needs practice on graphing polynomials — use his homework photo as a guide\"*\n> *\"Factoring trinomials worksheet for an 8th grader, 15 problems\"*\n\nThe skill handles everything: model selection, problem generation, SymPy verification, compile, and delivery.\n\n## Skill Contents\n\n```\nmath-worksheets/\n├── SKILL.md                          ← workflow and instructions\n├── scripts/\n│   ├── check_reasoning_model.sh     ← auto-detects best available model (local only)\n│   ├── compile.sh                   ← tectonic PDF compiler wrapper\n│   ├── run_verify.sh                ← gates compilation on SymPy pass\n│   └── verify.py                   ← SymPy verification template\n└── references/\n    ├── latex-templates.md           ← LaTeX patterns (coordinate planes, figures, answer key)\n    ├── problem-library.md           ← K-12 problem type menu by course\n    ├── model-rankings.md            ← human-readable model guidance\n    └── model-rankings.json          ← bundled model ranking reference\n```\n\n## Changelog\n\n### v2.0.0 — 2026-02-23\n- **Security:** Eliminated RCE surface — verification no longer generates or executes AI-written Python code. The AI now writes a structured JSON data file (`verify_TOPIC_DATE.json`); the fixed, auditable `scripts/verify.py` evaluates it using SymPy. No user input is ever executed as code.\n- **Security:** Removed `fetch_model_config.sh` — skill no longer makes any network requests at runtime\n- **Security:** Removed auto-`pip install` from `run_verify.sh`; sympy must be installed as a prerequisite (`pip3 install sympy`)\n- **Security:** `check_reasoning_model.sh` is now fully local; reads OpenClaw config optionally with graceful fallback to bundled defaults\n- `references/model-rankings.json` remains bundled as a static reference\n\n### v1.0.0 — 2026-02-22\n- Initial release\n- Three documents per request: worksheet, answer key, skills summary\n- SymPy verification gate (exit 0/1/2)\n- Auto reasoning-model detection\n- LaTeX compilation via tectonic\n- Channel-matched delivery (Telegram, iMessage)\n\n## License\n\nMIT\n\nFile v2.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn7eytttvr7rqp77955nfqkmg180svwc\",\n  \"slug\": \"math-worksheets\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1771915684382\n}\n\nFile v2.0.0:references/latex-templates.md\n\n# LaTeX Templates Reference\n\n## Document Shell\n\n```latex\n\\documentclass[12pt]{article}\n\\usepackage[margin=1in, top=0.75in, bottom=0.75in]{geometry}\n\\usepackage{amsmath, amssymb, tikz, pgfplots, enumitem, fancyhdr, multicol, array, booktabs}\n\\pgfplotsset{compat=1.18}\n\n\\pagestyle{fancy}\n\\fancyhf{}\n\\fancyhead[L]{\\textbf{TOPIC Practice}}\n\\fancyhead[R]{\\small Name: \\underline{\\hspace{4.5cm}}~Date: \\underline{\\hspace{1.8cm}}}\n\\fancyfoot[C]{\\thepage}\n\\renewcommand{\\headrulewidth}{0.4pt}\n\n\\newcounter{prob}\n\\newcommand{\\problem}[1]{\\stepcounter{prob}\\vspace{0.4cm}\\noindent\\textbf{\\large\\theprob.}\\quad #1\\vspace{0.3cm}}\n\n\\begin{document}\n\\begin{center}\n  {\\LARGE\\textbf{TOPIC Practice Worksheet}}\\\\[0.3cm]\n  {\\large COURSE \\quad $\\bullet$ \\quad DATE}\n\\end{center}\n\\noindent\\rule{\\linewidth}{0.4pt}\\vspace{0.2cm}\n\n% [problems here]\n\n\\end{document}\n```\n\n## Problem Patterns\n\n### Simple algebraic problem\n```latex\n\\problem{Solve for $x$: \\quad $2x^2 - 5x - 3 = 0$}\n\\vspace{6cm}\n```\n\n### Two-column layout (shorter problems)\n```latex\n\\begin{multicols}{2}\n\\begin{enumerate}[label=\\textbf{\\arabic*.}, itemsep=4cm]\n  \\item $3x + 7 = 22$\n  \\item $-2(x - 5) = 14$\n  \\item $\\dfrac{x}{4} + 3 = 9$\n  \\item $5x - 3 = 2x + 9$\n\\end{enumerate}\n\\end{multicols}\n```\n\n### Multi-part problem\n```latex\n\\problem{Given $f(x) = 3x^2 - 2x + 1$, find:}\n\\begin{enumerate}[label=(\\alph*), itemsep=3cm, leftmargin=1.5cm]\n  \\item $f(0)$\n  \\item $f(-2)$\n  \\item $f(x+1)$ — expand and simplify\n  \\vspace{2cm}\n\\end{enumerate}\n```\n\n### Function table\n```latex\n\\problem{Complete the table for $y = 3x - 2$.}\n\\vspace{0.3cm}\n\\begin{center}\n\\begin{tabular}{|>{\\centering\\arraybackslash}m{1.5cm}|>{\\centering\\arraybackslash}m{1.5cm}|}\n\\hline\n\\textbf{$x$} & \\textbf{$y$} \\\\\n\\hline\n$-2$ & \\rule{1.2cm}{0pt} \\\\[0.5cm]\\hline\n$0$  & \\\\[0.5cm]\\hline\n$1$  & \\\\[0.5cm]\\hline\n$3$  & \\\\[0.5cm]\\hline\n\\end{tabular}\n\\end{center}\n\\vspace{1cm}\n```\n\n## Coordinate Planes\n\n### Blank grid (student fills in — algebraic range)\n```latex\n\\begin{center}\n\\begin{tikzpicture}\n\\begin{axis}[\n    axis lines=center, xmin=-6, xmax=6, ymin=-6, ymax=6,\n    xtick={-6,-4,...,6}, ytick={-6,-4,...,6},\n    grid=both,\n    grid style={line width=0.15pt, draw=gray!30},\n    major grid style={line width=0.3pt, draw=gray!50},\n    tick label style={font=\\small},\n    xlabel={$x$}, ylabel={$y$},\n    width=9cm, height=9cm, enlargelimits=false\n]\n\\end{axis}\n\\end{tikzpicture}\n\\end{center}\n```\n\n### Blank grid (full −10 to 10, Pre-Algebra style)\n```latex\n\\begin{axis}[\n    axis lines=center, xmin=-10, xmax=10, ymin=-10, ymax=10,\n    xtick={-10,-8,...,10}, ytick={-10,-8,...,10},\n    minor tick num=1, grid=both,\n    grid style={line width=0.12pt, draw=gray!20},\n    major grid style={line width=0.3pt, draw=gray!50},\n    tick label style={font=\\scriptsize},\n    xlabel={$x$}, ylabel={$y$}, width=9cm, height=9cm\n]\n\\end{axis}\n```\n\n### Completed graph (answer key — plot a function)\n```latex\n\\addplot[blue, thick, domain=-1:5, samples=100] {x^2 - 4*x + 3};\n\\addplot[only marks, mark=*, mark size=2.5pt, red] coordinates {(1,0)(3,0)};   % x-intercepts\n\\addplot[only marks, mark=diamond*, mark size=3pt, green!60!black] coordinates {(2,-1)};  % vertex\n\\draw[dashed, gray] (axis cs:2,-6) -- (axis cs:2,8) node[above] {$x=2$};\n```\n\n## Geometric Figures\n\n### Right triangle\n```latex\n\\begin{center}\n\\begin{tikzpicture}[scale=1.2]\n  \\coordinate (A) at (0,0);\n  \\coordinate (B) at (4,0);\n  \\coordinate (C) at (4,3);\n  \\draw[thick] (A) -- (B) -- (C) -- cycle;\n  \\draw (B) ++(-.25,0) -- ++(0,.25) -- ++(.25,0);  % right angle mark\n  \\node[below left] at (A) {$A$};\n  \\node[below right] at (B) {$B$};\n  \\node[above right] at (C) {$C$};\n  \\node[below] at (2,0) {$8$};\n  \\node[right] at (4,1.5) {$6$};\n  \\node[above left] at (2,1.5) {$x$};\n\\end{tikzpicture}\n\\end{center}\n```\n\n## Answer Key Patterns\n\n### Answer key document header\n```latex\n\\fancyhead[L]{\\textbf{TOPIC — Answer Key}}\n\\fancyhead[R]{\\textit{For instructor/parent use}}\n```\n\n### Step-by-step solution\n```latex\n\\problem{[Repeat full problem statement]}\n\n\\textbf{Solution:}\n\\begin{align*}\n  2x^2 - 5x - 3 &= 0 \\\\\n  \\intertext{Factor — find factors of $2(-3)=-6$ summing to $-5$: use $-6,+1$:}\n  2x^2 - 6x + x - 3 &= 0 \\\\\n  2x(x - 3) + 1(x - 3) &= 0 \\\\\n  (2x + 1)(x - 3) &= 0 \\\\\n  \\intertext{Zero product property:}\n  2x + 1 = 0 \\quad &\\text{or} \\quad x - 3 = 0 \\\\\n\\end{align*}\n\\[ \\boxed{x = -\\tfrac{1}{2} \\quad \\text{or} \\quad x = 3} \\]\n\n\\vspace{0.3cm}\\noindent\\rule{\\linewidth}{0.2pt}\\vspace{0.3cm}\n```\n\n### Sign chart (for polynomial graphing)\n```latex\n\\[\n\\underbrace{+}_{x<-2}\\ \\Bigl|_{-2}\\ \\underbrace{-}_{-2<x<0}\\ \\Bigl|_{0}\\ \\underbrace{-}_{0<x<2}\\ \\Bigl|_{2}\\ \\underbrace{+}_{x>2}\n\\]\n```\n\n---\n\n## Skills Summary / Study Guide Template\n\nThis is the **third document** generated alongside every worksheet. It's a one-to-two page reference card the student can use while working or studying.\n\n### Document shell\n\n```latex\n\\documentclass[12pt]{article}\n\\usepackage[margin=0.85in, top=0.7in, bottom=0.7in]{geometry}\n\\usepackage{amsmath, amssymb, tikz, enumitem, fancyhdr, multicol, mdframed, xcolor}\n\n% Color palette\n\\definecolor{skillblue}{RGB}{30,100,180}\n\\definecolor{skillbluebg}{RGB}{235,244,255}\n\\definecolor{warnorange}{RGB}{200,90,0}\n\\definecolor{warnbg}{RGB}{255,243,230}\n\\definecolor{exgreen}{RGB}{20,120,60}\n\\definecolor{exgreenbg}{RGB}{230,248,238}\n\n% Formula/rule box\n\\newmdenv[\n  backgroundcolor=skillbluebg,\n  linecolor=skillblue, linewidth=1.5pt,\n  innertopmargin=6pt, innerbottommargin=6pt,\n  innerleftmargin=10pt, innerrightmargin=10pt,\n  skipabove=6pt, skipbelow=4pt\n]{formulabox}\n\n% Mini example box\n\\newmdenv[\n  backgroundcolor=exgreenbg,\n  linecolor=exgreen, linewidth=1pt,\n  innertopmargin=5pt, innerbottommargin=5pt,\n  innerleftmargin=10pt, innerrightmargin=10pt,\n  skipabove=4pt, skipbelow=4pt\n]{examplebox}\n\n% Watch-out box\n\\newmdenv[\n  backgroundcolor=warnbg,\n  linecolor=warnorange, linewidth=1pt,\n  innertopmargin=5pt, innerbottommargin=5pt,\n  innerleftmargin=10pt, innerrightmargin=10pt,\n  skipabove=4pt, skipbelow=4pt\n]{watchoutbox}\n\n% Skill section heading\n\\newcommand{\\skillheading}[1]{%\n  \\vspace{0.4cm}\n  {\\large\\textbf{\\textcolor{skillblue}{#1}}}\n  \\vspace{0.1cm}\n  \\hrule height 1pt\n  \\vspace{0.2cm}\n}\n\n\\pagestyle{fancy}\n\\fancyhf{}\n\\fancyhead[L]{\\textbf{Skills Summary: TOPIC}}\n\\fancyhead[R]{\\small\\textit{Study Guide \\& Reference}}\n\\fancyfoot[C]{\\thepage}\n\\renewcommand{\\headrulewidth}{0.4pt}\n\n\\begin{document}\n\n\\begin{center}\n  {\\LARGE\\textbf{Skills Summary}}\\\\[0.2cm]\n  {\\large\\textbf{TOPIC}}\\\\[0.1cm]\n  {\\small\\textit{Use this reference while completing your worksheet or when studying.}}\n\\end{center}\n\\vspace{0.1cm}\n\\noindent\\rule{\\linewidth}{1.5pt}\n\\vspace{0.3cm}\n\n% =================== SKILL 1 ===================\n\\skillheading{Skill 1 Name — e.g. Factoring Trinomials (a = 1)}\n\n\\begin{formulabox}\n\\textbf{Rule / Formula:}\\\\[4pt]\n$x^2 + bx + c = (x + p)(x + q)$ \\quad where $p + q = b$ and $p \\cdot q = c$\n\\end{formulabox}\n\n\\vspace{0.2cm}\n\n\\begin{examplebox}\n\\textbf{Example:} \\quad Factor $x^2 - 7x + 12$\\\\[4pt]\nFind two numbers that \\textit{add to} $-7$ and \\textit{multiply to} $12$: \\quad $-3$ and $-4$ ✓\\\\[2pt]\n$\\Rightarrow\\quad x^2 - 7x + 12 = \\boldsymbol{(x-3)(x-4)}$\n\\end{examplebox}\n\n\\vspace{0.2cm}\n\n\\begin{watchoutbox}\n\\textbf{⚠ Watch out:} Signs matter! If $c > 0$, both factors have the \\textit{same sign} as $b$.\\par\nIf $c < 0$, the factors have \\textit{opposite signs}.\n\\end{watchoutbox}\n\n% =================== SKILL 2 ===================\n\\skillheading{Skill 2 Name — e.g. Quadratic Formula}\n\n\\begin{formulabox}\n\\textbf{Formula:}\\\\[4pt]\n\\[\n  x = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}\n\\]\n\\textbf{Discriminant:}\\quad $\\Delta = b^2 - 4ac$\\par\n\\begin{itemize}[leftmargin=1.5cm, itemsep=1pt, topsep=2pt]\n  \\item $\\Delta > 0$: two real solutions\n  \\item $\\Delta = 0$: one real solution (double root)\n  \\item $\\Delta < 0$: no real solutions (complex roots)\n\\end{itemize}\n\\end{formulabox}\n\n\\vspace{0.2cm}\n\n\\begin{examplebox}\n\\textbf{Example:} \\quad Solve $2x^2 - 3x - 5 = 0$\\\\[4pt]\n$a = 2,\\ b = -3,\\ c = -5$\\quad $\\Delta = 9 + 40 = 49$\\\\[2pt]\n$x = \\dfrac{3 \\pm 7}{4}$\\quad $\\Rightarrow\\quad\\boldsymbol{x = \\tfrac{10}{4} = \\tfrac{5}{2}}$ \\quad or \\quad $\\boldsymbol{x = \\tfrac{-4}{4} = -1}$\n\\end{examplebox}\n\n% =================== KEY VOCABULARY ===================\n\\vspace{0.3cm}\n\\skillheading{Key Vocabulary}\n\n\\begin{multicols}{2}\n\\begin{description}[leftmargin=0.5cm, itemsep=2pt, font=\\normalfont\\bfseries]\n  \\item[Term 1:] Definition here\n  \\item[Term 2:] Definition here\n  \\item[Term 3:] Definition here\n  \\item[Term 4:] Definition here\n\\end{description}\n\\end{multicols}\n\n\\end{document}\n```\n\n### Usage guidance\n\n- Generate **one skill section per distinct skill** tested in the worksheet (typically 2–5 sections)\n- Each section should have: a formula/rule box + 1 mini example + optional watch-out\n- Keep the whole document to **1–2 pages max** — it's a reference card, not a lesson\n- Vocabulary section is optional — include only when there are ≥3 important terms\n- The mini examples should be **shorter and simpler** than the worksheet problems, to illustrate the pattern without being distracting\n- The watch-out box is optional per skill — only add if there's a genuinely common mistake worth flagging\n\nFile v2.0.0:references/model-rankings.json\n\n{\n  \"last_updated\": \"2026-02-22\",\n  \"source\": \"bundled — update via https://github.com/stellawuellner/math-worksheets-skill\",\n  \"tiers\": {\n    \"FOUND_REASONING\": {\n      \"description\": \"Reasoning models — step-by-step internal chain-of-thought, highest math accuracy\",\n      \"patterns\": [\n        { \"alias\": \"o3\",        \"match\": \"openai/o3\" },\n        { \"alias\": \"o1\",        \"match\": \"openai/o1\" },\n        { \"alias\": \"deepthink\", \"match\": \"gemini-2.5-pro-deepthink\" },\n        { \"alias\": \"deepthink\", \"match\": \"gemini-2.0-pro-deepthink\" },\n        { \"alias\": \"deepseek\",  \"match\": \"deepseek-r1\" }\n      ]\n    },\n    \"FOUND_STRONG\": {\n      \"description\": \"Strong non-reasoning models — excellent math and LaTeX quality, use when no reasoning model available\",\n      \"patterns\": [\n        { \"alias\": \"opus\", \"match\": \"claude-opus-4\" },\n        { \"alias\": \"opus\", \"match\": \"claude-opus-3-5\" }\n      ]\n    }\n  }\n}\n\nFile v2.0.0:references/model-rankings.md\n\n# Math Model Rankings\n\nThis file is the **bundled fallback** used when the hosted model config cannot be fetched.\nThe live version is maintained at:\n  https://raw.githubusercontent.com/stellawuellner/math-worksheets-skill/main/references/model-rankings.json\n\nLast updated: 2026-02-22\nUpdate this file when the hosted JSON is also updated.\n\n## Current Rankings (K-12 Math Generation)\n\n### Tier 1 — Reasoning Models (FOUND_REASONING)\nStep-by-step internal reasoning. Highest math accuracy. Use for problem generation + answer keys.\n\n| Model ID pattern | Alias | Notes |\n|---|---|---|\n| `openai/o3` | o3 | Best overall math as of early 2026 |\n| `openai/o1` | o1 | Strong reasoning, more accessible than o3 |\n| `gemini-2.5-pro-deepthink` | deepthink | Google's reasoning model, excellent |\n| `gemini-2.0-pro-deepthink` | deepthink | Previous generation, still solid |\n| `deepseek-r1` | deepseek | Open source, competitive with o1 |\n| `deepseek/deepseek-r1` | deepseek | Full model ID variant |\n\n### Tier 2 — Strong Non-Reasoning (FOUND_STRONG)\nNo step-by-step reasoning, but high quality. Excellent LaTeX and pedagogical judgment.\nUse when no Tier 1 is available. SymPy verification compensates for accuracy gap.\n\n| Model ID pattern | Alias | Notes |\n|---|---|---|\n| `claude-opus-4` | opus | Excellent math + best LaTeX quality |\n| `claude-opus-3-5` | opus | Previous generation Opus, still strong |\n\n### Tier 3 — Standard Models (NONE → show recommendation)\nCapable but not recommended for complex algebra. SymPy verification is essential.\n\n| Model ID pattern | Notes |\n|---|---|\n| `claude-sonnet-4` | Good for basic problems, weaker on multi-step |\n| `gemini-2.5-flash` | Fast, adequate for Pre-Algebra level |\n| `openai/gpt-4o` | Decent, not specialized for math |\n\n## How to Update\n\nWhen new models ship that should be Tier 1 or Tier 2:\n\n1. Update the hosted `models.json` at the GitHub URL above\n2. Update this file (bundled fallback)\n3. Bump `last_updated` in `models.json`\n4. Submit a skill update to ClawhHub\n\nKey signals a model deserves Tier 1 promotion:\n- Scores >80% on MATH benchmark or AIME\n- Has documented chain-of-thought / reasoning architecture\n- Consistently outperforms Sonnet-class on algebra in community testing\n\nResources for staying current:\n- https://livebench.ai — live model benchmarks\n- https://arxiv.org/list/cs.LG/recent — new model papers\n- https://lmsys.org/blog — LMSYS Chatbot Arena (math category)\n\nFile v2.0.0:references/problem-library.md\n\n# Problem Type Library\n\nUse this as a menu when designing problem sets. Pick types that target the student's current unit.\n\n## Elementary / Pre-Algebra (Grades 5–8)\n\n| Type | Example |\n|---|---|\n| Integer operations | $-8 + (-3)$, $(-4) \\times 7$ |\n| Order of operations | $3 + 2 \\times (8 - 5)^2 \\div 6$ |\n| Fraction operations | $\\frac{3}{4} + \\frac{5}{6}$, $2\\frac{1}{3} \\times 1\\frac{1}{2}$ |\n| Decimal ↔ fraction ↔ percent | Convert 0.375 to fraction and percent |\n| Ratios & unit rate | \"60 miles in 1.5 hours — find mph\" |\n| Proportions | $\\frac{x}{15} = \\frac{4}{5}$ |\n| Percent: find part/whole/rate | \"35% of 80 is?\" |\n| One-step equations | $x + 7 = -3$, $\\frac{x}{4} = 12$ |\n| Two-step equations | $3x - 5 = 16$ |\n| Inequalities | $2x + 3 > 11$, graph on number line |\n| Coordinate plane plotting | Plot and label points in all 4 quadrants |\n| Perimeter & area | Rectangles, triangles, composite shapes |\n| Circle: circumference & area | Given radius or diameter |\n| Volume | Rectangular prism, cylinder |\n| Mean / median / mode / range | From a data set |\n| Writing expressions from words | \"5 less than twice a number\" |\n| Function tables | Complete $y = 2x + 1$ for $x = -2, 0, 1, 3$ |\n\n## Algebra 1 (Grades 8–9)\n\n| Type | Example |\n|---|---|\n| Slope from two points | Find slope through $(-1, 3)$ and $(4, -2)$ |\n| Slope-intercept form | Write equation, graph the line |\n| Standard form ↔ slope-intercept | Convert $3x - 2y = 12$ |\n| Systems by substitution | Two equations, two unknowns |\n| Systems by elimination | Same |\n| Graphing systems | Find intersection point |\n| Factoring GCF | $12x^3 - 8x^2 + 4x$ |\n| Factoring trinomials ($a=1$) | $x^2 - 7x + 12$ |\n| Factoring difference of squares | $x^2 - 49$ |\n| Solving quadratics by factoring | $(x-3)(x+2)=0$ |\n| Quadratic formula | With discriminant analysis |\n| Graphing parabolas | Vertex, intercepts, axis of symmetry |\n| Exponent rules | Product, quotient, power rules |\n| Simplifying radicals | $\\sqrt{72}$, $\\sqrt{200}$ |\n\n## Algebra 2 (Grades 9–11)\n\n| Type | Example |\n|---|---|\n| All Algebra 1 types (advanced) | Higher coefficients, complex expressions |\n| Factoring trinomials ($a \\neq 1$) | $6x^2 + 7x - 3$ |\n| Sum/difference of cubes | $8x^3 + 27$, $x^3 - 125$ |\n| Completing the square | Standard → vertex form |\n| Complex numbers | $i^2 = -1$; $(3+2i)(1-4i)$ |\n| Polynomial long division | $(x^3-2x^2+5x-6) \\div (x-2)$ |\n| Synthetic division | Same, using synthetic method |\n| Rational Root Theorem | Find all rational zeros |\n| Graphing polynomials | Zeros, multiplicity, end behavior, sign chart |\n| Function composition | $f(g(x))$, $g(f(x))$ |\n| Inverse functions | Find $f^{-1}(x)$, verify |\n| Exponential functions | Growth/decay, $y = ab^x$ |\n| Logarithms | Convert exp ↔ log; solve $\\log_2(x+3) = 4$ |\n| Log properties | Product, quotient, power rules |\n| Sequences | Arithmetic and geometric; find $a_n$ |\n| Systems of 3 equations | Elimination method |\n| Conic sections | Circles, parabolas — standard form |\n\n## Geometry (Grades 9–10)\n\n| Type | Example |\n|---|---|\n| Segment and angle bisectors | Midpoint, angle bisector theorem |\n| Parallel lines & transversals | Alternate interior, corresponding angles |\n| Triangle congruence | SSS, SAS, ASA, AAS, HL — write proofs |\n| Triangle similarity | AA, SAS, SSS similarity |\n| Pythagorean theorem | Find missing side; converse |\n| Special right triangles | 30-60-90, 45-45-90 |\n| Trigonometry | sin/cos/tan; find missing sides and angles |\n| Area: triangles, trapezoids | Standard formulas |\n| Circles | Arc length, sector area, inscribed angles |\n| Coordinate geometry | Distance, midpoint, slope proofs |\n| Volume & surface area | Pyramids, cones, spheres |\n\n## Pre-Calculus (Grades 10–12)\n\n| Type | Example |\n|---|---|\n| Polynomial graphing (advanced) | Turning points, behavior analysis |\n| Rational functions | Asymptotes, holes, graphing |\n| Trig functions | Unit circle, graphs of sin/cos/tan |\n| Trig identities | Pythagorean, reciprocal, co-function |\n| Trig equations | Solve $2\\sin x - 1 = 0$ on $[0, 2\\pi)$ |\n| Inverse trig | Find $\\arcsin$, $\\arccos$, $\\arctan$ values |\n| Vectors | Component form, magnitude, dot product |\n| Polar coordinates | Convert, graph |\n| Sequences & series | Sigma notation, partial sums |\n| Limits (intro) | Evaluate numerically and graphically |\n| Binomial theorem | Expand $(x+y)^n$ |\n| Matrices | Operations, inverse, solve systems |\n\nArchive v0.1.0: 12 files, 20482 bytes\n\nFiles: README.md (3140b), references/latex-templates.md (9257b), references/model-rankings.json (920b), references/model-rankings.md (2445b), references/problem-library.md (4447b), scripts/check_reasoning_model.sh (4291b), scripts/compile.sh (1091b), scripts/fetch_model_config.sh (2298b), scripts/run_verify.sh (1806b), scripts/verify.py (6323b), SKILL.md (8895b), _meta.json (134b)\n\nFile v0.1.0:SKILL.md\n\n---\nname: math-worksheets\ndescription: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any math topic from elementary through high school (Pre-Algebra, Algebra 1/2, Geometry, Pre-Calc). Handles coordinate plane grids, geometric figures, tables, and multi-part problems. Use when a user asks for a math worksheet, practice problems, homework help sheet, or answer key for any K-12 math topic.\n---\n\n# Math Worksheet Generator\n\nGenerate a student worksheet PDF + full step-by-step answer key PDF for any K-12 math topic. Compiles LaTeX with `tectonic` (no TeX installation required — it auto-downloads packages).\n\n## Model Selection (Automatic)\n\nThis skill auto-detects the best available reasoning model and uses it for problem generation. Reasoning models (o1, o3, DeepSeek R1, Gemini DeepThink) work through math step-by-step and make significantly fewer errors than standard models.\n\nModel rankings are kept fresh via a three-layer fallback:\n1. **Hosted JSON** (fetched from GitHub, 7-day cache) — updated by maintainers as models ship\n2. **Bundled JSON** (`references/model-rankings.json`) — updated with each skill release on ClawhHub\n3. **Hardcoded defaults** in the script — last-resort, never stale enough to cause failures\n\nTo update rankings without waiting for a skill release: edit the hosted JSON at the GitHub URL in `references/model-rankings.md`. The skill picks it up within 7 days.\n\n**Step 0 — run model detection before anything else:**\n\n```bash\nSKILL_DIR=\"$(dirname \"$0\")\"\nresult=$(bash \"$SKILL_DIR/scripts/check_reasoning_model.sh\")\nstatus=$(echo \"$result\" | awk '{print $1}')   # FOUND, FALLBACK, or NONE\nmodel_alias=$(echo \"$result\" | awk '{print $2}')\nmodel_full=$(echo \"$result\" | awk '{print $3}')\n```\n\nThen branch on the status:\n\n**`FOUND_REASONING`** (o3, o1, DeepThink, DeepSeek R1) — best case, use for problem generation:\n```\nsessions_spawn(task=\"<problem generation prompt>\", model=model_alias)\n```\nNo warning needed. Sub-agent writes the .tex files + verify script, announces completion.\n\n**`FOUND_STRONG`** (Claude Opus) — excellent quality, use it without alarming the user:\n```\nsessions_spawn(task=\"<generation prompt>\", model=model_alias)\n```\nOptionally add a quiet note: *\"Using Opus — solid math accuracy and excellent LaTeX. For the hardest Algebra 2 problems, a reasoning model (DeepThink/o1) would be marginally better.\"*\n\n**`NONE`** — standard model only; proceed but surface a clear recommendation:\n```\n⚠️ No reasoning model or Opus detected. Worksheet generated with [current model].\nFor best accuracy, especially on multi-step problems, configure one of:\n  • Gemini 2.5 Pro DeepThink  — google.generativeai.com (free tier available)\n  • o1 / o3                   — platform.openai.com\n  • DeepSeek R1               — platform.deepseek.com (very affordable)\n  • Claude Opus               — console.anthropic.com\nSymPy verification will catch most errors regardless.\n```\n\n| Status | Model examples | Action |\n|---|---|---|\n| `FOUND_REASONING` | DeepThink, o1, o3, R1 | Spawn silently, no warning |\n| `FOUND_STRONG` | Claude Opus 4.x | Spawn silently, optional quiet note |\n| `NONE` | Sonnet, Flash, GPT-4o | Use current model + show recommendation |\n\n## Prerequisites\n\n```bash\nbrew install tectonic   # macOS/Linux — downloads packages on demand\n```\n\nOutput directory (create if needed): `~/Documents/Worksheets/`\n\n## Workflow\n\n### 1. Gather requirements\n\nAsk (or infer from context):\n- **Student**: name, grade, course (e.g. \"8th grade, Pre-Algebra\")\n- **Topic**: e.g. \"factoring trinomials\", \"solving two-step equations\"\n- **Problem count**: default 10 if not specified\n- **Format preference**: timed quiz, homework practice, mixed difficulty, or topic drill\n\n**Photo input shortcut**: If the user sends a photo of homework or a textbook page, use the `image` tool to extract problem types, format, and difficulty — then mirror that style exactly.\n\n### 2. Design problems\n\nDesign problems appropriate to the student's level. Increase difficulty gradually across the set. Every problem must be mathematically correct — verify your own solutions.\n\nSee `references/problem-library.md` for topic-specific problem type menus.\n\n### 3. Write LaTeX source\n\nWrite **three** `.tex` files to `/tmp/`:\n- `ws_TOPIC_DATE.tex` — student worksheet (blank work areas)\n- `ak_TOPIC_DATE.tex` — answer key (full step-by-step solutions)\n- `ss_TOPIC_DATE.tex` — skills summary / study guide (cheat sheet)\n\nThe **skills summary** is a 1–2 page reference card the student can use while working through the worksheet or when studying. It contains:\n- One section per distinct skill tested (2–5 sections typical)\n- A **formula/rule box** (blue) per skill — the key facts and formulas\n- A **mini worked example** (green) per skill — brief pattern demonstration, simpler than worksheet problems\n- An optional **watch-out box** (orange) — common mistakes worth flagging\n- Optional **key vocabulary** section at the bottom\n\nSee `references/latex-templates.md` → \"Skills Summary / Study Guide Template\" for the full shell and box macros.\n\nSee `references/latex-templates.md` for document templates, coordinate planes, tables, geometric figures, and answer key patterns.\n\n**Required packages** (include in every document):\n```latex\n\\usepackage[margin=1in, top=0.75in, bottom=0.75in]{geometry}\n\\usepackage{amsmath, amssymb}\n\\usepackage{tikz, pgfplots}\n\\usepackage{enumitem, fancyhdr, multicol, array, booktabs}\n\\pgfplotsset{compat=1.18}\n```\n\n**Work space defaults**: `\\vspace{5cm}` per problem; `8cm` for multi-step; `10cm+` for graphs.\n\n### 4. Write and run the verification script\n\nBefore compiling, write `/tmp/verify_TOPIC_DATE.py` by populating `scripts/verify.py` with real `check()` calls for each problem. Then run it:\n\n```bash\nbash \"$SKILL_DIR/scripts/run_verify.sh\" /tmp/verify_TOPIC_DATE.py\n```\n\n**For each problem**, add one of:\n- `check(N, \"description\", lambda: <sympy assertion>)` — for algebraic problems SymPy can verify\n- `manual(N, \"description\")` — for graphs, word problems, proofs, sign charts\n\n**Coverage by problem type:**\n\n| Type | Verifiable? | How |\n|---|---|---|\n| Solve equation | ✅ | `set(solve(expr, x)) == {val1, val2}` |\n| Factor expression | ✅ | `factor(expr) == expected` or `expand(factor(expr) - expected) == 0` |\n| Simplify radical | ✅ | `simplify(expr - expected) == 0` |\n| Evaluate f(a) | ✅ | `expr.subs(x, a) == value` |\n| Find zeros | ✅ | `set(solve(expr, x)) == {r1, r2, ...}` |\n| y-intercept | ✅ | `expr.subs(x, 0) == value` |\n| Leading coefficient / degree | ✅ | `Poly(expr,x).nth(n) > 0` and `degree(expr,x) == n` |\n| Sketch graph | 👁 manual | Verify visually |\n| Sign chart | 👁 manual | Verify by hand |\n| Word problem setup | 👁 manual | Verify logic |\n\n**If verification fails:** fix the LaTeX source and re-run before compiling. Do not send incorrect worksheets.\n\n### 5. Compile\n\n```bash\nSKILL_DIR=\"$(dirname \"$0\")\"\nbash \"$SKILL_DIR/scripts/compile.sh\" /tmp/ws_TOPIC_DATE.tex ~/Documents/Worksheets/\nbash \"$SKILL_DIR/scripts/compile.sh\" /tmp/ak_TOPIC_DATE.tex ~/Documents/Worksheets/\nbash \"$SKILL_DIR/scripts/compile.sh\" /tmp/ss_TOPIC_DATE.tex ~/Documents/Worksheets/\n```\n\n### 5. Deliver\n\nSend all three PDFs via the same channel the request came from:\n- **Telegram** → `message` tool with `filePath` (copy to `~/.openclaw/media/outbound/` first)\n- **iMessage/SMS** → `imsg` skill\n- **Email** → `gog` skill (send all three as attachments)\n\nSuggested send order: skills summary first (study guide), then worksheet, then answer key.\n\n**Printing**: Do NOT print unless explicitly asked. If asked, print worksheet + skills summary (not answer key, unless requested). Use `lpr -P <printer_name>`.\n\n## Quality Checklist\n\nBefore compiling, verify each problem:\n- [ ] Mathematically correct (you checked the solution)\n- [ ] Unambiguous problem statement\n- [ ] Appropriate difficulty for the student's level\n- [ ] Sufficient work space\n- [ ] Diagrams/graphs/tables included where needed\n- [ ] Problems vary across the set (not all the same sub-type)\n\n## File Naming\n\n```\nws_algebra2_factoring_2026-02-22.pdf   ← worksheet\nak_algebra2_factoring_2026-02-22.pdf   ← answer key\nss_algebra2_factoring_2026-02-22.pdf   ← skills summary / study guide\n```\n\nPrefix with student name when known: `leo_ws_...`, `leo_ak_...`, `leo_ss_...`\n\n## Troubleshooting\n\n| Problem | Fix |\n|---|---|\n| `tectonic` not found | `brew install tectonic` |\n| Slow first compile | Downloading packages from CTAN — wait 30–60s, faster after |\n| LaTeX error on line N | Check paired `$...$`, matching `\\begin{}/\\end{}` |\n| pgfplots not rendering | Ensure `\\pgfplotsset{compat=1.18}` is in preamble |\n| PDF not created | Read full tectonic output for the specific error |\n\nFile v0.1.0:README.md\n\n# math-worksheets — OpenClaw Skill\n\nGenerate professional math practice worksheets, answer keys, and study guides for K-12 students. Three PDFs every time: worksheet → answer key → skills summary cheat sheet.\n\n## Features\n\n- **Three documents per request** — worksheet, step-by-step answer key, skills summary with formula boxes and mini examples\n- **LaTeX quality** — coordinate planes, geometric figures, tables, multi-part problems via tectonic (no TeX installation required)\n- **SymPy verification** — answers are verified with a computer algebra system before compiling; incorrect answers are caught before reaching students\n- **Auto reasoning-model detection** — automatically uses the best available model (DeepThink, o1/o3, DeepSeek R1, Claude Opus) for math generation; shows setup guidance if none configured\n- **Live model rankings** — fetched from this repo with a 7-day cache so recommendations stay current as models evolve\n- **Channel mirroring** — sends back via the same channel the request came from (Telegram, iMessage, email)\n- **K-12 coverage** — Pre-Algebra through Pre-Calculus (see `references/problem-library.md` for full topic menu)\n\n## Install\n\n```bash\nopenclaw skills install math-worksheets\n```\n\nOr download `math-worksheets.skill` from [ClawhHub](https://clawhub.com) and install locally.\n\n**Prerequisites:**\n```bash\nbrew install tectonic   # LaTeX compiler — auto-downloads packages\n```\n\n## Usage\n\nJust ask naturally:\n\n> *\"Make Lucy a 20-problem worksheet on exponents and roots\"*\n> *\"Leo needs practice on graphing polynomials — use his homework photo as a guide\"*\n> *\"Factoring trinomials worksheet for an 8th grader, 15 problems\"*\n\nThe skill handles everything: model selection, problem generation, SymPy verification, compile, and delivery.\n\n## Skill Contents\n\n```\nmath-worksheets/\n├── SKILL.md                          ← workflow and instructions\n├── scripts/\n│   ├── check_reasoning_model.sh     ← auto-detects best available model\n│   ├── fetch_model_config.sh        ← fetches live model rankings (7-day cache)\n│   ├── compile.sh                   ← tectonic PDF compiler wrapper\n│   ├── run_verify.sh                ← gates compilation on SymPy pass\n│   └── verify.py                   ← SymPy verification template\n└── references/\n    ├── latex-templates.md           ← LaTeX patterns (coordinate planes, figures, answer key)\n    ├── problem-library.md           ← K-12 problem type menu by course\n    ├── model-rankings.md            ← human-readable model guidance\n    └── model-rankings.json          ← machine-readable rankings (fetched by skill)\n```\n\n## Keeping Model Rankings Fresh\n\nThe skill fetches `references/model-rankings.json` from this repo with a 7-day local cache. To update rankings when new models ship:\n\n1. Edit `references/model-rankings.json` — add new entries to `FOUND_REASONING` or `FOUND_STRONG`\n2. Bump `last_updated`\n3. Commit and push — all installed instances pick it up within 7 days\n\nPRs welcome for new model additions.\n\n## License\n\nMIT\n\nFile v0.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn7eytttvr7rqp77955nfqkmg180svwc\",\n  \"slug\": \"math-worksheets\",\n  \"version\": \"0.1.0\",\n  \"publishedAt\": 1771803214897\n}\n\nFile v0.1.0:references/latex-templates.md\n\n# LaTeX Templates Reference\n\n## Document Shell\n\n```latex\n\\documentclass[12pt]{article}\n\\usepackage[margin=1in, top=0.75in, bottom=0.75in]{geometry}\n\\usepackage{amsmath, amssymb, tikz, pgfplots, enumitem, fancyhdr, multicol, array, booktabs}\n\\pgfplotsset{compat=1.18}\n\n\\pagestyle{fancy}\n\\fancyhf{}\n\\fancyhead[L]{\\textbf{TOPIC Practice}}\n\\fancyhead[R]{\\small Name: \\underline{\\hspace{4.5cm}}~Date: \\underline{\\hspace{1.8cm}}}\n\\fancyfoot[C]{\\thepage}\n\\renewcommand{\\headrulewidth}{0.4pt}\n\n\\newcounter{prob}\n\\newcommand{\\problem}[1]{\\stepcounter{prob}\\vspace{0.4cm}\\noindent\\textbf{\\large\\theprob.}\\quad #1\\vspace{0.3cm}}\n\n\\begin{document}\n\\begin{center}\n  {\\LARGE\\textbf{TOPIC Practice Worksheet}}\\\\[0.3cm]\n  {\\large COURSE \\quad $\\bullet$ \\quad DATE}\n\\end{center}\n\\noindent\\rule{\\linewidth}{0.4pt}\\vspace{0.2cm}\n\n% [problems here]\n\n\\end{document}\n```\n\n## Problem Patterns\n\n### Simple algebraic problem\n```latex\n\\problem{Solve for $x$: \\quad $2x^2 - 5x - 3 = 0$}\n\\vspace{6cm}\n```\n\n### Two-column layout (shorter problems)\n```latex\n\\begin{multicols}{2}\n\\begin{enumerate}[label=\\textbf{\\arabic*.}, itemsep=4cm]\n  \\item $3x + 7 = 22$\n  \\item $-2(x - 5) = 14$\n  \\item $\\dfrac{x}{4} + 3 = 9$\n  \\item $5x - 3 = 2x + 9$\n\\end{enumerate}\n\\end{multicols}\n```\n\n### Multi-part problem\n```latex\n\\problem{Given $f(x) = 3x^2 - 2x + 1$, find:}\n\\begin{enumerate}[label=(\\alph*), itemsep=3cm, leftmargin=1.5cm]\n  \\item $f(0)$\n  \\item $f(-2)$\n  \\item $f(x+1)$ — expand and simplify\n  \\vspace{2cm}\n\\end{enumerate}\n```\n\n### Function table\n```latex\n\\problem{Complete the table for $y = 3x - 2$.}\n\\vspace{0.3cm}\n\\begin{center}\n\\begin{tabular}{|>{\\centering\\arraybackslash}m{1.5cm}|>{\\centering\\arraybackslash}m{1.5cm}|}\n\\hline\n\\textbf{$x$} & \\textbf{$y$} \\\\\n\\hline\n$-2$ & \\rule{1.2cm}{0pt} \\\\[0.5cm]\\hline\n$0$  & \\\\[0.5cm]\\hline\n$1$  & \\\\[0.5cm]\\hline\n$3$  & \\\\[0.5cm]\\hline\n\\end{tabular}\n\\end{center}\n\\vspace{1cm}\n```\n\n## Coordinate Planes\n\n### Blank grid (student fills in — algebraic range)\n```latex\n\\begin{center}\n\\begin{tikzpicture}\n\\begin{axis}[\n    axis lines=center, xmin=-6, xmax=6, ymin=-6, ymax=6,\n    xtick={-6,-4,...,6}, ytick={-6,-4,...,6},\n    grid=both,\n    grid style={line width=0.15pt, draw=gray!30},\n    major grid style={line width=0.3pt, draw=gray!50},\n    tick label style={font=\\small},\n    xlabel={$x$}, ylabel={$y$},\n    width=9cm, height=9cm, enlargelimits=false\n]\n\\end{axis}\n\\end{tikzpicture}\n\\end{center}\n```\n\n### Blank grid (full −10 to 10, Pre-Algebra style)\n```latex\n\\begin{axis}[\n    axis lines=center, xmin=-10, xmax=10, ymin=-10, ymax=10,\n    xtick={-10,-8,...,10}, ytick={-10,-8,...,10},\n    minor tick num=1, grid=both,\n    grid style={line width=0.12pt, draw=gray!20},\n    major grid style={line width=0.3pt, draw=gray!50},\n    tick label style={font=\\scriptsize},\n    xlabel={$x$}, ylabel={$y$}, width=9cm, height=9cm\n]\n\\end{axis}\n```\n\n### Completed graph (answer key — plot a function)\n```latex\n\\addplot[blue, thick, domain=-1:5, samples=100] {x^2 - 4*x + 3};\n\\addplot[only marks, mark=*, mark size=2.5pt, red] coordinates {(1,0)(3,0)};   % x-intercepts\n\\addplot[only marks, mark=diamond*, mark size=3pt, green!60!black] coordinates {(2,-1)};  % vertex\n\\draw[dashed, gray] (axis cs:2,-6) -- (axis cs:2,8) node[above] {$x=2$};\n```\n\n## Geometric Figures\n\n### Right triangle\n```latex\n\\begin{center}\n\\begin{tikzpicture}[scale=1.2]\n  \\coordinate (A) at (0,0);\n  \\coordinate (B) at (4,0);\n  \\coordinate (C) at (4,3);\n  \\draw[thick] (A) -- (B) -- (C) -- cycle;\n  \\draw (B) ++(-.25,0) -- ++(0,.25) -- ++(.25,0);  % right angle mark\n  \\node[below left] at (A) {$A$};\n  \\node[below right] at (B) {$B$};\n  \\node[above right] at (C) {$C$};\n  \\node[below] at (2,0) {$8$};\n  \\node[right] at (4,1.5) {$6$};\n  \\node[above left] at (2,1.5) {$x$};\n\\end{tikzpicture}\n\\end{center}\n```\n\n## Answer Key Patterns\n\n### Answer key document header\n```latex\n\\fancyhead[L]{\\textbf{TOPIC — Answer Key}}\n\\fancyhead[R]{\\textit{For instructor/parent use}}\n```\n\n### Step-by-step solution\n```latex\n\\problem{[Repeat full problem statement]}\n\n\\textbf{Solution:}\n\\begin{align*}\n  2x^2 - 5x - 3 &= 0 \\\\\n  \\intertext{Factor — find factors of $2(-3)=-6$ summing to $-5$: use $-6,+1$:}\n  2x^2 - 6x + x - 3 &= 0 \\\\\n  2x(x - 3) + 1(x - 3) &= 0 \\\\\n  (2x + 1)(x - 3) &= 0 \\\\\n  \\intertext{Zero product property:}\n  2x + 1 = 0 \\quad &\\text{or} \\quad x - 3 = 0 \\\\\n\\end{align*}\n\\[ \\boxed{x = -\\tfrac{1}{2} \\quad \\text{or} \\quad x = 3} \\]\n\n\\vspace{0.3cm}\\noindent\\rule{\\linewidth}{0.2pt}\\vspace{0.3cm}\n```\n\n### Sign chart (for polynomial graphing)\n```latex\n\\[\n\\underbrace{+}_{x<-2}\\ \\Bigl|_{-2}\\ \\underbrace{-}_{-2<x<0}\\ \\Bigl|_{0}\\ \\underbrace{-}_{0<x<2}\\ \\Bigl|_{2}\\ \\underbrace{+}_{x>2}\n\\]\n```\n\n---\n\n## Skills Summary / Study Guide Template\n\nThis is the **third document** generated alongside every worksheet. It's a one-to-two page reference card the student can use while working or studying.\n\n### Document shell\n\n```latex\n\\documentclass[12pt]{article}\n\\usepackage[margin=0.85in, top=0.7in, bottom=0.7in]{geometry}\n\\usepackage{amsmath, amssymb, tikz, enumitem, fancyhdr, multicol, mdframed, xcolor}\n\n% Color palette\n\\definecolor{skillblue}{RGB}{30,100,180}\n\\definecolor{skillbluebg}{RGB}{235,244,255}\n\\definecolor{warnorange}{RGB}{200,90,0}\n\\definecolor{warnbg}{RGB}{255,243,230}\n\\definecolor{exgreen}{RGB}{20,120,60}\n\\definecolor{exgreenbg}{RGB}{230,248,238}\n\n% Formula/rule box\n\\newmdenv[\n  backgroundcolor=skillbluebg,\n  linecolor=skillblue, linewidth=1.5pt,\n  innertopmargin=6pt, innerbottommargin=6pt,\n  innerleftmargin=10pt, innerrightmargin=10pt,\n  skipabove=6pt, skipbelow=4pt\n]{formulabox}\n\n% Mini example box\n\\newmdenv[\n  backgroundcolor=exgreenbg,\n  linecolor=exgreen, linewidth=1pt,\n  innertopmargin=5pt, innerbottommargin=5pt,\n  innerleftmargin=10pt, innerrightmargin=10pt,\n  skipabove=4pt, skipbelow=4pt\n]{examplebox}\n\n% Watch-out box\n\\newmdenv[\n  backgroundcolor=warnbg,\n  linecolor=warnorange, linewidth=1pt,\n  innertopmargin=5pt, innerbottommargin=5pt,\n  innerleftmargin=10pt, innerrightmargin=10pt,\n  skipabove=4pt, skipbelow=4pt\n]{watchoutbox}\n\n% Skill section heading\n\\newcommand{\\skillheading}[1]{%\n  \\vspace{0.4cm}\n  {\\large\\textbf{\\textcolor{skillblue}{#1}}}\n  \\vspace{0.1cm}\n  \\hrule height 1pt\n  \\vspace{0.2cm}\n}\n\n\\pagestyle{fancy}\n\\fancyhf{}\n\\fancyhead[L]{\\textbf{Skills Summary: TOPIC}}\n\\fancyhead[R]{\\small\\textit{Study Guide \\& Reference}}\n\\fancyfoot[C]{\\thepage}\n\\renewcommand{\\headrulewidth}{0.4pt}\n\n\\begin{document}\n\n\\begin{center}\n  {\\LARGE\\textbf{Skills Summary}}\\\\[0.2cm]\n  {\\large\\textbf{TOPIC}}\\\\[0.1cm]\n  {\\small\\textit{Use this reference while completing your worksheet or when studying.}}\n\\end{center}\n\\vspace{0.1cm}\n\\noindent\\rule{\\linewidth}{1.5pt}\n\\vspace{0.3cm}\n\n% =================== SKILL 1 ===================\n\\skillheading{Skill 1 Name — e.g. Factoring Trinomials (a = 1)}\n\n\\begin{formulabox}\n\\textbf{Rule / Formula:}\\\\[4pt]\n$x^2 + bx + c = (x + p)(x + q)$ \\quad where $p + q = b$ and $p \\cdot q = c$\n\\end{formulabox}\n\n\\vspace{0.2cm}\n\n\\begin{examplebox}\n\\textbf{Example:} \\quad Factor $x^2 - 7x + 12$\\\\[4pt]\nFind two numbers that \\textit{add to} $-7$ and \\textit{multiply to} $12$: \\quad $-3$ and $-4$ ✓\\\\[2pt]\n$\\Rightarrow\\quad x^2 - 7x + 12 = \\boldsymbol{(x-3)(x-4)}$\n\\end{examplebox}\n\n\\vspace{0.2cm}\n\n\\begin{watchoutbox}\n\\textbf{⚠ Watch out:} Signs matter! If $c > 0$, both factors have the \\textit{same sign} as $b$.\\par\nIf $c < 0$, the factors have \\textit{opposite signs}.\n\\end{watchoutbox}\n\n% =================== SKILL 2 ===================\n\\skillheading{Skill 2 Name — e.g. Quadratic Formula}\n\n\\begin{formulabox}\n\\textbf{Formula:}\\\\[4pt]\n\\[\n  x = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}\n\\]\n\\textbf{Discriminant:}\\quad $\\Delta = b^2 - 4ac$\\par\n\\begin{itemize}[leftmargin=1.5cm, itemsep=1pt, topsep=2pt]\n  \\item $\\Delta > 0$: two real solutions\n  \\item $\\Delta = 0$: one real solution (double root)\n  \\item $\\Delta < 0$: no real solutions (complex roots)\n\\end{itemize}\n\\end{formulabox}\n\n\\vspace{0.2cm}\n\n\\begin{examplebox}\n\\textbf{Example:} \\quad Solve $2x^2 - 3x - 5 = 0$\\\\[4pt]\n$a = 2,\\ b = -3,\\ c = -5$\\quad $\\Delta = 9 + 40 = 49$\\\\[2pt]\n$x = \\dfrac{3 \\pm 7}{4}$\\quad $\\Rightarrow\\quad\\boldsymbol{x = \\tfrac{10}{4} = \\tfrac{5}{2}}$ \\quad or \\quad $\\boldsymbol{x = \\tfrac{-4}{4} = -1}$\n\\end{examplebox}\n\n% =================== KEY VOCABULARY ===================\n\\vspace{0.3cm}\n\\skillheading{Key Vocabulary}\n\n\\begin{multicols}{2}\n\\begin{description}[leftmargin=0.5cm, itemsep=2pt, font=\\normalfont\\bfseries]\n  \\item[Term 1:] Definition here\n  \\item[Term 2:] Definition here\n  \\item[Term 3:] Definition here\n  \\item[Term 4:] Definition here\n\\end{description}\n\\end{multicols}\n\n\\end{document}\n```\n\n### Usage guidance\n\n- Generate **one skill section per distinct skill** tested in the worksheet (typically 2–5 sections)\n- Each section should have: a formula/rule box + 1 mini example + optional watch-out\n- Keep the whole document to **1–2 pages max** — it's a reference card, not a lesson\n- Vocabulary section is optional — include only when there are ≥3 important terms\n- The mini examples should be **shorter and simpler** than the worksheet problems, to illustrate the pattern without being distracting\n- The watch-out box is optional per skill — only add if there's a genuinely common mistake worth flagging\n\nFile v0.1.0:references/model-rankings.json\n\n{\n  \"last_updated\": \"2026-02-22\",\n  \"source\": \"bundled — update via https://github.com/stellawuellner/math-worksheets-skill\",\n  \"tiers\": {\n    \"FOUND_REASONING\": {\n      \"description\": \"Reasoning models — step-by-step internal chain-of-thought, highest math accuracy\",\n      \"patterns\": [\n        { \"alias\": \"o3\",        \"match\": \"openai/o3\" },\n        { \"alias\": \"o1\",        \"match\": \"openai/o1\" },\n        { \"alias\": \"deepthink\", \"match\": \"gemini-2.5-pro-deepthink\" },\n        { \"alias\": \"deepthink\", \"match\": \"gemini-2.0-pro-deepthink\" },\n        { \"alias\": \"deepseek\",  \"match\": \"deepseek-r1\" }\n      ]\n    },\n    \"FOUND_STRONG\": {\n      \"description\": \"Strong non-reasoning models — excellent math and LaTeX quality, use when no reasoning model available\",\n      \"patterns\": [\n        { \"alias\": \"opus\", \"match\": \"claude-opus-4\" },\n        { \"alias\": \"opus\", \"match\": \"claude-opus-3-5\" }\n      ]\n    }\n  }\n}\n\nFile v0.1.0:references/model-rankings.md\n\n# Math Model Rankings\n\nThis file is the **bundled fallback** used when the hosted model config cannot be fetched.\nThe live version is maintained at:\n  https://raw.githubusercontent.com/stellawuellner/math-worksheets-skill/main/references/model-rankings.json\n\nLast updated: 2026-02-22\nUpdate this file when the hosted JSON is also updated.\n\n## Current Rankings (K-12 Math Generation)\n\n### Tier 1 — Reasoning Models (FOUND_REASONING)\nStep-by-step internal reasoning. Highest math accuracy. Use for problem generation + answer keys.\n\n| Model ID pattern | Alias | Notes |\n|---|---|---|\n| `openai/o3` | o3 | Best overall math as of early 2026 |\n| `openai/o1` | o1 | Strong reasoning, more accessible than o3 |\n| `gemini-2.5-pro-deepthink` | deepthink | Google's reasoning model, excellent |\n| `gemini-2.0-pro-deepthink` | deepthink | Previous generation, still solid |\n| `deepseek-r1` | deepseek | Open source, competitive with o1 |\n| `deepseek/deepseek-r1` | deepseek | Full model ID variant |\n\n### Tier 2 — Strong Non-Reasoning (FOUND_STRONG)\nNo step-by-step reasoning, but high quality. Excellent LaTeX and pedagogical judgment.\nUse when no Tier 1 is available. SymPy verification compensates for accuracy gap.\n\n| Model ID pattern | Alias | Notes |\n|---|---|---|\n| `claude-opus-4` | opus | Excellent math + best LaTeX quality |\n| `claude-opus-3-5` | opus | Previous generation Opus, still strong |\n\n### Tier 3 — Standard Models (NONE → show recommendation)\nCapable but not recommended for complex algebra. SymPy verification is essential.\n\n| Model ID pattern | Notes |\n|---|---|\n| `claude-sonnet-4` | Good for basic problems, weaker on multi-step |\n| `gemini-2.5-flash` | Fast, adequate for Pre-Algebra level |\n| `openai/gpt-4o` | Decent, not specialized for math |\n\n## How to Update\n\nWhen new models ship that should be Tier 1 or Tier 2:\n\n1. Update the hosted `models.json` at the GitHub URL above\n2. Update this file (bundled fallback)\n3. Bump `last_updated` in `models.json`\n4. Submit a skill update to ClawhHub\n\nKey signals a model deserves Tier 1 promotion:\n- Scores >80% on MATH benchmark or AIME\n- Has documented chain-of-thought / reasoning architecture\n- Consistently outperforms Sonnet-class on algebra in community testing\n\nResources for staying current:\n- https://livebench.ai — live model benchmarks\n- https://arxiv.org/list/cs.LG/recent — new model papers\n- https://lmsys.org/blog — LMSYS Chatbot Arena (math category)\n\nFile v0.1.0:references/problem-library.md\n\n# Problem Type Library\n\nUse this as a menu when designing problem sets. Pick types that target the student's current unit.\n\n## Elementary / Pre-Algebra (Grades 5–8)\n\n| Type | Example |\n|---|---|\n| Integer operations | $-8 + (-3)$, $(-4) \\times 7$ |\n| Order of operations | $3 + 2 \\times (8 - 5)^2 \\div 6$ |\n| Fraction operations | $\\frac{3}{4} + \\frac{5}{6}$, $2\\frac{1}{3} \\times 1\\frac{1}{2}$ |\n| Decimal ↔ fraction ↔ percent | Convert 0.375 to fraction and percent |\n| Ratios & unit rate | \"60 miles in 1.5 hours — find mph\" |\n| Proportions | $\\frac{x}{15} = \\frac{4}{5}$ |\n| Percent: find part/whole/rate | \"35% of 80 is?\" |\n| One-step equations | $x + 7 = -3$, $\\frac{x}{4} = 12$ |\n| Two-step equations | $3x - 5 = 16$ |\n| Inequalities | $2x + 3 > 11$, graph on number line |\n| Coordinate plane plotting | Plot and label points in all 4 quadrants |\n| Perimeter & area | Rectangles, triangles, composite shapes |\n| Circle: circumference & area | Given radius or diameter |\n| Volume | Rectangular prism, cylinder |\n| Mean / median / mode / range | From a data set |\n| Writing expressions from words | \"5 less than twice a number\" |\n| Function tables | Complete $y = 2x + 1$ for $x = -2, 0, 1, 3$ |\n\n## Algebra 1 (Grades 8–9)\n\n| Type | Example |\n|---|---|\n| Slope from two points | Find slope through $(-1, 3)$ and $(4, -2)$ |\n| Slope-intercept form | Write equation, graph the line |\n| Standard form ↔ slope-intercept | Convert $3x - 2y = 12$ |\n| Systems by substitution | Two equations, two unknowns |\n| Systems by elimination | Same |\n| Graphing systems | Find intersection point |\n| Factoring GCF | $12x^3 - 8x^2 + 4x$ |\n| Factoring trinomials ($a=1$) | $x^2 - 7x + 12$ |\n| Factoring difference of squares | $x^2 - 49$ |\n| Solving quadratics by factoring | $(x-3)(x+2)=0$ |\n| Quadratic formula | With discriminant analysis |\n| Graphing parabolas | Vertex, intercepts, axis of symmetry |\n| Exponent rules | Product, quotient, power rules |\n| Simplifying radicals | $\\sqrt{72}$, $\\sqrt{200}$ |\n\n## Algebra 2 (Grades 9–11)\n\n| Type | Example |\n|---|---|\n| All Algebra 1 types (advanced) | Higher coefficients, complex expressions |\n| Factoring trinomials ($a \\neq 1$) | $6x^2 + 7x - 3$ |\n| Sum/difference of cubes | $8x^3 + 27$, $x^3 - 125$ |\n| Completing the square | Standard → vertex form |\n| Complex numbers | $i^2 = -1$; $(3+2i)(1-4i)$ |\n| Polynomial long division | $(x^3-2x^2+5x-6) \\div (x-2)$ |\n| Synthetic division | Same, using synthetic method |\n| Rational Root Theorem | Find all rational zeros |\n| Graphing polynomials | Zeros, multiplicity, end behavior, sign chart |\n| Function composition | $f(g(x))$, $g(f(x))$ |\n| Inverse functions | Find $f^{-1}(x)$, verify |\n| Exponential functions | Growth/decay, $y = ab^x$ |\n| Logarithms | Convert exp ↔ log; solve $\\log_2(x+3) = 4$ |\n| Log properties | Product, quotient, power rules |\n| Sequences | Arithmetic and geometric; find $a_n$ |\n| Systems of 3 equations | Elimination method |\n| Conic sections | Circles, parabolas — standard form |\n\n## Geometry (Grades 9–10)\n\n| Type | Example |\n|---|---|\n| Segment and angle bisectors | Midpoint, angle bisector theorem |\n| Parallel lines & transversals | Alternate interior, corresponding angles |\n| Triangle congruence | SSS, SAS, ASA, AAS, HL — write proofs |\n| Triangle similarity | AA, SAS, SSS similarity |\n| Pythagorean theorem | Find missing side; converse |\n| Special right triangles | 30-60-90, 45-45-90 |\n| Trigonometry | sin/cos/tan; find missing sides and angles |\n| Area: triangles, trapezoids | Standard formulas |\n| Circles | Arc length, sector area, inscribed angles |\n| Coordinate geometry | Distance, midpoint, slope proofs |\n| Volume & surface area | Pyramids, cones, spheres |\n\n## Pre-Calculus (Grades 10–12)\n\n| Type | Example |\n|---|---|\n| Polynomial graphing (advanced) | Turning points, behavior analysis |\n| Rational functions | Asymptotes, holes, graphing |\n| Trig functions | Unit circle, graphs of sin/cos/tan |\n| Trig identities | Pythagorean, reciprocal, co-function |\n| Trig equations | Solve $2\\sin x - 1 = 0$ on $[0, 2\\pi)$ |\n| Inverse trig | Find $\\arcsin$, $\\arccos$, $\\arctan$ values |\n| Vectors | Component form, magnitude, dot product |\n| Polar coordinates | Convert, graph |\n| Sequences & series | Sigma notation, partial sums |\n| Limits (intro) | Evaluate numerically and graphically |\n| Binomial theorem | Expand $(x+y)^n$ |\n| Matrices | Operations, inverse, solve systems |","readmeExcerpt":"Skill: Math Worksheets Owner: trondw Summary: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat... Tags: latest:2.0.0 Version history: v2.0.0 | 2026-02-24T06:48:04.382Z | auto **Major update: worksheet verification now uses structured data files (JSON), improving reliability and security.** - Replaced code-base","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"SKILL_DIR=\"$(dirname \"$0\")\"\nresult=$(bash \"$SKILL_DIR/scripts/check_reasoning_model.sh\")\nstatus=$(echo \"$result\" | awk '{print $1}')   # FOUND, FALLBACK, or NONE\nmodel_alias=$(echo \"$result\" | awk '{print $2}')\nmodel_full=$(echo \"$result\" | awk '{print $3}')"},{"language":"text","snippet":"sessions_spawn(task=\"<problem generation prompt>\", model=model_alias)"},{"language":"text","snippet":"sessions_spawn(task=\"<generation prompt>\", model=model_alias)"},{"language":"text","snippet":"⚠️ No reasoning model or Opus detected. Worksheet generated with [current model].\nFor best accuracy, especially on multi-step problems, configure one of:\n  • Gemini 2.5 Pro DeepThink  — google.generativeai.com (free tier available)\n  • o1 / o3                   — platform.openai.com\n  • DeepSeek R1               — platform.deepseek.com (very affordable)\n  • Claude Opus               — console.anthropic.com\nSymPy verification will catch most errors regardless."},{"language":"bash","snippet":"brew install tectonic   # macOS/Linux — downloads packages on demand"},{"language":"latex","snippet":"\\usepackage[margin=1in, top=0.75in, bottom=0.75in]{geometry}\n\\usepackage{amsmath, amssymb}\n\\usepackage{tikz, pgfplots}\n\\usepackage{enumitem, fancyhdr, multicol, array, booktabs}\n\\pgfplotsset{compat=1.18}"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: math-worksheets\ndescription: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any math topic from elementary through high school (Pre-Algebra, Algebra 1/2, Geometry, Pre-Calc). Handles coordinate plane grids, geometric figures, tables, and multi-part problems. Use when a user asks for a math worksheet, practice problems, homework help sheet, or answer key for any K-12 math topic.\n---\n\n# Math Worksheet Generator\n\nGenerate a student worksheet PDF + full step-by-step answer key PDF for any K-12 math topic. Compiles LaTeX with `tectonic` (no TeX installation required — it auto-downloads packages).\n\n## Model Selection (Automatic)\n\nThis skill auto-detects the best available reasoning model and uses it for problem generation. Reasoning models (o1, o3, DeepSeek R1, Gemini DeepThink) work through math step-by-step and make significantly fewer errors than standard models.\n\nModel rankings are kept fresh via a three-layer fallback:\n1. **Hosted JSON** (fetched from GitHub, 7-day cache) — updated by maintainers as models ship\n2. **Bundled JSON** (`references/model-rankings.json`) — updated with each skill release on ClawhHub\n3. **Hardcoded defaults** in the script — last-resort, never stale enough to cause failures\n\nTo update rankings without waiting for a skill release: edit the hosted JSON at the GitHub URL in `references/model-rankings.md`. The skill picks it up within 7 days.\n\n**Step 0 — run model detection before anything else:**\n\n```bash\nSKILL_DIR=\"$(dirname \"$0\")\"\nresult=$(bash \"$SKILL_DIR/scripts/check_reasoning_model.sh\")\nstatus=$(echo \"$result\" | awk '{print $1}')   # FOUND, FALLBACK, or NONE\nmodel_alias=$(echo \"$result\" | awk '{print $2}')\nmodel_full=$(echo \"$result\" | awk '{print $3}')\n```\n\nThen branch on the status:\n\n**`FOUND_REASONING`** (o3, o1, DeepThink, DeepSeek R1) — best case, use for problem generation:\n```\nsessions_spawn(task=\"<problem generation prompt>\", model=model_alias)\n```\nNo warning needed. Sub-agent writes the .tex files + verify script, announces completion.\n\n**`FOUND_STRONG`** (Claude Opus) — excellent quality, use it without alarming the user:\n```\nsessions_spawn(task=\"<generation prompt>\", model=model_alias)\n```\nOptionally add a quiet note: *\"Using Opus — solid math accuracy and excellent LaTeX. For the hardest Algebra 2 problems, a reasoning model (DeepThink/o1) would be marginally better.\"*\n\n**`NONE`** — standard model only; proceed but surface a clear recommendation:\n```\n⚠️ No reasoning model or Opus detected. Worksheet generated with [current model].\nFor best accuracy, especially on multi-step problems, configure one of:\n  • Gemini 2.5 Pro DeepThink  — google.generativeai.com (free tier available)\n  • o1 / o3                   — platform.openai.com\n  • DeepSeek R1               — platform.deepseek.com (very affordable)\n  • Claude Opus               — console.anthropic.com\nSymPy verification will catch most errors r"},{"path":"README.md","content":"# math-worksheets — OpenClaw Skill\n\n**v2.0.0** · [Changelog](#changelog)\n\nGenerate professional math practice worksheets, answer keys, and study guides for K-12 students. Three PDFs every time: worksheet → answer key → skills summary cheat sheet.\n\n## Features\n\n- **Three documents per request** — worksheet, step-by-step answer key, skills summary with formula boxes and mini examples\n- **LaTeX quality** — coordinate planes, geometric figures, tables, multi-part problems via tectonic (no TeX installation required)\n- **SymPy verification** — answers are verified with a computer algebra system before compiling; incorrect answers are caught before reaching students\n- **Auto reasoning-model detection** — automatically uses the best available model (DeepThink, o1/o3, DeepSeek R1, Claude Opus) for math generation; shows setup guidance if none configured. All detection is local — no network calls.\n- **Channel mirroring** — sends back via the same channel the request came from (Telegram, iMessage, email)\n- **K-12 coverage** — Pre-Algebra through Pre-Calculus (see `references/problem-library.md` for full topic menu)\n\n## Install\n\n```bash\nopenclaw skills install math-worksheets\n```\n\nOr download `math-worksheets.skill` from [ClawhHub](https://clawhub.com) and install locally.\n\n**Prerequisites:**\n```bash\nbrew install tectonic   # LaTeX compiler — auto-downloads packages on first use\n```\n\n**Python 3** is also required (standard on macOS). The skill uses it for model detection and answer verification.\n\n**sympy** is required for answer verification:\n```bash\npip3 install sympy\n```\n\n## Usage\n\nJust ask naturally:\n\n> *\"Make Lucy a 20-problem worksheet on exponents and roots\"*\n> *\"Leo needs practice on graphing polynomials — use his homework photo as a guide\"*\n> *\"Factoring trinomials worksheet for an 8th grader, 15 problems\"*\n\nThe skill handles everything: model selection, problem generation, SymPy verification, compile, and delivery.\n\n## Skill Contents\n\n```\nmath-worksheets/\n├── SKILL.md                          ← workflow and instructions\n├── scripts/\n│   ├── check_reasoning_model.sh     ← auto-detects best available model (local only)\n│   ├── compile.sh                   ← tectonic PDF compiler wrapper\n│   ├── run_verify.sh                ← gates compilation on SymPy pass\n│   └── verify.py                   ← SymPy verification template\n└── references/\n    ├── latex-templates.md           ← LaTeX patterns (coordinate planes, figures, answer key)\n    ├── problem-library.md           ← K-12 problem type menu by course\n    ├── model-rankings.md            ← human-readable model guidance\n    └── model-rankings.json          ← bundled model ranking reference\n```\n\n## Changelog\n\n### v2.0.0 — 2026-02-23\n- **Security:** Eliminated RCE surface — verification no longer generates or executes AI-written Python code. The AI now writes a structured JSON data file (`verify_TOPIC_DATE.json`); the fixed, auditable `scripts/verify.py` evaluates it using SymPy. No user input is ever exe"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7eytttvr7rqp77955nfqkmg180svwc\",\n  \"slug\": \"math-worksheets\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1771915684382\n}"},{"path":"references/latex-templates.md","content":"# LaTeX Templates Reference\n\n## Document Shell\n\n```latex\n\\documentclass[12pt]{article}\n\\usepackage[margin=1in, top=0.75in, bottom=0.75in]{geometry}\n\\usepackage{amsmath, amssymb, tikz, pgfplots, enumitem, fancyhdr, multicol, array, booktabs}\n\\pgfplotsset{compat=1.18}\n\n\\pagestyle{fancy}\n\\fancyhf{}\n\\fancyhead[L]{\\textbf{TOPIC Practice}}\n\\fancyhead[R]{\\small Name: \\underline{\\hspace{4.5cm}}~Date: \\underline{\\hspace{1.8cm}}}\n\\fancyfoot[C]{\\thepage}\n\\renewcommand{\\headrulewidth}{0.4pt}\n\n\\newcounter{prob}\n\\newcommand{\\problem}[1]{\\stepcounter{prob}\\vspace{0.4cm}\\noindent\\textbf{\\large\\theprob.}\\quad #1\\vspace{0.3cm}}\n\n\\begin{document}\n\\begin{center}\n  {\\LARGE\\textbf{TOPIC Practice Worksheet}}\\\\[0.3cm]\n  {\\large COURSE \\quad $\\bullet$ \\quad DATE}\n\\end{center}\n\\noindent\\rule{\\linewidth}{0.4pt}\\vspace{0.2cm}\n\n% [problems here]\n\n\\end{document}\n```\n\n## Problem Patterns\n\n### Simple algebraic problem\n```latex\n\\problem{Solve for $x$: \\quad $2x^2 - 5x - 3 = 0$}\n\\vspace{6cm}\n```\n\n### Two-column layout (shorter problems)\n```latex\n\\begin{multicols}{2}\n\\begin{enumerate}[label=\\textbf{\\arabic*.}, itemsep=4cm]\n  \\item $3x + 7 = 22$\n  \\item $-2(x - 5) = 14$\n  \\item $\\dfrac{x}{4} + 3 = 9$\n  \\item $5x - 3 = 2x + 9$\n\\end{enumerate}\n\\end{multicols}\n```\n\n### Multi-part problem\n```latex\n\\problem{Given $f(x) = 3x^2 - 2x + 1$, find:}\n\\begin{enumerate}[label=(\\alph*), itemsep=3cm, leftmargin=1.5cm]\n  \\item $f(0)$\n  \\item $f(-2)$\n  \\item $f(x+1)$ — expand and simplify\n  \\vspace{2cm}\n\\end{enumerate}\n```\n\n### Function table\n```latex\n\\problem{Complete the table for $y = 3x - 2$.}\n\\vspace{0.3cm}\n\\begin{center}\n\\begin{tabular}{|>{\\centering\\arraybackslash}m{1.5cm}|>{\\centering\\arraybackslash}m{1.5cm}|}\n\\hline\n\\textbf{$x$} & \\textbf{$y$} \\\\\n\\hline\n$-2$ & \\rule{1.2cm}{0pt} \\\\[0.5cm]\\hline\n$0$  & \\\\[0.5cm]\\hline\n$1$  & \\\\[0.5cm]\\hline\n$3$  & \\\\[0.5cm]\\hline\n\\end{tabular}\n\\end{center}\n\\vspace{1cm}\n```\n\n## Coordinate Planes\n\n### Blank grid (student fills in — algebraic range)\n```latex\n\\begin{center}\n\\begin{tikzpicture}\n\\begin{axis}[\n    axis lines=center, xmin=-6, xmax=6, ymin=-6, ymax=6,\n    xtick={-6,-4,...,6}, ytick={-6,-4,...,6},\n    grid=both,\n    grid style={line width=0.15pt, draw=gray!30},\n    major grid style={line width=0.3pt, draw=gray!50},\n    tick label style={font=\\small},\n    xlabel={$x$}, ylabel={$y$},\n    width=9cm, height=9cm, enlargelimits=false\n]\n\\end{axis}\n\\end{tikzpicture}\n\\end{center}\n```\n\n### Blank grid (full −10 to 10, Pre-Algebra style)\n```latex\n\\begin{axis}[\n    axis lines=center, xmin=-10, xmax=10, ymin=-10, ymax=10,\n    xtick={-10,-8,...,10}, ytick={-10,-8,...,10},\n    minor tick num=1, grid=both,\n    grid style={line width=0.12pt, draw=gray!20},\n    major grid style={line width=0.3pt, draw=gray!50},\n    tick label style={font=\\scriptsize},\n    xlabel={$x$}, ylabel={$y$}, width=9cm, height=9cm\n]\n\\end{axis}\n```\n\n### Completed graph (answer key — plot a function)\n```latex\n\\addplot[blue, thick, domain=-1:5, samples=100] {x^2 - 4*x + 3};\n\\addplot[only marks, mark="},{"path":"references/model-rankings.json","content":"{\n  \"last_updated\": \"2026-02-22\",\n  \"source\": \"bundled — update via https://github.com/stellawuellner/math-worksheets-skill\",\n  \"tiers\": {\n    \"FOUND_REASONING\": {\n      \"description\": \"Reasoning models — step-by-step internal chain-of-thought, highest math accuracy\",\n      \"patterns\": [\n        { \"alias\": \"o3\",        \"match\": \"openai/o3\" },\n        { \"alias\": \"o1\",        \"match\": \"openai/o1\" },\n        { \"alias\": \"deepthink\", \"match\": \"gemini-2.5-pro-deepthink\" },\n        { \"alias\": \"deepthink\", \"match\": \"gemini-2.0-pro-deepthink\" },\n        { \"alias\": \"deepseek\",  \"match\": \"deepseek-r1\" }\n      ]\n    },\n    \"FOUND_STRONG\": {\n      \"description\": \"Strong non-reasoning models — excellent math and LaTeX quality, use when no reasoning model available\",\n      \"patterns\": [\n        { \"alias\": \"opus\", \"match\": \"claude-opus-4\" },\n        { \"alias\": \"opus\", \"match\": \"claude-opus-3-5\" }\n      ]\n    }\n  }\n}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat... Skill: Math Worksheets Owner: trondw Summary: Generate professional math practice worksheets and full answer keys as PDFs. Compiles LaTeX to PDF using tectonic (free, no account needed). Supports any mat... Tags: latest:2.0.0 Version history: v2.0.0 | 2026-02-24T06:48:04.382Z | auto **Major update: worksheet verification now uses structured data files (JSON), improving reliability and security.** - Replaced code-base","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1363,"uniquenessScore":50,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T22:01:57.501Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T22:01:57.501Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-12T20:16:23.183Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}