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

@industrialalgebra/ijima-pi

v0.2.5

Published

Ijima memory service pi integration — wasm core + thin TS shim

Readme

@industrialalgebra/ijima-pi

Ijima memory tools for pi — the Anima ecosystem's centralized agent memory service.

Registers nine tools backed by a wasm-mapped client core:

  • memory_search, memory_save, memory_delete, memory_check_duplicate
  • knowledge_add, knowledge_query, knowledge_status, knowledge_invalidate, knowledge_timeline

Setup

In ~/.pi/agent/settings.json:

{ "packages": ["npm:@industrialalgebra/ijima-pi"] }

Point it at your daemon with one multi-capability grant:

IJIMA_URL=http://your-ijima-host:7373
IJIMA_TOKEN=<grant from: ijima token issue --principal <name> \
  --capabilities memory:read,memory:write,knowledge:read,knowledge:write>

Both may also live in your shell environment. The grant needs one capability per tool family; a missing capability surfaces in the tool error with the exact ijima token issue invocation to fix it.

Building from source

npm run build   # wasm-pack (the ijima-pi crate) + tsc shim

Auto-capture and wake-up (the loop-closers)

The extension closes the memory loop without agent diligence:

  • Auto-capture — after each assistant turn, the exchange is stored at the AutoCapture trust tier (importance 0.5, length-gated, truncated at 2000 chars, silent failure — capture never interrupts a session).
  • Wake-up injection — every system prompt gains an ## Agent Memory (ACTIVE) block: a tool reminder plus your wake-up essentials and doctrine (GET /wakeup), refreshed per session.
  • Token fallbackIJIMA_TOKEN env, then ~/.config/ijima/token (or $IJIMA_TOKEN_FILE), so shells that didn't source the env still work. IJIMA_URL falls back to ~/.config/ijima/url the same way.
  • Home namespace — set IJIMA_NAMESPACE=ns_<org>_shared and captures, saves, and wake-up operate in that wall instead of the personal namespace: shared knowledge stays shared (and other orgs stay walled). Requires daemon ≥ 0.2.5 for namespaced wake-up; captures work on 0.2.2+.
  • Content-derived ids — memories are id'd by content hash (mem_<hash16>): same content, same id, meaningful in transcripts.

memory_save remains the deliberate path: explicit saves land at the Explicit tier with higher importance — auto-capture is the floor, not the ceiling. An E2E harness (e2e.mjs, run against a live daemon) proves the full cycle: capture → wake-up → injection.

The bundled skill

The package ships a ijima skill (auto-registered by pi alongside the tools): the namespace mental model, why "empty" results are usually scoping rather than missing data, a diagnostics ladder, and memory-saving conventions. If an agent reports the brain looks empty, point it at that skill before it speculates about server state.

License

Apache-2.0 — same as the Ijima workspace.