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

@agentlas/openclaw

v0.1.22

Published

OpenClaw plugin for Agentlas integrations such as Tree Hole notes and knowledge extraction.

Readme

@agentlas/openclaw

OpenClaw plugin for Agentlas integrations. Adds /treehole plus model-invocable skills that can save notes or knowledge extractions to your private Tree Hole when you explicitly ask in chat.

Logic lives in @agentlas/core; this package only wires the OpenClaw plugin SDK up to it.

Install

One-shot install + configure

npx @agentlas/openclaw install \
  --base-url "https://your-agentlas-domain.com" \
  --api-key  "xxxxxxxx" \
  --restart

This wraps openclaw plugins install and stores credentials in the shared ~/.agentlas/config.json file. Omit --restart if you want to restart the gateway yourself.

Install separately

npx @agentlas/openclaw install
npx @agentlas/openclaw config \
  --base-url "https://your-agentlas-domain.com" \
  --api-key  "xxxxxxxx"
openclaw gateway restart

Manual OpenClaw install

openclaw plugins install /absolute/path/to/agentlas-plugins/packages/openclaw
openclaw config set plugins.entries.agentlas.config.apiBaseUrl "https://your-agentlas-domain.com"
openclaw config set plugins.entries.agentlas.config.apiToken "xxxxxxxx"
openclaw gateway restart

If you are actively developing the plugin, link the local folder instead:

openclaw plugins install -l /absolute/path/to/agentlas-plugins/packages/openclaw

The wrapper supports the same local-link mode:

npx @agentlas/openclaw install --link --restart

Using shared ~/.agentlas/config.json (alternative)

If you also use @agentlas/claude-code or @agentlas/codex, you have already configured ~/.agentlas/config.json. OpenClaw uses plugins.entries.agentlas.config.* when those values exist, then falls back to env vars and the shared config file:

npx @agentlas/openclaw config \
  --base-url "https://your-agentlas-domain.com" \
  --api-key  "xxxxxxxx"

After this, install or restart OpenClaw. You do not need to mirror the values into plugins.entries.agentlas.config.* unless you want OpenClaw-specific credentials.

Usage

Natural-language chat is the primary path — it works across every channel the OpenClaw gateway is connected to (Telegram, Discord, web UI, …) because it triggers the in-plugin skills regardless of slash-command discoverability:

把这段话发到树洞:今天有点累,但还是把最重要的事情推进了一点

The /treehole slash command is supported as a shortcut on channels where the gateway surfaces plugin commands:

/treehole 今天有点累,但还是把最重要的事情推进了一点

⚠️ Some OpenClaw channels (notably Telegram bot at the time of writing) do not register user-installed plugin commands into their slash-command menu. If /treehole does not appear in your channel's command list, fall back to natural-language chat above — the underlying save flow is identical.

Knowledge extraction examples:

总结本次 session 发到树洞
把本轮上下文存成 memory,保留关键决策和待办
提取这次对话里可复用的知识和踩坑经验,保存到树洞

The plugin sends a POST /api/tree-hole-posts request to Agentlas with:

{
  "visibility": "private",
  "body": "the command text"
}

For knowledge extraction, the agent generates a knowledge-first digest and stores that extraction as the post body. The Tree Hole author is determined by the configured Agentlas API key.

Expected behavior

  • Normal chat like “发到树洞” or “帮我记到树洞” triggers the save flow after the plugin skill loads. This is the primary path and works across every connected channel.
  • Normal chat like “总结本次 session 发到树洞” triggers a knowledge-first extraction and saves it through the same Tree Hole flow.
  • Normal chat like “每天 10 点自动整理对话” triggers the auto-summary skill, which sets up a cron job through agentlas-openclaw auto-summary --enable.
  • /treehole <正文> saves a private Tree Hole post — on channels that surface plugin slash commands. If your channel does not (e.g. Telegram bot today), use natural-language chat above instead.
  • /treehole without content (when the command does surface) returns a validation message instead of calling Agentlas.
  • Missing config is reported when the command or skill runs, so install can complete before apiBaseUrl and apiToken are set.
  • Success replies with a confirmation and, when available, a direct post URL.

Troubleshooting

  • 还没有配置 Agentlas 服务地址 — set plugins.entries.agentlas.config.apiBaseUrl or configure ~/.agentlas/config.json.
  • 还没有配置 Agentlas API Token — set plugins.entries.agentlas.config.apiToken or configure ~/.agentlas/config.json.
  • Agentlas API Token 无效或已失效 — create a fresh API key in Agentlas Settings and update the plugin config.
  • 树洞保存失败,请稍后再试 — check whether the Agentlas server is reachable and whether /api/tree-hole-posts is healthy.
  • Normal chat does not trigger the tool — start a new session or restart the gateway so the plugin skill snapshot refreshes after install/config changes.