옵션
집집 Skill 기타 opentui

터미널 사용자 인터페이스를 구축하기 위한 포괄적인 OpenTUI 스킬입니다. 핵심 명령형 API, React 리콘실러, Solid 리콘실러를 다룹니다. 컴포넌트, 레이아웃, 키보드 처리, 애니메이션, 테스트를 포함한 모든 TUI 개발 작업에 활용할 수 있습니다.

...모든 것을 확장하십시오
53
업데이트 된 시간 2026년 8월 4일

OpenTUI 플랫폼 기술

OpenTUI를 사용하여 터미널 사용자 인터페이스를 구축하기 위한 통합 기술입니다. 아래의 결정 트리를 활용하여 적합한 프레임워크와 컴포넌트를 찾은 다음, 자세한 참조 자료를 확인하십시오.

필수 규칙

모든 OpenTUI 코드에서 다음 규칙을 준수하십시오:

  1. 새로운 프로젝트에는 create-tui를 사용하십시오. 프레임워크 REFERENCE.md 퀵 스타트를 참조하십시오.
  2. create-tui 옵션은 인자보다 먼저 와야 합니다. bunx create-tui -t react my-app 는 작동하지만, bunx create-tui my-app -t react 작동하지 않습니다.
  3. process.exit()를 절대 직접 호출하지 마십시오. renderer.destroy() (참조 core/gotchas.md).
  4. React/Solid에서 텍스트 스타일을 지정하려면 중첩된 태그가 필요합니다. props 대신 수정자 요소를 사용하십시오(참조 components/text-display.md).

이 스킬 사용 방법

참조 파일 구조

프레임워크 참조 문서는 5개 파일 패턴을 따릅니다. 여러 영역에 걸쳐 적용되는 개념은 단일 파일 가이드로 제공됩니다.

각 프레임워크는 ./references// 다음 내용을 포함합니다:

의 횡단적 개념은 ./references// 에는 REFERENCE.md 을 진입점으로 합니다.

읽기 순서

  1. 선택한 프레임워크의 REFERENCE.md 선택한 프레임워크부터 시작하세요
  2. 그런 다음 작업과 관련된 추가 파일을 읽어보세요:
    • 컴포넌트 빌드 -> api.md + components/.md
    • 프로젝트 설정 -> configuration.md
    • 레이아웃/위치 지정 -> layout/REFERENCE.md
    • 키보드/입력 처리 -> keyboard/REFERENCE.md
    • 애니메이션 -> animation/REFERENCE.md
    • 문제 해결 -> gotchas.md + testing/REFERENCE.md

예시 경로

./references/react/REFERENCE.md           # Start here for React
./references/react/api.md              # React components and hooks
./references/solid/configuration.md    # Solid project setup
./references/components/inputs.md      # Input, Textarea, Select docs
./references/core/gotchas.md           # Core debugging tips

실행 시 참고 사항

OpenTUI Bun에서 실행되며 네이티브 빌드에는 Zig를 사용합니다. ./references/core/gotchas.md 실행 환경 요구 사항 및 빌드 지침을 참조하십시오.

빠른 결정 트리

"어떤 프레임워크를 사용해야 할까요?"

Which framework?
├─ I want full control, maximum performance, no framework overhead
│  └─ core/ (imperative API)
├─ I know React, want familiar component patterns
│  └─ react/ (React reconciler)
├─ I want fine-grained reactivity, optimal re-renders
│  └─ solid/ (Solid reconciler)
└─ I'm building a library/framework on top of OpenTUI
   └─ core/ (imperative API)

"콘텐츠를 표시해야 합니다"

Display content?
├─ Plain or styled text -> components/text-display.md
├─ Container with borders/background -> components/containers.md
├─ Scrollable content area -> components/containers.md (scrollbox)
├─ ASCII art banner/title -> components/text-display.md (ascii-font)
├─ Data table with borders/wrapping -> components/code-diff.md (TextTable)
├─ Code with syntax highlighting -> components/code-diff.md
├─ Diff viewer (unified/split) -> components/code-diff.md
├─ Line numbers with diagnostics -> components/code-diff.md
└─ Markdown content (streaming) -> components/code-diff.md (markdown)

"사용자 입력이 필요합니다"

