Skip to content

Fix bugs, harden validator, add upload .zip builder#3

Open
mustafa-coursera wants to merge 1 commit into
mainfrom
mfurniturewala/spec-align-references
Open

Fix bugs, harden validator, add upload .zip builder#3
mustafa-coursera wants to merge 1 commit into
mainfrom
mfurniturewala/spec-align-references

Conversation

@mustafa-coursera

@mustafa-coursera mustafa-coursera commented May 18, 2026

Copy link
Copy Markdown

Builds on the flat sibling layout from #4. Brings across the real bug fixes that #4 didn't include.

Summary

  • Fill in SEARCH-DELIVER.md. Was a 7-line stub. Now a full Step 2 procedure: routing table, four per-modality branches with tool-call shapes, roleplay scenario-prep flow, result-shaping rules, failure modes.
  • Fix the tool-name bug. get_course_materials (plural — doesn't exist) → get_course_material (singular — the real Coursera MCP tool). Affects SKILL.md and README.
  • Tighten the description. 1013 → 692 chars. Was one edit away from breaking the 1024-char spec ceiling.
  • Harden scripts/validate-skills.mjs. Spec-derived checks: name ≤ 64 chars, description ≤ 1024 chars, warn when SKILL.md exceeds 500 lines (progressive-disclosure recommendation). Spec URL comment at top.
  • Add scripts/package-skill.mjs. Builds dist/<skill-name>.zip for the Coursera upload modal's .zip / .skill path. The single-.md upload path can't carry sibling step files; this script bundles everything correctly.

Test plan

  • node scripts/validate-skills.mjsSkill validation passed.
  • No stale get_course_materials (plural) references remain (grep clean)
  • SKILL.md description is 692 chars (< 1024)
  • node scripts/package-skill.mjs learn-with-coursera produces dist/learn-with-coursera.zip containing SKILL.md, DIAGNOSE.md, SEARCH-DELIVER.md, PATH-FINDER.md
  • dist/ confirmed ignored by .gitignore
  • End-to-end: in a Claude Code session with the Coursera MCP, trigger with "teach me SQL for product management" and verify Q1+Q2+Q3 flow, each modality routes to the right tool, path-finder calls get_course_material without error

🤖 Generated with Claude Code

On top of the flat sibling layout established in #4:

- Fill in SEARCH-DELIVER.md (was a 7-line stub) with full Step 2
  procedure: per-modality routing table, four branches with tool-call
  shapes, roleplay scenario-prep flow, result-shaping rules, and failure
  modes.
- Fix get_course_materials → get_course_material (singular) in SKILL.md
  and README.md to match the real Coursera MCP tool name.
- Tighten the SKILL.md description from 1013 → 692 chars, leaving
  headroom under the 1024-char spec ceiling.
- Harden scripts/validate-skills.mjs with spec-derived checks: name
  ≤ 64 chars, description ≤ 1024 chars, warn when SKILL.md > 500 lines.
  Add a top-of-file comment pointing at the spec URL.
- Add scripts/package-skill.mjs to build dist/<skill>.zip for uploaders
  that take a .zip / .skill bundle (the single-.md upload path can't
  carry sibling step files).
- Document the bundle workflow in README.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@mustafa-coursera mustafa-coursera force-pushed the mfurniturewala/spec-align-references branch from ebd2954 to dccaeb0 Compare May 18, 2026 22:26
@mustafa-coursera mustafa-coursera changed the title Align learn-with-coursera with the Agent Skills spec Fix bugs, harden validator, add upload .zip builder May 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant