riscos-wimp-app
Skill4 starsChanged 7 months agoMITView on GitHub
Structure and package small RISC OS desktop Wimp applications, especially iconbar applications, without duplicating the raw Wimp protocol guidance from the riscos-wimp skill. Use when creating or restructuring a desktop application with Wimp startup, poll-loop dispatch, iconbar icons, packaged Resources files, or application naming changes.
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 2 are distinctive, and 8 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Use this skill when creating or restructuring a RISC OS desktop application.
- Very specific: line 9
Use riscos-wimp as well for the underlying Wimp protocol, SWI contracts, event block layouts, and generic icon rules.
- Very specific: line 11
Use riscos-wimp-templates as well when the application needs to create or revise Templates,fec content such as the baseline proginfo window.
- Very specific: line 35
If the user is asking for a new ordinary iconbar application, also read references/baseline-iconbar-application.md unless they explicitly …
- Very specific: line 36
If the application uses an iconbar icon, read references/iconbar-icon-creation.md and the matching riscos-wimp icon references.
- Very specific: line 37
If the application needs regular background work such as animation, status refresh, or network polling, read …
- Very specific: line 38
If the application name or package layout is being changed, read references/naming-and-package-structure.md before editing.
- Distinctive: line 39
Keep the application split into plumbing, business logic, and narrow SWI wrappers.
- Very specific: line 41
Verify install-oriented applications with riscos-amu install INSTDIR=install.
- Distinctive: line 45
When reviewing a desktop application structure, check these first:
≈ “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
riscos-wimp-app
Use this skill when creating or restructuring a RISC OS desktop application.
Use riscos-wimp as well for the underlying Wimp protocol, SWI contracts,
event block layouts, and generic icon rules.
Use riscos-wimp-templates as well when the application needs to create or
revise Templates,fec content such as the baseline proginfo window.
Read these references
Choose only the references needed for the task:
references/application-structure.md: startup, shutdown, SWI-wrapper, and event-dispatch structurereferences/baseline-iconbar-application.md: the default behaviour and packaging for a new iconbar-based applicationreferences/iconbar-icon-creation.md: concrete application defaults for iconbar iconsreferences/naming-and-package-structure.md: package naming,!Run/!Boot, and related application-structure updatesreferences/timed-events-with-pollidle.md: regular timed callbacks driven from the main Wimp poll loop
For raw Wimp behaviour, also read the relevant riscos-wimp references rather
than duplicating them here. In particular:
riscos-wimp/references/icons.mdriscos-wimp/references/interactions.mdriscos-wimp/references/initialisation.md
Default workflow
- Confirm whether the task is an ordinary desktop application, a module task, or another Wimp-integrated form.
- Read
references/application-structure.mdfirst. - If the user is asking for a new ordinary iconbar application, also read
references/baseline-iconbar-application.mdunless they explicitly want a different shape. - If the application uses an iconbar icon, read
references/iconbar-icon-creation.mdand the matchingriscos-wimpicon references. - If the application needs regular background work such as animation, status refresh, or network polling, read
references/timed-events-with-pollidle.mdbefore editing the poll loop. - If the application name or package layout is being changed, read
references/naming-and-package-structure.mdbefore editing. - Keep the application split into plumbing, business logic, and narrow SWI wrappers.
- For packaged applications, check the built absolute size and keep
Resources/!Runslot settings in sync with it, rounded to whole 4K pages with a minimum of 24K and at least 32K headroom over the built absolute. - Verify install-oriented applications with
riscos-amu install INSTDIR=install.
Review checklist
When reviewing a desktop application structure, check these first:
- iconbar icons using the wrong side or wrong text/sprite form for the intended application type
- iconbar bounding boxes using unsuitable vertical co-ordinates
- click handlers that do not filter by both source window and source icon
- button decoding that mixes up button-event values with generic bitfield masks
- timed background work implemented as busy polling instead of scheduling the next idle wake-up
- timeout callbacks doing too much work or calling blocking operations inside the poll loop
Resources/!Runslot sizes left at skeleton defaults, not rounded to whole 4K pages, or left below the 24K minimum- application renames that updated
COMPONENTbut missed!Run,VersionNum, help/messages, or task-name strings - SWI calls leaking directly into business logic instead of being isolated behind helpers
- proginfo windows created from templates but not given open-window handling, so they cannot be moved correctly
- window work areas, side panels, status bars, or proginfo templates sized too narrowly for their contained text, causing text clipping or truncation against borders (ensure width >= max_text_width + margins)
- application main windows or canvas windows created with a close icon but missing the back icon (
wimp_WINDOW_BACK_ICON) - application windows using raw VDU 5 bitmap text for desktop UI or data display instead of the antialiased font system (
Wimp_PlotIconor Font ManagerHomerton.Medium/Corpus.Medium)
In this repository47 other files it gives its agents.
- allocating-resourcesSkill
- ci-testingSkill
- creating-pull-requestsSkill
- designing-modulesSkill
- porting-to-riscos-cSkill
- reading-assemblySkill
- riscos-commandsSkill
- riscos-desktop-fileractionSkill
- riscos-filer-likeSkill
- riscos-filesystemSkill
- riscos-graphics-convertersSkill
- riscos-network-dcistatisticsSkill
- riscos-network-resolverSkill
- riscos-outputSkill
- riscos-reSkill
- riscos-styleSkill
- riscos-throwbackSkill
- riscos-urls-fetchingSkill
- riscos-urls-launchingSkill
- riscos-wimpSkill
- riscos-wimp-templatesSkill
- updating-robe-skillsSkill
- using-bbcbasicSkill
- using-cmhgSkill
- using-ghSkill
- using-gitSkill
- using-libasmSkill
- using-libgcontextSkill
- using-liboslibSkill
- using-libriscoslibSkill
- using-libtoolboxSkill
- using-makefilesSkill
- using-perlSkill
- using-stronghelpSkill
- using-toolbox-imagefilegadgetSkill
- using-tooltesterSkill
- writing-assemblySkill
- writing-assembly-testsSkill
- writing-cmodulesSkill
- writing-cplusplusSkill
- writing-cSkill
- writing-fortranSkill
- writing-oslib-defsSkill
- writing-pascalSkill
- writing-prminxmlSkill
- writing-pymodulesSkill
- writing-pyromaniac-integration-testsSkill
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.

