rotz-dotfiles
Load for any request that involves the 'charmschool' rotz-based dotfiles project, across any task.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Load for any request that involves the 'charmschool' rotz-based dotfiles project, across any task.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | rotz-dotfiles |
| description | Load for any request that involves the 'charmschool' rotz-based dotfiles project, across any task. |
Context for working with rotz, a Rust-based dotfiles management tool, and rotz-based dotfiles projects.
Project location: ~/.charmschool (not default ~/.dotfiles)
Fish shell focused: config.yaml sets shell_command to fish -c, so install commands use Fish syntax
Rotz structure:
dot.yaml = installable "dot"dot.yaml keys: installs (commands), links (symlinks), depends (dependencies)defaults.yaml provides inherited defaults (dots inherit by setting keys to null){{file_name name}}, etc.Repository structure:
agents/ - coding agent/CLI configsapps/ - Homebrew casks (GUI apps)tools/ - Homebrew formulae (CLI/TUI)shell/ - Fish, kitty, starshipeditor/ - Neovim (LazyVim)lang/ - language tooling (transitioning to mise)git/ - git tooling/config# Simple (inherit from defaults.yaml)
installs: null # Gets "brew install <name>" from defaults
links:
config: ~/.config/tool/config
# Custom install
installs:
- brew install custom-tool
- custom-tool --setup
links:
config.toml: ~/.config/custom/config.toml
depends:
- ../other-tool
apps/, tools/, lang/, etc. (or propose new grouping)installs: null to inherit from defaults.yaml when possibledepends)links)Standards:
~/.config/ over ~/.*)Code quality:
Evaluation criteria for new tools:
Prefer dot wrapper (safer, more features):
dot -l [path...] or rotz link [path...]dot -i [path...] or rotz install [path...]dot [path...]rotz link --force (use cautiously)sh bootstrap.sh (fresh machines only)Path notes:
editor/nvim)dot strips trailing slashes if provideddot -a / --all, or very cautiously with rotz)dot supports -d/--dry-runIn rotz install commands (Fish syntax):
| Bash/zsh | Fish |
|---|---|
[[ ... ]] | test ... |
command -v cmd | type -q cmd |
VAR=value | set VAR value |
export VAR=value | set -gx VAR value |
Avoid set -U (universal scope): Fish moving away from this. Prefer global (set -gx) or local scope.
shshell/fish/functions/foo.fish defines foo)-d "description" and --helpmise: Check docs (rapidly evolving). Use for tasks, environments, versions. Optimize for fast startup.
uv: Primary Python package manager. Set up pyproject.toml, integrate with mise.
fish: Idiomatic functions/abbrs. Prefer global scope over universal. Optimize config.fish startup.
fzf: Advanced options, keybindings. Integrate with ripgrep, fd. Fish-specific functions, preview optimization.
ripgrep: Configure .ripgreprc defaults, custom type definitions. Integrate with fzf.
Manage Obsidian vault frontmatter with rematter — validate schemas, sync to external destinations (Astro, etc.) with media options, rename fields, manage filenames. Load whenever performing bulk operations in Obsidian vaults (or other collections of markdown with frontmatter).
Use when asked to automate an action for OpenCode, for example run a formatter after edits, or running a script right before git commits, those are hooks and you should use this skill to implement them.
Guide the learner through a structured goal-setting exercise grounded in research on Mental Contrasting with Implementation Intentions (MCII). The exercise helps developers set concrete learning goals, visualize meaningful outcomes, anticipate realistic obstacles, and build if-then plans to overcome them.
Facilitates deliberate skill development during AI-assisted coding. Offers interactive learning exercises after architectural work (new files, schema changes, refactors). Use when completing features, making design decisions, or when user asks to understand code better. Supports the user's stated goal of understanding design choices as learning opportunities.
Generates a repo-specific orientation.md resource for the learning-opportunities skill. Only invoke via slash command (/orient:orient). Do not trigger automatically.
Use when asked to add or modify hooks for Claude Code specifically. Or, if the user is asking to automate an action, for example run a formatter after edits, or running a script right before git commits, those are hooks and you should use this skill to implement them.