display
Skill494 starsChanged 7 months agoApache-2.0View on GitHub
Use when the user asks to change eye expression directly, show info text on the display (time, weather, timer), or manually control the round LCD — NOT needed for normal conversation (Emotion skill auto-syncs eyes).
We split this skill 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
- Distinctive: line 16
Place markers at start of reply — the device fires them before TTS.
- Very specific: line 62
If GET /display returns unavailable or the API is unreachable, skip all display calls silently.
- Very specific: line 63
If an invalid expression is given, fall back to neutral.
- Distinctive: line 64
If text exceeds character limits, truncate gracefully.
- Very specific: line 68
Info mode has no automatic timeout: Do not chain eyes-mode immediately after info.
- Distinctive: line 70
Do not use this skill for normal conversation reactions — use the Emotion skill instead.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 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
Display — Eyes & Info
Quick Start
Controls the device's display. Two modes: animated eyes (default) and info text. Usually auto-synced by the Emotion skill — only call directly for manual eye control or info display.
Workflow
- Determine the mode needed:
- Eyes:
[HW:/display/eyes:{"expression":"happy","pupil_x":0.0,"pupil_y":0.0}] - Info:
[HW:/display/info:{"text":"14:30","subtitle":"Good afternoon"}] - Return to eyes:
[HW:/display/eyes-mode:{}]when the info display is no longer needed, not immediately after the info marker.
- Eyes:
- Place markers at start of reply — the device fires them before TTS. Skip silently if display unavailable.
Important: The Emotion skill auto-syncs eyes during conversation. Do not call both Emotion and Display for the same reaction.
Examples
Input: "Look to the left"
Output: [HW:/display/eyes:{"expression":"neutral","pupil_x":-1.0,"pupil_y":0.0}] (no confirmation needed)
Input: "What time is it?"
Output: [HW:/display/info:{"text":"14:30","subtitle":"Good afternoon"}] It's 2:30 PM.
Input: "Show me a happy face"
Output: [HW:/display/eyes:{"expression":"happy"}] Here's a happy face!
How to Control Display
No exec/curl needed for the display action. Choose the relevant inline marker below; these are separate actions, not a sequence:
[HW:/display/eyes:{"expression":"happy","pupil_x":0.0,"pupil_y":0.0}]
[HW:/display/info:{"text":"14:30","subtitle":"Good afternoon"}]
[HW:/display/eyes-mode:{}]pupil_x: -1.0 (look left) to 1.0 (look right)pupil_y: -1.0 (look up) to 1.0 (look down)text: max 20 characters,subtitle: optional max 40 characters
Available expressions
| Expression | When to use |
neutral | Default resting state |
happy | Good news, jokes, greetings |
sad | Bad news, empathy |
curious | Questions, interest |
thinking | Processing, considering |
excited | Big news, enthusiasm |
shy | Bashful, compliments received |
shock | Surprises |
sleepy | Late night, tired |
angry | Frustration (use sparingly) |
love | Affection |
Error Handling
- If
GET /displayreturns unavailable or the API is unreachable, skip all display calls silently. Do not error out to the user. - If an invalid expression is given, fall back to
neutral. - If text exceeds character limits, truncate gracefully.
Rules
- Emotion skill auto-syncs eyes — when you call
POST /emotion, the display updates automatically. Do not call both. - Info mode has no automatic timeout. Do not chain
eyes-modeimmediately afterinfo; it would erase the text before it can be read. Return to eyes when the user dismisses the info or a subsequent eye/emotion action takes over. - The display is plugin hardware — it may not be available. Always check first, and skip silently if absent.
- Do not use this skill for normal conversation reactions — use the Emotion skill instead.
Output Template
[HW:/display/eyes:{"expression":"happy"}] Here's a happy face!For info, use the display/info marker with the actual requested text instead. If the display is unavailable, skip the marker silently.
Other versions3 projects use a version of this.
Word for word · 2
- autonomous-ai/lampOS★ 494100% same
- autonomous-ai/Physical-AI-Operating-System★ 494100% same
Edited · 0
None found.
Wrote their own version · 1
- MasonFlint44/claude-spend-statusline★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository34 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .cursor/rules/architecture.mdcCursor rule
- .cursor/rules/docs-on-code-change.mdcCursor rule
- .cursor/rules/multi-ide.mdcCursor rule
- .cursor/rules/testing.mdcCursor rule
- agent-managementSkill
- audioSkill
- cameraSkill
- claude-buddySkill
- computer-useSkill
- connectorsSkill
- emotionSkill
- environmentSkill
- face-enrollSkill
- faqSkill
- guardSkill
- habitSkill
- harness-useSkill
- input-branchingSkill
- led-controlSkill
- moodSkill
- musicSkill
- music-suggestionSkill
- sceneSkill
- sensingSkill
- sensing-trackSkill
- servo-controlSkill
- servo-trackingSkill
- skill-creatorSkill
- speaker-recognizerSkill
- user-emotion-detectionSkill
- voiceSkill
- wellbeingSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
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.

