Create Starter

io.github.starter-series由 GitHub 帳號 starter-series 發布v0.5.3更新於 Oct 24, 2026

Scaffold Starter Series projects and check release, deployment, security, and agent instructions.

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

從六個範本建立 Starter Series 專案,並稽核儲存庫的發佈、持續交付、安全性與代理指令規範。

可以做什麼
提供九個 stdio 工具:list_templates 與 create_project 可從六個公開範本(TypeScript 或 Python 的 MCP 伺服器、npm 套件、瀏覽器擴充功能、VS Code 擴充功能、Docker 部署)產生新專案。唯讀稽核工具會檢查發佈就緒度、各發佈目標的發佈漂移、CI 安全基準項目,以及代理指令檔案中的重複與重疊。generate_launch_proof_report 將各項稽核彙整為 Markdown 交付報告,seed_security_guidance 產生安全指引草稿,add_component 可向既有儲存庫提議或寫入起始範本的 CI/CD 檔案。
適用情境
適合從 Starter Series 範本建立新專案,或檢查既有儲存庫是否仍符合起始範本的發佈、發佈目標與 CI 安全基準。也用於檢查 AGENTS.md、CLAUDE.md 等指令檔案是否有完全重複與表面重疊。
執行需求
以 stdio 方式在本機執行,需要 Node.js 22 或更新版本。可透過 npx starter-series、Claude Desktop 的 .mcpb 套件、Claude Code 外掛,或指向該 npm 套件的 MCP 登錄項目安裝。未宣告任何帳號、API 金鑰或環境變數;CREATE_STARTER_DEBUG=1 僅用於輸出詳細日誌。下載範本需要網路存取。
安裝前請注意
create_project 會寫入檔案並預設執行 git init;add_component 預設為試執行,但使用 --apply 會寫入 CI/CD 檔案,--force 可覆寫內容不同的檔案,且除非強制否則會拒絕在髒 git 工作區執行。seed_security_guidance 會寫入指引檔案。稽核為唯讀,但 audit_cd 會探測公開登錄與市集。指令檢查僅為提示性,不偵測語意漂移;--update-state 會寫入包含身分識別與證據雜湊的狀態檔案。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Create Starter,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

create-starter

Scaffold and audit Starter Series projects — MCP server, Claude Code skill, and CLI in one package.

Part of: Human-Controlled AI Systems — scaffolding is the easy half. What keeps a shipped repo trustworthy is the audit primitives (audit, audit-cd, audit-security) verifying release, CD, and CI security hygiene against a known bar — gating each merge instead of asking a human to re-check by hand.

Korean documentation is maintained under docs/ko/README.md; the root README stays English-only.

Security checks inspect local workflow definitions and referenced starter-series/.github policy, including composite actions and invoked scripts. Evidence includes source paths and content hashes. Unreadable or unsupported reusable workflows are reported as unverified; this checks configuration, not the latest Actions run or a live vulnerability scan.

Currently implemented

  • CLI — package and binary identity are starter-series; npx starter-series my-package --template npm-package scaffolds one of 6 public templates with Zod-validated input, atomic rename on success, retry + timeout + 50 MB download cap.
  • MCP server — nine stdio tools: list_templates, create_project, audit_release, audit_cd, audit_security, audit_instructions, generate_launch_proof_report, seed_security_guidance, add_component. One binary chooses the mode by argv (positional -> CLI, none -> MCP stdio).
  • Claude Desktop extension — .mcpb bundle on every release; drag onto the Claude Desktop settings window.
  • Claude Code plugin + skill — /plugin install create-starter@starter-series ships the MCP server and the conversational create skill together.
  • MCP Registry metadata — io.github.starter-series/create-starter; registry submission is gated on the unscoped npm package being live and tarball-verified.
  • audit_release — detects matched starter, version vs last-tag drift, CHANGELOG drift vs merged PRs (git log <tag>..HEAD), publish-workflow kind (release-please / publish-on-tag / auto-release).
  • audit_cd — probes npm, PyPI, Open VSX, VS Marketplace, AMO, GitHub Releases for per-destination publish drift (in-sync / needs-publish / local-stale / not-found / unsupported).
  • audit_security — checks 9 items: 8 core CI primitives (gitleaks with pin check, CodeQL, dependency audit, license check, --ignore-scripts, Dependabot grouped, secret-scanning hint, claude-code-security-review Action) plus the optional repo-author claude-security-guidance.md. The 8 core checks gate the HARDENED verdict; this repo passes 8/8 core.
  • audit_instructions / audit-instructions — reviews agent instruction files (AGENTS.md, CLAUDE.md, GEMINI.md, Copilot instructions) for exact same-file duplicates, cross-file surface overlap, and keyword-based risk reminders. Duplicate/overlap findings need review; keyword risk summaries are advisory only and not exhaustive safety or semantic drift detection.
  • proof-report / generate_launch_proof_report — runs release, CD, security, and instruction-review audits together and writes a client-ready Launch Proof Report. This is the monetizable handoff surface: evidence first, no "certified" claim, exit code 1 unless the repo is actually launch-ready.
  • add_component — the remediation half of the audit loop: lifts a starter's CI/CD layer (ci / security / dependabot / maintenance / all) into an existing repo without re-scaffolding. Dry-run by default with a per-file plan (create / identical / skip-exists / overwrite); refuses a dirty git tree unless forced; never touches app code or secrets-bearing CD workflows. The dry-run plan doubles as a drift report against the starter.
  • Graduation guide — docs/graduation-from-vibe-coding.md (+ Korean): five-step path from Lovable/Bolt/v0 exports to GitHub Actions + a real deploy target, using the release/CD/security audit primitives.

