Agent skill

Canvas Zybooks

by X-isdoingreat in X-isdoingreat/canvas-pilot

A skill your agent uses for an approved zyBook-backed math or discrete assignment routed by canvas-execute.

AGPL-3.0Auto-check passed

Install Canvas Zybooks

skills CLI
$ npx skills add X-isdoingreat/canvas-pilot --skill canvas-zybooks -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install X-isdoingreat/canvas-pilot canvas-zybooks --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/X-isdoingreat/canvas-pilot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/canvas-zybooks .claude/skills/canvas-zybooks && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
canvas-zybooks
GitHub stars
125
Token cost
~1.9k tokens
SKILL.md length
778 words
Files
1
Skills in repo
32
Repo updated
First seen
Licence
AGPL-3.0

At a glance

A skill your agent uses for an approved zyBook-backed math or discrete assignment routed by canvas-execute.

  • Works in 8 steps: classify and parse the instructor… → read exercise content → research before improvising → …
  • An approved zyBook-backed math
  • SKILL.md covers Contract, Private overlay, Artifact tree and Stage 1: classify and parse…, plus 8 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Canvas Zybooks is an agent skill from X-isdoingreat/canvas-pilot. Use for an approved zyBook-backed math or discrete assignment routed by canvas-execute. Reconstruct the exact exercise set, solve and verify a local artifact, and stop before any zyBooks, GradeScope, or Canvas mutation.

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Local-first Canvas LMS AI agent that learns each course's recurring assignment workflow and reuses it through scan - approval - execute with student review. The licence is AGPL-3.0.

When your agent uses it

  • An approved zyBook-backed math
  • Discrete assignment routed by canvas-execute

Example prompts

  • “/canvas-zybooks”

Requirements

  • Python 3

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. classify and parse the instructor specification
  2. read exercise content
  3. research before improvising
  4. solve
  5. render
  6. deterministic verification
  7. fresh semantic audit
  8. finalize

What it can do on your machine

Read from SKILL.md and the folder at commit 6b79d5b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are python).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Canvas Zybooks loads about 1.9k tokens when it runs. Until then it costs about 59 tokens; SKILL.md has 778 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~59
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from X-isdoingreat/canvas-pilot at commit 6b79d5b, republished under its AGPL-3.0 licence (© X-isdoingreat). 778 words, ~1,867 tokens.

