XIOS plugin for Claude
Version 653699239 · 2026-11-04
The xios plugin: five skills that teach Claude to write XIOS apps with the current API, and the XIOS validator to check what it writes.
Getting started
Install
claude.ai: Settings, Customize, Plugins, Add, Upload plugin, and choose this zip.
Claude Code: unzip into ~/.claude/skills/, so the plugin is ~/.claude/skills/xios/. It loads in every new session as xios@skills-dir.
Work with them
- Use Claude Opus 5.5.
- Name XIOS in your request ("an XIOS app that ...").
- Build in small steps: view, process, theme.
- Open the app after each step.
Check a file
Needs Node.js, nothing else:
node ~/.claude/skills/xios/skills/xios-views/validator/cli.js app.xml
Run it on CloudBackend
- Projects, New Project: Only project folder, Home.
- Upload: drop the app's files on the dialog.
- Double-click the application file.
The skills
xios-views
Views and the Core components
Write XIOS views and applications (declarative XML - application, view, panel, components, process steps) with the Core components and their current API only. Use when creating or editing an XIOS application or view XML, choosing an XIOS component, or reviewing XIOS UI markup for legacy attributes.
panel- the layout container: rows, columns or flow, gap and padding, field labels, titled boxes and expanders → components/panel.mdgroup- one choice shared by its children: radios, a segmented control of buttons, or one panel shown at a time → components/group.mdtabstrip- tabs, each showing one panel: static or made from data, closeable → components/tabstrip.mdlabel- read-only text: headings, captions, values from data, formatted dates, the type classes → components/label.mdimage- a picture or an icon that is not a control → components/image.mdqr- a QR code of a text, a URL or a Wi-Fi network → components/qr.mdbutton- an action: Select, a toggle, a menu opener, a busy spinner, the default button → components/button.mdmenu,item,divider,dataitem- popup menus: opened from a button or as a context menu, submenus, checkable and radio items, dividers, items from data → components/menu.mdinput- a one-line field: text, password, number, date, time; validation → components/input.mdtextarea- multi-line plain text → components/textarea.mdcheckbox- a yes/no choice, confirmed later (a form option) → components/checkbox.mdtoggle- an on/off switch for a setting that applies at once → components/toggle.mdradio- one of a few visible options, in a group → components/radio.mdcombobox,plate- a choice from a dropdown list (its plate), or a field with suggestions → components/combobox.mdcolorpicker- a color picker, with WCAG contrast lines → components/colorpicker.mdupload- file and folder uploads into a drive, with progress → components/upload.mdcodeeditor- a code, XML or JSON editor bound to a document → components/codeeditor.mdlist- rows from a document, drawn by a rule: selection, filter, drag and drop → components/list.mdtable- rows with columns: sort, filter, cell editing, pages, bands → components/table.mdtree- a hierarchy that opens and closes: children on demand, checkboxes, the path → components/tree.mdapp- another application embedded in a view → components/app.md
Also here: validator/, the XIOS validator (Node.js): node ~/.claude/skills/xios/skills/xios-views/validator/cli.js app.xml
xios-process
Processes, operations, expressions
Write XIOS process logic (process, trigger, step, alias, XIOS expressions and XPath, and the Core operations such as action, bind, change, decision, call, confirm, save, database) with their current API only. Use when writing or editing the process of an XIOS application, choosing an operation, or writing {...} expressions, references like `#view#comp`, `$alias` and `!`, or XPath tests.
- Triggers - events, keys, what
!holds,<param> - Aliases - models,
when, scope, reading$name - Expressions - XPath, rules and XIOS, references,
{...}, operators, functions, traps - Expression functions - every other function; read it only when you need one
action,callMethod,setSelection- set, show, hide components, field states; call methods; select rowsbind,change,foreach,create- bind, edit (add, set text, delete, move), loop, in-memory documentsdecision,call,async,confirm,debug- branch (<if>), run steps, timers, dialogs, logsave,database,download- save, files and folders on a drive, downloadopen,close,config,system,callService- views and applications, language, settings, clipboard, HTTPchannel,login,groups,friends,tenant,mail,share,stats- CloudBackend services (need a signed-in channel)
xios-theme
Themes and app CSS
Create or adjust an XIOS theme (a theme XML file in gui/themes - color seeds, design tokens, a dark variant, the error, warning and success colors and their contrast) or tune components in an app's CSS with --xc-* variables. Use only when asked for theme, color, palette, dark-mode or design-token work; not for building ordinary views and processes (xios-views, xios-process).
- the theme file: color seeds, token knobs, a dark variant, registration, preview - theme-xml.md
- an app's CSS: the
--xc-<comp>-*knobs, reading the tokens - app-css.md
xios-extend
Your own components and operations
Build a new XIOS component (a new tag backed by a JavaScript class, an XSL skin and CSS) or a new process operation (a new operation name backed by a JavaScript function), in an application or in xios-core itself. Use only when asked to create, add or extend a custom component or operation, or when no Core component or operation can do the job; not for writing ordinary views and processes (xios-views, xios-process).
- component.md - declare it, the class, the skin, the CSS, the accessibility duties, registration in xios-core, tests
- operation.md - declare it, the function and its arguments, attributes and
{...}, aliases and documents, errors, registration in xios-core, tests
xios-db
Data in CloudBackend: datatypes, folders, searching (draft)
Store, find and share application data in CloudBackend from an XIOS app - datatypes, folders, documents, searching with predicate paths, live updates and folder rights. Use when an XIOS app keeps records on tenant://, home:// or a group drive, lists or searches them, or several users write the same data. Not for local:// (see xios-process, files).
- Across many folders, sorting by a key, or paging a big result: query.md.
Known limits
- The validator reports these forms as errors, but they are correct: text in a plate's
<item>,createwith<template>, abindwithoutvalue,<app>in a panel, andmodule="true"or<style>before<skin>in an app's<component>. - The validator rejects a file saved with a UTF-8 byte order mark; save as UTF-8 without one.
- Enter on a button reached with Tab runs the Enter trigger of the field before it. Space presses the button.
- In a menu, the arrow keys do not reach the items of a
<dataitem>. - Uploads need a signed-in CloudBackend drive.
- xios-db is a draft. Datatypes can only be installed by a tenant Owner or Administrator, so install them before your users run the app. Whether folder rights per role also limit what a search returns is not tested yet. Amounts with a decimal point are not found exactly by the server's own search; the predicate paths the skill teaches handle them.
- In token themes, buttons, inputs and tabs keep their own fonts.