[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-anomaly-opentui":3,"mdc--739eek-key":36,"related-org-anomaly-opentui":1526,"related-repo-anomaly-opentui":1585},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":31,"sourceUrl":34,"mdContent":35},"opentui","build terminal UIs with OpenTUI","Build terminal UIs with OpenTUI. Covers core, components, audio, keymaps, React, Solid, plugins, testing, standalone executables, QR encoding, SSH, and Three.js WebGPU.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"anomaly","Anomaly (SST \u002F OpenCode)","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fanomaly.png","anomalyco",[13,17,20],{"name":14,"slug":15,"type":16},"React","react","tag",{"name":18,"slug":19,"type":16},"Desktop","desktop",{"name":21,"slug":22,"type":16},"UI Components","ui-components",12436,"https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fopentui","2026-07-29T05:41:33.249647",null,641,[29,30],"opencode","tui",{"repoUrl":24,"stars":23,"forks":27,"topics":32,"description":33},[29,30],"OpenTUI is a library for building terminal user interfaces (TUIs)","https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fopentui\u002Ftree\u002FHEAD\u002Fpackages\u002Fweb\u002Fsrc\u002Fcontent","---\nname: opentui\ndescription: Build terminal UIs with OpenTUI. Covers core, components, audio, keymaps, React, Solid, plugins, testing, standalone executables, QR encoding, SSH, and Three.js WebGPU.\n---\n\n# OpenTUI Skill\n\nCanonical reference docs are authored once in sibling `docs\u002F**\u002F*.mdx` files.\n\nInside the OpenTUI repo, this skill root lives at `packages\u002Fweb\u002Fsrc\u002Fcontent\u002F`, so the same files are also visible at `packages\u002Fweb\u002Fsrc\u002Fcontent\u002Fdocs\u002F**\u002F*.mdx`.\n\n## Path invariant\n\n- `\u002Fdocs\u002F\u003Cslug>` maps to `docs\u002F\u003Cslug>.mdx` relative to this skill root\n- in the repo, that same slug maps to `packages\u002Fweb\u002Fsrc\u002Fcontent\u002Fdocs\u002F\u003Cslug>.mdx`\n\n## Reading order by area\n\n- Getting started: `\u002Fdocs\u002Fgetting-started`\n- Core: `\u002Fdocs\u002Fcore-concepts\u002Frenderer`\n- Testing: `\u002Fdocs\u002Fcore-concepts\u002Ftesting`\n- Audio: `\u002Fdocs\u002Fcore-concepts\u002Faudio`\n- Keymap: `\u002Fdocs\u002Fkeymap\u002Foverview`\n- React: `\u002Fdocs\u002Fbindings\u002Freact`\n- Solid: `\u002Fdocs\u002Fbindings\u002Fsolid`\n- Components: `\u002Fdocs\u002Fcomponents\u002Ftext`, `\u002Fdocs\u002Fcomponents\u002Finput`\n- Layout: `\u002Fdocs\u002Fcore-concepts\u002Flayout`\n- Keyboard: `\u002Fdocs\u002Fcore-concepts\u002Fkeyboard`\n- Plugins: `\u002Fdocs\u002Fplugins\u002Fslots`\n- Runtime and packaging: `\u002Fdocs\u002Freference\u002Fenv-vars`, `\u002Fdocs\u002Freference\u002Fstandalone-executables`\n- Package entrypoints: `\u002Fdocs\u002Freference\u002Fpackage-entrypoints`\n- QR encoding: `\u002Fdocs\u002Freference\u002Fqr-encoder`\n- SSH: `\u002Fdocs\u002Freference\u002Fssh`\n- Three.js WebGPU: `\u002Fdocs\u002Freference\u002Fthree`\n\n## Quick routing by intent\n\n| Intent(s)                                                                                          | Start here                                  |\n| -------------------------------------------------------------------------------------------------- | ------------------------------------------- |\n| `getting-started`, `installation`, `quickstart`, `intro`                                           | `docs\u002Fgetting-started.mdx`                  |\n| `core`, `renderer`, `terminal`, `scrollback`, `lifecycle`                                          | `docs\u002Fcore-concepts\u002Frenderer.mdx`           |\n| `audio`, `native-audio`, `sound`, `playback`, `streaming`, `radio`, `mp3`, `flac`, `pcm`, `fft`    | `docs\u002Fcore-concepts\u002Faudio.mdx`              |\n| `keymap`, `keybindings`, `shortcuts`, `commands`, `leader`, `ex-commands`                          | `docs\u002Fkeymap\u002Foverview.mdx`                  |\n| `layout`, `flexbox`, `yoga`, `positioning`                                                         | `docs\u002Fcore-concepts\u002Flayout.mdx`             |\n| `keyboard`, `input`, `keybindings`, `paste`, `focus`                                               | `docs\u002Fcore-concepts\u002Fkeyboard.mdx`           |\n| `testing`, `test-renderer`, `snapshots`, `frames`                                                  | `docs\u002Fcore-concepts\u002Ftesting.mdx`            |\n| `react`, `jsx`, `hooks`, `keyboard`, `paste`, `focus`, `blur`, `selection`, `animation`, `testing` | `docs\u002Fbindings\u002Freact.mdx`                   |\n| `solid`, `jsx`, `signals`, `hooks`, `keyboard`, `animation`, `testing`                             | `docs\u002Fbindings\u002Fsolid.mdx`                   |\n| `plugins`, `plugin`, `slots`, `registry`, `extensions`                                             | `docs\u002Fplugins\u002Fslots.mdx`                    |\n| `text`, `styling`, `content`, `selection`                                                          | `docs\u002Fcomponents\u002Ftext.mdx`                  |\n| `input`, `form`, `editing`, `focus`                                                                | `docs\u002Fcomponents\u002Finput.mdx`                 |\n| `env`, `environment`, `configuration`, `flags`                                                     | `docs\u002Freference\u002Fenv-vars.mdx`               |\n| `standalone`, `executable`, `bun-compile`, `node-sea`, `node-assets`                               | `docs\u002Freference\u002Fstandalone-executables.mdx` |\n| `package-exports`, `entrypoints`, `subpath-exports`, `imports`                                     | `docs\u002Freference\u002Fpackage-entrypoints.mdx`    |\n| `qr`, `qrcode`, `qr-encoder`, `svg-qr`, `gs1`, `eci`, `structured-append`                          | `docs\u002Freference\u002Fqr-encoder.mdx`             |\n| `ssh`, `remote-tui`, `ssh-server`, `authentication`, `middleware`                                  | `docs\u002Freference\u002Fssh.mdx`                    |\n| `three`, `threejs`, `webgpu`, `3d`, `sprites`, `physics`                                           | `docs\u002Freference\u002Fthree.mdx`                  |\n\nFor concrete component requests, jump straight to `docs\u002Fcomponents\u002F\u003Cname>.mdx` after the relevant entry page. For plugin implementation details, narrow from `docs\u002Fplugins\u002Fslots.mdx` into `docs\u002Fplugins\u002Fcore.mdx`, `docs\u002Fplugins\u002Freact.mdx`, or `docs\u002Fplugins\u002Fsolid.mdx`.\n\n## Current skill entry pages\n\n- `docs\u002Fgetting-started.mdx`\n- `docs\u002Fcore-concepts\u002Frenderer.mdx`\n- `docs\u002Fcore-concepts\u002Faudio.mdx`\n- `docs\u002Fcore-concepts\u002Ftesting.mdx`\n- `docs\u002Fkeymap\u002Foverview.mdx`\n- `docs\u002Fcore-concepts\u002Flayout.mdx`\n- `docs\u002Fcore-concepts\u002Fkeyboard.mdx`\n- `docs\u002Fbindings\u002Freact.mdx`\n- `docs\u002Fbindings\u002Fsolid.mdx`\n- `docs\u002Fplugins\u002Fslots.mdx`\n- `docs\u002Fcomponents\u002Ftext.mdx`\n- `docs\u002Fcomponents\u002Finput.mdx`\n- `docs\u002Freference\u002Fenv-vars.mdx`\n- `docs\u002Freference\u002Fstandalone-executables.mdx`\n- `docs\u002Freference\u002Fpackage-entrypoints.mdx`\n- `docs\u002Freference\u002Fqr-encoder.mdx`\n- `docs\u002Freference\u002Fssh.mdx`\n- `docs\u002Freference\u002Fthree.mdx`\n\n## Working rules\n\n- Prefer the current entry pages first, then read narrower docs in the same section.\n- Read the sibling `docs\u002F**\u002F*.mdx` files directly instead of copying prose into this file.\n- Use stable `\u002Fdocs\u002F...` URLs when cross-referencing docs.\n",{"data":37,"body":38},{"name":4,"description":6},{"type":39,"children":40},"root",[41,50,65,86,93,128,134,328,334,1292,1334,1340,1487,1493],{"type":42,"tag":43,"props":44,"children":46},"element","h1",{"id":45},"opentui-skill",[47],{"type":48,"value":49},"text","OpenTUI Skill",{"type":42,"tag":51,"props":52,"children":53},"p",{},[54,56,63],{"type":48,"value":55},"Canonical reference docs are authored once in sibling ",{"type":42,"tag":57,"props":58,"children":60},"code",{"className":59},[],[61],{"type":48,"value":62},"docs\u002F**\u002F*.mdx",{"type":48,"value":64}," files.",{"type":42,"tag":51,"props":66,"children":67},{},[68,70,76,78,84],{"type":48,"value":69},"Inside the OpenTUI repo, this skill root lives at ",{"type":42,"tag":57,"props":71,"children":73},{"className":72},[],[74],{"type":48,"value":75},"packages\u002Fweb\u002Fsrc\u002Fcontent\u002F",{"type":48,"value":77},", so the same files are also visible at ",{"type":42,"tag":57,"props":79,"children":81},{"className":80},[],[82],{"type":48,"value":83},"packages\u002Fweb\u002Fsrc\u002Fcontent\u002Fdocs\u002F**\u002F*.mdx",{"type":48,"value":85},".",{"type":42,"tag":87,"props":88,"children":90},"h2",{"id":89},"path-invariant",[91],{"type":48,"value":92},"Path invariant",{"type":42,"tag":94,"props":95,"children":96},"ul",{},[97,117],{"type":42,"tag":98,"props":99,"children":100},"li",{},[101,107,109,115],{"type":42,"tag":57,"props":102,"children":104},{"className":103},[],[105],{"type":48,"value":106},"\u002Fdocs\u002F\u003Cslug>",{"type":48,"value":108}," maps to ",{"type":42,"tag":57,"props":110,"children":112},{"className":111},[],[113],{"type":48,"value":114},"docs\u002F\u003Cslug>.mdx",{"type":48,"value":116}," relative to this skill root",{"type":42,"tag":98,"props":118,"children":119},{},[120,122],{"type":48,"value":121},"in the repo, that same slug maps to ",{"type":42,"tag":57,"props":123,"children":125},{"className":124},[],[126],{"type":48,"value":127},"packages\u002Fweb\u002Fsrc\u002Fcontent\u002Fdocs\u002F\u003Cslug>.mdx",{"type":42,"tag":87,"props":129,"children":131},{"id":130},"reading-order-by-area",[132],{"type":48,"value":133},"Reading order by area",{"type":42,"tag":94,"props":135,"children":136},{},[137,148,159,170,181,192,203,214,233,244,255,266,284,295,306,317],{"type":42,"tag":98,"props":138,"children":139},{},[140,142],{"type":48,"value":141},"Getting started: ",{"type":42,"tag":57,"props":143,"children":145},{"className":144},[],[146],{"type":48,"value":147},"\u002Fdocs\u002Fgetting-started",{"type":42,"tag":98,"props":149,"children":150},{},[151,153],{"type":48,"value":152},"Core: ",{"type":42,"tag":57,"props":154,"children":156},{"className":155},[],[157],{"type":48,"value":158},"\u002Fdocs\u002Fcore-concepts\u002Frenderer",{"type":42,"tag":98,"props":160,"children":161},{},[162,164],{"type":48,"value":163},"Testing: ",{"type":42,"tag":57,"props":165,"children":167},{"className":166},[],[168],{"type":48,"value":169},"\u002Fdocs\u002Fcore-concepts\u002Ftesting",{"type":42,"tag":98,"props":171,"children":172},{},[173,175],{"type":48,"value":174},"Audio: ",{"type":42,"tag":57,"props":176,"children":178},{"className":177},[],[179],{"type":48,"value":180},"\u002Fdocs\u002Fcore-concepts\u002Faudio",{"type":42,"tag":98,"props":182,"children":183},{},[184,186],{"type":48,"value":185},"Keymap: ",{"type":42,"tag":57,"props":187,"children":189},{"className":188},[],[190],{"type":48,"value":191},"\u002Fdocs\u002Fkeymap\u002Foverview",{"type":42,"tag":98,"props":193,"children":194},{},[195,197],{"type":48,"value":196},"React: ",{"type":42,"tag":57,"props":198,"children":200},{"className":199},[],[201],{"type":48,"value":202},"\u002Fdocs\u002Fbindings\u002Freact",{"type":42,"tag":98,"props":204,"children":205},{},[206,208],{"type":48,"value":207},"Solid: ",{"type":42,"tag":57,"props":209,"children":211},{"className":210},[],[212],{"type":48,"value":213},"\u002Fdocs\u002Fbindings\u002Fsolid",{"type":42,"tag":98,"props":215,"children":216},{},[217,219,225,227],{"type":48,"value":218},"Components: ",{"type":42,"tag":57,"props":220,"children":222},{"className":221},[],[223],{"type":48,"value":224},"\u002Fdocs\u002Fcomponents\u002Ftext",{"type":48,"value":226},", ",{"type":42,"tag":57,"props":228,"children":230},{"className":229},[],[231],{"type":48,"value":232},"\u002Fdocs\u002Fcomponents\u002Finput",{"type":42,"tag":98,"props":234,"children":235},{},[236,238],{"type":48,"value":237},"Layout: ",{"type":42,"tag":57,"props":239,"children":241},{"className":240},[],[242],{"type":48,"value":243},"\u002Fdocs\u002Fcore-concepts\u002Flayout",{"type":42,"tag":98,"props":245,"children":246},{},[247,249],{"type":48,"value":248},"Keyboard: ",{"type":42,"tag":57,"props":250,"children":252},{"className":251},[],[253],{"type":48,"value":254},"\u002Fdocs\u002Fcore-concepts\u002Fkeyboard",{"type":42,"tag":98,"props":256,"children":257},{},[258,260],{"type":48,"value":259},"Plugins: ",{"type":42,"tag":57,"props":261,"children":263},{"className":262},[],[264],{"type":48,"value":265},"\u002Fdocs\u002Fplugins\u002Fslots",{"type":42,"tag":98,"props":267,"children":268},{},[269,271,277,278],{"type":48,"value":270},"Runtime and packaging: ",{"type":42,"tag":57,"props":272,"children":274},{"className":273},[],[275],{"type":48,"value":276},"\u002Fdocs\u002Freference\u002Fenv-vars",{"type":48,"value":226},{"type":42,"tag":57,"props":279,"children":281},{"className":280},[],[282],{"type":48,"value":283},"\u002Fdocs\u002Freference\u002Fstandalone-executables",{"type":42,"tag":98,"props":285,"children":286},{},[287,289],{"type":48,"value":288},"Package entrypoints: ",{"type":42,"tag":57,"props":290,"children":292},{"className":291},[],[293],{"type":48,"value":294},"\u002Fdocs\u002Freference\u002Fpackage-entrypoints",{"type":42,"tag":98,"props":296,"children":297},{},[298,300],{"type":48,"value":299},"QR encoding: ",{"type":42,"tag":57,"props":301,"children":303},{"className":302},[],[304],{"type":48,"value":305},"\u002Fdocs\u002Freference\u002Fqr-encoder",{"type":42,"tag":98,"props":307,"children":308},{},[309,311],{"type":48,"value":310},"SSH: ",{"type":42,"tag":57,"props":312,"children":314},{"className":313},[],[315],{"type":48,"value":316},"\u002Fdocs\u002Freference\u002Fssh",{"type":42,"tag":98,"props":318,"children":319},{},[320,322],{"type":48,"value":321},"Three.js WebGPU: ",{"type":42,"tag":57,"props":323,"children":325},{"className":324},[],[326],{"type":48,"value":327},"\u002Fdocs\u002Freference\u002Fthree",{"type":42,"tag":87,"props":329,"children":331},{"id":330},"quick-routing-by-intent",[332],{"type":48,"value":333},"Quick routing by intent",{"type":42,"tag":335,"props":336,"children":337},"table",{},[338,357],{"type":42,"tag":339,"props":340,"children":341},"thead",{},[342],{"type":42,"tag":343,"props":344,"children":345},"tr",{},[346,352],{"type":42,"tag":347,"props":348,"children":349},"th",{},[350],{"type":48,"value":351},"Intent(s)",{"type":42,"tag":347,"props":353,"children":354},{},[355],{"type":48,"value":356},"Start here",{"type":42,"tag":358,"props":359,"children":360},"tbody",{},[361,404,453,537,593,635,683,725,804,862,911,951,991,1033,1082,1124,1187,1236],{"type":42,"tag":343,"props":362,"children":363},{},[364,395],{"type":42,"tag":365,"props":366,"children":367},"td",{},[368,374,375,381,382,388,389],{"type":42,"tag":57,"props":369,"children":371},{"className":370},[],[372],{"type":48,"value":373},"getting-started",{"type":48,"value":226},{"type":42,"tag":57,"props":376,"children":378},{"className":377},[],[379],{"type":48,"value":380},"installation",{"type":48,"value":226},{"type":42,"tag":57,"props":383,"children":385},{"className":384},[],[386],{"type":48,"value":387},"quickstart",{"type":48,"value":226},{"type":42,"tag":57,"props":390,"children":392},{"className":391},[],[393],{"type":48,"value":394},"intro",{"type":42,"tag":365,"props":396,"children":397},{},[398],{"type":42,"tag":57,"props":399,"children":401},{"className":400},[],[402],{"type":48,"value":403},"docs\u002Fgetting-started.mdx",{"type":42,"tag":343,"props":405,"children":406},{},[407,444],{"type":42,"tag":365,"props":408,"children":409},{},[410,416,417,423,424,430,431,437,438],{"type":42,"tag":57,"props":411,"children":413},{"className":412},[],[414],{"type":48,"value":415},"core",{"type":48,"value":226},{"type":42,"tag":57,"props":418,"children":420},{"className":419},[],[421],{"type":48,"value":422},"renderer",{"type":48,"value":226},{"type":42,"tag":57,"props":425,"children":427},{"className":426},[],[428],{"type":48,"value":429},"terminal",{"type":48,"value":226},{"type":42,"tag":57,"props":432,"children":434},{"className":433},[],[435],{"type":48,"value":436},"scrollback",{"type":48,"value":226},{"type":42,"tag":57,"props":439,"children":441},{"className":440},[],[442],{"type":48,"value":443},"lifecycle",{"type":42,"tag":365,"props":445,"children":446},{},[447],{"type":42,"tag":57,"props":448,"children":450},{"className":449},[],[451],{"type":48,"value":452},"docs\u002Fcore-concepts\u002Frenderer.mdx",{"type":42,"tag":343,"props":454,"children":455},{},[456,528],{"type":42,"tag":365,"props":457,"children":458},{},[459,465,466,472,473,479,480,486,487,493,494,500,501,507,508,514,515,521,522],{"type":42,"tag":57,"props":460,"children":462},{"className":461},[],[463],{"type":48,"value":464},"audio",{"type":48,"value":226},{"type":42,"tag":57,"props":467,"children":469},{"className":468},[],[470],{"type":48,"value":471},"native-audio",{"type":48,"value":226},{"type":42,"tag":57,"props":474,"children":476},{"className":475},[],[477],{"type":48,"value":478},"sound",{"type":48,"value":226},{"type":42,"tag":57,"props":481,"children":483},{"className":482},[],[484],{"type":48,"value":485},"playback",{"type":48,"value":226},{"type":42,"tag":57,"props":488,"children":490},{"className":489},[],[491],{"type":48,"value":492},"streaming",{"type":48,"value":226},{"type":42,"tag":57,"props":495,"children":497},{"className":496},[],[498],{"type":48,"value":499},"radio",{"type":48,"value":226},{"type":42,"tag":57,"props":502,"children":504},{"className":503},[],[505],{"type":48,"value":506},"mp3",{"type":48,"value":226},{"type":42,"tag":57,"props":509,"children":511},{"className":510},[],[512],{"type":48,"value":513},"flac",{"type":48,"value":226},{"type":42,"tag":57,"props":516,"children":518},{"className":517},[],[519],{"type":48,"value":520},"pcm",{"type":48,"value":226},{"type":42,"tag":57,"props":523,"children":525},{"className":524},[],[526],{"type":48,"value":527},"fft",{"type":42,"tag":365,"props":529,"children":530},{},[531],{"type":42,"tag":57,"props":532,"children":534},{"className":533},[],[535],{"type":48,"value":536},"docs\u002Fcore-concepts\u002Faudio.mdx",{"type":42,"tag":343,"props":538,"children":539},{},[540,584],{"type":42,"tag":365,"props":541,"children":542},{},[543,549,550,556,557,563,564,570,571,577,578],{"type":42,"tag":57,"props":544,"children":546},{"className":545},[],[547],{"type":48,"value":548},"keymap",{"type":48,"value":226},{"type":42,"tag":57,"props":551,"children":553},{"className":552},[],[554],{"type":48,"value":555},"keybindings",{"type":48,"value":226},{"type":42,"tag":57,"props":558,"children":560},{"className":559},[],[561],{"type":48,"value":562},"shortcuts",{"type":48,"value":226},{"type":42,"tag":57,"props":565,"children":567},{"className":566},[],[568],{"type":48,"value":569},"commands",{"type":48,"value":226},{"type":42,"tag":57,"props":572,"children":574},{"className":573},[],[575],{"type":48,"value":576},"leader",{"type":48,"value":226},{"type":42,"tag":57,"props":579,"children":581},{"className":580},[],[582],{"type":48,"value":583},"ex-commands",{"type":42,"tag":365,"props":585,"children":586},{},[587],{"type":42,"tag":57,"props":588,"children":590},{"className":589},[],[591],{"type":48,"value":592},"docs\u002Fkeymap\u002Foverview.mdx",{"type":42,"tag":343,"props":594,"children":595},{},[596,626],{"type":42,"tag":365,"props":597,"children":598},{},[599,605,606,612,613,619,620],{"type":42,"tag":57,"props":600,"children":602},{"className":601},[],[603],{"type":48,"value":604},"layout",{"type":48,"value":226},{"type":42,"tag":57,"props":607,"children":609},{"className":608},[],[610],{"type":48,"value":611},"flexbox",{"type":48,"value":226},{"type":42,"tag":57,"props":614,"children":616},{"className":615},[],[617],{"type":48,"value":618},"yoga",{"type":48,"value":226},{"type":42,"tag":57,"props":621,"children":623},{"className":622},[],[624],{"type":48,"value":625},"positioning",{"type":42,"tag":365,"props":627,"children":628},{},[629],{"type":42,"tag":57,"props":630,"children":632},{"className":631},[],[633],{"type":48,"value":634},"docs\u002Fcore-concepts\u002Flayout.mdx",{"type":42,"tag":343,"props":636,"children":637},{},[638,674],{"type":42,"tag":365,"props":639,"children":640},{},[641,647,648,654,655,660,661,667,668],{"type":42,"tag":57,"props":642,"children":644},{"className":643},[],[645],{"type":48,"value":646},"keyboard",{"type":48,"value":226},{"type":42,"tag":57,"props":649,"children":651},{"className":650},[],[652],{"type":48,"value":653},"input",{"type":48,"value":226},{"type":42,"tag":57,"props":656,"children":658},{"className":657},[],[659],{"type":48,"value":555},{"type":48,"value":226},{"type":42,"tag":57,"props":662,"children":664},{"className":663},[],[665],{"type":48,"value":666},"paste",{"type":48,"value":226},{"type":42,"tag":57,"props":669,"children":671},{"className":670},[],[672],{"type":48,"value":673},"focus",{"type":42,"tag":365,"props":675,"children":676},{},[677],{"type":42,"tag":57,"props":678,"children":680},{"className":679},[],[681],{"type":48,"value":682},"docs\u002Fcore-concepts\u002Fkeyboard.mdx",{"type":42,"tag":343,"props":684,"children":685},{},[686,716],{"type":42,"tag":365,"props":687,"children":688},{},[689,695,696,702,703,709,710],{"type":42,"tag":57,"props":690,"children":692},{"className":691},[],[693],{"type":48,"value":694},"testing",{"type":48,"value":226},{"type":42,"tag":57,"props":697,"children":699},{"className":698},[],[700],{"type":48,"value":701},"test-renderer",{"type":48,"value":226},{"type":42,"tag":57,"props":704,"children":706},{"className":705},[],[707],{"type":48,"value":708},"snapshots",{"type":48,"value":226},{"type":42,"tag":57,"props":711,"children":713},{"className":712},[],[714],{"type":48,"value":715},"frames",{"type":42,"tag":365,"props":717,"children":718},{},[719],{"type":42,"tag":57,"props":720,"children":722},{"className":721},[],[723],{"type":48,"value":724},"docs\u002Fcore-concepts\u002Ftesting.mdx",{"type":42,"tag":343,"props":726,"children":727},{},[728,795],{"type":42,"tag":365,"props":729,"children":730},{},[731,736,737,743,744,750,751,756,757,762,763,768,769,775,776,782,783,789,790],{"type":42,"tag":57,"props":732,"children":734},{"className":733},[],[735],{"type":48,"value":15},{"type":48,"value":226},{"type":42,"tag":57,"props":738,"children":740},{"className":739},[],[741],{"type":48,"value":742},"jsx",{"type":48,"value":226},{"type":42,"tag":57,"props":745,"children":747},{"className":746},[],[748],{"type":48,"value":749},"hooks",{"type":48,"value":226},{"type":42,"tag":57,"props":752,"children":754},{"className":753},[],[755],{"type":48,"value":646},{"type":48,"value":226},{"type":42,"tag":57,"props":758,"children":760},{"className":759},[],[761],{"type":48,"value":666},{"type":48,"value":226},{"type":42,"tag":57,"props":764,"children":766},{"className":765},[],[767],{"type":48,"value":673},{"type":48,"value":226},{"type":42,"tag":57,"props":770,"children":772},{"className":771},[],[773],{"type":48,"value":774},"blur",{"type":48,"value":226},{"type":42,"tag":57,"props":777,"children":779},{"className":778},[],[780],{"type":48,"value":781},"selection",{"type":48,"value":226},{"type":42,"tag":57,"props":784,"children":786},{"className":785},[],[787],{"type":48,"value":788},"animation",{"type":48,"value":226},{"type":42,"tag":57,"props":791,"children":793},{"className":792},[],[794],{"type":48,"value":694},{"type":42,"tag":365,"props":796,"children":797},{},[798],{"type":42,"tag":57,"props":799,"children":801},{"className":800},[],[802],{"type":48,"value":803},"docs\u002Fbindings\u002Freact.mdx",{"type":42,"tag":343,"props":805,"children":806},{},[807,853],{"type":42,"tag":365,"props":808,"children":809},{},[810,816,817,822,823,829,830,835,836,841,842,847,848],{"type":42,"tag":57,"props":811,"children":813},{"className":812},[],[814],{"type":48,"value":815},"solid",{"type":48,"value":226},{"type":42,"tag":57,"props":818,"children":820},{"className":819},[],[821],{"type":48,"value":742},{"type":48,"value":226},{"type":42,"tag":57,"props":824,"children":826},{"className":825},[],[827],{"type":48,"value":828},"signals",{"type":48,"value":226},{"type":42,"tag":57,"props":831,"children":833},{"className":832},[],[834],{"type":48,"value":749},{"type":48,"value":226},{"type":42,"tag":57,"props":837,"children":839},{"className":838},[],[840],{"type":48,"value":646},{"type":48,"value":226},{"type":42,"tag":57,"props":843,"children":845},{"className":844},[],[846],{"type":48,"value":788},{"type":48,"value":226},{"type":42,"tag":57,"props":849,"children":851},{"className":850},[],[852],{"type":48,"value":694},{"type":42,"tag":365,"props":854,"children":855},{},[856],{"type":42,"tag":57,"props":857,"children":859},{"className":858},[],[860],{"type":48,"value":861},"docs\u002Fbindings\u002Fsolid.mdx",{"type":42,"tag":343,"props":863,"children":864},{},[865,902],{"type":42,"tag":365,"props":866,"children":867},{},[868,874,875,881,882,888,889,895,896],{"type":42,"tag":57,"props":869,"children":871},{"className":870},[],[872],{"type":48,"value":873},"plugins",{"type":48,"value":226},{"type":42,"tag":57,"props":876,"children":878},{"className":877},[],[879],{"type":48,"value":880},"plugin",{"type":48,"value":226},{"type":42,"tag":57,"props":883,"children":885},{"className":884},[],[886],{"type":48,"value":887},"slots",{"type":48,"value":226},{"type":42,"tag":57,"props":890,"children":892},{"className":891},[],[893],{"type":48,"value":894},"registry",{"type":48,"value":226},{"type":42,"tag":57,"props":897,"children":899},{"className":898},[],[900],{"type":48,"value":901},"extensions",{"type":42,"tag":365,"props":903,"children":904},{},[905],{"type":42,"tag":57,"props":906,"children":908},{"className":907},[],[909],{"type":48,"value":910},"docs\u002Fplugins\u002Fslots.mdx",{"type":42,"tag":343,"props":912,"children":913},{},[914,942],{"type":42,"tag":365,"props":915,"children":916},{},[917,922,923,929,930,936,937],{"type":42,"tag":57,"props":918,"children":920},{"className":919},[],[921],{"type":48,"value":48},{"type":48,"value":226},{"type":42,"tag":57,"props":924,"children":926},{"className":925},[],[927],{"type":48,"value":928},"styling",{"type":48,"value":226},{"type":42,"tag":57,"props":931,"children":933},{"className":932},[],[934],{"type":48,"value":935},"content",{"type":48,"value":226},{"type":42,"tag":57,"props":938,"children":940},{"className":939},[],[941],{"type":48,"value":781},{"type":42,"tag":365,"props":943,"children":944},{},[945],{"type":42,"tag":57,"props":946,"children":948},{"className":947},[],[949],{"type":48,"value":950},"docs\u002Fcomponents\u002Ftext.mdx",{"type":42,"tag":343,"props":952,"children":953},{},[954,982],{"type":42,"tag":365,"props":955,"children":956},{},[957,962,963,969,970,976,977],{"type":42,"tag":57,"props":958,"children":960},{"className":959},[],[961],{"type":48,"value":653},{"type":48,"value":226},{"type":42,"tag":57,"props":964,"children":966},{"className":965},[],[967],{"type":48,"value":968},"form",{"type":48,"value":226},{"type":42,"tag":57,"props":971,"children":973},{"className":972},[],[974],{"type":48,"value":975},"editing",{"type":48,"value":226},{"type":42,"tag":57,"props":978,"children":980},{"className":979},[],[981],{"type":48,"value":673},{"type":42,"tag":365,"props":983,"children":984},{},[985],{"type":42,"tag":57,"props":986,"children":988},{"className":987},[],[989],{"type":48,"value":990},"docs\u002Fcomponents\u002Finput.mdx",{"type":42,"tag":343,"props":992,"children":993},{},[994,1024],{"type":42,"tag":365,"props":995,"children":996},{},[997,1003,1004,1010,1011,1017,1018],{"type":42,"tag":57,"props":998,"children":1000},{"className":999},[],[1001],{"type":48,"value":1002},"env",{"type":48,"value":226},{"type":42,"tag":57,"props":1005,"children":1007},{"className":1006},[],[1008],{"type":48,"value":1009},"environment",{"type":48,"value":226},{"type":42,"tag":57,"props":1012,"children":1014},{"className":1013},[],[1015],{"type":48,"value":1016},"configuration",{"type":48,"value":226},{"type":42,"tag":57,"props":1019,"children":1021},{"className":1020},[],[1022],{"type":48,"value":1023},"flags",{"type":42,"tag":365,"props":1025,"children":1026},{},[1027],{"type":42,"tag":57,"props":1028,"children":1030},{"className":1029},[],[1031],{"type":48,"value":1032},"docs\u002Freference\u002Fenv-vars.mdx",{"type":42,"tag":343,"props":1034,"children":1035},{},[1036,1073],{"type":42,"tag":365,"props":1037,"children":1038},{},[1039,1045,1046,1052,1053,1059,1060,1066,1067],{"type":42,"tag":57,"props":1040,"children":1042},{"className":1041},[],[1043],{"type":48,"value":1044},"standalone",{"type":48,"value":226},{"type":42,"tag":57,"props":1047,"children":1049},{"className":1048},[],[1050],{"type":48,"value":1051},"executable",{"type":48,"value":226},{"type":42,"tag":57,"props":1054,"children":1056},{"className":1055},[],[1057],{"type":48,"value":1058},"bun-compile",{"type":48,"value":226},{"type":42,"tag":57,"props":1061,"children":1063},{"className":1062},[],[1064],{"type":48,"value":1065},"node-sea",{"type":48,"value":226},{"type":42,"tag":57,"props":1068,"children":1070},{"className":1069},[],[1071],{"type":48,"value":1072},"node-assets",{"type":42,"tag":365,"props":1074,"children":1075},{},[1076],{"type":42,"tag":57,"props":1077,"children":1079},{"className":1078},[],[1080],{"type":48,"value":1081},"docs\u002Freference\u002Fstandalone-executables.mdx",{"type":42,"tag":343,"props":1083,"children":1084},{},[1085,1115],{"type":42,"tag":365,"props":1086,"children":1087},{},[1088,1094,1095,1101,1102,1108,1109],{"type":42,"tag":57,"props":1089,"children":1091},{"className":1090},[],[1092],{"type":48,"value":1093},"package-exports",{"type":48,"value":226},{"type":42,"tag":57,"props":1096,"children":1098},{"className":1097},[],[1099],{"type":48,"value":1100},"entrypoints",{"type":48,"value":226},{"type":42,"tag":57,"props":1103,"children":1105},{"className":1104},[],[1106],{"type":48,"value":1107},"subpath-exports",{"type":48,"value":226},{"type":42,"tag":57,"props":1110,"children":1112},{"className":1111},[],[1113],{"type":48,"value":1114},"imports",{"type":42,"tag":365,"props":1116,"children":1117},{},[1118],{"type":42,"tag":57,"props":1119,"children":1121},{"className":1120},[],[1122],{"type":48,"value":1123},"docs\u002Freference\u002Fpackage-entrypoints.mdx",{"type":42,"tag":343,"props":1125,"children":1126},{},[1127,1178],{"type":42,"tag":365,"props":1128,"children":1129},{},[1130,1136,1137,1143,1144,1150,1151,1157,1158,1164,1165,1171,1172],{"type":42,"tag":57,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":48,"value":1135},"qr",{"type":48,"value":226},{"type":42,"tag":57,"props":1138,"children":1140},{"className":1139},[],[1141],{"type":48,"value":1142},"qrcode",{"type":48,"value":226},{"type":42,"tag":57,"props":1145,"children":1147},{"className":1146},[],[1148],{"type":48,"value":1149},"qr-encoder",{"type":48,"value":226},{"type":42,"tag":57,"props":1152,"children":1154},{"className":1153},[],[1155],{"type":48,"value":1156},"svg-qr",{"type":48,"value":226},{"type":42,"tag":57,"props":1159,"children":1161},{"className":1160},[],[1162],{"type":48,"value":1163},"gs1",{"type":48,"value":226},{"type":42,"tag":57,"props":1166,"children":1168},{"className":1167},[],[1169],{"type":48,"value":1170},"eci",{"type":48,"value":226},{"type":42,"tag":57,"props":1173,"children":1175},{"className":1174},[],[1176],{"type":48,"value":1177},"structured-append",{"type":42,"tag":365,"props":1179,"children":1180},{},[1181],{"type":42,"tag":57,"props":1182,"children":1184},{"className":1183},[],[1185],{"type":48,"value":1186},"docs\u002Freference\u002Fqr-encoder.mdx",{"type":42,"tag":343,"props":1188,"children":1189},{},[1190,1227],{"type":42,"tag":365,"props":1191,"children":1192},{},[1193,1199,1200,1206,1207,1213,1214,1220,1221],{"type":42,"tag":57,"props":1194,"children":1196},{"className":1195},[],[1197],{"type":48,"value":1198},"ssh",{"type":48,"value":226},{"type":42,"tag":57,"props":1201,"children":1203},{"className":1202},[],[1204],{"type":48,"value":1205},"remote-tui",{"type":48,"value":226},{"type":42,"tag":57,"props":1208,"children":1210},{"className":1209},[],[1211],{"type":48,"value":1212},"ssh-server",{"type":48,"value":226},{"type":42,"tag":57,"props":1215,"children":1217},{"className":1216},[],[1218],{"type":48,"value":1219},"authentication",{"type":48,"value":226},{"type":42,"tag":57,"props":1222,"children":1224},{"className":1223},[],[1225],{"type":48,"value":1226},"middleware",{"type":42,"tag":365,"props":1228,"children":1229},{},[1230],{"type":42,"tag":57,"props":1231,"children":1233},{"className":1232},[],[1234],{"type":48,"value":1235},"docs\u002Freference\u002Fssh.mdx",{"type":42,"tag":343,"props":1237,"children":1238},{},[1239,1283],{"type":42,"tag":365,"props":1240,"children":1241},{},[1242,1248,1249,1255,1256,1262,1263,1269,1270,1276,1277],{"type":42,"tag":57,"props":1243,"children":1245},{"className":1244},[],[1246],{"type":48,"value":1247},"three",{"type":48,"value":226},{"type":42,"tag":57,"props":1250,"children":1252},{"className":1251},[],[1253],{"type":48,"value":1254},"threejs",{"type":48,"value":226},{"type":42,"tag":57,"props":1257,"children":1259},{"className":1258},[],[1260],{"type":48,"value":1261},"webgpu",{"type":48,"value":226},{"type":42,"tag":57,"props":1264,"children":1266},{"className":1265},[],[1267],{"type":48,"value":1268},"3d",{"type":48,"value":226},{"type":42,"tag":57,"props":1271,"children":1273},{"className":1272},[],[1274],{"type":48,"value":1275},"sprites",{"type":48,"value":226},{"type":42,"tag":57,"props":1278,"children":1280},{"className":1279},[],[1281],{"type":48,"value":1282},"physics",{"type":42,"tag":365,"props":1284,"children":1285},{},[1286],{"type":42,"tag":57,"props":1287,"children":1289},{"className":1288},[],[1290],{"type":48,"value":1291},"docs\u002Freference\u002Fthree.mdx",{"type":42,"tag":51,"props":1293,"children":1294},{},[1295,1297,1303,1305,1310,1312,1318,1319,1325,1327,1333],{"type":48,"value":1296},"For concrete component requests, jump straight to ",{"type":42,"tag":57,"props":1298,"children":1300},{"className":1299},[],[1301],{"type":48,"value":1302},"docs\u002Fcomponents\u002F\u003Cname>.mdx",{"type":48,"value":1304}," after the relevant entry page. For plugin implementation details, narrow from ",{"type":42,"tag":57,"props":1306,"children":1308},{"className":1307},[],[1309],{"type":48,"value":910},{"type":48,"value":1311}," into ",{"type":42,"tag":57,"props":1313,"children":1315},{"className":1314},[],[1316],{"type":48,"value":1317},"docs\u002Fplugins\u002Fcore.mdx",{"type":48,"value":226},{"type":42,"tag":57,"props":1320,"children":1322},{"className":1321},[],[1323],{"type":48,"value":1324},"docs\u002Fplugins\u002Freact.mdx",{"type":48,"value":1326},", or ",{"type":42,"tag":57,"props":1328,"children":1330},{"className":1329},[],[1331],{"type":48,"value":1332},"docs\u002Fplugins\u002Fsolid.mdx",{"type":48,"value":85},{"type":42,"tag":87,"props":1335,"children":1337},{"id":1336},"current-skill-entry-pages",[1338],{"type":48,"value":1339},"Current skill entry pages",{"type":42,"tag":94,"props":1341,"children":1342},{},[1343,1351,1359,1367,1375,1383,1391,1399,1407,1415,1423,1431,1439,1447,1455,1463,1471,1479],{"type":42,"tag":98,"props":1344,"children":1345},{},[1346],{"type":42,"tag":57,"props":1347,"children":1349},{"className":1348},[],[1350],{"type":48,"value":403},{"type":42,"tag":98,"props":1352,"children":1353},{},[1354],{"type":42,"tag":57,"props":1355,"children":1357},{"className":1356},[],[1358],{"type":48,"value":452},{"type":42,"tag":98,"props":1360,"children":1361},{},[1362],{"type":42,"tag":57,"props":1363,"children":1365},{"className":1364},[],[1366],{"type":48,"value":536},{"type":42,"tag":98,"props":1368,"children":1369},{},[1370],{"type":42,"tag":57,"props":1371,"children":1373},{"className":1372},[],[1374],{"type":48,"value":724},{"type":42,"tag":98,"props":1376,"children":1377},{},[1378],{"type":42,"tag":57,"props":1379,"children":1381},{"className":1380},[],[1382],{"type":48,"value":592},{"type":42,"tag":98,"props":1384,"children":1385},{},[1386],{"type":42,"tag":57,"props":1387,"children":1389},{"className":1388},[],[1390],{"type":48,"value":634},{"type":42,"tag":98,"props":1392,"children":1393},{},[1394],{"type":42,"tag":57,"props":1395,"children":1397},{"className":1396},[],[1398],{"type":48,"value":682},{"type":42,"tag":98,"props":1400,"children":1401},{},[1402],{"type":42,"tag":57,"props":1403,"children":1405},{"className":1404},[],[1406],{"type":48,"value":803},{"type":42,"tag":98,"props":1408,"children":1409},{},[1410],{"type":42,"tag":57,"props":1411,"children":1413},{"className":1412},[],[1414],{"type":48,"value":861},{"type":42,"tag":98,"props":1416,"children":1417},{},[1418],{"type":42,"tag":57,"props":1419,"children":1421},{"className":1420},[],[1422],{"type":48,"value":910},{"type":42,"tag":98,"props":1424,"children":1425},{},[1426],{"type":42,"tag":57,"props":1427,"children":1429},{"className":1428},[],[1430],{"type":48,"value":950},{"type":42,"tag":98,"props":1432,"children":1433},{},[1434],{"type":42,"tag":57,"props":1435,"children":1437},{"className":1436},[],[1438],{"type":48,"value":990},{"type":42,"tag":98,"props":1440,"children":1441},{},[1442],{"type":42,"tag":57,"props":1443,"children":1445},{"className":1444},[],[1446],{"type":48,"value":1032},{"type":42,"tag":98,"props":1448,"children":1449},{},[1450],{"type":42,"tag":57,"props":1451,"children":1453},{"className":1452},[],[1454],{"type":48,"value":1081},{"type":42,"tag":98,"props":1456,"children":1457},{},[1458],{"type":42,"tag":57,"props":1459,"children":1461},{"className":1460},[],[1462],{"type":48,"value":1123},{"type":42,"tag":98,"props":1464,"children":1465},{},[1466],{"type":42,"tag":57,"props":1467,"children":1469},{"className":1468},[],[1470],{"type":48,"value":1186},{"type":42,"tag":98,"props":1472,"children":1473},{},[1474],{"type":42,"tag":57,"props":1475,"children":1477},{"className":1476},[],[1478],{"type":48,"value":1235},{"type":42,"tag":98,"props":1480,"children":1481},{},[1482],{"type":42,"tag":57,"props":1483,"children":1485},{"className":1484},[],[1486],{"type":48,"value":1291},{"type":42,"tag":87,"props":1488,"children":1490},{"id":1489},"working-rules",[1491],{"type":48,"value":1492},"Working rules",{"type":42,"tag":94,"props":1494,"children":1495},{},[1496,1501,1513],{"type":42,"tag":98,"props":1497,"children":1498},{},[1499],{"type":48,"value":1500},"Prefer the current entry pages first, then read narrower docs in the same section.",{"type":42,"tag":98,"props":1502,"children":1503},{},[1504,1506,1511],{"type":48,"value":1505},"Read the sibling ",{"type":42,"tag":57,"props":1507,"children":1509},{"className":1508},[],[1510],{"type":48,"value":62},{"type":48,"value":1512}," files directly instead of copying prose into this file.",{"type":42,"tag":98,"props":1514,"children":1515},{},[1516,1518,1524],{"type":48,"value":1517},"Use stable ",{"type":42,"tag":57,"props":1519,"children":1521},{"className":1520},[],[1522],{"type":48,"value":1523},"\u002Fdocs\u002F...",{"type":48,"value":1525}," URLs when cross-referencing docs.",{"items":1527,"total":1584},[1528,1534,1551,1568],{"slug":4,"name":4,"fn":5,"description":6,"org":1529,"tags":1530,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1531,1532,1533],{"name":18,"slug":19,"type":16},{"name":14,"slug":15,"type":16},{"name":21,"slug":22,"type":16},{"slug":1535,"name":1535,"fn":1536,"description":1537,"org":1538,"tags":1539,"stars":1548,"repoUrl":1549,"updatedAt":1550},"terminal-control","control and test terminal applications","Drive and verify terminal applications with the termctrl CLI in a real PTY - read visible screens, run named live sessions, send typed keyboard input, wait for text, save evidence, record timelines, and export edited videos. Use when an agent must operate or test a TUI, REPL, interactive CLI, shell process, or OpenTUI application.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1540,1543,1546],{"name":1541,"slug":1542,"type":16},"Automation","automation",{"name":1544,"slug":1545,"type":16},"CLI","cli",{"name":1547,"slug":694,"type":16},"Testing",293,"https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fterminal-control","2026-07-23T05:44:15.921174",{"slug":1552,"name":1552,"fn":1553,"description":1554,"org":1555,"tags":1556,"stars":1565,"repoUrl":1566,"updatedAt":1567},"browser-control","automate browser interactions with Playwright","Drive the user's existing Chromium-family browser with deterministic Playwright. Use when asked to inspect, automate, test, or interact with a visible browser tab; continue an authenticated browser workflow; handle 2FA, passkeys, CAPTCHAs, or payment confirmation; record browser behavior; or capture an authenticated network flow.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1557,1558,1561,1564],{"name":1541,"slug":1542,"type":16},{"name":1559,"slug":1560,"type":16},"Browser Automation","browser-automation",{"name":1562,"slug":1563,"type":16},"Playwright","playwright",{"name":1547,"slug":694,"type":16},205,"https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fbrowser-control","2026-07-23T05:40:34.252936",{"slug":1569,"name":1569,"fn":1570,"description":1571,"org":1572,"tags":1573,"stars":1581,"repoUrl":1582,"updatedAt":1583},"opencode-drive","interact with OpenCode instances","Use when an agent needs to drive OpenCode with an Effect program or interact with an isolated instance",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1574,1575,1578],{"name":1541,"slug":1542,"type":16},{"name":1576,"slug":1577,"type":16},"Code Execution","code-execution",{"name":1579,"slug":1580,"type":16},"Engineering","engineering",15,"https:\u002F\u002Fgithub.com\u002Fanomalyco\u002Fopencode-drive","2026-07-20T05:57:40.691365",4,{"items":1586,"total":1593},[1587],{"slug":4,"name":4,"fn":5,"description":6,"org":1588,"tags":1589,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1590,1591,1592],{"name":18,"slug":19,"type":16},{"name":14,"slug":15,"type":16},{"name":21,"slug":22,"type":16},1]