list_project_types
List project types
The project types the spec generator knows (saas, ecommerce, business, marketplace, blog, webapp, landing), with what each covers.
無需輸入參數。

io.github.THE-KIPDEV由 GitHub 帳號 THE-KIPDEV 發布v0.1.0更新於 Oct 25, 2026
Audit and write CLAUDE.md / AGENTS.md / Cursor rules; generate full build specs for new projects.
檢查並產生 AI 編碼代理讀取的指令檔(CLAUDE.md、AGENTS.md、Cursor 規則),並把問卷答案轉成完整的專案建置規格。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/io.github.THE-KIPDEV%2Fspecpack/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"specpack": {
"type": "http",
"url": "https://prompt-generator-website.com/mcp"
}
}
}Lint and generate the files your AI coding agent reads — CLAUDE.md, AGENTS.md, .cursorrules,
Cursor rules — and turn a project description into a full build spec. CLI, library and MCP server.
CLAUDE.md / AGENTS.md are loaded into the agent's context on every session. Every line that
restates package.json, pastes a file tree or tells the model to "write clean code" costs tokens and
competes with the two rules that actually matter. specpack audit finds those lines; specpack init
starts you at the trimmed end.
Node ≥ 18. No account needed. audit and init never touch the network.
specpack audit — how much of your memory file does nothing?Each line is classified keep, cut (removing it changes nothing: role-play preamble, generic
advice, restated manifests, duplicates, emphasis inflation, prose) or offload (true but
situational: file trees, schema dumps, endpoint lists, long code blocks, setup/deploy sections — move
them to their own file and reference them with @docs/…). Same rules as the browser tool at
prompt-generator-website.com/claude-md-audit.
Real output on a typical file:
Without arguments it audits every agent file in the current directory: CLAUDE.md, AGENTS.md,
.cursorrules, .windsurfrules, .github/copilot-instructions.md, CLAUDE.local.md,
.cursor/rules/*.mdc. - reads stdin.
specpack init — a lean AGENTS.md from what the repo already saysReads package.json (scripts, lockfile → package manager, framework), tsconfig.json, the Prisma
schema, pyproject.toml / requirements*.txt (uv, Poetry), composer.json, go.mod, Cargo.toml,
Gemfile, Makefile, Docker Compose, .nvmrc, .env.example, .claude/commands. Only what a file
states is written: nothing is guessed, no patch versions, no "You are an expert" preamble. Sections with
nothing detected are left out.
Real output on a Next.js + Prisma repository:
Then add the rules only you know under Project rules — that is the part that matters.
specpack spec — a full build spec for a new projectFor a project that does not exist yet, prompt-generator-website.com
turns a questionnaire (7 project types: SaaS, e-commerce, business site, marketplace, blog, web app,
landing page) into a complete specification — stack, database schema, authentication, type-specific
features, pages, design, SEO, security, legal, deployment, file structure — plus AGENTS.md,
CLAUDE.md, .cursor/rules/project.mdc, .cursorrules, .windsurfrules and
.github/copilot-instructions.md that keep the agent on-spec for the whole build.
The spec engine is deterministic: the same answers always give the same bytes. Free without an
account: 2 specs and 3 AI drafts. More: a 7-day Pass or Pro at
prompt-generator-website.com/pricing; then
specpack login pgw_… (or SPECPACK_API_KEY). specpack whoami shows what is left.
Seven tools for Claude Code, Cursor, Windsurf, VS Code and any MCP client:
Claude Code
Cursor (.cursor/mcp.json), Windsurf, Claude Desktop
Remote, nothing to install (streamable HTTP; audit_agent_file and draft_agent_file read local files, so they only exist in the local server):
https://prompt-generator-website.com/mcp — optional header Authorization: Bearer pgw_….
createMcpServer() is exported from specpack/mcp. API errors are SpecpackError with code
(quota_exceeded, unauthorized, invalid_request, …), status and upgradeUrl.
0 ok · 1 failure, or --max-bloat exceeded · 2 usage error or quota exceeded.SPECPACK_API_KEY, SPECPACK_API_URL (testing), NO_COLOR.~/.config/specpack/config.json ($XDG_CONFIG_HOME honoured), mode 600.audit and init read local files and send nothing. spec sends your answers or
description to prompt-generator-website.com.MIT © Kipdev
來源:README.md,提交 782b7f0
List project types
The project types the spec generator knows (saas, ecommerce, business, marketplace, blog, webapp, landing), with what each covers.
無需輸入參數。
Get the questionnaire
The questions for one project type: universal questions first, then type-specific ones. Each has an id, a type (text, textarea, select, radio, multiselect, boolean, number), options where relevant, and sometimes a condition (ask it only when another answer matches). Answer from what you know of the project, then pass the answers to generate_spec. Only project_name and project_description are required; skipped questions fall back to defaults.
type必填Generate the spec and agent files
Turns questionnaire answers into a complete build specification (stack, database schema, auth flows, pages, design system, SEO, security, legal, deployment, file structure) and the matching agent files. Deterministic: the same answers always give the same bytes. Values: select/radio = one option value, multiselect = array of option values, boolean = true/false, number = number. Returns the requested files; by default AGENTS.md (full spec + working agreement) and CLAUDE.md (imports AGENTS.md) — write them at the repository root. Uses one spec from the quota (2 free without an API key).
type必填filesanswers必填Draft answers with AI
Asks the server's AI (Claude) to fill the whole questionnaire from a plain-language project description; returns the project type, the answers and the assumptions it made. Takes 10-40 s and consumes one AI draft (3 free without an API key). Prefer answering get_questionnaire yourself when you already know the project; use this when you only have a one-line idea. Review the assumptions with the user before calling generate_spec.
typedescription必填Plan and usage
Current plan and quota usage (specs and AI drafts) for the API key, or for this address when no key is set.
無需輸入參數。
已滿足適用檢查項的 100%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
npx specpack audit # bloat score for the agent files in this repo (offline)npx specpack init # write a lean AGENTS.md from your manifests (offline)npx specpack spec --describe "Booking app for dog groomers with deposits and SMS reminders"$ npx specpack audit CLAUDE.mdCLAUDE.md 59% bloat · 44 lines · ~341 tokens every session 10 keep · 12 cut · 15 offload of 37 non-empty lines · ceiling 200, trimmed files land near 60 Over half of this file is doing nothing. It is not neutral weight — it is what your real rules are competing against.
3 cut You are an expert senior full-stack developer with 10 years of experience. ↳ role-play preamble: CLAUDE.md is project memory, not a system prompt. "You are an expert…" costs tokens and changes nothing about the code produced. 4 cut Please always write clean, readable and maintainable code. ↳ default behaviour: Removing this line does not make the model write worse code — it already tries to do this. It only dilutes the lines that matter. 5 cut IMPORTANT: follow best practices at all times. … 12 cut - Next.js 15.1 ↳ restates a manifest: package.json / composer.json / requirements.txt already state this, and the agent reads them. Keep it only if the version pin has a non-obvious reason. … 18 offload ## Database schema ↳ situational section: Only a fraction of your sessions need this. Move the section to its own file and point at it with @docs/… so it loads when the task asks for it. … 31 offload src/ ↳ file tree: Root of a pasted directory tree. The agent can run ls and get the real one — a copy goes stale after the first refactor. … Trimmed copy (8 lines): specpack audit CLAUDE.md --trimmed# .github/workflows/agent-files.ymlname: Agent fileson: [pull_request]jobs: audit: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npx -y specpack audit --max-bloat 30$ npx specpack init✓ Wrote AGENTS.md (37 lines, 0% bloat) Scanned from package.json, tsconfig.json, prisma/schema.prisma, .nvmrc, docker-compose.yml, .env.example, .gitignore, .claude/commands/.# AGENTS.md — ledgerly
Invoicing app for freelancers. A web application.
## Stack- Next.js (App Router)- Tailwind CSS- Zod- Stripe- Vitest- Playwright- ESLint- TypeScript (strict)- Prisma + PostgreSQL (schema: prisma/schema.prisma)- Local services via Docker Compose (docker-compose.yml): db
## Commands- `pnpm dev` — `next dev --turbopack -p 3001` (port 3001)- `pnpm build` — `next build`- `pnpm start` — `next start`- `pnpm test` — `vitest run`- `pnpm test:e2e` — `playwright test`- `pnpm lint` — `next lint`- `pnpm db:migrate` — `prisma migrate dev`- `pnpm db:seed` — `tsx prisma/seed.ts`- `docker compose up -d`
## Project rulesThese are things the agent cannot guess from the code. Follow them exactly.- Use pnpm (pnpm-lock.yaml), not npm or yarn — another package manager ignores the lockfile.- Runtime: Node 20 (.nvmrc).- Environment variables are listed in `.env.example`; the real `.env` is git-ignored — do not commit it.<!-- Add the rules the code cannot tell the agent, one per line: the directory scheduled for deletion, money stored in cents, the command that must never run against staging. --># AI drafts the answers from a description (10–40 s), then the spec is generatednpx specpack spec --describe "Booking app for dog groomers with deposits and SMS reminders" --out ./groombook
# your own answers (see GET /questions in the API)npx specpack spec --answers answers.json --type saas
# or answer the questionnaire in the terminalnpx specpack specclaude mcp add specpack -- npx -y specpack mcp{ "mcpServers": { "specpack": { "command": "npx", "args": ["-y", "specpack", "mcp"], "env": { "SPECPACK_API_KEY": "" } } }}claude mcp add --transport http specpack https://prompt-generator-website.com/mcpimport { audit, scanProject, renderAgentsMd, SpecpackClient } from "specpack";
const { stats, lines, trimmed } = audit(fs.readFileSync("CLAUDE.md", "utf8"));console.log(`${stats.bloat}% bloat`, lines.filter((l) => l.verdict === "cut").length, "lines to cut");
const agentsMd = renderAgentsMd(scanProject("."));
const client = new SpecpackClient({ apiKey: process.env.SPECPACK_API_KEY });const draft = await client.draft("A booking app for dog groomers");const spec = await client.createSpec(draft.type, draft.answers); // spec.spec, spec.files["AGENTS.md"]…