Download SKILL.mdSave it as .claude/skills/canvas-zybooks/SKILL.md (or your agent's skills folder).
name
canvas-zybooks
description
Use for an approved zyBook-backed math or discrete assignment routed by canvas-execute. Reconstruct the exact exercise set, solve and verify a local artifact, and stop before any zyBooks, GradeScope, or Canvas mutation.

canvas-zybooks

Produce a verified local draft for written homework, take-home exams, or reading-completion evidence whose real content is backed by zyBooks.

Contract

Require course_id, assignment_id, current assignment snapshot, approved plan item, and run_dir. Create the work directory with:

python
from src.course_artifacts import ensure_stable_work_dir

work_dir = ensure_stable_work_dir(run_dir, course_id, assignment_id)

The name is exactly course-<course_id>__assignment-<assignment_id>.

Write one canonical result through src.course_artifacts.write_course_result:

  • draft_ready: local artifact exists and checks pass;
  • skipped: intrinsically manual or unsupported protected work;
  • error: missing required source/authentication or persistent verification failure.

This skill is read-only against Canvas and zyBooks and never uploads to GradeScope. Do not call src.zybooks_client.post, Canvas POST/PUT, or a submission endpoint. A later mutation workflow needs its own explicit authority; for Canvas that means a signed target/action/session-exact receipt validated by src.authorization.

Private overlay

Read _private/canvas-zybooks-app.md and select the current course block. It may define the zyBook code, local token path, course-context primer, instructor notation, assignment naming patterns, and render settings.

If it is missing, write error with reason_code=missing_course_overlay. Never place a JWT, cookie, real course identifier, or instructor identity in a tracked skill or artifact meant for public release.

Artifact tree

text
spec.md
references/
zybook_exercises/
research_findings.md          # conditional
solutions.md
draft/solutions.pdf
verification.log
audit/round-1.json
result.json

Stage 1: classify and parse the instructor specification

Classify from real evidence:

  • Canvas HTML table of graded exercises → written_homework;
  • attached exam/problem-set PDF → take_home_exam;
  • assigned sections without a written deliverable → reading_completion.

For the standard HTML table, call the existing deterministic parser:

python
from src.zybooks_spec_parser import parse_homework_spec

exercise_refs = parse_homework_spec(assignment.get("description") or "")

The parser intentionally extracts only the graded column. Save exact chapter.section.exercise references and requested parts to spec.md. For a PDF, download the actual file and extract every question/part. If the exercise set cannot be established, write error rather than guessing from the title.

Stage 2: read exercise content

Validate local authentication with a read-only call such as src.zybooks_client.whoami(). Read section exercises with src.zybooks_client.exercises_for_section(chapter, section) and convert each matching resource using src.zybooks_client.exercise_to_dict(...).

Cache only the assignment-local normalized exercise text under zybook_exercises/; never copy the token. Match every requested reference and part. A missing or expired token, missing section, or unmatched exercise is an error with a precise reason and no fabricated substitute.

reading_completion remains read-only: produce a local checklist/study record unless a separately authorized external workflow exists. Do not mark participation or completion here.

Stage 3: research before improvising

Use this stage for a new table shape, proof method, notation system, or current rubric issue seen in recent feedback. Spawn these native Codex subagents in parallel:

  1. spec verifier — read spec.md and raw exercise text; list every required part, hard constraint, and ambiguity.
  2. quality inferrer — read the same material plus recent grader comments; infer recurring notation and reasoning risks, clearly labeling inference.
  3. template-fit checker — only when the standard homework/exam/reading flow does not cover the deliverable.

Keep subagents read-only and give them raw artifacts rather than expected answers. Save the main session's synthesis to research_findings.md.

Show full SKILL.md (329 more words)Show less

Stage 4: solve

Write solutions.md with one stable heading per requested exercise and part. For every answer:

  • apply the overlay course-context primer and exact notation;
  • show the required reasoning and name laws when required;
  • preserve problem variables and quantifiers;
  • distinguish computed facts from interpretation;
  • include all and only the assigned parts;
  • leave no [answer needed], TODO, or placeholder.

For an exam or unusual problem, independently recompute/check the answer before rendering. Do not treat a model's agreement with itself as proof.

Stage 5: render

Render the requested format, normally draft/solutions.pdf, using the overlay-declared LaTeX/MathJax settings. Extract text from the rendered PDF and inspect representative pages so missing glyphs, clipped formulas, blank pages, and pagination errors are observable.

Stage 6: deterministic verification

Write verification.log with actual measurements:

  • expected exercise/part set equals rendered exercise/part set;
  • no duplicate or missing heading;
  • no unresolved placeholder from src.course_artifacts.unresolved_placeholders;
  • every required law/notation marker appears where specified;
  • PDF opens, has nonzero pages, and extracted text is non-empty;
  • every requested reference is backed by a cached exercise source.

Repair failures and rerun at most three rounds. Persistent failures produce error.

Stage 7: fresh semantic audit

Spawn one independent native Codex subagent with spec.md, normalized exercise text, extracted PDF text, research_findings.md when present, overlay notation rules, and recent feedback. Require a strict JSON array with exact spec_anchor, exact deliverable_anchor, severity, kind, gap, and concrete fix.

Require checks for missing subparts, invalid steps, notation drift, unsupported assumptions, and render/format mismatch. Save audit/round-N.json. Repair HIGH gaps and rerun deterministic checks plus audit, at most three rounds. Remaining HIGH gaps produce error.

Stage 8: finalize

Confirm the source-to-solution mapping is complete and the PDF opens. Then write:

python
from src.course_artifacts import write_course_result

write_course_result(
    work_dir,
    status="draft_ready",
    draft_path=work_dir / "draft" / "solutions.pdf",
    notes="Verified local zyBook-backed draft; no platform mutation performed.",
    metadata={
        "skill": "canvas-zybooks",
        "kind": kind,
        "exercise_count": len(exercise_refs),
        "verification_log_path": str(work_dir / "verification.log"),
        "delivery": "manual",
    },
)

Do not claim a real zyBooks or GradeScope end-to-end verification unless it was actually run with current external access. Local fixture/parser/render tests are not external-platform evidence.

First-run stage mode

Honor one stage only when <work_dir>/.first_run_stage_by_stage exists. Supported stages: classify, parse-spec, fetch-exercises, research, solve, render, verify, audit, output. Write stages/<stage>.done; normal daily execution runs all stages.

© X-isdoingreat, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/canvas-zybooks of X-isdoingreat/canvas-pilot.

Open the folder on GitHubat commit 6b79d5b

Compare with similar skills

Canvas Zybooks next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Canvas Zybooks compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Canvas Zybooks this skillX-isdoingreat/canvas-pilot125—~1.9kAutomated safety check: PassAGPL-3.0
Canvasopenclaw/openclaw392k—~263Automated safety check: PassMIT
Canva Designerasgeirtj/system_prompts_leaks69k—~2.1kAutomated safety check: PassCC0-1.0
Plan Canvasaffaan-m/ECC277k1 repos~2.2kAutomated safety check: PassMIT
Mathparcadei/Continuous-Claude-v33.9k2 repos~1.6kAutomated safety check: NotesMIT
OmniRoute Routing CLIdiegosouzapw/OmniRoute75k—~342Automated safety check: PassMIT

Similar skills

  • Canvas

    openclaw/openclaw

    Present hosted widget documents on a connected macOS panel and control panel visibility or navigation.

    392k GitHub stars~263 tokensUpdated today
    Auto-check passed
  • Canva Designer

    asgeirtj/system_prompts_leaks

    Creates and edits Canva designs, generates images and works with brand kits through the canva CLI and Canva's official MCP server, from decks to social posts.

    69k GitHub stars~2.1k tokensUpdated yesterday
    Media & CreativeAuto-check passed
  • Plan Canvas

    affaan-m/ECC

    Open plans and HTML artifacts in a local browser canvas where the human annotates elements, chats, and approves or requests changes without leaving the page.

    277k GitHub starsUsed in 1 repo~2.2k tokens
    Frontend & DesignAuto-check passed
  • Math

    parcadei/Continuous-Claude-v3

    Unified math capabilities - computation, solving, and explanation.

    3.9k GitHub starsUsed in 2 repos~1.6k tokens
    Research & ScienceAuto-check: notes
  • OmniRoute Routing CLI

    diegosouzapw/OmniRoute

    Creates, switches, and inspects OmniRoute model-routing combos, plus a suggestion command with cost and latency constraints.

    75k GitHub stars~342 tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • OmniRoute Combo Routing

    diegosouzapw/OmniRoute

    Manages OmniRoute routing combos through its REST API: create and update combos, choose from 19 strategies, set fallback chains, test outcomes and read metrics.

    75k GitHub stars~2.1k tokensUpdated today
    Backend & APIsAuto-check passed

More from X-isdoingreat/canvas-pilot

All 32 skills in this repo
  • Daily Work Tweet

    X-isdoingreat/canvas-pilot

    A skill your agent uses when verified work from today or another day should become an X/Twitter post, build-in-public update, ship log, or bilingual draft.

    125 GitHub stars~1.6k tokensUpdated 2 mo ago
    Auto-check passed
  • Canvas Awkward Syntax

    X-isdoingreat/canvas-pilot

    A skill your agent uses when a short local academic draft needs role-aware syntax diversification while preserving meaning, locks, source grounding, rubric-critical openings, and document structure.

    125 GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Canvas Cron

    X-isdoingreat/canvas-pilot

    A skill your agent uses when managing Canvas Pilot schedules: install, inspect, pause, change, delete, or safely test scheduled scans and runs.

    125 GitHub stars~2.1k tokensUpdated 2 mo ago
    Auto-check: notes
  • Canvas Essay

    X-isdoingreat/canvas-pilot

    A skill your agent uses for an approved long academic-writing assignment routed by canvas-execute after the deterministic writing router selects essay.

    125 GitHub stars~2.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Canvas Generic

    X-isdoingreat/canvas-pilot

    A skill your agent uses for an approved Canvas assignment that no specialized course skill can handle.

    125 GitHub stars~2.4k tokensUpdated 2 mo ago
    Auto-check passed
  • Canvas Humanizer

    X-isdoingreat/canvas-pilot

    A skill your agent uses when a local academic draft needs a meaning-preserving humanizing pass with less uniform syntax while retaining rubric, source, lock, voice, and length constraints.

    125 GitHub stars~1.8k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Canvas Zybooks

What does Canvas Zybooks do?

A skill your agent uses for an approved zyBook-backed math or discrete assignment routed by canvas-execute. Canvas Zybooks is an agent skill from X-isdoingreat/canvas-pilot. Use for an approved zyBook-backed math or discrete assignment routed by canvas-execute.

When should I use Canvas Zybooks?

Canvas Zybooks fits situations like: an approved zyBook-backed math; discrete assignment routed by canvas-execute.

How do I install Canvas Zybooks in Claude Code?

Run `npx skills add X-isdoingreat/canvas-pilot --skill canvas-zybooks -a claude-code`. Or copy the skill folder (.agents/skills/canvas-zybooks in X-isdoingreat/canvas-pilot) into .claude/skills/canvas-zybooks in your project. Claude Code loads it when a task matches its description.

How do I install Canvas Zybooks in Codex?

Run `npx skills add X-isdoingreat/canvas-pilot --skill canvas-zybooks -a codex`. Or copy the skill folder (.agents/skills/canvas-zybooks in X-isdoingreat/canvas-pilot) into .agents/skills/canvas-zybooks in your project. Codex loads it when a task matches its description.

Can I use Canvas Zybooks in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add X-isdoingreat/canvas-pilot --skill canvas-zybooks -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/canvas-zybooks, .gemini/skills/canvas-zybooks, .github/skills/canvas-zybooks and .opencode/skills/canvas-zybooks in your project.

What does Canvas Zybooks need to run?

SKILL.md names no scripts, command-line tools or credentials: Canvas Zybooks is instructions for the agent only. Our summary lists: Python 3.

Does Canvas Zybooks access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Canvas Zybooks safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Canvas Zybooks use?

Canvas Zybooks is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Canvas Zybooks use?

About 1.9k tokens (SKILL.md is roughly 7.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Canvas Zybooks?

Skills that share tags, products or a category with Canvas Zybooks: Canvas (openclaw/openclaw, 392k stars), Canva Designer (asgeirtj/system_prompts_leaks, 69k stars), Plan Canvas (affaan-m/ECC, 277k stars) and Math (parcadei/Continuous-Claude-v3, 3.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Canvas Zybooks?

X-isdoingreat (a GitHub user) maintains it in X-isdoingreat/canvas-pilot, which has 125 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on July 31, 2026.

Source: X-isdoingreat/canvas-pilot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.