원클릭으로
content-auditor
Audits course lesson content for completeness, accuracy, and currentness, then fixes identified issues through web research.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Audits course lesson content for completeness, accuracy, and currentness, then fixes identified issues through web research.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | content-auditor |
| model | openai/gpt-5 |
| location | personal |
| description | Audits course lesson content for completeness, accuracy, and currentness, then fixes identified issues through web research. |
NOTE: Startup and cleanup are handled by worker-base. This skill defines the WORK PROCEDURE.
Use for features that:
WebSearch - Use to verify outdated technology versions, deprecated APIs, and current best practices.The feature description will specify:
Read the feature description to determine which modules to audit. List all lesson directories for those modules under content/courses/{course}/modules/.
For EVERY lesson in the assigned modules, perform these checks:
a) Metadata Check (lesson.json)
lesson.jsonid, title, moduleId, order, estimatedMinutes, difficultyMETADATA issuesb) Content Files Check (content/*.md)
content/datetime.utcnow(), asyncio.get_event_loop(), old syntax patternsc) Challenge Check (challenges/)
challenge.json, starter.*, solution.* all exist and are non-emptyINCOMPLETEd) Web Research (FOR OUTDATED ITEMS)
webResearchNoteCreate two files in .planning/phases/{course}-content-audit/:
JSON findings file (M{NN}-{module-slug}-findings.json):
{
"course": "python",
"module": "01-the-absolute-basics",
"moduleTitle": "The Absolute Basics",
"reviewDate": "2026-03-28",
"totalLessons": 5,
"lessonsReviewed": 5,
"findings": [
{
"lessonPath": "content/courses/python/modules/01-the-absolute-basics/lessons/01-what-is-programming",
"lessonTitle": "What Is Programming",
"qualityRating": "good",
"issues": [],
"fixesApplied": []
},
{
"lessonPath": "content/courses/python/modules/01-the-absolute-basics/lessons/02-first-playground",
"lessonTitle": "First Playground",
"qualityRating": "needs-work",
"issues": [
{
"category": "OUTDATED",
"severity": "major",
"file": "content/01-theory.md",
"line": 23,
"originalText": "datetime.utcnow()",
"description": "Uses deprecated datetime.utcnow() instead of datetime.now(timezone.utc)",
"webResearchNote": "Python 3.12 deprecated datetime.utcnow(); use datetime.now(timezone.utc) per PEP 696"
}
],
"fixesApplied": []
}
],
"summary": {
"totalIssues": 1,
"bySeverity": { "critical": 0, "major": 1, "minor": 0 },
"byCategory": { "STUB": 0, "OUTDATED": 1, "INACCURATE": 0, "INCOMPLETE": 0, "METADATA": 0, "PEDAGOGY": 0 }
}
}
Markdown summary file (M{NN}-{module-slug}-summary.md):
# Module 01: The Absolute Basics - Audit Summary
**Course:** python | **Reviewed:** 5/5 lessons | **Issues:** 1 (0 critical, 1 major, 0 minor)
## Findings
### Lesson 01: What Is Programming
**Rating:** good | **Issues:** 0
### Lesson 02: First Playground
**Rating:** needs-work | **Issues:** 1
- [OUTDATED/major] content/01-theory.md:23 - Uses deprecated datetime.utcnow() instead of datetime.now(timezone.utc)
good - No issues or only trivial onesacceptable - Minor issues that don't impair learningneeds-work - Has issues that should be fixedcritical - Lesson unusable or significantly misleading| Category | Description |
|---|---|
STUB | Placeholder or minimal content (<50 words) |
OUTDATED | Version references or deprecated APIs - MUST have webResearchNote |
INACCURATE | Factually wrong code or explanations |
INCOMPLETE | Missing expected sections or partial content |
METADATA | Wrong difficulty, missing fields |
PEDAGOGY | Title/content mismatch, missing analogies |
Read the findings JSON file(s) specified in the feature. Identify which issues have:
For each OUTDATED issue:
content/version-manifest.json)Direct file edits - Use Edit tool to:
Fix must be:
Update the findings JSON with fixesApplied array:
{
"fixesApplied": [
{
"issueCategory": "OUTDATED",
"file": "content/01-theory.md",
"line": 23,
"change": "datetime.utcnow() → datetime.now(timezone.utc)",
"verification": "Pattern validated against Python 3.12 docs"
}
]
}
{
"salientSummary": "Audited 22 lessons across M01-M04 of python course. Found 8 issues (0 critical, 3 major, 5 minor). Key findings: M01 L02 has Python version mismatch, M03 has 2 lessons with missing imports, M04 L03 has outdated loop pattern. Produced 4 JSON findings files and 4 Markdown summaries to .planning/phases/python-content-audit/.",
"whatWasImplemented": "Created audit reports for modules 01-the-absolute-basics (5 lessons, 1 issue), 02-variables (5 lessons, 2 issues), 03-boolean-logic (7 lessons, 3 issues), 04-loops (5 lessons, 2 issues). Each module has findings.json and summary.md.",
"whatWasLeftUndone": "Issues identified require FIX mode features to resolve. No content files were modified in audit mode.",
"verification": {
"commandsRun": [
{
"command": "ls .planning/phases/python-content-audit/M0*",
"exitCode": 0,
"observation": "8 files present: 4 JSON + 4 MD for M01-M04"
},
{
"command": "python3 -c \"import json, glob; [json.load(open(f)) for f in glob.glob('.planning/phases/python-content-audit/*.json')]\"",
"exitCode": 0,
"observation": "All JSON files parse successfully, 8 total issues recorded"
}
],
"interactiveChecks": []
},
"tests": {
"added": []
},
"discoveredIssues": [
{
"severity": "info",
"description": "M03 L05 challenge solution.py uses pattern differing from lesson - noted but not flagged as it's pedagogical choice"
}
]
}
{
"salientSummary": "Fixed 5 OUTDATED issues in python M01-M02. Updated datetime.utcnow() to datetime.now(timezone.utc) in 3 files, bumped FastAPI reference from 0.95 to 0.115 in 2 files. All changes verified against version-manifest.json targets.",
"whatWasImplemented": "Applied fixes to 5 issues: M01 L02 content/01-theory.md line 23, M01 L03 content/02-example.md line 15, M02 L01 content/01-theory.md lines 8-12, M02 L04 content/03-warning.md line 5, M02 L05 content/01-theory.md line 31. Updated findings JSONs with fixesApplied records.",
"whatWasLeftUndone": "3 INACCURATE issues require more complex research and remain for next fix batch. 2 STUB issues need content creation - deferred to content-writing phase.",
"verification": {
"commandsRun": [
{
"command": "git diff --stat",
"exitCode": 0,
"observation": "5 files modified, 12 insertions(+), 8 deletions(-)"
},
{
"command": "python3 -c \"import json; f=json.load(open('.planning/phases/python-content-audit/M01-findings.json')); print(len([i for l in f['findings'] for i in l.get('fixesApplied',[])]))\"",
"exitCode": 0,
"observation": "2 fixes recorded in M01 findings"
}
],
"interactiveChecks": []
},
"tests": {
"added": []
},
"discoveredIssues": []
}