canvas-cron

Solid

Install / inspect / pause / change / delete Canvas Pilot cron instances via Windows Task Scheduler. The skill is a **course-agnostic interactive builder** — it lists the student's courses from courses.yaml, asks which course they want a cron for, which action template (email reminder vs autonomous submit), when (schedule), and which template-specific knobs to tune. Autonomous templates require the student to type `授权` to authorize auto-submit. Then walks 5 install gates end-to-end (yaml + render XML → schtasks /create → dry-run classifier → force-fire 60s OS trigger proof → enable schedule). Cookie health is checked at real fire time (not in dry-run); if Canvas session is dead the cron sends a wake-up email instead of silently launching Chromium. Triggered by "装个 cron" / "加个 cron" / "改 cron 时间" / "停掉 cron" / "看 cron 状态" / "删掉 cron" / "install a cron" / "set up a cron" / "/canvas-cron". The skill **zero-hardcodes** course names, template names, instance names, course IDs — every enumeration comes from the CLI'

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

Install

View on GitHub

Quality Score: 85/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-cron — interactive Canvas-cron builder This skill is the user-facing control plane for `scripts/canvas_cron.py` + the action-template framework. The student never edits `_private/cron_instances.yaml` by hand, never copies CLI snippets, never picks routine names from memory. **The skill is course-agnostic by design.** It never names a specific course, template, or instance in its source text. All such names come from the CLI's runtime output (list-courses / list-templates / list) and are surfaced via AskUserQuestion options. ## §0 — preflight: discover what's available Run three readonly Bash commands. Memo-ize the parsed outputs for later steps: ```bash python scripts/canvas_cron.py list-courses python scripts/canvas_cron.py list-templates python scripts/canvas_cron.py list ``` If any command fails with `ModuleNotFoundError` or the framework files (`scripts/canvas_cron.py`, `scripts/cron_base.py`, `scripts/cron_registry.py`) don't exist, **stop and tell the student**: > canvas-cron framework not installed in this repo. Ask CEO to deploy the > canvas-cron MVP plan. If `list-courses` returns "(no courses ...)", tell the student to run canvas-setup first. If `list-templates` returns "(no templates ...)", the framework was installed incomplete — ask CEO. ## §1 — parse student intent Match the student's prose against one of: | Student says (any language, paraphrased) | Intent | |---|---| | 装个 cron / 加个 cron / install / set up / create | `install` (new instance)...

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