Перейти к основному содержимому
H

specflow (deepseek-specflow)

huyellow/specflow/plugins/deepseek-specflow

Provides a specification-driven engineering workbench with versioned requirements and documents, isolated Git workspaces, independent review, verification, and explicit human acceptance. Requires Node.js 24+ and Git.

Установка

dsh plugin --profile web add github:huyellow/specflow

Этот плагин находится в подкаталоге plugins/deepseek-specflow репозитория.

README

SpecFlow

From requirements to reviewed code.
A spec-driven engineering workbench for local Git repositories.

Download desktop  ·  DSH plugin  ·  Run from source  ·  简体中文


SpecFlow English workbench showing the CSV import demo, workflow checkpoints, and linked documents

The built-in CSV demo in the English workbench. Switch between English and Simplified Chinese from the header.


SpecFlow connects specifications, model execution, real tests, and human acceptance in one local workbench. Every change carries a record of what was requested, what ran, what passed, and what you accepted.

Use the standalone desktop app or work inside DeepSeek Harness through its native side-panel plugin.

Overview  ·  Get started  ·  Workflow  ·  Backends  ·  Development  ·  Documentation

Overview

Traceable inputs

Each attempt records its requirements, project rules, document revisions, model, and execution identity. When an upstream input changes, dependent results become stale.

Verified candidates

Review passes examine coverage and failure cases against the same frozen materials. SpecFlow runs your project's verification commands and records their output, exit codes, and the code version tested. Changes to code or commands invalidate old evidence.

Explicit acceptance

Review documents, diffs, findings, and test results at each checkpoint. Before you accept a change, SpecFlow checks that the required evidence still matches the current work.

Get started

Choose English or 中文 in the workbench header. On first launch the interface follows your system or browser language; your selection is saved. The desktop menu, dialogs, status messages, and document exports follow the selected interface language.

New work items use the selected language for their default workflow, generated documents, briefs, and clarification questions. To change the output language for a new run of an existing work item, open the workflow editor and choose Generated content language. Existing attempts, user content, code, logs, and quoted evidence retain their original text. The DeepSeek Harness plugin provides the same language selector within its panel.

Desktop app

Download the latest release

PlatformInstaller
Windows x64SpecFlow-<version>-win-x64.exe
macOS · Apple SiliconSpecFlow-<version>-mac-arm64.dmg
macOS · IntelSpecFlow-<version>-mac-x64.dmg

The app includes Electron, Node.js 24, npm, and the Maka Runtime Host. Install Git separately, along with the tools your project's tests and build commands require.

Installer checksums, signing, and updates

Release assets include SHA256SUMS.txt. Current installers are unsigned; macOS builds are also not notarized.

Windows supports in-place updates through the app's Help menu. For current macOS builds, download a new DMG and replace the app. See the desktop installation and update guide.

Your first session
  1. Explore the demo. The built-in CSV example changes code and runs real Node.js tests in an isolated repository, using deterministic results without calling a model API.
  2. Connect a repository. Add a local Git project with a clean, committed baseline.
  3. Configure the project. Add a model connection and choose models for the analyst, architect, developer, and reviewer roles. Set project rules and verification commands.
  4. Describe a change. Create a work item and optionally attach Markdown or TXT requirements.
  5. Work through the checkpoints. Clarify the specification, review and accept the design and tasks, then run implementation and verification.
  6. Accept the result. Inspect the candidate diff, findings, and evidence before integrating into the work-item branch.

DeepSeek Harness plugin

Run the same engineering core in a Specflow tab beside your DSH conversation, using the models configured in your host.

Download the plugin · Plugin guide

Requires DSH 0.2.1-rc.2, host Node.js 24+, and local Git. The desktop app, Maka, and OpenCode are not required. Other DSH versions need separate validation.

Install the prebuilt .tgz through DSH's third-party plugin manager, enable it, and open the Specflow workbench in the right sidebar. Register your repository, assign role models and verification commands, and create a work item.

CLI installation and custom plugin market

For the CLI/Web profile:

dsh plugin --profile web add https://github.com/HuYellow/specflow/releases/download/dsh-plugin-specflow%400.1.0/dsh-plugin-specflow-0.1.0.tgz
dsh web

You can also use the project's custom plugin-market index.

The panel handles workflow actions and human acceptance. The chat tool specflow_query provides read-only project status. Installation, data locations, development, and recovery are covered in the plugin guide.

Workflow

Each registered repository is a project. Each work item has its own branch and workspace; implementation runs in a separate candidate worktree.

PhaseWhat you work with
Specify & clarifyRequirements, supporting documents, acceptance criteria, and answers written back into the specification
Design & break downA reviewed design and tasks with dependencies and acceptance conditions
Implement & verifyCandidate code, task progress, and results from your verification commands
Review & alignFindings and a report connecting requirements, tasks, code, and evidence
AcceptA final freshness and evidence check, followed by your decision to integrate