Planned

  • audit_cd support for Chrome Web Store, EAS, Railway, Fly, and GHCR. Currently reported as unsupported because those destinations require auth or have no public read API.

Design intent

  • One binary, two surfaces. CLI and MCP stdio share one scaffolding engine. Argv decides which surface answers. No duplicated logic for "the same thing called from a human vs an agent".
  • Atomic on failure. Extraction happens in a sibling .<name>-incomplete-<rand> directory and only renames into the final path on success. Network failure, corrupt archive, partial write — none of them leaves a half-scaffolded directory behind.
  • Audit is first-class. Templates ship a security baseline (gitleaks pinned to SHA, CodeQL, Dependabot grouped, --ignore-scripts, claude-code-security-review). The audit commands check whether a downstream repo still matches that bar — turning the baseline from a one-time scaffold into an ongoing gate.
  • Eat your own dogfood. This repo passes audit_security 8/8 core checks (HARDENED); the 9th is the optional claude-security-guidance.md. If the tool that audits other repos can't pass its own bar, the bar isn't real.
  • Read-only outside its sandbox. Downloads are capped (50 MB, 30 s timeout, 3 retries). Relative output paths cannot escape cwd; absolute paths are accepted only as explicit user intent. git init failure is logged but non-fatal.

Non-goals

  • Full vendor parity in audit_cd. Destinations without a public read API stay unsupported rather than reporting confidently-wrong state.
  • Rewriting app code. The graduation flow lifts CI/CD from the matching starter; it never touches application code.
  • A general-purpose project generator. Templates are the 6 public Starter Series templates. New stacks land as new starters, not as flags on create_project.
  • Semantic instruction drift or AI safety enforcement. audit_instructions is a review aid for exact duplicate/surface overlap and keyword reminders. It is not a semantic similarity engine, runtime guardrail, red-team harness, or exhaustive safety/security linter.

Quick start — CLI

bash
npx starter-series my-package --template npm-package
# Or build from a create-starter checkout:npm cinpm run buildnode dist/index.js my-package --template npm-package
starter-series — scaffold a project from the Starter Series.
Usage  starter-series <name> --template <id> [options]  starter-series audit [path]  starter-series audit-cd [path]  starter-series audit-security [path]  starter-series check [path] [--instructions]  starter-series audit-instructions [path]  starter-series proof-report [path] [--output <file>] [--stdout]  starter-series seed-security-guidance [path] [--force]  starter-series add-component [path] [--component <g>] [--starter <id>] [--apply] [--force]  starter-series --list  starter-series --help
Options  -t, --template <id>      Template ID (see --list)  -d, --description <text> One-line project description  -o, --output-dir <path>  Output directory (default: ./<name>)      --no-git             Skip "git init" after scaffold      --output <file>       proof-report output (default: <path>/launch-proof-report.md)      --stdout              print proof-report Markdown; with --output, also writes the file      --component <group>   add-component group: ci, security, dependabot, maintenance, all      --starter <id>        add-component source starter override      --apply               Write the add-component plan (default is dry-run)      --force               Overwrite differing component files or guidance      --list               List templates and exit  -h, --help               Show help and exit  -v, --version            Print version and exit
Environment  CREATE_STARTER_DEBUG=1   Emit verbose stderr logs

