dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Adaptive product discovery for DeepSeek Harness using native question dialogs.
Stop your agent from confidently building the wrong thing.
English | 简体中文
Ask First gives DeepSeek Harness an adaptive product-discovery loop. It inspects what it can, interviews the user only about decisions evidence cannot settle, and shows a concise requirement brief for confirmation before substantive work begins.
It uses DSH's native question dialog. There is no second chat UI, external service, database, or telemetry.
Without Ask First:
"Build me an admin dashboard."
The agent picks a user, information hierarchy, permissions, and success criteria by accident while coding.
With Ask First:
Precise, low-risk requests still run directly. Fixing a named typo should not trigger a product workshop.
DSH 0.1.2-rc.1 already provides the important primitives:
ask_user_question for native single-select, multi-select, free-text, and batched questions.ctx.userQuestions for UI-neutral human interaction.exit_plan_mode.Those primitives do not decide when a request is underspecified, what the next highest-value question is, whether the answer can be discovered from the environment, or when the conversation is ready to become a brief. Ask First supplies that behavior and a dedicated ask_first_confirm review tool without replacing the native UI.
See Native DSH capability review for the verified boundary and sources.
The evidence for the user pain, overlap with existing plugins, and claims this release deliberately does not make are recorded in the product and overlap audit.
From npm:
dsh plugin --profile default add dsh-ask-first@0.1.1
dsh --profile default --dump-config
From a local checkout:
dsh plugin --profile default add ./dsh-ask-first
dsh --profile default --dump-config
Or pin the Git commit you reviewed:
dsh plugin --profile default add github:1052326311/dsh-ask-first#<commit>
The package contains ready-to-run JavaScript, so Git installation does not depend on a build script.
Install it and speak normally:
Make a lightweight CRM for my sales team.
Ask First runs automatically in adaptive mode. You can also steer it explicitly:
Interview me before you design this. Do not assume the workflow.
This is a tiny reversible change. Proceed without an interview.
When DSH Plan Mode is active, Ask First uses native questions during discovery and leaves final implementation-plan approval to exit_plan_mode, avoiding two approval dialogs for the same plan.
Later DSH patch layers replace a row's full config, so restate every setting when overriding the bundle row:
- id: 1052326311-ask-first
name: dsh-ask-first
config:
mode: thorough
maxQuestionsPerRound: 1
confirmBrief: true
briefMaxChars: 12000
| Setting | Default | Meaning |
|---|---|---|
mode | adaptive | adaptive asks only on material ambiguity; thorough interviews for all substantive work; on-demand activates only when requested. |
maxQuestionsPerRound | 3 | Maximum questions in one native dialog, from 1 to 3. |
confirmBrief | true | Show the final brief for approval before substantive execution. false also removes the confirmation tool schema. |
briefMaxChars | 12000 | Maximum brief size accepted by the confirmation tool, from 1,000 to 30,000 characters. |
0.1.2-rc.1 package interfaces; the peer range also supports 0.1.2-alpha.5 and later 0.1.2 prereleases.UserQuestionProvider; the Web app provides one.ask_user_question; the minimal preset does not. With a minimal preset, discovery falls back to one concise conversational question at a time, while final brief confirmation still uses ctx.userQuestions when a surface answerer is available.npm install
npm test
npm pack --dry-run
The test suite enforces 100% coverage for the runtime module. Product behavior scenarios live in the evaluation guide; they intentionally make no quality claim until run against named models and DSH versions.