canvas-scan

Solid

Use when the student asks what Canvas work is pending or wants a homework plan. It performs one enriched read-only scan, writes the atomic assignment snapshot and approval plan, renders the plan, and stops without drafting or submitting anything.

AI & Automation 81 stars 9 forks Updated 6 days ago AGPL-3.0

Install

View on GitHub

Quality Score: 82/100

Stars 20%
64
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Canvas Scan Scan is proposal only. It reads current Canvas state, creates a reviewable plan, and stops. The next user message is the architectural approval boundary. ## Hard boundary - MUST NOT execute or draft an assignment. - MUST NOT dispatch a course skill or `canvas-execute`. - MUST NOT write a per-assignment `result.json` or `REPORT.md`. - MUST NOT create `.scan_in_progress`. - MUST NOT upload, submit, or start/answer/complete a quiz. - MUST NOT interpret authentication as work approval. - MUST stop after rendering the plan. Never “helpfully” begin an urgent item. ## Phase 0: Setup and route gate Read local setup state before touching Canvas. 1. If `.env` is missing or the Canvas host/auth configuration is incomplete, hand off to `canvas-setup` and stop this scan when setup returns. 2. Read `courses.yaml`. Treat missing `routes`, `routes: null`, an empty mapping, and effectively all-commented routes as empty. 3. If routes are empty, hand off to `canvas-skill-opportunity` with this intent: > Inspect recurring candidates read-only, inspect representative real specs > and safe feedback-policy evidence, make a qualitative recommendation, > write the private opportunity report, and stop for the student's numbered > choice. Stop when opportunity analysis returns. Do not scan assignments and do not call `canvas-bootstrap` in the same turn. The student first chooses a candidate; a later Bootstrap invocation verifies it and creates one route....

Details

Author
X-isdoingreat
Repository
X-isdoingreat/canvas-pilot
Created
2 months ago
Last Updated
6 days ago
Language
Python
License
AGPL-3.0

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category