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

dsh-shikitor

v1.0.2

Published

Shikitor editor and sender surfaces for DeepSeek Harness

Readme

介绍

为 DeepSeek Harness Web 客户端提供 Shikitor 编辑器和消息发送器集成。

| en-US | 中文 |

安装

需要 DeepSeek Harness 0.1.0-rc.5 或更高版本,且属于 0.1 版本线 (<0.2.0)。

dsh plugin --profile web add dsh-shikitor

预览

从消息发送器发现上下文

工作区文件编辑器

编辑器设置

功能

这个集成提供:

  • DSH 消息发送器中的 Shikitor 编辑与补全菜单;
  • 用于当前工作区的文件编辑器标签页;
  • 可供其他客户端插件扩展的 Cordis ctx.shikitor 服务。

补全菜单支持鼠标选择、方向键上下、Enter/Tab 确认和 Escape 关闭。工作区文件按照路径层级从浅到深排列,并在滚动时分批加载。「消息发送器」设置可以用逗号分隔的包含/排除目录 Glob 进一步限制文件检索。文件引用在编辑界面只展示文件名。按住 Cmd 单击(Windows/Linux 使用 Ctrl)可以在 Shikitor 编辑器标签页中打开对应工作区文件。

Skill 发现覆盖 <projectRoot>/{.agents,.codex,.claude,.oo}/skills,以及用户 Home 下对应的目录。项目级同名 Skill 优先于全局 Skill。

注册表面插件

import type {} from 'dsh-shikitor/client'
import type { ClientContext } from '@deepseek-ai/dsh-client-runtime/client'
import mySenderPlugin from './my-sender-plugin.ts'

export const inject = ['shikitor']

export function apply(ctx: ClientContext) {
  ctx.effect(
    () => ctx.shikitor.register('sender', mySenderPlugin),
    'my-plugin: Shikitor sender contribution',
  )
}

消息输入行为使用 sender,文件编辑行为使用 editor。如果两个表面需要共享同一个 Shikitor 插件,可以分别注册同一个插件。

注册文件图标规则

export const inject = ['shikitor']

export function apply(ctx: ClientContext) {
  return ctx.shikitor.registerFileIcon({
    extensions: ['vue', 'svelte'],
    icon: 'vue-icon medium-green',
    color: '#41b883',
    priority: 100,
  })
}

默认文件名映射、Glyph、字体和颜色来自 Atom File Icons。规则可以匹配 extensions、精确 fileNames 或自定义 match 函数。icon 可以是 Atom File Icons class 列表,也可以是 DOM Renderer。更高的 priority 优先;优先级相同时,后注册的 Contribution 优先。调用 Disposer 只会移除对应插件自己的规则。

通用设置还支持持久化在浏览器中的路径规则。每条规则可以填写 Glob(* 匹配单层路径,** 跨目录匹配),并选择任意 Atom Glyph 或图片。图片来源可以是 HTTP(S)/data URL、工作区相对路径,或当前工作区内的绝对路径。工作区图片必须使用受支持的图片类型,并且不超过 1 MiB。后添加的用户规则优先。插件可以通过 fileIconRules 观察最终生效的 Registry;可编辑规则则通过 configuredFileIconRulesconfigureFileIconRules() 暴露。

「通用配置」负责共享的明暗模式、高亮主题系列、光标形态和文件图标策略。消息发送器和文件编辑器在没有独立配置时继承通用配置;resetSurface() 会移除覆盖并重新启用实时继承。行号与当前行高亮仍只属于文件编辑器。浏览器本地外观也可以通过 ctx.shikitor.appearanceresolveAppearance()configureAppearance() 访问。

编辑后的文件默认自动保存。可以在「文件编辑器」设置中关闭自动保存;关闭后仍可使用编辑器工具栏或 Cmd/Ctrl+S 手动保存。插件可以通过 ctx.shikitor.preferencesconfigurePreferences() 读取或修改这一行为。