User input?
├─ Single-line text field -> components/inputs.md (input)
├─ Multi-line text editor -> components/inputs.md (textarea)
├─ Select from a list (vertical) -> components/inputs.md (select)
├─ Tab-based selection (horizontal) -> components/inputs.md (tab-select)
└─ Custom keyboard shortcuts -> keyboard/REFERENCE.md

"레이아웃/위치 지정이 필요합니다"

Layout?
├─ Flexbox-style layouts (row, column, wrap) -> layout/REFERENCE.md
├─ Absolute positioning -> layout/patterns.md
├─ Responsive to terminal size -> layout/patterns.md
├─ Centering content -> layout/patterns.md
└─ Complex nested layouts -> layout/patterns.md

"애니메이션이 필요해요"

Animations?
├─ Timeline-based animations -> animation/REFERENCE.md
├─ Easing functions -> animation/REFERENCE.md
├─ Property transitions -> animation/REFERENCE.md
└─ Looping animations -> animation/REFERENCE.md

"입력을 처리해야 해요"

Input handling?
├─ Keyboard events (keypress, release) -> keyboard/REFERENCE.md
├─ Focus management -> keyboard/REFERENCE.md
├─ Paste events -> keyboard/REFERENCE.md
├─ Mouse events -> components/containers.md
├─ Text selection & copy-on-select -> keyboard/REFERENCE.md (selection)
└─ Clipboard (OSC 52) -> keyboard/REFERENCE.md (clipboard)

"TUI를 테스트해야 해요"

Testing?
├─ Snapshot testing -> testing/REFERENCE.md
├─ Interaction testing -> testing/REFERENCE.md
├─ Test renderer setup -> testing/REFERENCE.md
└─ Debugging tests -> testing/REFERENCE.md

"디버깅/문제 해결이 필요합니다"

Troubleshooting?
├─ Runtime errors, crashes -> /gotchas.md
├─ Layout issues -> layout/REFERENCE.md + layout/patterns.md
├─ Input/focus issues -> keyboard/REFERENCE.md
└─ Repro + regression tests -> testing/REFERENCE.md

문제 해결 색인

  • 터미널 정리, 충돌 -> core/gotchas.md
  • 텍스트 서식이 적용되지 않음 -> components/text-display.md
  • 입력 포커스/단축키 -> keyboard/REFERENCE.md
  • 레이아웃 정렬 오류 -> layout/REFERENCE.md
  • 불안정한 스냅샷 -> testing/REFERENCE.md

컴포넌트 명명 규칙의 차이 및 텍스트 수정자에 대해서는 components/REFERENCE.md.

제품 색인

프레임워크

교차 개념

컴포넌트 카테고리

자료

저장소 : https://github.com/anomalyco/opentui 핵심 문서 : https://github.com/anomalyco/ opentui /tree/main/packages/core/docs 예제 : https://github.com/anomalyco/ opentui /tree/main/packages/core/src/examples 추천 목록 : https://github.com/msmps/awesome- opentui

이 저장소의 다른 항목 같은 저장소

이 저장소의 다른 항목

Cline Code 데스크톱 앱(apps/examples/desktop-app) 릴리스를 준비, 태그 지정 및 게시할 때 사용합니다. 가이드, 변경 내역 작성, package.json 및 tauri.conf.json의 버전 번호 변경, desktop-vX.Y.Z 태그, 그리고 빌드, 서명, 공증 및 자동 업데이트 피드 업데이트를 수행하는 desktop-publish GitHub 워크플로를 다룹니다.publish-desktopcline/cline2026-07-2165.독립형 @cline/ui npm 릴리스를 준비, 검증 및 게시합니다. UI 패키지 버전을 올릴 때, ui-publish.yml을 통해 latest 또는 next를 게시할 때, UI 릴리스 준비 상태를 확인할 때, 또는 일회성 npm trusted-publishing 부트스트랩을 완료할 때 사용합니다.1kpublish-uicline/cline2026-07-1865.1kpublish-clicline/cline2026-06-0465apps/cli npm 릴리스를 준비, 태깅 및 게시할 때 사용합니다. 변경 로그 작성, apps/cli/package.json 버전 올리기, cli-vX.Y.Z 태그, 로컬 npm 게시 및 publish-cli GitHub 워크플로를 안내합니다..AI 에이전트 구축을 위한 포괄적인 Cline SDK 기술 가이드입니다. 에이전트 런타임, ClineCore 세션, 사용자 정의 도구, 플러그인, 이벤트, LLM 제공자, 스케줄링, 다중 에이전트 팀 및 프로덕션 배포를 다룹니다. @cline/sdk 또는 그 하위 패키지와 관련된 모든 작업에 사용하십시오.1kcline-sdkcline/cline2026-05-1465.1kcreate-pull-requestcline/cline2026-02-2465프로젝트 규약에 따라 GitHub 풀 리퀘스트를 생성합니다. 사용자가 PR 생성을 요청하거나, 검토를 위해 변경 사항을 제출하거나, 풀 리퀘스트를 열 때 사용합니다. 커밋 분석, 브랜치 관리, PR 템플릿 사용, gh CLI 도구를 활용한 PR 생성을 다룹니다..1k
GitHub에서 보기

