← ClaudeAtlas

openpress-initlisted

Use when the user wants to start a new open-press project, invokes /create-press, sets up a fresh OpenPress workspace, adds another Press document to an existing workspace, bootstraps a proposal/whitepaper/paper/teaching-note/spec/book/deck/social campaign, or runs first-time initialization before content is written.
quan0715/open-press · ★ 9 · AI & Automation · score 79
Install: claude install-skill quan0715/open-press
# /create-press SOP One skill, two branches. Run **detect** first. The branch decides whether the agent is bootstrapping a fresh workspace (Branch A) or adding another Press to one that already exists (Branch B). Run as a low-freedom setup workflow. Do not write document content during this skill — that belongs to writing / design skills downstream. ## 0. Environment Preflight ```bash node -v npm -v npx -v ``` - All commands work + Node ≥20 → continue. - Missing `node` / `npm` / `npx` → stop, instruct user to install Node.js LTS, reopen terminal, rerun preflight. - Node <20 → stop, instruct user to upgrade Node.js LTS, rerun preflight. ## 1. Detect the Branch ```bash test -f press/index.tsx && grep -q "<Workspace" press/index.tsx && echo BRANCH_B || echo BRANCH_A ``` - `BRANCH_A` (no workspace) → bootstrap a fresh one. Go to §A. - `BRANCH_B` (`<Workspace>` already in `press/index.tsx`) → add a new Press to it. Go to §B. If `press/index.tsx` exists but does not wrap children in `<Workspace>` (legacy v0.x shape), tell the user to run `npx open-press upgrade` first, then re-invoke `/create-press`. --- ## A — Bootstrap a fresh workspace ### A.1 Target Check - Use the user's target if provided. Use `.` only when the user explicitly wants the current directory. - The CLI rejects non-empty targets automatically. A lone `.git/`, `.gitignore`, `.gitkeep`, or `.DS_Store` is fine. If the target has real content, ask the user to clean it first — there is no `--force` flag.