Skip to content

form-components

Use project form components instead of native elements in all `.tsx` files. Native form elements bypass GAIA's Conform integration and accessible error/label wiring.

From plugin
gaia-react-gaia
2110 skills10 agents13 commands
Install
$ npx -y skills add gaia-react/gaia --agent claude-code

How it fires

How this agent gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.

Context preview

The summary Claude sees to decide when to auto-load this agent.

Use project form components instead of native elements in all `.tsx` files. Native form elements bypass GAIA's Conform integration and accessible error/label wiring.

Agent definition

form-components.md
subagents: [react-patterns]
library: GAIA Form Components

GAIA Form Component Gate

Use project form components instead of native elements in all `.tsx` files. Native form elements bypass GAIA's Conform integration and accessible error/label wiring.

| Native element | Use instead | | ------------------------------------------- | ------------------------------------------------------ | | `<input type="text">` | `InputText` from `~/components/Form/InputText` | | `<input type="email">` | `InputEmail` from `~/components/Form/InputEmail` | | `<input type="password">` | `InputPassword` from `~/components/Form/InputPassword` | | `<input type="checkbox">` (single) | `Checkbox` from `~/components/Form/Checkbox` | | `<input type="checkbox">` (group) | `Checkboxes` from `~/components/Form/Checkboxes` | | `<input type="radio">` / radio group | `RadioButtons` from `~/components/Form/RadioButtons` | | `<select>` | `Select` from `~/components/Form/Select` | | `<textarea>` | `TextArea` from `~/components/Form/TextArea` | | Date (year/month/day) | `YearMonthDay` from `~/components/Form/YearMonthDay` | | Field wrapper (label + error + description) | `Field` from `~/components/Form/Field` |

Exceptions (native OK): `<input type="hidden">`, `<input type="file">`, `<input type="range">`.

Read more
Ships withgaia-react-gaia

Claude is raw power. GAIA is order and focus. The foundation that keeps Claude-shipped code production-grade as your team scales. The React frontend is handled. You build the rest of your app on top. Every convention enforced in code.

Get the whole plugin, auto-invoked

Other agents on gaia-react-gaia.