open-press
Health Uyari
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Gecti
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
AI-first fixed-layout document workspaces. Your AI agent writes proposals, whitepapers, theses, books — A4, PDF, web reader.
open-press
固定版面應用層,讓創作型 Skill 不用自己實作 inline edit / dev server / comment marker / 渲染 / 匯出。Skill 負責創作決策(要做什麼),OpenPress 負責固定版面工作台(怎麼呈現)。Proposal、白皮書、講義、書、社群貼文、簡報 — 固定尺寸版面,PDF 輸出,網頁 reader。
Status: v1.0. Published on npm as
@open-press/cliand@open-press/core. Landing site at open-press.dev.
What it's for
Use open-press when the content keeps changing but the output format must stay stable.
Good fits: proposals, business plans, whitepapers, research reports, product specs, books, handbooks, course notes, study guides, technical reports, editorial long-form, branded reports, and fixed-format outputs supplied by external creative skills.
Less useful for: one-off chat answers, free-form image editing, and documents that need live responsive reflow instead of fixed page scaling.
Prerequisite
Install Node.js LTS first if node -v, npm -v, or npx -v is not available. OpenPress requires Node.js 20 or newer.
Start in 30 seconds
npx @open-press/cli init my-doc
cd my-doc
npm run dev
That's it: npm install and OpenPress skill setup happen automatically during init. Open the local URL printed by Vite (typically http://127.0.0.1:5173/workspace) to see the workbench once a skill has added a press/ workspace.
The CLI does not fetch starters. Use a skill when you want an opinionated starting point:
npx -y skills@latest add quan0715/openpress-social-card-skill
For social cards, use quan0715/openpress-social-card-skill; it targets 1080×1350 (4:5 portrait), not the removed bundled 1080×1080 square starter.
The skill owns intake, examples, starter files, and design rules. OpenPress owns the runtime, workbench, rendering, validation, and export. The starter-bearing skills in this repo are just skills; agents can read and use them like any external skill.
To hand off to your AI tool:
Claude Code (full skill support)
claude
Then:
我想寫一份 [提案 / 白皮書 / 講義 / 書],幫我起手。
Claude Code auto-loads skills/openpress-init/SKILL.md and walks you through intake.
Codex CLI (full skill support)
codex
Same opening prompt. Codex reads AGENTS.md at the repo root for the framework contract.
Copilot Chat / other LLM tools (manual)
Open the folder in VS Code, then paste the system prompt below into Copilot Chat before your first message. Copilot does not auto-discover SKILL files; the prompt gives it the routing rules inline.
After pasting, send the same opening message: 「我想寫一份 [...],幫我起手。」
Copilot system prompt
You are helping me work in an open-press workspace — an AI-first fixed-layout document framework. Full routing rules live in `.claude/skills/openpress/SKILL.md` (or `.agents/skills/openpress/SKILL.md`); read it on demand.
Starting from an EMPTY directory:
- First run `node -v`, `npm -v`, and `npx -v`. If missing, stop and tell me to install Node.js LTS, reopen the terminal, then retry.
- Ask for document type, audience, primary language, scope, and metadata (title / subtitle / organization / author). Do not run init before metadata is gathered.
- Then run `npx @open-press/cli init .` with metadata flags. If the target isn't empty, ask me to clean it first (a lone `.git/` is fine).
- If the user wants an opinionated format, install the relevant skill with `npx -y skills@latest add <owner/repo>`, read its `SKILL.md`, and copy or adapt that skill's starter/example files into the OpenPress workspace.
- After adding a workspace source tree: run `npm run build` to verify it renders cleanly.
Working in an EXISTING open-press workspace (one that already has `press/` from a previous init):
- Edit only files under `press/`, `.claude/skills/`, `.agents/skills/`, and root config files (`package.json` is where the `"openpress"` field lives).
- Never hand-edit `public/openpress/`, `dist-react/`, `.deploy/`, or `.openpress/` — those are generated.
- Framework code under `node_modules/@open-press/` is treated as read-only.
Writing content:
- Edit the MDX files registered by the workspace `<Workspace>` / `<Press sources>` tree.
- Traditional Chinese content: apply `.claude/skills/chinese-ai-writing-polish/SKILL.md`.
- Learner-facing content (講義 / 教材 / 課程): apply `.claude/skills/teaching-notes-writing/SKILL.md`.
- Use `<TableCaption>...</TableCaption>` before captioned tables; do not hand-write figure or table numbers.
Visual / structural:
- Theme tokens, components, page rhythm → edit `press/theme/` or `press/<slug>/components/`.
- Page chrome such as headers, footers, page numbers, and TOC frame layout belongs in the workspace React components (`Frame` / `Toc` / `Sections` page templates), not in the reader runtime.
- H1/H2/H3/H4 hierarchy / TOC depth → see the "Hierarchy" section in `.agents/skills/openpress-writing/SKILL.md`.
Verification before "done":
- `npm run build` (validates + renders to `dist-react/`)
- `npm run openpress:pdf` (PDF output)
Deploy: never publish without my explicit confirmation naming the target Cloudflare Pages project. Always `npm run openpress:deploy:dry-run` first.
Now ask me what document I want to write.
What the AI will do
- Check environment and ask intake questions: Node/npm availability, doc type, audience, language, scope, title / subtitle / organization / author.
- Install or select a skill when the job needs a specific format, such as social cards, teaching notes, or a proposal workflow.
- Run init with metadata flags:
npx @open-press/cli init . --title "...". - Let the skill add the source tree: the skill reads its own starter/examples and writes the OpenPress workspace files.
- Verify:
npm run build(validates + renders). - Hand off: tells you which source files and skills own the next edits.
From here, keep chatting. You write content; the agent handles tooling.
What you get
- Fixed-layout pages — A4, social square, slide 16:9, or your own preset. No surprise reflow between draft, reader, and PDF.
- Press Tree rendering —
press/index.tsxcomposes<Workspace>+<Press>,<Frame>, manuscript helpers, and registered MDX sources. Operational settings live inpackage.jsonunder"openpress". - Multi-Press workspaces — one project, many output formats (paper + social + slides) under one
<Workspace>, each at its own slug. - Live workbench at
npm run dev(http://127.0.0.1:5173/workspace), with a Figma-style gallery for multi-Press projects and per-Press previews at/<press-slug>/preview. - PDF export at
npm run openpress:pdfand per-page PNG export from the workbench toolbar. - Public deploy via Cloudflare Pages — opt-in, never auto-deployed; gated on confirmation naming the target project.
@openpress-commentmarkers — leave feedback inline in the reader; theopenpress-apply-commentsworkflow skill applies them as source edits.- Multi-tool agent skills installed under
.claude/skills/and.agents/skills/— works with Claude Code, Codex CLI, Cursor, Gemini CLI, Copilot, and 50+ other AI agents.
→ See the landing site for the agent-first walkthrough.
Framework Development
Inside this repository, press/ is the tracked dogfood workspace. It hosts the OpenPress User Story Book at /userstory plus two minimal social/slide Press for verifying multi-Press routing — separate from the public landing site:
pnpm run dev:workspace # dogfood press / workbench (multi-Press gallery)
pnpm run dev:web # open-press.dev landing site
The dogfood uses the same CLI path as downstream workspaces:
pnpm run build # render every Press into public/openpress/<slug>/
pnpm run openpress:pdf
pnpm run openpress:deploy:dry-run
Need more
| Want to | See |
|---|---|
| Run commands directly | docs/cli.md |
| Maintain the Press Tree model | docs/press-tree.md |
| Use the workbench UI (comments, mentions, project assets) | docs/workbench.md |
| Understand the skills | docs/skills.md or browse skills/<skill>/SKILL.md |
| Cut a release / configure CD | docs/release-and-deploy.md |
| Contribute to open-press | CONTRIBUTING.md and AGENTS.md |
| See what changed in each release | CHANGELOG.md |
| Report bugs | GitHub Issues |
License
MIT — see LICENSE.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi