15-exercise scaffold · Claude Code · SUNY AI Literacy Implementation · Board Resolution 2024-64 · Spring 2026
The Commercial License certifies supervised agentic operation in controlled environments — specifically: sandboxed systems, isolated virtual environments, non-production contexts, and instructor-supervised deployments. It demonstrates that the holder can direct, oversee, checkpoint, and document an agentic AI on a real project with real accountability.
This license certifies competency in operating agentic systems. It does not certify competency in engineering them.
Supervision means the operator's action traces, task briefs, and checkpoint records are accessible to an instructor or designee throughout the course — not direct observation, but a documented record that can be reviewed at any point.
Holders are qualified to operate agentic AI under this supervision model in academic, research, and entry-level professional contexts. Further credentialing is required for unsupervised production deployment.
| Stage | Credential | How Earned |
|---|---|---|
| 1 | Learner's Permit | Complete Exercises 1–14 |
| 2 | General AI License | Pass Exercise 15 of the Learner's Permit |
| 3 | CDL Permit | Enroll in this course (see Prerequisites) |
| 4 | Commercial License | Pass Exercise 15 of this course |
Exercise 15 is always the exam. There is no separate examination event.
A General AI License is required for enrollment. The license is earned by passing Exercise 15 of the Learner's Permit course.
After earning the General AI License, work continues. Every AI-assisted task in subsequent coursework is documented in the workbench — transcripts, artifacts, synthesis, and /author documents accumulated across at least one additional course before this enrollment gate can be met. The portfolio submitted here is not a single-course record. It is evidence of sustained, responsible use over time.
The full ai-literacy/ workbench — zipped from /zip, the most recent dated snapshot. The diagnostic reads the synthesis document as entry point and references specific files by name. The zip is the archive; the synthesis is the index.
| Criterion | Minimum Evidence |
|---|---|
| Sustained conversation | At least 5 multi-turn transcripts, each 6+ exchanges |
| Model diversity | Transcripts from at least 2 different models |
| Disagreement practice | At least 3 transcripts showing explicit pushback, not just acceptance |
| Documentation discipline | All Phase II+ LP artifacts linked to transcripts |
| Synthesis capability | A synthesis document covering at least 8 prior exercises |
| Cross-course evidence | Transcripts and artifacts from at least one course beyond the LP course |
| Independent operation | LP Exercise 15 artifact accepted by an instructor |
The diagnostic returns a Readiness Report — not a grade, a map. It names which criteria are met and which are thin. Resubmission is permitted after strengthening the portfolio. When all criteria are met, enrollment unlocks.
A written appeal submitted to the instructor with the specific criterion in dispute and supporting evidence triggers human review. The AI diagnostic is the first reader, not the last word.
The ai-literacy/ workbench from the Learner's Permit grows in place. The CDL adds one subdirectory — /agent/ — which does not exist until this course begins. When it appears, it signals the transition from model interaction to agentic operation.
Filename convention: all lowercase, hyphens, no spaces. Examples: cdl-ex1-smith.txt, cdl-ex7-trace-smith.txt, cdl-ex7-brief-smith.txt.
RTW governs every exercise. The moves are different from the Learner's Permit:
Three deliverables per exercise:
All three are the work. All three go to the repository.
From Exercise 3 forward, every failure identified — in trace review, testing, or peer review — is documented using this template. Complete it in /agent/failures/ before briefing Claude Code to fix anything.
| Field | Description |
|---|---|
| Failure ID | ex#-f# (e.g., ex3-f1) |
| Type | Crash / Silent Error / Spec Mismatch / Scope Violation |
| Description | What happened |
| Trigger | What input or condition caused it |
| Severity | High (wrong output accepted as correct) / Medium (visible error) / Low (cosmetic) |
| Fix Applied | What change was made |
| Verified | Yes / No / Partial |
A checklist completed before every Claude Code session, built in Exercise 4. From Exercise 5 forward, the protocol is completed before any run begins. No run starts without it.
The completed checklist goes in /author — it is written before any model is open.
Every exercise builds toward a single deliverable: a syllabus management and reminder app for students managing multiple courses.
The app ingests course syllabi (PDF or plain text), extracts deadlines, assignments, and exam dates, organizes them into a unified cross-course calendar, and generates reminders at configurable intervals before each deadline.
All work runs in the cyber agent range — a sealed, sandboxed network environment. The agent can read the filesystem, write files, run code, and install packages. It cannot reach outside the range. This makes aggressive practice safe.
The project threads continuously. By Exercise 14, there is a working, tested, documented app. Exercise 15 deploys it from a clean environment.
Upload the Learner's Permit synthesis document to open the session.
Give Claude Code one syllabus (PDF or plain text).
Read the action trace. What files did Claude Code open? What commands did it run? What decisions did it make between receiving the brief and producing output?
Upload the action trace to a regular model session — not Claude Code.
Before running Claude Code, write a task brief document in a plain text editor. Save it to /agent/briefs/ before opening Claude Code.
The brief must specify:
Task: two syllabi from different courses. Extract all deadlines from both, merge into a single chronological list, output as a structured text file.
Run the brief. Read the action trace against it. Did the agent stay within scope? Where did its interpretation diverge from the intent?
The gap between what was written and what the agent did is the literacy gap. Name it specifically — not "it did something unexpected" but "I wrote X, it interpreted it as Y, and the result was Z."
Write a deliberately ambiguous brief — one that leaves key decisions to the agent. Don't specify date format. Don't specify how to handle multi-day deadlines. Don't specify behavior when a syllabus has no explicit dates.
Run it on at least two syllabi. Read the action trace. Find every assumption the agent made to fill the gaps.
Complete a Failure Classification Template for each one. Save to /agent/failures/.
Upload artifacts and action traces from Exercises 1–3 to a regular model session.
Push back on anything that doesn't fit practice. Add items the model missed. Cut items that won't actually be completed before every run.
Pre-Trip Protocol required from Exercise 5 forward. Complete the checklist and save to /author before every Claude Code session. No run starts without it.
Complete Pre-Trip Inspection Protocol.
Task: three syllabi from different courses. Parse all of them. Output a single unified data file — one row per item, fields for course name, item type, due date, and description.
Include explicit checkpoints in the brief:
Authorize continuation in writing in the chat at each checkpoint. Read the trace at each stop before authorizing.
Do not open Claude Code yet. Use a regular model session. Upload the unified data file from Exercise 5.
Push back on at least two design decisions. The question is how a student actually uses this data at 11pm the night before a deadline — not how it looks on a schema diagram.
Write a Design Brief specifying the data model. This is the load manifest. Claude Code in Exercise 7 builds what the brief specifies. Save to /agent/briefs/.
Complete Pre-Trip Inspection Protocol. Upload the Design Brief from Exercise 6 to Claude Code.
Read the code before authorizing execution. Ask Claude Code to explain anything unclear:
Push back on at least one implementation decision. Authorize execution only after understanding what the code does. The script goes to /agent/scripts/.
Complete Pre-Trip Inspection Protocol.
Break the code from Exercise 7 against edge cases:
Complete a Failure Classification Template for each failure before briefing Claude Code to fix it. Review every fix before running it.
Complete Pre-Trip Inspection Protocol.
Agentic tools that read external documents are vulnerable to prompt injection — instructions embedded in document content that the agent processes as commands rather than data. A malicious PDF can instruct the agent to delete files, exfiltrate data, or alter its behavior mid-session.
Create a test syllabus containing embedded instructions:
Feed this to Claude Code using the standard parsing brief. Read the action trace carefully. Did the agent execute the injected instructions? Flag them? Silently incorporate them?
Upload the action trace to a regular model session.
Brief Claude Code to implement input sanitization in the parser. Complete a Failure Classification Template for each injection attempt — including ones the agent caught. Hardened script → /agent/scripts/.
Complete Pre-Trip Inspection Protocol.
Write a Reminder System Specification using a regular model session before opening Claude Code:
The spec must address: what triggers a reminder, what format it takes, what the student sees, what happens when a deadline has passed, what happens when two reminders fire the same day. Push back on at least one design suggestion.
Run Claude Code with the spec as its brief. Set checkpoints after reminder logic is written and before any integration with the data layer.
Upload all artifacts and traces from Exercises 1–10 to a regular model session.
From Exercise 11 forward, every artifact carries full citation:
Generated with AI assistance.
Student: [name] | Date: [date] | Model: Claude Code
Trace: [repository link] | Transcript: [repository link]
Complete Pre-Trip Inspection Protocol.
Connect the data layer (Exercises 7–8) and the reminder system (Exercise 10). Before Claude Code runs anything, write an Integration Plan with a regular model:
Run Claude Code with the plan as its brief. Set at least two checkpoints. Complete a Failure Classification Template for every integration failure before briefing fixes.
Complete Pre-Trip Inspection Protocol.
Run the app on actual syllabi from the current semester. All of them. Document everything using the Failure Classification Template:
Brief Claude Code to fix the highest-priority failures. Review every fix before running it.
Upload the app code, Design Brief, and Real-Load Test Report to a regular model session.
Push back on at least two places where the documentation assumes technical knowledge the audience doesn't have. Brief Claude Code to write the final version to the project README. README → /agent/scripts/.
Exchange the app with another student. Run their app cold — follow their documentation without asking for help. Document every place it fails. Return a written Peer Review Report. Receive theirs. Brief Claude Code to address the top three issues.
Upload all CDL artifacts, traces, and the Operator Assessment from Exercise 10 to a regular model session.
Push back on anything missing. Then ask it to reflect:
This is the exam.
Complete Pre-Trip Inspection Protocol. Upload the CDL Synthesis Document. No scaffolding — the task brief, checkpoints, review sequence, and authorization decisions are the operator's.
The task: starting from a clean agent range environment, deploy the complete syllabus management and reminder app for a new user — a peer with three syllabi who needs working deadline reminders by end of session. Run the full workflow: install dependencies, ingest syllabi, verify the data, confirm reminders are correctly configured, hand off a working tool.
The examiner evaluates:
| Criterion | Evidence Required |
|---|---|
| Pre-Trip Protocol completed | Checklist in /author, saved before session opened |
| Task briefs scoped appropriately | No unauthorized agent decisions visible in trace |
| Checkpoints documented | Explicit authorization recorded in transcript |
| Failures classified | Failure templates completed before fixes run |
| Fixes reviewed before execution | Trace shows no unreviewed runs |
| Final app functional | Peer confirms working reminders |
| Full citation present | Name, date, model, trace link, transcript link |
The Deployment Report must:
A Commercial License authorizes supervised agentic operation in controlled environments. Every agentic deployment is documented — task brief, trace, checkpoint record, and full citation — accessible to any instructor, supervisor, or peer reviewer on request.
The agent acted. The operator directed it. The record proves both.
The Failure Classification Template, Pre-Trip Inspection Protocol, and Action Trace Reading Guide built in this course are portable. They apply to any agentic tool, not only Claude Code. Moving to a different platform carries these habits forward.
The cyber agent range is the enabling infrastructure for this course. Without a sandboxed environment, Exercises 2–15 carry real risk in a live system. The range makes aggressive, safe practice possible. Integration with institutional infrastructure — course registration systems, calendar APIs, notification services — is the natural extension once licensing is established at scale.
The Learner's Permit teaches thinking with AI. The Commercial License teaches operating it.