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

@workscribe/cli

v1.15.6

Published

Passive developer work journal — automatic terminal activity summaries

Readme

Workscribe

npm version npm downloads license

Your work, automatically documented.

Workscribe is a CLI tool that passively captures your terminal activity and transforms it into readable daily work summaries — without you having to write anything.

$ workscribe summary

## api-service (feature/auth) — 2h 15m
- Set up authentication feature branch and installed JWT dependencies
- Resolved failing test suite for token validation logic
- Committed authentication middleware fixes

## infrastructure — 45m
- Restarted staging environment and verified deployment stability
- Investigated and resolved Docker networking issue in compose setup

Full documentation → — commands, configuration, AI providers, troubleshooting. This README covers getting started; everything else lives there and is kept current as the product changes.

How it works

A shell hook captures every command you run. At the end of the day, workscribe summary groups your activity into work sessions and sends structured event data (never raw commands) to your configured AI provider, which returns a standup-ready narrative.

shell hook → capture → SQLite → session grouper → AI provider → markdown

Requirements

| Dependency | Version | Notes | |---|---|---| | Node.js | 22 or later | Uses the built-in node:sqlite module introduced in Node 22.5 | | Shell | zsh or bash | Hook is appended to ~/.zshrc or ~/.bashrc by workscribe init | | OS | macOS or Linux | Windows is not supported — the shell hook requires zsh or bash. WSL2 works. |

Check your version: node --version

Install

<package-manager> install -g @workscribe/cli
workscribe init
source ~/.zshrc   # or restart your terminal

Use the global install flag for your package manager — e.g. npm install -g, yarn global add, pnpm add -g, or bun add -g.

workscribe init walks you through choosing an AI provider, installs the shell hook, and offers to install a Claude Code session capture hook if Claude Code is detected. Safe to re-run — updates outdated hooks and skips steps already complete.

Also capturing in your editor?

The Workscribe VS Code extension feeds file saves, debug sessions, and test/build runs into the same summary — activity pure terminal capture misses entirely. It also adds a status bar item that surfaces the last summary for a file you haven't touched in 24+ hours. Uses this CLI under the hood; no separate setup beyond installing it.

Uninstalling

If the CLI is still installed:

workscribe uninstall        # removes shell hooks, optionally deletes local data
npm uninstall -g @workscribe/cli

If you've already removed the binary and still see _workscribe_precmd errors in your terminal, remove the hook block manually:

  1. Open ~/.zshrc (or ~/.bashrc)
  2. Delete everything between # workscribe:hook:start and # workscribe:hook:end (inclusive)
  3. Run source ~/.zshrc or restart your terminal

AI providers

Anthropic, OpenAI, Gemini, Groq, Ollama (fully offline), or any OpenAI-compatible endpoint.

workscribe config set ai.provider anthropic
workscribe config set ai.apiKey <your-key>

Provider setup, defaults, and model overrides →

Commands

A few of the most common:

| Command | Description | |---|---| | workscribe summary | Generate today's work summary | | workscribe week | Generate this week's digest | | workscribe status | Check capture is active and show event counts | | workscribe config | View or update configuration |

Full command reference → — every command and every flag.

Privacy

  • All captured activity data is stored locally on your machine — nothing is written anywhere else
  • Credentials are redacted before any event is written to disk (tokens, API keys, passwords, JWTs)
  • Your captured activity (commands, sessions) is never sent anywhere except your configured AI provider, and only when you run workscribe summary
  • Use Ollama to keep that data fully on-device with zero external transmission
  • Separately, Workscribe sends an anonymous install ping (a random ID, CLI version, OS platform, Node version — no activity data, ever), disclosed during workscribe init. Opt out anytime: workscribe config set telemetry.enabled false

Full privacy & security details →

Configuration

workscribe config set ai.provider anthropic
workscribe config set session.idleTimeout 20
workscribe config set integrations.slackWebhook https://hooks.slack.com/services/...
workscribe summary --slack

Full configuration reference → — every key, Slack setup, webhooks, and more.

Debug mode

If capture isn't working, set WORKSCRIBE_DEBUG=1 to write errors to ~/.workscribe/debug.log:

WORKSCRIBE_DEBUG=1 workscribe status

Troubleshooting →

License

MIT