一键导入
development
R-DOS development process. Use when planning features, creating documentation, tracking work with beads, or understanding the documentation system.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
R-DOS development process. Use when planning features, creating documentation, tracking work with beads, or understanding the documentation system.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
UI components and rendering for R-DOS. Use when rendering modals, dialogs, lists, or any UI. CRITICAL - explains ModalFrame vs FullScreenView to prevent panics.
Release a new version of QDOS. Use when the user wants to ship, release, publish, or tag a new version. Handles version bumping, quality checks, tagging, pushing, and homebrew tap updates.
Plugin development for R-DOS. Use when creating new plugins, implementing Plugin trait, handling keys, or structuring plugin code. Reference spec/PLUGIN.md for complete specification.
Help text, error messages, and strings for R-DOS. Use when writing user-facing text, help content, error messages, or modal labels. Reference spec/help.txt and spec/strings/ for authentic Q-DOS II phrasing.
Rust best practices and overall approach for R-DOS development. Use when writing Rust code, implementing features, handling errors, or structuring code in the R-DOS codebase.
| name | development |
| description | R-DOS development process. Use when planning features, creating documentation, tracking work with beads, or understanding the documentation system. |
| allowed-tools | Read, Edit, Write, Bash, Grep, Glob, Task, EnterPlanMode, ExitPlanMode, AskUserQuestion, TodoWrite |
Use this skill when planning features, creating documentation, tracking work with beads, or understanding how the 5-style documentation system works.
Spec: spec/DEVELOPMENT.md - Full process specification
Issues: .beads/ - Git-tracked issue database
Plans: plans/ - Preserved plan history (git-tracked)
R-DOS uses 5 distinct doc types, each with a specific purpose:
| Style | Purpose | Location | Update Trigger |
|---|---|---|---|
| 1. Plan Mode | Deep exploration before coding | plans/ | Per feature |
| 2. Beads Issues | Track work across sessions | .beads/ | Throughout feature |
| 3. Evergreen Specs | System truth ("how it works") | spec/ | Architecture changes |
| 4. Skills | Agent guides ("how to implement") | .claude/skills/ | Pattern changes |
| 5. User Docs | Human communication | README, CLAUDE.md | Major features |
For any non-trivial feature:
1. Use EnterPlanMode tool
2. Launch Explore agents to understand existing patterns
3. Read relevant specs (spec/SPEC.md, spec/PLUGIN.md, etc.)
4. Ask clarifying questions via AskUserQuestion
5. Design implementation approach
6. Write plan to plan file
7. Exit plan mode with ExitPlanMode for approval
8. Copy approved plan to plans/ directory (see naming below)
Plan file naming: plans/YYYY-MM-DD-feature-name.md
Example: plans/2026-01-15-external-plugins.md
Plans are preserved even if abandoned - they document design decisions and exploration history.
After plan approval:
# Create feature epic
bd create --title="Feature X" --type=feature --priority=2
# Break into tasks
bd create --title="Implement X logic" --type=task --priority=2
bd create --title="Add X tests" --type=task --priority=2
# Set dependencies
bd dep add <task-id> <feature-id> # Task depends on feature
# Claim work
bd update <id> --status=in_progress
During coding:
1. Read skills for "how to" guidance
2. Reference specs for architecture
3. Update beads (bd update <id> --status=in_progress)
4. Write code already formatted and linted (cargo fmt, cargo clippy)
5. Follow patterns from specs + skills
6. Run tests frequently (cargo test)
- Specs: Declarative ("plugins work like this")
- Skills: Prescriptive ("implement plugins like this")
# Verify quality gates
cargo fmt -- --check && cargo clippy -- -D warnings && cargo test
# Commit code
git add .
git commit -m "Implement Feature X"
# Sync beads
bd sync
# DO NOT close issues (user does after testing/pushing)
# DO NOT push to remote (user does)
| Situation | Action |
|---|---|
| Starting new feature | Enter plan mode |
| Feature spans sessions | Create beads issue |
| New architectural pattern | Update spec in spec/ |
| New implementation pattern | Update skill in .claude/skills/ |
| Public-facing change | Update README.md |
| Agent guidance needed | Update CLAUDE.md |
Plans are git-tracked in plans/ to preserve institutional memory:
Plans complement beads issues: beads track what work was done, plans track how decisions were made.
When to save a plan:
Specs say WHAT (evergreen truth):
# Plugin Architecture
All plugins implement the Plugin trait.
Plugins MUST use FullScreenView for full-screen modals.
Skills say HOW (implementation guide):
## Creating a Plugin Modal
```rust
let view = FullScreenView::new(area, " Title ", colors);
view.render_frame(frame);
view.render_help(frame, vec![("Esc", "close")]);
```
bd ready # Show issues ready to work (no blockers)
bd list --status=open # All open issues
bd blocked # Show blocked issues
bd show <id> # View issue details
bd update <id> --status=in_progress # Claim work
bd close <id> # Mark complete (ONLY after user tests)
bd sync # Sync with git remote
bd dep add <issue> <depends-on> # Add dependency
R-DOS requires ALL THREE to pass before commits:
cargo fmt -- --check # Code formatting
cargo clippy -- -D warnings # Linting
cargo test # Tests
Run all three with:
cargo fmt -- --check && cargo clippy -- -D warnings && cargo test
DON'T:
DO:
plans/ directory after approval (or abandonment)cargo test frequently during developmentCRITICAL: Follow this order:
Epics should only be closed after:
| Spec | Purpose |
|---|---|
spec/SPEC.md | Overall feature specification |
spec/PLUGIN.md | Plugin development guide (MUST read for plugins) |
spec/GAMES.md | Games architecture and patterns |
spec/OFFICE.md | Office features specification |
spec/ui.md | ASCII layout reference (80x25 screen) |
spec/strings/ | Authentic Q-DOS II messaging patterns |