OpenTUI Platform Skill

Consolidated skill for building terminal user interfaces with OpenTUI. Use decision trees below to find the right framework and components, then load detailed references.

Critical Rules

Follow these rules in all OpenTUI code:

  1. Use create-tui for new projects. See framework REFERENCE.md quick starts.
  2. create-tui options must come before arguments. bunx create-tui -t react my-app works, bunx create-tui my-app -t react does NOT.
  3. Never call process.exit() directly. Use renderer.destroy() (see core/gotchas.md).
  4. Text styling requires nested tags in React/Solid. Use modifier elements, not props (see components/text-display.md).

How to Use This Skill

Reference File Structure

Framework references follow a 5-file pattern. Cross-cutting concepts are single-file guides.

Each framework in ./references/<framework>/ contains:

Cross-cutting concepts in ./references/<concept>/ have REFERENCE.md as the entry point.

Reading Order

  1. Start with REFERENCE.md for your chosen framework
  2. Then read additional files relevant to your task:
    • Building components -> api.md + components/<category>.md
    • Setting up project -> configuration.md
    • Layout/positioning -> layout/REFERENCE.md
    • Keyboard/input handling -> keyboard/REFERENCE.md
    • Animations -> animation/REFERENCE.md
    • Troubleshooting -> gotchas.md + testing/REFERENCE.md

Example Paths

./references/react/REFERENCE.md           # Start here for React
./references/react/api.md              # React components and hooks
./references/solid/configuration.md    # Solid project setup
./references/components/inputs.md      # Input, Textarea, Select docs
./references/core/gotchas.md           # Core debugging tips

Runtime Notes

OpenTUI runs on Bun and uses Zig for native builds. Read ./references/core/gotchas.md for runtime requirements and build guidance.

Quick Decision Trees

"Which framework should I use?"

Which framework?
├─ I want full control, maximum performance, no framework overhead
│  └─ core/ (imperative API)
├─ I know React, want familiar component patterns
│  └─ react/ (React reconciler)
├─ I want fine-grained reactivity, optimal re-renders
│  └─ solid/ (Solid reconciler)
└─ I'm building a library/framework on top of OpenTUI
   └─ core/ (imperative API)

"I need to display content"

Display content?
├─ Plain or styled text -> components/text-display.md
├─ Container with borders/background -> components/containers.md
├─ Scrollable content area -> components/containers.md (scrollbox)
├─ ASCII art banner/title -> components/text-display.md (ascii-font)
├─ Data table with borders/wrapping -> components/code-diff.md (TextTable)
├─ Code with syntax highlighting -> components/code-diff.md
├─ Diff viewer (unified/split) -> components/code-diff.md
├─ Line numbers with diagnostics -> components/code-diff.md
└─ Markdown content (streaming) -> components/code-diff.md (markdown)

"I need user input"

User input?
├─ Single-line text field -> components/inputs.md (input)
├─ Multi-line text editor -> components/inputs.md (textarea)
├─ Select from a list (vertical) -> components/inputs.md (select)
├─ Tab-based selection (horizontal) -> components/inputs.md (tab-select)
└─ Custom keyboard shortcuts -> keyboard/REFERENCE.md

"I need layout/positioning"

Layout?
├─ Flexbox-style layouts (row, column, wrap) -> layout/REFERENCE.md
├─ Absolute positioning -> layout/patterns.md
├─ Responsive to terminal size -> layout/patterns.md
├─ Centering content -> layout/patterns.md
└─ Complex nested layouts -> layout/patterns.md

"I need animations"

