DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Typesafe Ask — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
T

dsh-typesafe-ask

Typesafe Ask

在 DeepSeek Harness 中向 TypeSafe (Jev) 请求结构化决策:通过类型化问题进行路由、分类、评分或验证,并获取代码可据此分支的概率。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:onepayzk-glitch/dsh-typesafe-ask#9e3f38e31bb306378e5c98a8925fee245b544b01
README兼容性版本

兼容性与来源证明

Typesafe Ask 以 dsh-typesafe-ask 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/9/22

版本

0.1.0stable
2026/9/22

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/22
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 agents-orchestration 分类下经过校验的插件。

Skills Manager@michengai/dsh-skills-managerDSH Skills Manager — 在 DeepSeek Harness 中统一加载并安全管理本机 Agent Skills · 在 DSH 中加载并安全管理本地 Agent SkillsDs Botds-botDS Bot:DeepSeek Harness 的一组长期运行的 Bot,支持主 Bot、Bot 间消息和群聊Agency Agents@michengai/dsh-agency-agentsDSH Agency Agents — 为 DeepSeek Harness 提供 331 名可召唤的领域专家DSCODE Desktop@toddzheng024/dscode-desktop为 Harness Desktop 提供编码协作、记忆、浏览器工作流和任务管理功能。

README

dsh-typesafe-ask

English | 中文

Give your DeepSeek Harness agent a decision oracle: typesafe_ask calls TypeSafe Jev, a System One model that evaluates a state against typed questions and returns structured answers — a choice from a list, a score on a rubric, or a probability that a statement is true — with calibrated probabilities attached.

Use it when the agent needs a judgment rather than a sentence: route a request to the right handler, classify a ticket, score how urgent or how frustrated something is, rank candidates, or gate an action behind a confidence threshold.

What you get

SurfaceWhat it does
Tool typesafe_askSends state + a map of typed questions to POST /v1/systemone and returns the answers in the conversation
Settings sectionSettings → TypeSafe / Jev — paste your API key once; it is stored through the harness credential store, never in a profile config file

Install

From the plugin market: Settings → Plugin Market → search typesafe-ask → Install. Or by hand:

dsh plugin --profile <your-profile> add dsh-typesafe-ask

Then restart or refresh the harness, open Settings → TypeSafe / Jev, and paste a key from console.typesafe.ai/keys.

Use

Once the key is set, just ask the agent in natural language ("which team should own this ticket?") or let it call the tool itself. The tool takes:

ParameterTypeRequiredMeaning
statestring | object | arrayyesWhat to evaluate: the text, record, or application state
questionsobjectyesMap of question id → typed question (see below)
modelstringnoDefaults to jev-latest

Three question types:

{
  "department": {                     // choice — pick one option
    "type": "choice",
    "instructions": "Which team should handle this",
    "criteria": {
      "billing": "Payment or subscription issues",
      "technical": "Bugs or integration problems",
      "sales": "Pricing or account questions"
    }
  },
  "frustration": {                    // score — position on an ordered rubric
    "type": "score",
    "instructions": "How frustrated the customer appears",
    "criteria": ["Calm, just stating facts", "Frustrated but civil", "Very angry, strong language"]
  },
  "is_urgent": {                      // noul — probability the statement is true
    "type": "noul",
    "instructions": "The message conveys urgency or time-sensitivity"
  }
}

Answers come back keyed by your question ids:

department: choice=technical (confidence=0.78) [technical=0.85, billing=0.15, sales=0]
frustration: score=1=Frustrated but civil (confidence=1)
is_urgent: noul=0.99

Designing good questions

  • Ask independent questions together. Every question in one call is evaluated in parallel against the same state and cannot see the other answers. Send a second call only when an earlier answer is needed to build new state or new options.
  • One narrow, coherent judgment per question. Split independent dimensions; do not destroy the relationship being judged. Question ids are for your code and are never sent to the model, so the full meaning must live in instructions.
  • noul has no separate confidence. If several labels can hold at once, ask one noul per label instead of forcing a choice.
  • score levels must stand on their own as concrete situations, not "low/medium/high". The returned score is a probability-weighted position and may be fractional.
  • Low confidence means the options overlap, not that the model is broken. For choice, go back and make criteria mutually exclusive rather than lowering a threshold.
  • Thresholds belong to your data. Calibrate them on real cases; noul ≈ 0.5 means the yes/no split is even, not "medium intensity".

Configuration

Set in the profile's plugin row when you need to change defaults:

- id: dsh-typesafe-ask
  name: 'dsh-typesafe-ask'
  config:
    apiKeyRef: TYPESAFE_API_KEY                          # credential reference name
    model: jev-latest
    baseUrl: https://api.typesafe.ai/v1/systemone
    timeoutMs: 60000

Boundaries

  • Jev does not generate text, write code, stream, or call tools. It cannot replace the chat model behind your agent — TypeSafe says so explicitly in Jev with coding agents.
  • The key is a server-side secret: it stays in the credential store and is only read on the host when a tool call is made.
  • Requires network access to api.typesafe.ai.

Development

The plugin is plain ESM with no build step — what is in src/ is what ships.

# make the dsh packages resolvable for the offline tests (symlink, not installed)
ln -s "$DSH_NODE_MODULES" node_modules   # e.g. the dsh dependency's node_modules

npm test          # host + client + live client-module checks
  • test/host.test.mjs — mounts the plugin on a stub context, registers the tool through the real defineTool, runs a live /v1/systemone call, and covers the config override, the missing-key path, invalid questions, and a deployment with no credential store.
  • test/client.test.mjs — loads src/client.js through the same window.__ModuleLoader__.load({ id, factory }) contract the dsh web shell uses, asserts the bundle requires only baseline modules, mounts it on a stub context, checks the settings.section registration and the remote.credentials call shapes, and renders the page with real React.
  • test/smoke.mjs — the API client alone, against a real key ($TYPESAFE_API_KEY, or a path as the first argument).

Test the whole loop against a local dsh install:

dsh plugin --profile <profile> add /absolute/path/to/dsh-typesafe-ask
# restart the harness: a new bundle row is composed at boot

License

MIT