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

@knyazevai/dsh-acp-demo

v0.1.5

Published

ACP automation server app: agent spine + JSONL persistence + ACP transport, with a JSON-RPC stdio bin

Readme

@knyazevai/dsh-acp-demo

English | 中文

ACP(Agent Client Protocol)自动化服务器应用:默认 agent(智能体)主干、客户端通过 @knyazevai/dsh-acp 创建的 agent、JSONL 持久化,以及语义检查点机制,并通过一个 JSON-RPC stdio bin 对外提供服务。程序化客户端创建新会话;此包不挂载人工交互 UI。

组合

| 插件 | 角色 | |---|---| | @knyazevai/dsh-agent-spine-demo | 不含提供方且不预创建 agent 的 agent 主干;session/new 创建每个 agent。 | | @knyazevai/dsh-session-persistence-jsonl | 检查点、可观测性和快照回放所使用的持久会话日志。 | | @knyazevai/dsh-session-checkpoint-policy | 在模型调用和顶层工具 effect 前建立持久性屏障,并为已完成步骤建立检查点。 | | @knyazevai/dsh-session-query-sqlite | 派生的精确/FTS 会话查询服务;先于 ACP 传输打开,使叶节点消费方在首次模型请求前就绪。 | | @knyazevai/dsh-acp | 通过 stdin/stdout 提供的纯自动化 ACP 传输。 |

应用不安装命令、用户交互、会话导航、配置选择器或 stdout logger。它通过一个有序 effect 拥有这些插件,因此查询服务会在 ACP 接受工作前就绪,而 ACP 会话会在检查点与持久化插件卸载前完全停稳。叶节点配置负责提供 LLM(大语言模型)、执行器、沙箱、审批、文件系统和面向模型的工具插件。

配置

| 键 | 默认值 | 路由目标 | |---|---|---| | provider | 必填 | 每个由 ACP 创建的 agent 所用的提供方路由。 | | model | 必填 | 每个由 ACP 创建的 agent 所用的模型。 | | maxParallelToolCalls | agent loop(智能体循环)默认值 | 正整数工具调用并发上限;1 表示串行。 | | persona | 无 | 供 dsh-system-prompt 使用的部署 persona 模板。 | | toolOrder | 字典序 | 供 dsh-system-prompt 使用的显式面向模型工具顺序。 | | tools | { mode: 'native' } | Native、Code Mode 或组合式模型工具传输。 | | dshHome | $DSH_HOME~/.dsh | bash 与本地 skill(技能)发现共享的 harness 主目录。 | | sessionTitle | 主干示例限制 | 持久后备标题限制;标题仍不会进入 ACP wire。 | | persistenceRoot | ./.sessions | JSONL 后端根目录,以及派生 session-query.db 索引的父目录。 | | packChunks | true | 在存储中打包连续的增量分片事件。 | | persistenceCompression | zstd | 带校验和的 Zstandard 帧,或原始 none。 | | workspaceContext | 必填 | 工作区指令字节预算/配置,或 false。 | | skills | 拥有者默认值 | skill 注册表、本地提供方和面向模型的 skill 工具。 | | toolBash | 拥有者默认值 | 面向模型的 bash 工具配置。 | | jobs | { maxConcurrentJobsPerOwner: 10 } | 进程内按 owner 限制活动任务的准入配置。 | | toolJobs | 拥有者默认值 | 通用后台任务控制配置,或 false。 | | goals | 拥有者默认值 | 持久化的同会话目标领域与模型工具,或 false。 |

已交付的 examples/acp-agent/cordis.yml 添加 DeepSeek 适配器、沙箱化 bash 与文件系统提供方、一次性审批策略、压缩(compaction)、subagent、工作流、钩子,以及面向模型的工具。应用提供派生会话查询索引,而面向模型的查询消费方仍由叶节点显式选用。快照 overlay 只替换非确定性提供方或策略值。

Bin

dsh-acp-demo [--config path-to-cordis.yml](短形式 -c;默认为 ./cordis.yml)会加载 gitignore 排除的 .env,回放模式除外;DSH_SNAPSHOT=replay 选择同级 cordis.snapshot.yml;stdin EOF 会在退出前 dispose(资源释放)上下文并刷新会话。Loader 已安装的可选对等依赖(peer dependency)node-addon-require-builtin 使纯 Node 下构建后的 bin 可以解析裸插件说明符。诊断使用 stderr,因为 stdout 是 ACP wire。

模型体验

模型体验由 dsh-agent-spine-demo 和叶节点的面向模型插件间接提供。ACP 提示词文本会成为普通的已记录用户消息;协议元数据与权限选择不会进入模型请求。

KV Cache 影响

每个会话仅追加;应用本身不添加请求前缀内容。

已知限制与暂缓事项

  • JSONL 持久化固定不变:使用其他后端需要另一种组合。
  • 同级插件可能破坏 stdout:应用无法阻止另一个 Cordis 配置项写入非协议字节。
  • 只支持新建自动化会话:恢复和人工交互属于其他运行入口。