Specforge

io.github.CloudCorpRecords由 GitHub 帳號 CloudCorpRecords 發布v0.1.0更新於 Nov 3, 2026

本機規範驅動開發:規範、章程、排程、任務、git 與質量檢查。

AI 翻譯由 AI 模型根據下方的原文描述翻譯,可能有誤。

原文描述

Spec-driven development locally: specs, constitutions, plans, tasks, git and quality checks.

已驗證STDIO僅桌面開發者工具

概覽

Specforge 的本機 MCP 服務;無需登入;STDIO。

暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。

安裝

在 SourceWeft 中

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

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

其他 MCP 客戶端

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

README

specforge

specforge is a local tool for spec-driven development. It keeps a specs/ tree in a workspace: every feature gets a numbered directory holding its spec, constitution, plan, task list, research notes, clarifications and contracts, and specforge creates and maintains those files. It can also create a git branch and run format, lint, test and security-audit checks. One binary serves a command-line interface and a stdio MCP server; nothing here talks to a network service.

The workspace root is taken from the SPECFORGE_ROOT environment variable, defaulting to the current working directory. The "current feature" that most tools operate on is the highest-numbered directory under specs/; tools that need one fail with an error when no feature exists yet.

Install

bash
npx @reneturcios/specforge specify_start --project-name "My Feature"

Or run the container image:

bash
docker run -i ghcr.io/cloudcorprecords/specforge

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

The subcommands mirror the MCP tool names:

bash
export SPECFORGE_ROOT=/path/to/workspace
specforge specify_start --project-name "Widget API" --agent claudespecforge specify_describe --description "As a user I can create widgets."specforge constitution_create --principles "Ship small,Test first" --constraints "Node 20"specforge clarify_add --question "Which database?" --context storagespecforge clarify_resolve --clarification-id CLARIFY-001 --resolution Postgresspecforge spec_validatespecforge research_append --content "Evaluated two libraries; picked the smaller one."specforge plan_create --constraints-text "Must ship by Friday."specforge spec_refine --section Requirements --changes "- Must be fast"specforge artifacts_analyze --artifacts spec,plan,tasks,contractsspecforge tasks_generate --scope backendspecforge tasks_tick --task-id T-001specforge tasks_tick_range --task-ids T-002,T-003specforge tasks_filter --preset actionable --limit 5specforge tasks_search --query widget --fuzzy truespecforge tasks_visualize --format mermaidspecforge tasks_stats --include-charts truespecforge git_create_branch --branch-name feature/widgetsspecforge quality_formatspecforge quality_lint --fix truespecforge quality_test --coverage truespecforge quality_security_audit
specforge --version

Results print as JSON. Exit codes: 0 on success, 1 when a tool fails (for example there is no current feature, or the underlying git/quality command exits non-zero), 2 for usage errors.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

bash
npx -y @reneturcios/specforge mcp

MCP client configuration:

json
{  "mcpServers": {    "specforge": {      "command": "npx",      "args": ["-y", "@reneturcios/specforge", "mcp"],      "env": { "SPECFORGE_ROOT": "/path/to/workspace" }    }  }}

Tools

ToolInputWhat it does
specify_startprojectName (required), agentCreate the next numbered feature directory with a spec template, contracts/ and research.md.
specify_describedescription (required)Write the description into the current feature's spec user-story section.
constitution_createprinciples (required), constraints, preferencesWrite constitution.md for the current feature.
clarify_addquestion (required), contextAppend a clarification (CLARIFY-NNN, resolution null) to clarifications.json.
clarify_resolveclarificationId, resolution (both required)Set the resolution for a clarification.
spec_validatechecks (optional object)Check the spec's presence and completeness; returns per-check results.
research_appendcontent (required)Append to research.md.
plan_createconstraintsText (required)Write plan.md from the constraints.
spec_refinesection, changes (both required)Replace or add a named section in spec.md.
artifacts_analyzeartifacts (required array)Report presence and size of named artifacts.
tasks_generatescope (optional)Generate tasks.md, a numbered checkbox list derived from the spec.
tasks_ticktaskId (required)Mark a task T-NNN done.
tasks_tick_rangetaskIds (required array)Mark several tasks done; missing ids are reported.
tasks_filterpreset, limit (optional)List tasks; the default preset is the actionable (unchecked) ones.
tasks_searchquery (required), fuzzySearch task text; fuzzy matching also accepts subsequences.
tasks_visualizeformat (optional)Render the task list as text (default) or mermaid.
tasks_statsgroupBy, includeCharts (optional)Count done and pending tasks, optionally with a text chart.
git_create_branchbranchName (required)Run git checkout -b <branchName> in the workspace.
quality_formatfix (optional)Run the Prettier check, or --write with fix.
quality_lintfix (optional)Run ESLint, or with --fix.
quality_testcoverage (optional)Run npm test, optionally with coverage.
quality_security_auditfix (optional)Run npm audit, or npm audit fix with fix.

The git and quality tools report an error result when the underlying command is unavailable or exits non-zero; they never report success for a command that did not run cleanly.

Note: the original project's prose also mentions clarify_list and artifacts_read, but they do not appear in its documented tools table, so they are not part of this rebuild.

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # node test runner over test/*.test.ts, temp dirs and a fake executor, no networknpm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

來源:README.md,提交 33f80e0

工具

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

版本歷史

1
  1. v0.1.0最新Nov 3, 2026

評分

已滿足適用檢查項的 50%

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

  • 近 30 天內可連通25 分

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

  • 已宣告認證方式10 分

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

  • 已列出工具15 分

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

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