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

nexus-canon

v1.9.5

Published

Portable agent memory in a git repo you own — the canonical agent history & memory store (canon): sync, translate, pull, capability artifacts, and project knowledge graphs across AI coding harnesses.

Readme

nexus-canon

Portable agent memory in a git repo you own.

Canon stores agent sessions in a provider-neutral, lossless, append-only canonical format and translates at the edges — so the same history serves any model, any provider, and any harness. This package is the standalone pipeline: scaffold a store, sync native harness session files into it, maintain the canonical line, and pull sessions back out wherever you want to resume. Capability artifacts (skills, agents, MCP configs) and project-scoped knowledge graphs ride the same store — graphs join the history and code halves in one NetworkX node-link file: session→file touched edges scanned from tool-call content, plus an auto-detected graphify code graph when present, every edge confidence-tagged.

npm i -g nexus-canon
nexus-canon init my-canon --remote <private-repo-url>
nexus-canon sync && nexus-canon translate
nexus-canon list
nexus-canon pull <session-uuid> --to .cortex/sessions
nexus-canon pull <session-uuid> --strip-signatures   # shared-store portability:
                           # thinking signatures validate against the ORIGINATING
                           # account; the flag converts thinking to <prior_reasoning>
                           # text in the materialized COPY only (canon line untouched)
nexus-canon watch          # daemon: full pipeline (sync→translate→graph) on change

Keep the store current automatically. watch fs-watches every declared harness session root (Claude Code, grok, gemini, cortex — built-in defaults plus HARNESSES.json overrides) and runs the full pipeline debounced — sync, then translate, then graph, so the canonical line and the project knowledge graphs stay current, not just the native copies (derivation is skipped when the sync copied nothing); an initial catch-up fires at startup. Browser sessions join automatically: a browser SPA pushes its capture to per-client browser-cortex-<id> branches of the same remote, and every sync folds those branches into main before committing. Run the watcher in the background (nexus-canon watch &), and/or add a cron catch-up for gaps when nothing is running (41 */6 * * * nexus-canon sync && nexus-canon translate — sync is idempotent and manifest-diffed, so runs are cheap). Inside the nexus-cortex harness there is additionally a per-turn hook: cortex config set CANON_AUTO_SYNC true schedules the same debounced pipeline after every completed turn.

Dependency-free (Node built-ins; canonical record types from @nexus-cortex/types). The nexus-cortex harness embeds this same package as cortex canon <verb> — one implementation everywhere.

Spec: docs/CANON.md — the record format, the contract (store once / translate at the edge / append-only / provenance recorded), the artifact dimension, and honest scope.

License: Apache-2.0.