← ClaudeAtlas

canvas-genericlisted

Use for an approved Canvas assignment that no specialized course skill can handle. Investigate the real specification, build and verify a local draft artifact, and stop without submitting.
X-isdoingreat/canvas-pilot · ★ 109 · AI & Automation · score 78
Install: claude install-skill X-isdoingreat/canvas-pilot
# canvas-generic Produce a grounded draft for one approved assignment whose route is `canvas-generic`. This is a runtime-designed fallback, not a shortcut around a specialized course skill. ## Contract Require these inputs from `canvas-execute`: - `course_id`, `assignment_id`, and the assignment snapshot from the current `assignments.json`; - an approved current plan item; - `run_dir`, normally `runs/YYYY-MM-DD`; - the exact work directory returned by `src.course_artifacts.stable_work_dir(run_dir, course_id, assignment_id)`. The directory must be named `course-<course_id>__assignment-<assignment_id>`. Do not use course or assignment names as filesystem identity. Write exactly one canonical `result.json` through `src.course_artifacts.write_course_result`: - `draft_ready` with an existing `draft_path` after all executable checks pass; - `skipped` only for an intrinsically manual or unsupported assignment; - `error` when required inputs remain unavailable or checks still fail after their retry limit. This skill is draft-only. Never call Canvas `POST`/`PUT`, upload, submit, start a quiz, or complete a quiz. Execution approval is not mutation authority. A later submission workflow must independently validate a signed, target-exact receipt with `src.authorization.validate_authorization_receipt`. ## Stop and route elsewhere Do not use this fallback when the shape is already supported: - code project → `canvas-ics33`; - Classic Quiz → `canvas-inside`; - long essay →