Animations?
├─ Timeline-based animations -> animation/REFERENCE.md
├─ Easing functions -> animation/REFERENCE.md
├─ Property transitions -> animation/REFERENCE.md
└─ Looping animations -> animation/REFERENCE.md

"I need to handle input"

Input handling?
├─ Keyboard events (keypress, release) -> keyboard/REFERENCE.md
├─ Focus management -> keyboard/REFERENCE.md
├─ Paste events -> keyboard/REFERENCE.md
├─ Mouse events -> components/containers.md
├─ Text selection & copy-on-select -> keyboard/REFERENCE.md (selection)
└─ Clipboard (OSC 52) -> keyboard/REFERENCE.md (clipboard)

"I need to test my TUI"

Testing?
├─ Snapshot testing -> testing/REFERENCE.md
├─ Interaction testing -> testing/REFERENCE.md
├─ Test renderer setup -> testing/REFERENCE.md
└─ Debugging tests -> testing/REFERENCE.md

"I need to debug/troubleshoot"

Troubleshooting?
├─ Runtime errors, crashes -> <framework>/gotchas.md
├─ Layout issues -> layout/REFERENCE.md + layout/patterns.md
├─ Input/focus issues -> keyboard/REFERENCE.md
└─ Repro + regression tests -> testing/REFERENCE.md

Troubleshooting Index

  • Terminal cleanup, crashes -> core/gotchas.md
  • Text styling not applying -> components/text-display.md
  • Input focus/shortcuts -> keyboard/REFERENCE.md
  • Layout misalignment -> layout/REFERENCE.md
  • Flaky snapshots -> testing/REFERENCE.md

For component naming differences and text modifiers, see components/REFERENCE.md.

Product Index

Frameworks

Cross-Cutting Concepts

Component Categories

Resources

Repository: https://github.com/anomalyco/opentui Core Docs: https://github.com/anomalyco/opentui/tree/main/packages/core/docs Examples: https://github.com/anomalyco/opentui/tree/main/packages/core/src/examples Awesome List: https://github.com/msmps/awesome-opentui

More from this repositorysame repository

More from this repository

publish-desktopcline/cline

Use when preparing, tagging, and publishing a Cline Code desktop app (apps/examples/desktop-app) release. Guides changelog drafting, version bumps in package.json + tauri.conf.json, desktop-vX.Y.Z tags, and the desktop-publish GitHub workflow that builds, signs, notarizes, and updates the auto-update feed.

2026-07-2165.1k
publish-uicline/cline

Prepare, validate, and publish standalone @cline/ui npm releases. Use when bumping the UI package version, publishing latest or next through ui-publish.yml, checking UI release readiness, or completing the one-time npm trusted-publishing bootstrap.

2026-07-1865.1k
publish-clicline/cline

Use when preparing, tagging, and publishing an apps/cli npm release. Guides changelog drafting, apps/cli/package.json version bumps, cli-vX.Y.Z tags, local npm publishing, and the publish-cli GitHub workflow.

2026-06-0465.1k
cline-sdkcline/cline

Comprehensive Cline SDK skill for building AI agents. Covers the Agent runtime, ClineCore sessions, custom tools, plugins, events, LLM providers, scheduling, multi-agent teams, and production deployment. Use for any task involving @cline/sdk or its sub-packages.

2026-05-1465.1k
create-pull-requestcline/cline

Create a GitHub pull request following project conventions. Use when the user asks to create a PR, submit changes for review, or open a pull request. Handles commit analysis, branch management, PR template usage, and PR creation using the gh CLI tool.

2026-02-2465.1k

opentui 설치

스킬 파일을 다운로드하여 .claude/skills/ 디렉터리에 압축을 풀어주세요.

ZIP 다운로드

저장소를 클론하고 스킬 파일을 프로젝트에 복사하세요.

git clone https://github.com/cline/cline/tree/main/.agents/skills/opentui # Copy the skill folder to .claude/skills/ or .codex/skills/

복사 복사
빠른 설정: skill 폴더를 .claude/skills/로 복사하면 Claude가 해당 스킬을 자동으로 감지하여 사용합니다.
저장소 cline/cline

관련 스킬

multica-creating-agents
업데이트 된 시간 2026년 8월 12일
tilemaps
업데이트 된 시간 2026년 8월 4일
v4-new-features
업데이트 된 시간 2026년 8월 4일
pixijs-application
업데이트 된 시간 2026년 8월 4일
OR