0lidaxiang/dsh-plugin-greet 预览 preview

0lidaxiang/dsh-plugin-greet

DeepSeek Harness 是一个基于插件的系统,用于构建AI代理。从工具和模型到网页界面,所有内容都可以作为插件添加或替换。

Project Overview项目介绍

dsh-plugin-greet is a beginner-friendly example plugin built exclusively for DeepSeek Harness. It demonstrates core DSH plugin development concepts including bundle distribution, profile composition, plugin configuration, the typed defineTool() API, structured output, input validation, and real model-driven tool calls. The plugin is distributed via npm, and requires Node.js version ^22.19.0 or >=24.0.0, along with pnpm 10.32.1 for profile plugin management. To install, you stop any running DSH instance, then run npx @deepseek-ai/dsh@0.1.2-rc.1 plugin --profile web add dsh-plugin-greet@0.3.1 to add it to your web profile, then confirm the bundle is added via the --dump-config command.

This plugin is intended for new DSH plugin authors who want to learn how to build working DSH plugins from scratch. All of the core implementation is kept in a single small entry file, so new developers can easily follow the complete tool call flow step by step. The flow starts when a user sends a prompt that triggers the model to call the greet tool, then the argument schema checks the input shape, execution validates and normalizes input values, the tool returns structured data, output.render creates model-facing text, and the model writes its final response.

The plugin is released under the open-source MIT license, and does not include any network, filesystem, shell, or credential access permissions, making it safe to use for testing and learning. It is currently verified compatible with two DSH pre-release versions: 0.1.2-rc.1 and 0.1.5-alpha.1, and users are warned that DSH is still in developer preview, so future updates may break compatibility. One common installation caveat is that you must use the DSH plugin command to install it to your profile, not a regular npm install, which only adds the dependency to your local Node project.

dsh-plugin-greet 是一个专为 DeepSeek Harness 开发的入门示例原生插件,旨在向新插件开发者演示完整的 DSH 插件开发全流程。它实现了一个可被 DeepSeek 模型调用的 greet 工具,覆盖了包分发、配置组合、插件配置定义、类型化 defineTool API 调用、结构化输出、参数校验等核心开发环节,可通过 dsh 命令行工具从 npm 安装到指定的 DSH profile。

本插件面向初次开发 DSH 插件的开发者,整个实现逻辑集中在单个入口文件,方便开发者跟随学习完整的工具调用流程:用户输入提示词后,模型选择调用 greet 工具,参数 schema 校验输入格式,执行逻辑对输入值做验证和标准化,工具返回结构化数据,输出渲染生成模型可读文本,最后模型生成最终回复。

本插件遵循 MIT 许可开源,依赖 Node.js ^22.19.0 或 >=24.0.0 版本,推荐使用 pnpm 进行包管理,当前已通过 DSH 0.1.2-rc.1 和 0.1.5-alpha.1 两个版本的兼容性测试,无网络、文件系统或 shell 访问权限,安全性较高,安装时需注意使用正确的 dsh 命令安装到 profile,不能仅用常规 npm 安装。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 4 stars - very few users, little community feedback星标只有 4,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

npx @deepseek-ai/dsh@0.1.2-rc.1 plugin --profile web add dsh-plugin-greet@0.3.1

把 0lidaxiang/dsh-plugin-greet 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-plugin-greet — Your first DeepSeek Harness plugin

dsh-plugin-greet

English | 简体中文

A beginner-friendly, installable DeepSeek Harness plugin that demonstrates bundle distribution, profile composition, plugin configuration, the typed defineTool() API, structured output, validation, testing, and a real model-driven tool call.

This is a community example, not an official DeepSeek AI plugin. DeepSeek Harness is currently in Developer Preview, so future releases may require compatibility updates.

greet tool call result

What you will learn

This repository keeps the implementation in one small entry file so that a new plugin author can follow the complete path:

User prompt
  → model chooses the greet tool
  → argument schema checks the shape
  → execute validates and normalizes values
  → the tool returns structured data
  → output.render creates model-facing text
  → the model writes its final response

The example covers:

  • exporting a validated plugin Config
  • injecting and using the Harness tools service
  • registering a tool with the current defineTool() schema DSL
  • required and optional tool arguments
  • English and Chinese greetings
  • friendly and formal styles
  • structured canonical output with a text renderer
  • actionable validation errors
  • unit tests and CI packaging checks

Tool contract

The plugin registers one model-callable tool named greet.

Input

Field Required Values Default
name Yes Non-empty string, at most 80 characters —
language No en, zh Plugin configuration
style No friendly, formal Plugin configuration

Leading and trailing whitespace is removed from name. Unknown arguments, empty names, unsupported languages, and unsupported styles are rejected with clear errors.

Output

The canonical result is structured data:

{
  "message": "Hello, Ada!",
  "name": "Ada",
  "language": "en",
  "style": "friendly"
}

output.render converts that value into the model-facing text:

Hello, Ada!

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev DSH-for-VSC 下一个 Next dsh-task-watcher →