The default workflow has 13 steps, including dedicated reviews between the main phases. Editing a requirement or document creates a new revision that must pass the relevant checks again.

Full Markdown documents remain the execution contract. Short reading briefs stay linked to the same source revisions; the desktop workbench also provides offline HTML export. Accepted documents retain their history and are exported with the work item.

When requirements change

Changing a CSV requirement from accepting malformed rows to rejecting them makes dependent work stale, even if earlier tests passed. Acceptance checks that the documents, reviews, and test results apply to the updated inputs and candidate code.

Accepted code is integrated into the local work-item branch. Publishing that branch or opening a pull request remains part of your Git workflow.

Execution backends

SpecFlow manages the workflow, input versions, evidence, and acceptance rules. Your selected backend runs the model sessions.

BackendSetupModels
Maka · desktop defaultRuntime Host included with the appAdd connections in SpecFlow; Maka manages provider credentials
OpenCode · desktop optionSeparately installed local serviceConfigure providers in trusted OpenCode user settings
DSH · pluginCompatible Harness hostUse models configured in DSH

Changing a project's backend applies to new attempts. Existing attempts keep their original backend, model, and session identity. OpenCode and DSH can recover the status of an interrupted run; continuing the work requires an explicit new attempt.

Connect a local OpenCode service
opencode serve --hostname 127.0.0.1 --port 4096

Choose OpenCode in project settings, save the connection and optional authentication, refresh the model list, and assign role models.

SpecFlow accepts loopback endpoints only. Repository-level opencode.json, opencode.jsonc, and .opencode configuration are currently blocked; use trusted user-level configuration.

See backend setup and switching and the OpenCode adapter notes.

Bundled Maka release policy

The runtime is built from the signed official Apache Maka 0.2.0 source release (0.2.0-incubating). The release manifest pins the source version, SHA-512 checksum, and signer fingerprint.

Only Runtime Host and its production dependencies ship with the desktop app. Source, compiler, tests, CLI/Eval, and build caches stay outside the package.

Setup, runtime loading, and packaging enforce the same policy: development, nightly, snapshot, RC, and placeholder builds are rejected. If the approved release cannot be obtained or adapted, the build fails. A formal npm package will replace this source-build path once publishing is resolved.

Development

Use Node.js 24+, npm, Git, and GPG. Setup needs network access to verify and build the pinned Maka release. On Windows, GPG bundled with Git can be used; on macOS, install GnuPG separately.

git clone https://github.com/HuYellow/specflow.git
cd specflow
npm ci
npm run maka:setup
npm run desktop:dev

For browser development, run npm run dev after setup and open localhost:4318. To serve a production build, run npm run build, then npm start, and open localhost:4317.

Verification and desktop packaging

Core checks:

npm run typecheck
npm test
npm run build
npm run maka:probe

The probe exercises the prepared Maka Host. Tests that require it explicitly skip when the approved runtime has not been prepared.

Build installers on the matching operating system and CPU architecture:

npm run desktop:package:win        # Windows x64
npm run desktop:package:mac:arm64  # Apple Silicon Mac
npm run desktop:package:mac:x64    # Intel Mac

Installers are written to release/. Release automation and signing are documented in the desktop delivery guide.

For plugin development, install its separate dependencies and use dsh:typecheck, dsh:test, and dsh:pack as described in the plugin guide.

Local data and execution

Project records, workspaces, and run logs are stored locally. Model requests go through the provider configured in the selected backend. Desktop, browser, and DSH installations use separate data directories and do not automatically migrate existing data.

Workspace file restrictions are application controls, not an operating-system sandbox. Verification commands run with your user permissions. The quality of model reviews and test evidence depends on the models and checks you configure.

Default data directories
Entry pointEngineering data directory
Desktop · Windows%APPDATA%/SpecFlow/engineering
Desktop · macOS~/Library/Application Support/SpecFlow/engineering
Browser workbench.specflow-data/local
DSH plugin$DSH_HOME/specflow, or ~/.dsh/specflow with the default DSH home

Use SPECFLOW_DATA_DIR to override the browser data directory; the plugin has its own dataDir setting. Desktop uninstall preserves engineering data.

Documentation

Most detailed implementation notes are currently in Chinese.

TopicGuides
Installation & distributionDesktop · DSH plugin · Plugin publication
Runtime integrationExecution backends · Maka management
Inputs & clarificationRequirements · Project guidance
Documents & reviewReading briefs · Review policy

Apache License 2.0 · Bundled components retain their respective licenses and notices.

Похожие плагины