agentleFS
ridelink0ridelink0/ultimate-frontend-skills/AGENTS.md

ultimate-frontend-skills

AGENTS.md7 starsChanged 12 days agoMITView on GitHub

This repo is a plugin for Claude Code and Codex. It teaches a coding agent one art direction for websites and ships the code that produces it. Read skills/ultimate-frontend-skills/SKILL.md and follow it. That is the whole entry point. It is written for agents that do not load skills automatically, so it stands on its own. The two rules that matter most, restated here in case you read no further: 1. Nothing about the design goes in your reply. No palette,…

The file

We split this AGENTS.md into the rules it gives an agent

6 rules. About 0 are common, 3 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read skills/ultimate-frontend-skills/SKILL.md and follow it.

    line 8
  2. Distinctive:

    Nothing about the design goes in your reply: No palette, no type scale, no rationale.

    line 14
  3. Distinctive:

    No emoji anywhere: - not in the page, the copy, the commit, or the reply.

    line 17
  4. Distinctive:

    Do not also install the standalone plugin on a machine with UFS: the skill would be listed twice.

    line 87
  5. Very specific:

    Every change to assets/ or scripts/ must keep node scripts/webdesign.mjs audit passing on a fresh scaffold:

    line 93
  6. Very specific:

    Keep SKILL.md short. Depth belongs in references/, which is only read when needed.

    line 120

≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

ultimate-frontend-skills

This repo is a plugin for Claude Code and Codex. It teaches a coding agent one art direction for websites and ships the code that produces it.

If you are building a website

Read skills/ultimate-frontend-skills/SKILL.md and follow it. That is the whole entry point. It is written for agents that do not load skills automatically, so it stands on its own.

The two rules that matter most, restated here in case you read no further:

  1. Nothing about the design goes in your reply. No palette, no type scale, no rationale. Build the files, then say what you made in one or two sentences with the paths.
  2. No emoji anywhere - not in the page, the copy, the commit, or the reply. Icons are inline SVG.

If you are working ON this repo

Layout:

.claude-plugin/plugin.json      Claude Code manifest
.claude-plugin/marketplace.json Claude Code catalogue (Codex reads this too)
.codex-plugin/plugin.json       Codex manifest
skills/ultimate-frontend-skills/SKILL.md         the doctrine
skills/ultimate-frontend-skills/assets/          core.css, motion.js, sections.html
skills/ultimate-frontend-skills/references/      loaded on demand; pipeline.md is the entry
skills/ultimate-frontend-skills/data/awards.json merged corpus; data/awards/*.json are its chunks
skills/image-deep-research/      VENDORED from github.com/ridelink0/image-deep-research - never edit here
image-deep-research.lock.json    upstream version, commit and sha256 of every vendored file
skills/visual-research/SKILL.md  the old name, kept as a typed alias that loads image-deep-research
scripts/webdesign.mjs           new / sections / add / audit / look / study / awards /
                                blender / assets / tools / serve / parity / verify
scripts/awards.mjs              the reference corpus: query, pick three that disagree, rebuild
scripts/blender.mjs             Blender headless: probe / run / glb / bake / frames
scripts/blender/*.py            the bpy templates it drives
scripts/assets.mjs              CC0 PBR textures, HDRI lighting, image generation with detection
scripts/tools.mjs               what else is installed on this bench, and what changes because of it
scripts/inspect.mjs             headless-browser render check, over CDP
scripts/parity.mjs              built page vs its Claude Design artboards, same probes both sides
scripts/design.mjs              which Claude Design route exists here - reports, never enrols
scripts/cut.py                  photograph -> parallax planes via rembg
scripts/install.mjs             registers with both CLIs
scripts/sync-image-research.mjs the only way skills/image-deep-research changes: --tag vX.Y.Z | --from <dir> | --check
commands/*.md                   one slash command per capability, /ultimate-frontend-skills:<name>
                                (the README "Slash commands" table lists them all):
                                app-screen-design
                                atelier
                                audit-website
                                awards
                                blender-3d-model
                                debug-website
                                design-handoff
                                design-parity-check
                                frontend-skill-packs
                                frontend-tools-bench
                                game-start-screen
                                generate-website-image
                                inspect-website-styles
                                measure-website-performance
                                pbr-textures-hdri
                                photo-parallax-layers
                                preview-website
                                render-check-website
                                scaffold-website
                                security-check
                                verify-website
                                video-from-references
                                webdesign
                                atelier is the compatibility alias for the old name
hooks/                          UserPromptSubmit nudge

Constraints:

  • Zero dependencies. Node 22+, built-ins only. There is a package.json, but it carries metadata, bin entries and script aliases only - do not add a dependency block to it. type: module is set, which is why every runnable file here is .mjs or .cjs rather than .js.
  • skills/image-deep-research/ is vendored from its own repository, github.com/ridelink0/image-deep-research. Change it there, tag a release, then run node scripts/sync-image-research.mjs --tag vX.Y.Z. A hand edit here fails test/image-research.test.mjs against image-deep-research.lock.json. Do not also install the standalone plugin on a machine with UFS: the skill would be listed twice.
  • core.css and motion.js are copied verbatim into user projects. A change there lands in every site built afterwards, so treat them as public API.
  • inspect.mjs talks to Chrome/Edge/Chromium over the DevTools protocol using Node 22's built-in WebSocket and fetch. Do not add puppeteer.
  • Every change to assets/ or scripts/ must keep node scripts/webdesign.mjs audit passing on a fresh scaffold:
    node scripts/webdesign.mjs new /tmp/t --name "T" && node scripts/webdesign.mjs audit /tmp/t
    A fresh scaffold is expected to fail on scaffold copy (and to warn about the placeholder images it cannot find, and, until the chassis is re-defaulted, about Instrument Sans, on the overused-face list since 6.9.0)
    • that is the audit doing its job. Everything else must be clean.
  • Scaffold copy in assets/sections.html is marked [[like this]], and the audit takes its list of scaffold copy from those marks. New copy in the library is marked unless it is interface copy that is right on any site; test/scaffold-copy.test.mjs checks that each marked piece is reported by name.
  • The corpus is data. data/awards.json is generated by awards --build from data/awards/*.json; edit a chunk and rebuild rather than hand-editing the merged file. A fabricated URL in there would poison every study run that followed, so entries carry a verified flag and the merge drops rows without a usable URL.
  • blender.mjs and assets.mjs reach outside the machine. Neither may invent a key, and tools.mjs reports the presence of a credential, never its value.
  • A command file needs description and argument-hint frontmatter and must not use $ARGUMENTS, $1-style placeholders, {{ }}, a shell-run backtick or a word starting with the at sign. Codex turns each command into a source-command-<name> skill at install and silently skips any file that breaks those rules or renders past 4,000 bytes; Claude Code appends the typed text as ARGUMENTS on its own. test/commands.test.mjs holds both sides to it, and to the README table.
  • Keep SKILL.md short. Depth belongs in references/, which is only read when needed. Frontmatter is loaded into every session; the body is not.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.