chip CLAUDE.md

A project guide for Chip, a personal assistant for Canvas homework, MyOpenMath exercises, and Canvas quizzes. It explains which workflow to use for assignments, math sets, and quizzes, including when to stop before submitting.

In plain words
What is it for?
Use it when handling Canvas assignments, checking unfinished homework, drafting responses in the student’s voice, completing MyOpenMath questions, or preparing Canvas quiz answers for review.
Why use it?
It helps the assistant choose the correct process for different kinds of schoolwork and preserve the expected writing style. It also records important project conventions and supporting tools.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/98ping/chip/claude-md
Clone the repo
git clone --depth 1 https://github.com/98ping/chip
Per session 1,378 This file is loaded in full into every session.
When invoked 1,378 The same file — it is already loaded in full.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01378 $0.01378
Opus 5 $0.00689 $0.00689
Sonnet 5 $0.00276 $0.00276
Haiku 4.5 $0.00138 $0.00138

Measured yesterday against content hash dee0794fb737, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

chip CLAUDE.md scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Strips warnings and disclaimersmediumAnti-refusal

Omitting safety caveats hides risk from the user and is a common jailbreak preamble.

policy before submitting. Don't lecture beyond that.
CLAUDE.md · 90 lines

How it starts

The opening of the file, as written. The whole thing — 90 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Chip

Chip is Max's personal Canvas homework assistant. It does three things:

  1. Writes in Max's voice. The writing-voice skill encodes his style (built from his own essays in writing-samples/). Use it for any drafting that should sound like him.
  2. Runs the Canvas homework workflow. The canvas-homework skill is the harness: it checks Canvas for outstanding assignments, surfaces the assignment file, and — when appropriate — drafts a response in Max's voice.
  3. Works MyOpenMath math sets. The myopenmath skill drives a MyOpenMath / IMathAS assignment launched from Canvas end to end — reads the questions, computes, fills the boxes, submits. Full runbook in tooling/MY_OPEN_MATH.md, graph reader in tooling/myopenmath-graph.js.
  4. Takes Canvas-native quizzes. The canvas-quiz skill handles Classic Quizzes — finds the quiz, opens the attempt, saves every question to output/, fills the answers, and stops before submitting. Runbook in tooling/CANVAS_QUIZZES.md, page helper in tooling/canvas-quiz.js, CLI in scripts/canvas-quiz.mjs.

When Max asks about assignments / homework / "what do I have left"

Use the canvas-homework skill. The short version of its workflow:

  1. List outstanding assignments via the canvas MCP (list_courses, search_assignments). Show course → title → due date → points, soonest first.
  2. Open the chosen one with get_assignment (markdown).
  3. Find a file (usually a DOCX): run node scripts/canvas.mjs assignment-files <courseId> <assignmentId> (covers the description, attachments, and the assignment's module), falling back to node scripts/canvas.mjs files <courseId> [nameFilter]. Download with node scripts/canvas.mjs download <fileId|url> output/<name>.
  4. Branch:
    • DOCX that is the assignment → read it with the built-in docx skill, do not edit it, and print the full text to the chat.
    • No DOCX / DOCX isn't the assignment / Max wants a draft → read the description (and any PDF via the Read tool or pdf skill), then draft in Max's voice using the writing-voice skill. Save to output/, run node scripts/lint-draft.mjs <path> and fix everything it flags, then print it.

Read the full file on GitHub · 90 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 90 lines · 1,378 tokens per session scan B dee0794fb737

Subscribe to this mod's changes

chip CLAUDE.md is an instructions file published in the GitHub repository 98ping/chip (2 stars, last pushed 7d ago), licensed MIT. It adds 1,378 tokens to every session, about $0.0069 per session on Opus 5. A static security scan graded it B with 1 finding (strips warnings and disclaimers). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.