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

local-task-offloader

v0.3.0

Published

Privacy-first Codex plugin for local source offloading, portable setup, and explicit private project sync.

Readme

Local Task Offloader

A privacy-first plugin for ChatGPT and Codex that routes large, routine work through a local AI model while keeping Codex responsible for source retrieval, authorization, and final judgment.

It can:

  • offload large PDF and text reading to Ollama on the user's machine;
  • return a compact, evidence-linked source digest before the large source enters Codex context;
  • report estimated input-token reduction and measured local processing time;
  • maintain an operational-only local dijavu.json performance history;
  • create and restore portable Move-out bundles; and
  • synchronize an explicitly selected project between two machines through a user-owned private GitHub repository.

Install

Requirements:

  • ChatGPT desktop or Codex with plugin marketplace support;
  • Node.js 18 or newer;
  • Python 3.11 or newer for PDF extraction, Move-out, and Project Link;
  • Ollama for local inference; and
  • Git, GitHub CLI, and a GitHub login only when using Project Link.

Add the public marketplace and install the plugin:

codex plugin marketplace add rchau8502/local-task-offloader
codex plugin add local-task-offloader@local-task-offloader

Then restart the ChatGPT desktop app or start a new Codex task. Ask:

Use Local Task Offloader to check whether my computer is ready.

The marketplace installs the npm package. Installing the package with npm install alone downloads the files but does not register the plugin with Codex.

First use

The plugin begins with a read-only hardware and runtime check. If Ollama or a model is missing, it shows the proposed runtime, model, approximate download, and reason before requesting installation approval. It never installs the runtime or downloads a model without explicit confirmation.

An already installed Ollama runtime is started lazily only when an eligible offload actually needs it. Model selection considers currently free VRAM instead of GPU capacity alone.

When local inference actually processes task content, progress and final responses begin with:

OFFLOADING

The final response ends with an estimate similar to:

Offload report — estimated input tokens kept out of Codex context: ~18,400 (73%); processing time: local 9.2s vs current Codex model estimated 14.0s (heuristic baseline).

Local time is measured. Input-token reduction and Codex time are estimates. They are not quota, credit, billing, or money calculations.

Conversation compaction

Codex owns conversation-history compaction. This plugin does not replace Codex automatic compaction or the /compact command, and it does not run a second local summary after an offload. Local compression applies only to the large source being processed.

What belongs locally

Good candidates include:

  • long PDF or text extraction;
  • bounded summarization and indexing;
  • repetitive classification; and
  • compressing retrieved source text before returning evidence to Codex.

Codex remains responsible for:

  • current web retrieval and source comparison;
  • high-stakes medical, legal, financial, or security conclusions;
  • permissions and external actions;
  • resolving conflicting evidence; and
  • the final answer.

Privacy

Inference traffic stays on localhost. The plugin does not send prompts, documents, or extracted content to its maintainers.

Dijavu stores only:

  • a sequence number;
  • a broad task category;
  • an approved local-model label;
  • success state;
  • estimated token counts; and
  • elapsed local time.

It never stores names, gender, hobbies, birthdays, ages, preferences, expertise, contact details, locations, employers, schools, account identifiers, file paths, source text, credentials, relationships, or sensitive medical, legal, or financial information.

See PRIVACY.md for the complete policy.

Move-out

Move-out inventories portable plugins, personal skills, standalone MCP definitions, and known memory locations. It can create a checksum-protected ZIP and restore non-conflicting components on another machine.

Public marketplace plugins are recorded as reinstall instructions rather than copied from cache. Only unpublished local plugins and personal skills are bundled.

Authentication files, tokens, passwords, private keys, cookies, and secret environment values are never migrated. Memory is included only after a separate warning and approval. Move-out ZIP files are not encrypted.

Project Link

Project Link requires an independent GitHub login on each machine. It:

  • creates or connects only to a repository GitHub reports as PRIVATE;
  • scans the current tree and Git history for likely credentials;
  • refuses symlinks, Git submodules, merge states, unsafe divergence, and non-fast-forward updates;
  • never force-pushes or discards either machine's work; and
  • requires explicit approval for every download, upload, or bidirectional synchronization.

Development

Run the complete release checks:

npm test

Inspect the exact npm archive before publishing:

npm pack --dry-run

The project uses only Node.js and Python standard libraries at runtime.

License

MIT