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

ddbes-im

v1.0.2

Published

OpenClaw DDBES-IM channel plugin

Downloads

1,973

Readme

ddbes-openclaw-plugin

用于担当对接 openclaw。

工作区文件 → COS 上传

上传到 COS 时直接读取本地路径的字节,不做任何上传前的 PDF 处理(无 Ghostscript、无 pdf-lib)。

生成物必须保存在 workspace/<群 sessionId>/workspace/<私聊用户 id>/ 子目录下(不要放在 workspace 根目录)。插件从文件父目录名推导 type=6receiver,并按目录隔离 COS 扫描,避免串群/串私聊。

若回复里带有 OpenClaw 工作区生成文件路径,仍会走 COS 查询/上传;纯长文本回复不再自动生成临时 PDF 上传。

extensions/ddbes-im/templates/ 下的 Python 模板仅供工作区自行使用,插件不会在上传前调用。

私聊定时任务(OpenClaw 内置 cron

私聊里用户若表达「提醒 / 定时 / 预约」等,插件会在本轮提示中附带 cron 绑定说明(用户侧 IM id、账号 id),助手应使用内置 cron 工具 add

  • sessionTarget: "current"(绑在当前 DM 会话)
  • payload: kind: "agentTurn"message 写清到点要做什么
  • schedule: at / every / cron 表达式(可加 tz
  • delivery(通常可省略):OpenClaw 会从当前 sessionKey 推断 channel: ddbes-imto = 用户 id(入站 WS 的 senderId不要填助手 receiver)。多账号时在 delivery 写上对应的 accountId

任务成功创建后由助手直接回复用户即可(含 job id / 下次执行时间);到点执行后的结果若需回到 IM,依赖 Cron 的 announce 投递(同上 ddbes-im + 用户 to)。主会话 lastRoute 会在每条私聊/群入站时更新,避免子代理收尾或流式结束后无法把消息递回 IM。详见仓库文档 docs/automation/cron-jobs.md

群聊定时任务(sessionType = 2

群消息里 sessionId群 idsenderId 为发起定时的人,receiver 仍为助手。与私聊不同:必须在 cron job 上显式写 delivery,且

  • delivery.channel: "ddbes-im"
  • delivery.to: "group:<群 sessionId>"(必须有 group: 前缀,与入站 sessionId 一致;仅写裸数字会按私聊路由,发错会话)
  • delivery.accountId: 多账号时填写
  • sessionTarget / payload: 与私聊相同("current" + agentTurn + schedule

到点 announce 会把结果发回该群。提及(at)若需在提醒文案里点名,由助手在 payload.message 中按你们 IM 规范书写即可。