Available templates

IDStack
mcp-serverTypeScript + @modelcontextprotocol/sdk + Zod
mcp-server-pythonPython + FastMCP
npm-packageJest + ESLint + OIDC publish
browser-extensionChrome/Firefox MV3
vscode-extensionVS Marketplace + Open VSX
docker-deployany language + GHCR + SSH

Only the six public templates listed here are available for generation and component downloads. Existing projects based on former templates can still be audited.

Run starter-series --list (CLI) or call list_templates (MCP) for the authoritative, up-to-date list.

Graduating from Lovable / Bolt / v0

Already have a working app on a vibe-coding platform and want to graduate to GitHub Actions + your own deploy target? Read docs/graduation-from-vibe-coding.md (한국어) — a 5-step path that uses audit, audit-cd, and audit-security to diagnose your repo, then lifts CI/CD from the matching starter without rewriting your app code.

Install from source

bash
git clone https://github.com/starter-series/create-startercd create-starternpm installnpm run build

Requires Node.js ≥22.

One-click install in Claude Desktop

Grab the latest .mcpb bundle from the Releases page and drag it onto the Claude Desktop settings window. Claude Desktop unpacks the bundled dist/ and node_modules/ and registers create-starter as an MCP server — no npm, no config file, no absolute path.

.mcpb (MCP Bundle, formerly .dxt) is Anthropic's packaged extension format for MCP servers. See Desktop Extensions.

To rebuild the bundle locally:

bash
npm cinpm run bundle:mcpb   # produces create-starter-<version>.mcpb

Use as MCP server

Register the built binary in your MCP client (Claude Desktop, Cursor, etc.):

json
{  "mcpServers": {    "create-starter": {      "command": "node",      "args": ["/absolute/path/to/create-starter/dist/index.js"]    }  }}

Then ask your agent: "Use create-starter to scaffold a new discord bot named my-bot." The agent will call list_templates if needed and then create_project.

The binary speaks MCP stdio when called with no extra arguments, and switches to CLI mode when given any positional argument or flag. Both modes share the same scaffolding engine.

Use as Claude Code plugin

The plugin bundles both the MCP server and the create skill — one install wires them up together.

From the Claude Code REPL:

/plugin marketplace add starter-series/create-starter/plugin install create-starter@starter-series

Then ask Claude: "scaffold a new discord bot named my-bot" and the create-starter:create skill guides the conversation into the MCP tools.

For local development (no marketplace round-trip):

bash
claude --plugin-dir /path/to/create-starter

Point at a git clone so edits in skills/create/SKILL.md or dist/index.js take effect the moment the session starts.

Use via MCP Registry

After registry publication, this server uses the Official MCP Registry namespace:

io.github.starter-series/create-starter

MCP-compatible clients that integrate registry discovery can install it by name without manual path wiring. The registry entry points at the npm package starter-series, so the registry step must run only after the npm package is published and verified.

