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

@chubbyclaw/dsh-acp-full

v0.2.1-alpha.1.2

Published

ChubbyClaw fork of @deepseek-ai/dsh-acp: reports AIR subagent and async-task background work over ACP.

Readme

@chubbyclaw/dsh-acp-full

A patch over @deepseek-ai/dsh-acp — the automation-only ACP server inside DeepSeek Harness — that also reports background work (subagents and detached jobs) over the ACP stream.

The upstream ACP surface carries only committed messages, thoughts, generic tool lifecycle, configuration and context usage. A platform driving a harness agent therefore cannot tell that the agent dispatched a subagent or left a shell running in the background. This change adds exactly that, using the draft agent-client-protocol#1992 notifications that claude-agent-acp already implements.

What it adds

Emitted only to a client that negotiated the capability in clientCapabilities._meta.jetbrains.air; every other client sees the stock ACP surface, byte for byte.

| Capability | Emitted updates | Source | | --- | --- | --- | | nativeSubagentSessions | subagent_spawned, subagent_state_update | the harness session/created and subagent/end lifecycle | | asyncTasks | async_task_spawned, async_task_progress, async_task_state_update | the ctx.jobs registry |

It also answers the draft _session/async_task/stop extension request by killing the named job, so a client can stop one detached job without touching the main turn.

How it runs

The harness stays stock DeepSeek Harness. This package is a profile for it, so the launch line still names the upstream binary:

npx -y @deepseek-ai/[email protected] --profile chubbyclaw-full-acp

The package ships both halves:

  • lib/ — the patched bridge, a drop-in replacement for the stock acp row;
  • profile/ — the ready chubbyclaw-full-acp profile: it disables the stock acp row and inserts this bridge, and declares which dsh runtime it targets (package.json → chubbyclaw.dshRuntimeVersion).

cclaw prepares that profile for the owner with no pnpm, no clone and no extra install step: npm pack @chubbyclaw/dsh-acp-full, extract lib/ into $DSH_HOME/profiles/chubbyclaw-full-acp/node_modules/@chubbyclaw/dsh-acp-full/ and profile/ into the profile root, then launch the pinned dsh above. The bridge's @deepseek-ai/dsh-* imports resolve to the harness installation, so no dependency tree is installed.

Repository layout

This is the only repository: the change lives as a patch over upstream, not as a fork of the whole harness.

| Path | What it is | | --- | --- | | lib/ | the built bundle and declarations — what npm ships | | profile/ | the chubbyclaw-full-acp DSH profile template | | patches/ | the change over upstream, one patch per commit | | scripts/build.sh | rebuilds lib/ from upstream at the pinned tag |

Rebuild

scripts/build.sh          # clone upstream at chubbyclaw.dshRuntimeVersion, patch, build, copy lib/
scripts/build.sh --test   # also run the upstream ACP test suite

DSH_UPSTREAM_TAG overrides the tag (default dsh-v<chubbyclaw.dshRuntimeVersion>). Bumping to a newer harness means bumping chubbyclaw.dshRuntimeVersion, refreshing the patch against the new tag, rebuilding, and publishing a new version.

Notes

  • Built against @deepseek-ai/dsh-*@0.2.1-alpha.1; the peer versions are exact, so the loader only activates the bridge on that runtime. Widen them (and re-verify) only when a range has actually been tested.
  • The platform client must advertise _meta.jetbrains.air and read the raw frames: the published @agentclientprotocol/sdk client rejects unknown sessionUpdate variants in its strict schema, while the server sends them unchanged.
  • MIT, same as upstream.