npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ds-web-ui

v0.1.18

Published

Web chat interface for DeepSeek Harness (DSH) — UI faithfully ported from pi-web-ui, agent backend swapped to the DSH stdio JSON-RPC runtime. All JavaScript, no Python.

Readme

ds-web-ui

简体中文 | English

简介

DeepSeek Harness (DSH) 打造的 Web 聊天界面 —— agent 通过官方 DSH stdio JSON-RPC runtime(纯 Node,随包自带)在子进程中执行,事件经 WebSocket 流式推送到浏览器。界面从 pi-web-ui 忠实移植。

  • 思考块与工具调用,流式输出
  • 附件上传与文件浏览
  • 内置终端(xterm.js + node-pty)
  • 多对话并行、会话管理与模型切换
  • 状态栏:token 统计 / 1M 上下文窗口 / 花费估算

需要 Node.js ≥ 22.19 和一个有效的 DeepSeek API key

安装

npm i -g ds-web-ui            # 全局安装(推荐)
npx --yes ds-web-ui           # 或免安装直接运行(最新版,默认 :8989)
npm i -g .                    # 或安装本地源码

使用

启动

ds-web-ui                                  # 前台运行,http://localhost:8989
ds-web-ui --port 9099                      # 指定端口
DS_WEB_CWD=/path/to/project ds-web-ui      # 指定工作区

端口优先级:--port 参数 > DS_WEB_PORT > PORT > 8989。API key 通过 DEEPSEEK_API_KEY 环境变量、~/.ds-web/dsh-key.json 或自动复用 ~/.pi/agent/auth.json 提供。

停止

  • 前台:在运行它的终端按 Ctrl+C

更新

npm i -g ds-web-ui@latest     # 升级到最新发布版本

卸载

npm uninstall -g ds-web-ui

卸载不会删除你的聊天记录 —— 会话数据保存在 ~/.ds-web(或 DS_WEB_DATA_DIR),卸载/升级后依然保留。

作为系统服务运行(开机自启)

ds-web-ui 暂无内置的 server 子命令,推荐用 pm2 管理(跨平台,Windows / macOS / Linux 通用):

npm i -g pm2
pm2 start ds-web-ui --name ds-web-ui -- --port 9000    # 启动
pm2 save                                                # 保存进程列表
pm2 startup                                            # 配置开机自启(按提示执行命令)
pm2 status / pm2 logs ds-web-ui / pm2 restart ds-web-ui

如需自定义端口或工作区:pm2 start ds-web-ui -- --port 9000pm2 start ds-web-ui -- --port 9099 --cwd /path/to/projectDS_WEB_CWD 也可用环境变量传入)。Linux 也可以用 systemd,macOS 用 launchd,Windows 用任务计划程序。

License

MIT