Index of every page on this site: llms.txt
All skills
Run it yourself

Build, debug, test, or package Python Textual terminal interfaces: screens, widgets, TCSS, reactive state, workers, keyboard workflows, and optional browser delivery. Use when Textual is selected or an existing Textual app is involved; do not turn a noninteractive CLI or simple Rich output into a TUI unnecessarily.

Use this Skill: https://skilld.dev/gh/tristanmanchester/agent-skills/textual-tui

Nothing lands on disk. Nothing to clean up.

Fork this Skill

Edit a local copy. It keeps the author and licence.

referencesscreens-modes-command-palette.md

≈507 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Screens, modes, and command palette

These three features solve different navigation problems.

Screens

Use Screen when the user changes working context.

Examples:

  • dashboard -> job detail
  • repository browser -> file editor
  • home -> settings
  • list -> edit form

Use screens when:

  • back-navigation matters
  • focus should restore naturally
  • the layout meaningfully changes
  • a section has its own state and event handling

Modal screens

Use ModalScreen for short interruptions:

  • confirmation prompts
  • delete dialogs
  • small pickers
  • quick forms

Do not use a modal to replace a full screen just because it is faster to code.

Modes

Modes are named screen stacks for durable top-level areas.

Use modes when:

  • the app has persistent product areas
  • each area may drill down internally
  • users need to switch between major sections without losing where they were

Good examples:

  • dashboard / jobs / settings / logs
  • inbox / projects / account

Bad example:

  • a simple two-step wizard

Command palette

Add command palette support when:

  • bindings are numerous
  • actions need discoverability
  • the app has screens or modes
  • power users benefit from searchable commands

Use app-level providers for global actions and screen-level providers for local actions.

Typical palette commands:

  • switch mode
  • open help
  • focus search
  • export/download
  • toggle theme
  • jump to important screens

Practical defaults

One-screen app

  • no modes
  • command palette optional
  • ContentSwitcher only for local step flows

Multi-screen workflow

  • screens yes
  • modes maybe
  • command palette usually worthwhile

Admin shell

  • modes yes
  • screens inside modes often yes
  • command palette strongly recommended

Common mistakes

  • using modes when plain screens would do
  • hiding all major actions behind key bindings with no palette support
  • creating ad-hoc screen stacks by manually swapping many widgets
  • keeping giant screen-specific methods inside the App instead of extracting a Screen

Source: SKILL.md on GitHub

skilld matched fixed text patterns in SKILL.md and file names. Patterns miss obfuscated code.

skilld run checks every file with the same patterns. It asks for approval before it loads a Skill with a behavior marked Needs approval.

1 warning1mo4 checks · Risk SAFE
  • Gen Agent Trust Hub1mo

    The skill provides developer tools for Textual TUI development, including scaffolding and auditing. It uses dynamic Python code loading to analyze local projects, which presents a localized execution risk for the agent's environment.

  • Socket1mo

    1 alert: gptAnomaly

  • Snyk1mo

    Risk: LOW · No issues

  • ZeroLeaks6mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 3323bc9. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 weeks ago.

Steadyupdated last month
metadata
{
  "version": "3.0.0",
  "reviewed": "2026-09-13"
}
Other metadata
compatibility
Textual currently supports Python >=3.9,<4. Use the project's locked Textual and developer-tool versions. Bundled scaffold checks parse source without importing the generated application; runtime tests need Textual and the app's dependencies.

README badge

README badge for tristanmanchester/agent-skills/textual-tui