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

devlogbook

v1.1.0

Published

Project-selectable CodeGraph, Engram, Obsidian, and OpenCode traceability toolkit

Readme

Devlogbook

Portable npm package (formerly opencode-traceability; the traceability command name still works as an alias) that lets each developer investigate their own Engram memories and current repository with CodeGraph, then generate a local Obsidian-compatible knowledge graph.

The package contains no project memories, no vault notes, no SQLite database, and no credentials.

Install

From npm:

npm install --global devlogbook

For a local package build:

npm install --global .\traceability-kit

Requirements:

  • Node.js >= 18; npm installs obsidian-intelligence automatically.
  • Engram CLI available as engram or through ENGRAM_BIN.
  • CodeGraph initialized in the selected repository.
  • OpenCode is optional for CLI-only use and required for the plugin.

Create a project graph

The user chooses the project and vault. Nothing is imported until sync is executed.

# <your-project> = your Engram project name (e.g., the repo you are working on)
# <path\to\your-repo> = path to that repository checkout
devlogbook init `
  --vault "C:\workspace\traceability-vault" `
  --project "<your-project>"

devlogbook sync `
  --vault "C:\workspace\traceability-vault" `
  --project "<your-project>" `
  --repo "C:\workspace\<your-repo>"

sync performs:

  1. engram obsidian-export for the selected Engram project.
  2. -sessions/-topics pruning and dangling-link neutralization (operational noise out of the vault).
  3. Feature grouping: notes are regrouped by project functionality (engram/<project>/<feature>/) using a keyword map — <vault>/features.json or the shipped config/features.example.json; an editable per-feature MOC is generated; unmatched notes go to misc/.
  4. CodeGraph caller enrichment for notes containing codegraph_symbols.
  5. Obsidian Intelligence reindexing using the bundled npm dependency, or OBSIDIAN_INTELLIGENCE_CLI when overridden.

The generated graph belongs to the selected user/workspace. A different developer can select a different project and vault.

Available commands

devlogbook init   --vault <path> [--project <name>]
devlogbook sync   --vault <path> --project <name> --repo <path> [--since <date>] [--force]
devlogbook watch  --vault <path> --project <name> --repo <path> [--interval <minutes>]
devlogbook status --vault <path>
devlogbook graph  --vault <path> [--limit <n>]
devlogbook context --query <text> [--symbol <name>] [--project <name>] [--repo <path>] [--vault <path>]
devlogbook opencode-install --repo <path>

Example investigation:

devlogbook context `
  --query "qué archivos usan el módulo principal de esta funcionalidad y qué cambios tuvo" `
  --symbol "<your-class-or-function>" `
  --project "<your-project>" `
  --repo "C:\workspace\<your-repo>" `
  --vault "C:\workspace\traceability-vault"

Continuous mode

devlogbook watch `
  --vault "C:\workspace\traceability-vault" `
  --project "<your-project>" `
  --repo "C:\workspace\<your-repo>" `
  --interval 10

The watcher exports, enriches, and reindexes periodically. Stop with Ctrl+C.

OpenCode integration

Install the npm plugin in the project's OpenCode configuration:

devlogbook opencode-install --repo "C:\workspace\<your-repo>"

Restart OpenCode. The plugin provides traceability_context and triggers a bounded sync after an idle session or when the agent completes a work-unit git commit, whichever methodology the project uses (SDD, ODD, or plain ad-hoc work).

$env:TRACEABILITY_AUTO_SYNC = "true"

Optional hard gate: deny code edits until the agent consulted traceability context at least once during the session (investigate first, edit after):

$env:TRACEABILITY_REQUIRE_CONTEXT = "true"   # enable the gate
$env:TRACEABILITY_SKIP_GATE = "true"         # explicit escape hatch

The plugin uses these environment variables:

$env:TRACEABILITY_VAULT = "C:\workspace\traceability-vault"
$env:TRACEABILITY_PROJECT = "<your-project>"
$env:TRACEABILITY_REPO_ROOT = "C:\workspace\<your-repo>"
$env:OBSIDIAN_INTELLIGENCE_CLI = "<path-to>\node_modules\devlogbook\node_modules\obsidian-intelligence\vault-intelligence.js"

Team-sharing policy

Share the npm package or publish it to the team's private registry. Do not package or publish:

  • Markdown notes from another developer's project;
  • .vault-intelligence.db or other SQLite files;
  • .codegraph indexes;
  • node_modules;
  • .env, tokens, credentials, or absolute machine paths.

The package is code only. Each developer creates or selects their own vault and Engram project at runtime.

Source layout

bin/devlogbook.js         # npm CLI
plugin.ts                 # OpenCode plugin entrypoint
scripts/                  # sync, validation, and CodeGraph enrichment
config/                   # portable configuration examples

Safety

  • The CLI never deletes notes or application code.
  • Queries are bounded to eight results by default.
  • The package treats Engram as operational memory and Markdown as the generated projection.
  • Ambiguous project names must be resolved explicitly with --project.