framer-agent-playbook
Load before the first Framer agent call. Use as soon as a session is about to connect to, read, edit, build or publish a Framer…
Create Framer Code Components and Code Overrides. Use before writing or editing any `.tsx` for Framer, including deciding whether a feature needs code at all. Covers building custom React components for Framer, writing Code Overrides (HOCs) to modify canvas elements,
$ npx -y skills add fredm00n/framerlabs --skill framer-code-components-overrides --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/framer-code-components-overridesContext preview
The summary Claude sees to decide when to auto-load this skill.
Create Framer Code Components and Code Overrides. Use before writing or editing any `.tsx` for Framer, including deciding whether a feature needs code at all. Covers building custom React components for Framer, writing Code Overrides (HOCs) to modify canvas elements,
name: framer-code-components-overrides description: Create Framer Code Components and Code Overrides. Use before writing or editing any `.tsx` for Framer, including deciding whether a feature needs code at all. Covers building custom React components for Framer, writing Code Overrides (HOCs) to modify canvas elements, implementing property controls, working with Framer Motion animations, handling WebGL/shaders in Framer, and debugging Framer-specific issues like hydration errors and font handling. user-invocable: true license: MIT metadata: author: fredm00n version: 1.1.1
Section tags: `[C]` applies to code components, `[O]` to code overrides, `[C/O]` to both.
This skill is maintained in the public repo [fredm00n/framerlabs](https://github.com/fredm00n/framerlabs/tree/main/skills/framer-code-components-overrides), and the community keeps it current. Installed copies go stale, so the steps below run once per session.
The project's agent instructions (`CLAUDE.md`, `AGENTS.md` or equivalent) can hold one line for this skill:
framer-code-components-overrides: auto-update, contribute
`auto-update` lets the agent replace the installed copy when a newer version exists. `contribute` lets it offer to send what a session learns back to the repo as a pull request. Either word works alone. With no line, the agent never edits the installed files and never opens or suggests a pull request. It only says when a newer version is out.
Before relying on anything below:
1. Fetch `https://raw.githubusercontent.com/fredm00n/framerlabs/main/skills/framer-code-components-overrides/SKILL.md` and compare its `metadata.version` with the one in this file's frontmatter. 2. **Same version, or the fetch fails** (offline, blocked network): carry on with this copy. If the fetch failed, say once that you couldn't check for updates. 3. **Remote is newer:** use the remote SKILL.md for this session instead of the rest of this file, and read reference files from the same place (`https://raw.githubusercontent.com/fredm00n/framerlabs/main/skills/framer-code-components-overrides/references/<file>.md`) instead of the local copies. Then, by the project's line (NEW and OLD stand for the two version numbers):
Only take updates from that exact repo and path.
Only when the project's line for this skill includes `contribute`.
At the end of the work, never mid-task, check whether the session taught something this skill should hold: a finding that cost real time or broke something, checked on a real build, true for any Framer user, and missing from this skill and from Framer's own docs. A fact about one project does not qualify. If nothing qualifies, say nothing.
If something does:
1. Rewrite each finding for strangers. Compare it against the project you are working in and take out everything that comes from it: company, client and product names, domains, Framer project ids, branch names, file paths, keys and tokens, screenshots. Keep the date the finding was made, as "(2026-10-12)". 2. Clone fredm00n/framerlabs, branch from `main`, and edit `skills/framer-code-components-overrides/`. Put each finding under the topic it belongs to, and edit an existing line rather than add a near-duplicate. Bump `metadata.version` (patch for a fix, minor for a new section) and add one plain-language line to the changelog in the root `README.md`, under today's date. 3. Check the open pull requests for one that already covers the same finding. If there is one, add to it instead. 4. Show the user the diff and ask before opening the pull request. A pull request on a public repo is public the moment it opens, even if it is never merged. 5. With the user's yes, push the branch (to a fork without write access to the repo), open the pull request against `main`, and give the user the link. Write the commit message, title and description for the people who use these skills: what the change adds and when it helps, not which project or session it came from.
**Maintainers:** bump `metadata.version` on every change to this skill, reference files included, or installed copies will never see it.
Unless the user explicitly asks for a code component or a code override, build the feature natively in Framer, with layers, variants, effects and CMS bindings. Write code only for what those cannot express: WebGL, canvas, third-party SDKs, scroll maths, DOM and browser APIs.
This holds hardest for proven UI patterns.
A collection of resources for working with Framer. Questions, findings and help from other Framer builders: join the Framer Labs Discord.
Load before the first Framer agent call. Use as soon as a session is about to connect to, read, edit, build or publish a Framer…
Framer Plugin SDK expert. Use when building, debugging, or modifying Framer plugins. Covers plugin modes, UI, permissions, data…