원클릭으로
rust
This skill should be used every time you work on Rust projects or Rust code changes in this repository.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
This skill should be used every time you work on Rust projects or Rust code changes in this repository.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Comprehensive guide for the ratkit Rust TUI component library built on ratatui 0.29, including feature flags, APIs, and implementation patterns. Use when building, debugging, or extending ratkit applications and examples.
Use this skill for all context planning, creation, updates, review, search, and sync work in this repository.
This skill should be used every time you generate, refresh, or validate codebase-derived SKILL.md documentation for this repository.
Use this skill when working on Nexus context workflows, CDD specifications, or deriving reusable skills from repository code.
This skill should be used every time you create, update, or review end-to-end tests in this repository.
This skill should be used every time you work on justfile projects or just command changes in this repository.
| name | rust |
| description | This skill should be used every time you work on Rust projects or Rust code changes in this repository. |
| compatibility | opencode |
This file defines the preferred Rust project organization for this repo.
app/.core/ and optional capabilities into features/.core/ and each feature under features/ must be its own folder with clear boundaries.state.rs, render.rs, ui.rs, helpers.rs).constructors/, methods/, traits/, or enums/.src/
├── lib.rs
├── main.rs
├── app/ # orchestration, wiring, lifecycle
├── core/ # always-on domain + engine
├── features/ # optional capabilities
├── adapters/ # external boundaries (db, http, fs, cli)
├── services/ # infra helpers (watchers, git, timers)
├── config/ # config structs + loaders
└── utils/ # tiny pure helpers only
src/
├── main.rs
├── app/ # orchestration, event loop, wiring
├── widgets/ # widget modules (primary organization)
├── screens/ # view composition
├── adapters/ # external boundaries (fs, git, clipboard)
├── services/ # infra helpers (file watching, timers)
├── config/ # config structs + loaders
└── utils/ # tiny pure helpers only
app/: glue layer. Composition, wiring, lifecycle, and startup/teardown.
router.rs, lifecycle.rsevent_loop.rs, layout_wiring.rscore/: required engine logic that defines the domain (non-TUI).
core/model/, core/engine/features/: optional or additive capabilities (non-TUI). Each feature is a folder.
features/auth/, features/settings/features/toc/, features/scrollbarwidgets/: primary TUI organization unit. Each widget is a bounded folder.
widgets/markdown_widget/, widgets/command_palette/screens/: TUI view composition and layout wiring.
screens/dashboard.rs, screens/settings.rsadapters/: outbound/inbound boundaries to external systems (storage is a kind of adapter).
adapters/http.rs, adapters/storage.rsadapters/fs.rs, adapters/git.rsservices/: internal infrastructure helpers (file watching, git status, timers).
services/timer.rs, services/clock.rsservices/file_watcher.rs, services/git_status.rsconfig/: config structs + loaders.
config/app_config.rsconfig/tui_config.rsutils/: tiny pure helpers only. No IO, no shared state.
utils/format.rsutils/geometry.rsEach core subdomain is its own folder. Keep code flat inside unless it grows.
src/core/
├── mod.rs
├── model/
├── engine/
├── parser/
├── render/
├── source/
├── events/
└── types/
Each feature is a folder. Add state.rs, render.rs, ui.rs, or helpers.rs only when the feature needs them.
src/features/
├── mod.rs
├── toc/
│ ├── mod.rs
│ ├── state.rs
│ ├── render.rs
│ └── helpers.rs
├── selection/
│ ├── mod.rs
│ ├── state.rs
│ └── helpers.rs
└── theme/
├── mod.rs
├── palette.rs
├── style.rs
└── load.rs
src/
├── main.rs
├── app/
│ ├── mod.rs
│ ├── bootstrap.rs
│ └── wiring.rs
├── core/
│ ├── mod.rs
│ ├── model/
│ ├── parser/
│ └── engine/
├── features/
│ ├── mod.rs
│ ├── search/
│ │ ├── mod.rs
│ │ └── state.rs
│ └── export/
│ ├── mod.rs
│ └── helpers.rs
├── adapters/
│ ├── mod.rs
│ ├── cli.rs
│ └── fs.rs
├── services/
│ ├── mod.rs
│ └── file_watcher.rs
└── config/
├── mod.rs
└── settings.rs
src/
├── main.rs
├── app/
│ ├── mod.rs
│ ├── router.rs
│ └── wiring.rs
├── core/
│ ├── mod.rs
│ ├── model/
│ ├── engine/
│ └── events/
├── features/
│ ├── mod.rs
│ ├── auth/
│ │ ├── mod.rs
│ │ ├── state.rs
│ │ └── ui.rs
│ ├── dashboard/
│ │ ├── mod.rs
│ │ └── ui.rs
│ └── settings/
│ ├── mod.rs
│ └── ui.rs
├── adapters/
│ ├── mod.rs
│ └── http.rs
└── services/
├── mod.rs
└── storage.rs
src/
├── main.rs
├── app/
│ ├── mod.rs
│ ├── lifecycle.rs
│ └── wiring.rs
├── screens/
│ ├── mod.rs
│ ├── dashboard.rs
│ └── settings.rs
├── widgets/
│ ├── mod.rs
│ ├── markdown_widget/
│ │ ├── mod.rs
│ │ ├── widget/
│ │ ├── state/
│ │ ├── foundation/
│ │ └── extensions/
│ └── command_palette/
│ ├── mod.rs
│ ├── state.rs
│ └── render.rs
├── adapters/
│ ├── mod.rs
│ └── fs.rs
└── services/
├── mod.rs
└── file_watcher.rs