Introduction¶
In DeepSeek Harness (DSH) development, agents often confidently build the wrong thing because the input information is insufficient. Without the Ask First plugin, agents choose users, information levels, permissions, and success criteria by luck. Ask First uses DSH’s native question dialog and an adaptive product discovery loop to solve this problem. It checks existing repositories and product state, interviews users only on decisions that evidence cannot resolve, and displays a concise requirements summary for confirmation before substantive work begins.
What It Is¶
dsh-ask-first is a client plugin maintained by 1052326311. It addresses the problem of agents blindly executing when explicit requirement details are absent. It prevents agents from building the wrong thing by using DSH’s native dialog to interview, asking only when substantial ambiguity exists, displaying a concise requirements summary, and allowing low-risk requests to run directly.
Core Features¶
- Uses DSH’s native question dialog (
ask_user_question). - Adaptive product discovery, asking only when substantial ambiguity exists.
- Displays a concise requirements summary for confirmation before substantive work begins.
- Low-risk requests run directly without an interview.
- Integrates with DSH plan mode via
exit_plan_mode.
Installation and Configuration¶
Install the plugin:
dsh plugin --profile default add dsh-ask-first@0.1.1
Configuration options (must be redeclared when overriding):
| Setting | Default | Meaning |
|---|---|---|
mode |
adaptive |
adaptive asks only on substantial ambiguity; thorough interviews all substantive work; on-demand activates only when requested. |
maxQuestionsPerRound |
3 |
Maximum number of questions per native dialog round (1 to 3). |
confirmBrief |
true |
Displays the final summary for approval before substantive execution. |
briefMaxChars |
12000 |
Maximum summary size accepted by the confirmation tool (1000 to 30000 characters). |
Typical Usage¶
After installation, the agent automatically runs in adaptive mode.
- Normal request:
Make a lightweight CRM for my sales team.
- Explicitly request an interview:
Interview me before you design this. Do not assume the workflow.
- Explicitly skip the interview:
This is a tiny reversible change. Proceed without an interview.
Use Cases and Notes¶
- Requires a DSH interface with an active
UserQuestionProvider(provided by the web application). - Runtime-owned subagents cannot directly ask humans (they must return to the root agent).
- A pending native question blocks the corresponding tool call until it is answered or canceled.
- The adaptive interview strategy is model-guided guidance, not a hard guard.
- The minimal preset does not include
ask_user_question.
Conclusion¶
dsh-ask-first helps developers control the execution path of agents by introducing an adaptive interview mechanism and requirement confirmation. See the community catalog or GitHub repository for more details.