Ownership is verified through GitHub OIDC (namespace io.github.starter-series/*) and npm tarball inspection (package.json#mcpName). See .github/workflows/publish-mcp-registry.yml for the publish flow.

For npm release setup (trusted-publisher registration, including the post-2026-05-20 allowed-action step), see docs/RELEASING.md.

Tools

Scaffolding:

  • list_templates — returns the full template table as JSON.
  • create_project — args:
    • template (required) — template ID from the table above.
    • name (required) — project name matching ^[A-Za-z0-9][A-Za-z0-9_-]*$.
    • description (optional) — one-line description.
    • output_dir (optional) — defaults to ./<name> relative to the MCP server's cwd. Relative paths must stay inside cwd; absolute paths are accepted as explicit user intent.
    • init_git (optional, default true) — run git init after scaffold.

Audit (each takes an optional path arg, default = MCP server cwd; all read-only):

  • audit_release — release-readiness diagnosis. CLI mirror: starter-series audit [path].
  • audit_cd — per-destination publish-drift probe. CLI mirror: starter-series audit-cd [path].
  • audit_security — baseline CI security hygiene check. CLI mirror: starter-series audit-security [path].
  • audit_instructions — agent-instruction duplicate and surface-overlap review, with advisory keyword risk summaries. CLI mirror: starter-series audit-instructions [path].
  • generate_launch_proof_report — combined Markdown launch handoff from release, CD, security, and instruction-review audits. CLI mirror: starter-series proof-report [path] [--output <file>] [--stdout].
  • seed_security_guidance — generate a starter-aware claude-security-guidance.md draft. CLI mirror: starter-series seed-security-guidance [path] [--force].
  • add_component — propose or apply starter CI/CD components to an existing repo as a dry-run plan. CLI mirror: starter-series add-component [path] [--component <g>] [--starter <id>] [--apply] [--force].

Safety & reliability

  • Project names are regex-validated before any filesystem touch; relative output paths are rejected if they escape the working directory.
  • Downloads enforce a 30 s timeout, 3-attempt exponential backoff, and a 50 MB size cap.
  • Extraction happens in a sibling .<name>-incomplete-<rand> dir; on any failure (network, corrupt archive, extraction error) the tmp dir is removed. The final path only appears via an atomic rename once everything succeeded.
  • git init failures are logged to stderr but do not fail the scaffold; the project is usable without a .git directory.

Supply-chain security pre-wired

Every Starter Series template ships with the 9 checks audit_security looks for — no opt-in required:

CheckWhat it catches
gitleaks (SHA256-pinned manual install)Committed secrets in code or history
CodeQL (weekly + PR)Static analysis for JS/TS/Python
Dependency audit (npm audit --audit-level=moderate / pip-audit)Known CVEs in transitive deps
License checkGPL/AGPL contamination
--ignore-scripts on every npm/pnpm/yarn installMalicious postinstall scripts
Dependabot grouped updatesLockfile-conflict storms from one-by-one bumps
GitHub secret scanning + push protectionTokens leaked at push time
anthropics/claude-code-security-review Action on PRAI-based diff review
claude-security-guidance.md (this is the only one you write)Org-specific rules consumed by Anthropic's in-session Claude Code Security Guidance Plugin (released 2026-05-26)

This was Vercel's stack during their 2026-04-21 npm supply-chain incident — they pre-empted compromise via the same pre-wired checks plus Socket/npm/GitHub coordination. The Starter Series ships those checks pre-wired in every starter.

License

MIT © heznpc

Instruction checks

bash
starter-series check --instructions [path]starter-series check --instructions [path] --jsonstarter-series check --instructions [path] --update-state

check without --instructions runs the existing release, CD, security and instruction audits. audit-instructions remains a compatible alias. MCP clients keep using audit_instructions(path?, update_state?); the library entry remains auditInstructions(path?, { updateState? }).

One scan covers AGENTS/CLAUDE/GEMINI, overrides, Copilot instructions, Cursor rules, Claude rules/skills and .agents rules/skills/workflows. The check reports import and symlink aliases, verbatim mirrors, local overrides, exact duplicates and cross-file overlap. Canonical selection is inferred from links and filenames unless explicitly configured. It does not detect semantic similarity. Instruction source files are never rewritten.

Optional .starter-series/instructions.json selects a canonical source and records owner decisions. Copy the exact id, evidenceHash and paths from the JSON report into a decision's id, evidenceHash and scope; then explicitly supply the owner's reason, identity and approval date:

json
{  "schemaVersion": 1,  "canonical": "AGENTS.md",  "decisions": []}

Each decision requires reason, approvedBy, approvedAt (YYYY-MM-DD), and at least one of reviewAfter, expiresAt (YYYY-MM-DD) or reviewReason. A decision only accepts its exact finding and scope. Evidence changes, expiry or a due review make it stale; approval is never generated by the checker. Accepted findings remain visible. This file records owner approval; it is not an authentication mechanism.

Checks are read-only by default. --update-state (or MCP update_state: true) explicitly saves .starter-series/instructions-state.json for new/changed/known/resolved delta comparison. State contains identities and evidence hashes, not instruction text; commit it only if the team wants a shared baseline. Malformed metadata fails the check. Exit codes remain 0 for clean/advisory or accepted findings, 1 for pending/stale review findings, and 2 for usage or operational errors.

來源:README.md,提交 e2253d1

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.5.3最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分