flux-lens
Skill2 starsChanged 23 days agoMITView on GitHub
Design a new "lens" for the flux web app (a way of browsing the library: a shelf, a wall, a carousel, a timeline, a departure board…), check it and add it to the user's flux so it appears on all their devices. Use when the user wants flux to look or browse differently, or asks for a custom view. Needs the flux skill for connecting.
In this repository4 other files it gives its agents.
- flux-artworkSkill
- flux-metadataSkill
- flux-organizeSkill
- fluxSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Understand the idea: Ask what it should feel like and how one moves through it (scroll down, scroll across, arrow keys only).
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill 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.
Files
Designing a flux lens
A lens is one way of seeing the library: the same list of films and shows, presented differently. flux's own controls float above it as glass, so a lens draws only the titles (and an optional backdrop). A lens is data: one JSON object with HTML, CSS and a layout function. flux sanitises it and runs layout in a locked-down worker, so it can't reach the network or the page.
The complete format, the fields layout receives, and an example are in reference.md. The JSON Schema is flux schema lens.
Workflow
- Understand the idea. Ask what it should feel like and how one moves through it (scroll down, scroll across, arrow keys only). Keep the posters the hero.
- Write the lens as a JSON file, following reference.md. Keep
layoutfast: it gets only the titles near the position (window), and must work for 1 title and for 20,000. - Check it:
Fix every error. Read the warnings: they list what flux will remove (images, links, inline styles,flux lens check board.jsonurl(),@import, rules forbody) and placeholders flux doesn't fill. - Add it:
It appears in the lens gallery (the last button in the lens bar, orflux lens add board.json # for the user; --everyone (Owner/Admin) for every person\) on every device at once. Adding a lens with the same name replaces it, so iterate by editing the file and adding it again. - Look at it, if you can drive a browser: open the flux web app, press
\, pick the lens. Otherwise ask the user how it looks and what to change. flux lens listshows what's kept;flux lens remove IDtakes one away.
Taste
- Posters first; decoration quiet and specific to the idea. No buttons, menus or fields: flux's glass controls do that.
- It must work in dark and light themes: use
var(--text),var(--text-2),var(--bg)for text unless it sits on a surface you painted. - Fonts:
var(--font-body)(Jost),var(--font-mono)(DM Mono),var(--font-cond)(Archivo;font-stretch: 62%to75%for condensed). - Respect the focused title (
is-focusclass): keep it near the centre, fully visible, clear ofview.safe.topandview.safe.bottom. - Honour
view.reducedMotion(no idle motion) and keepanimatedfalse unless the layout really moves by itself.
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
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.

