Automated summary
Audits a freeCodeCamp checkout for drift between the large v9 superblocks and the standalone "small" superblocks derived from them, reporting blocks that were added, moved, or removed without being reflected.
Strengths
- Cross-checks both the structure file (`superblocks/<name>.json`) and the intro file (`intro.json`), so it separates blocks missing from the structure from blocks whose intro alone is missing.
- Gives the insertion anchor (`after`) and the `intro_content` to copy for each missing block, making the fix straightforward.
- Flags ambiguous mappings where one source module feeds several small superblocks instead of guessing a single target.
- Explicitly ignores appended cert-project labs, which legitimately sit in a separate cert-project module and should not be treated as stale.
Limitations
- Report-only: the agent does not edit any files, so applying the fix is manual.
- Results depend on the exact current block lists, so a stale checkout or a PR branch produces misleading findings.
- Requires a local freeCodeCamp/freeCodeCamp clone, Python 3, and familiarity with the repo layout.
Use it after blocks are added, reordered, moved, or removed in the v9 superblocks to find which standalone superblocks are now out of date.
Don't use it on an outdated or feature-branch checkout, or if you expect the skill to rewrite the curriculum files for you.
Security analysis
SafeThe skill performs a read-only audit of the freeCodeCamp repository. It runs a bundled Python detector and may run git commands to verify the branch and pull the latest main, but it does not modify curriculum files, exfiltrate data, or execute destructive commands. The instructions explicitly guard against editing files, opening issues, or pushing changes.
No concerns found
How this analysis is madeExamples
Check the small superblocks in this freeCodeCamp checkout and report every one that is out of sync with its v9 source module.Which curriculum blocks are missing from `introduction-to-loops-in-javascript` compared to its module in `javascript-v9`, and where should each one be inserted?Run the sync check and list only the findings marked `ambiguous_mapping`, so I can manually review which small superblock each one should feed.name: sync-small-superblocks description: > Check whether the standalone "small" superblocks in the freeCodeCamp curriculum are in sync with the v9 superblock modules they are derived from, and report every block that was added, moved, or removed in the big superblock but not reflected in the small one. Invoke with /sync-small-superblocks. Use for: "check small superblocks", "superblocks out of sync", "sync superblocks", "missing curriculum blocks", "compare superblock modules".
Sync Small Superblocks
You are an agent that audits the freeCodeCamp curriculum for drift between the large v9 superblocks and the standalone "small" superblocks derived from them, then reports what is out of sync.
The curriculum has large v9 superblocks (e.g. javascript-v9,
responsive-web-design-v9) organized into chapters and modules. Many smaller
standalone superblocks (e.g. introduction-to-loops-in-javascript, basic-html)
mirror a single module of a big superblock so learners can take that slice on its
own. When a block is added to, moved between, or removed from a module in a big
superblock, the matching small superblock is often not updated. This skill finds
those drifts.
Two files define each superblock's block list:
- Structure file:
curriculum/structure/superblocks/<name>.json. A big superblock is shaped{"chapters": [{"modules": [...]}]}; a small superblock is shaped{"blocks": [...]}. - Intro file:
client/i18n/locales/english/intro.json. Each superblock key has ablocksobject mapping block name to its{title, intro}.
All paths are relative to the freeCodeCamp repository root.
When to use this skill
- A maintainer wants to confirm the standalone superblocks still match the v9 curriculum after blocks were added, reordered, moved, or removed.
Prerequisites
- Run from the root of a freeCodeCamp/freeCodeCamp checkout (the directory
containing
curriculum/andclient/). - Work from an up-to-date
main. The mapping depends on the exact current block lists, so a stale or PR-branch checkout produces stale results. Confirm withgit rev-parse --abbrev-ref HEADand pull the latestmainfirst. - Python 3.
Instructions
-
Confirm the working directory is a freeCodeCamp repo on up-to-date
main. -
Run the bundled detector from the repository root. The script reads the current working directory by default; override with
FCC_REPOif needed:python3 path/to/this/skill/check_sync.pyIt prints JSON to stdout:
{"findings": [ ... ]}. Each finding is one small superblock that is out of sync, with:small_superblock,source_superblock,modules— the small superblock, the big superblock it derives from, and the source module(s).ambiguous_mapping—truewhen the source module feeds more than one small superblock (e.g. thegitmodule feeds bothintroduction-to-nanoandintroduction-to-git-and-github). Call these out for manual review.current_blocks/proposed_blocks— the structure file's block list now and after the fix (missing blocks inserted in module order, stale blocks removed).missing— blocks present in the source module but absent from the small superblock. Each hasblock,after(the block it should follow;nullmeans first),module,intro_content(the{title, intro}from the big superblock, ornullif the big intro has no entry), andintro_already_present(truewhen only the structure file needs the addition).stale— blocks in the small superblock no longer in its source module. Each hasblock,status(movedorremoved),now_in_modules(where a moved block went), andintro_present_in_small. Appended cert-project labs are NOT reported as stale; they legitimately live in a separate cert-project module.
-
Turn the JSON into a readable report (see Output format). Do not modify any files and do not open issues or PRs.
Handling arguments
- A superblock name (e.g.
/sync-small-superblocks introduction-to-loops-in-javascript) — run the full check, then report only that small superblock; note if it is in sync. - No arguments — report every out-of-sync small superblock.
Output format
A concise report:
- The branch/commit checked and the total number of out-of-sync small superblocks (state "all small superblocks are in sync" if there are none).
- One section per finding, headed by the small superblock and its source module:
- Add lines:
<block>to insert after<after>(or "at the start"); note when the intro already exists or when there is no intro entry in the big superblock. - Move/Remove lines:
<block>moved to<now_in_modules>(so it should leave this small superblock) or removed entirely.
- Add lines:
- A final note listing any
ambiguous_mappingfindings and any missing block whoseintro_contentisnull, flagged for manual review.
For each finding, point to the two files that would need editing
(curriculum/structure/superblocks/<name>.json and
client/i18n/locales/english/intro.json) so a maintainer can act on the report.
Guardrails
- Avoid editing curriculum files, opening issues, or pushing; only report findings and let the maintainer decide what to change.
- Avoid running against a stale or PR-branch checkout; verify up-to-date
mainfirst, since the report is only as accurate as the block lists on disk. - Avoid inventing intro text; when reporting an intro to copy, use the
intro_contentthe detector returns verbatim, and flagnullentries. - Avoid reporting appended cert-project labs as problems; the detector already excludes them, so do not re-flag extras it omitted.
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/sync-small-superblocks-mrx3xz7e' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/sync-small-superblocks-mrx3xz7e/download' --output '.skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md.part' && mv '.skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md.part' '.skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Original excerpt: Prerequisites
- Run from the root of a freeCodeCamp/freeCodeCamp checkout (the directory
containing
curriculum/andclient/). - Work from an up-to-date
main. The mapping depends on the exact current block lists, so a stale or PR-branch checkout produces stale results. Confirm withgit rev-parse --abbrev-ref HEADand pull the latestmainfirst. - Python 3.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md' && test -s '.skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/sync-small-superblocks' && cp -R '.skill-downloads/sync-small-superblocks-mrx3xz7e' '.claude/skills/sync-small-superblocks'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/sync-small-superblocks-mrx3xz7e'openskills read 'sync-small-superblocks-mrx3xz7e'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/sync-small-superblocks-mrx3xz7e/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.