← ClaudeAtlas

initlisted

Make the current folder a rhiza-managed repo — write the .rhiza/template.yml pointer, add a skeleton and license, open a PR. Supports Python, Rust and Go. Syncs nothing; run /rhiza:update after it merges.
Jebel-Quant/rhiza-claude · ★ 4 · Data & Documents · score 67
Install: claude install-skill Jebel-Quant/rhiza-claude
You are running `/init` in the **current working directory**. Goal: make this folder a **rhiza-managed** repo and deliver it as a **PR**. **`/init` writes exactly one file itself** — `.rhiza/template.yml`, the pointer saying which template repository this repo follows and at which ref. Everything else it `Read`s from the procedure that owns it, so each concern has one source of truth and `/init` stays a coordinator rather than a second implementation: | what | procedure | step | | --- | --- | --- | | `uv` on the machine | `plugin/prompts/install-uv.md` | 1 | | work branch off an untouched default | `plugin/prompts/pr-base.md` | 4 | | skeleton + the `pyproject.toml` shape the gates need | `plugin/prompts/skeleton.md` (applies `plugin/prompts/python-version.md`) | 6 | | SPDX metadata + the `LICENSE` file | `plugin/prompts/license.md` | 6 | Those are **internal procedures, not slash commands** — deliberately kept out of any directory Claude Code scans, so the user can't invoke them. `Read` each at the step that calls for it (`${CLAUDE_PLUGIN_ROOT}/prompts/<name>.md`; in a source checkout the variable is empty, so use the repo-relative path) and follow it as written. **Never re-implement one inline** — no hand-rolled `pyproject.toml` edits, no `LICENSE` writing, no `uv init` of your own. **No sync, no gates.** Bootstrapping is two PRs: **#1 (`/init`) makes the repo rhiza-managed; #2 (`/update`, after #1 merges) pulls the template content.** Keeping the sync out of `/init` sto