# Authoring Tsrx

> Write a new Octane component in .tsrx, convert JSX to .tsrx, or add scoped <style> blocks and themes. Use when creating a .tsrx file rather than editing one, because the path-scoped tsrx-authoring rule only fires once such a file is open.

- Skill: `octanejs/authoring-tsrx` (Agent Skill)
- Install (CLI): `npx skillmds@latest add octanejs/authoring-tsrx`
- Raw SKILL.md: https://api.skillmd.com/api/skills/octanejs/authoring-tsrx/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: octanejs (https://skillmd.com/u/octanejs)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/octanejs/authoring-tsrx

---

# Authoring a new `.tsrx` file

Read `.rulesync/rules/tsrx-authoring.md` now. It is the full reference and the
single home for this content: components and the `@{ … }` form, when a text hole
needs `{expr as string}`, the native delegated event model, the `@if`/`@for`/
`@switch`/`@try` directive blocks, refs as props, scoped styles and themes
(`<style>` scopes, `$class` class maps, `apply`), and the typing rules.

That file is a path-scoped rule, so it loads by itself once you open an existing
`.tsrx` file. It does not fire when you are writing the first one, which is what
this skill exists to cover.

Then read a nearby `.tsrx` file for house style before writing.

