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

paperclip-plugin-tickler

v0.20.0

Published

Every org, one page: a cross-org HUD for Paperclip that shows what needs you and lets you answer approvals and agent questions inline.

Readme

The Tickler page: Orgs, Recent, Portfolio and Routines at left; the Needs-you queue, grouped by when you said you'd decide — Today, Unsorted, This week — owning the main column

One page that answers "what needs me, across every org, right now" — and lets you say when you will deal with each thing — instead of visiting each org's dashboard in turn.

  • ⚡ Answer in place. Approve, reject, reply, pick an option on an agent's question — right on the row.
  • 🗓️ Decide by. Say when you'll deal with each item — Today, This week, Whenever — and the queue sorts itself. It's Paperclip's own decision triage, so the dates follow you there.
  • 🏢 Every org at a glance. Who's working, token burn by the hour, what's waiting on you.
  • 👀 What agents are actually doing. Hover any agent or task for its live narration — not just "3 running".
  • 🚦 Trouble surfaces itself. Blocked projects, stalled runs, runs stuck past their agent's time limit, failed routines, overdue heartbeats.
  • ⬆️ Updates itself from a button, and rolls back from one too if a new version misbehaves.
  • 📱 Works on a phone, and 🧩 changes nothing in core — UI-only, prebuilt, and fits whichever Paperclip build it lands on.

📦 Install from inside Paperclip — no terminal needed. Settings → Plugins → Install Plugin, enter paperclip-plugin-tickler as the npm Package Name, and click Install. That's it — Tickler's button appears in the bar at the top of the page.

You need to be an instance admin, on a self-hosted Paperclip whose server can reach npm. Prefer the command line, or building from source? See Install.

Need a tweak or change? Join the Paperclip Discord and hop into the Tickler thread — that is where feature requests, bug reports and "is this supposed to do that?" land. Tickler is a community plugin, not an officially supported part of Paperclip, so please bring Tickler's rough edges here rather than to Paperclip's own issues. The same link lives behind the ? in the Tickler page header.

What it shows

Queue — the main column. Every item across every org that wants a human: approvals, questions and confirmations awaiting a response, blockers, failed runs, overdue heartbeats, routine exceptions. Actions are inline — Approve, Reject, Reply, answer a question, choose on a confirmation — so you rarely need to open the org at all. A row's title opens it, and Reject asks twice, because a rejected approval cannot be undone.

The Needs-you queue in its default grouping: a Today group with an overdue blocker, then Unsorted, where each new row offers Today, This week and Whenever beside its own Open, Approve, Reject or Reply

By default it groups by when you said you'd decide — Today (and anything overdue), Unsorted, This week, Alerts, Whenever, Snoozed. New items land in Unsorted with Today · This week · Whenever right on the row. Those are Paperclip's own decision-triage records, so a day set in Tickler is the day Paperclip's Decisions page shows. It can also group by severity, org, kind, project or age — by project is how you find the one project quietly generating half the noise.

Orgs — the left column: one line per org with who is working, its tokens by the hour over the last 8 or 24 hours, and how much is waiting on you. Hover a name for everything else; hover a capacity square for which agent it is and what they are doing right now. Beneath it the rail stacks Recent, Portfolio and Routines, so the whole column is one scan: who's working, what just moved, what's stuck. Orgs and Recent each have an Expand toggle for when the short list isn't enough. Archived and paused orgs are left out; to take an active one off the board too, Hide it from its hover card — Tickler stops asking for it, it keeps running in Paperclip, and N hidden in the header brings it back.

Recent — what's been touched lately, live rows first. Hover a row for the ticket, its status, and the agent's own last sentence about it.

Routines — only the broken ones, plus any you pin with the +: a pinned routine stays on top with a ▶ to run it now (press twice; it links the issue the run made).

In the header — the gear names the version you are on, offers the newer one in place when npm has it (or an earlier one, under Install an earlier version), and holds the token thresholds that colour the spend figures; the bell turns on browser alerts for the edges worth knowing about (an org going red, a critical item arriving); the expand control is kiosk mode, for a wall display. On a phone the panes stack into one column, and Pane order in the header lets you drag them into the order you want.

When something breaks — an error in one part of Tickler costs only that part: one org's line, one pane, or at worst the page shows a notice with the error, Try again, Copy details and Report on GitHub (a prefilled issue you review before submitting). If a new version is the cause, the notice offers Roll back to x.y.z — the newest version that worked in your browser — which reinstalls it in place and keeps your settings. See troubleshooting.

Full tours, with the rest of the screenshots: the board · the queue.

Note: The screenshots are Tickler's own demo mode — invented orgs, tickets and agents, not a real instance. Try it on your own install: add ?demo=1 to the Tickler page's URL (e.g. /ACME/tickler?demo=1). Nothing you click there reaches the server, and the header carries a DEMO DATA badge the whole time it is on.

Install

You need an instance admin account on a self-hosted Paperclip whose server can reach the npm registry. Nothing is built on your side: the package ships prebuilt and carries nothing tied to a particular Paperclip build, so upgrading Paperclip later needs nothing from Tickler.

In Paperclip: Settings → Plugins → Install Plugin, enter paperclip-plugin-tickler as the npm Package Name — just the name, no @, no version — and click Install.

From the command line:

npx paperclipai plugin install paperclip-plugin-tickler    # install
npx paperclipai plugin upgrade nickallevato.plugin-tickler # upgrade in place

From source, for working on Tickler:

git clone https://github.com/nickallevato/paperclip-tickler.git
cd paperclip-tickler && pnpm install && pnpm build
npx paperclipai plugin install /absolute/path/to/paperclip-tickler --local

Then find it. Tickler adds a button carrying its mark to the breadcrumb bar above every page, and a page at /<COMPANY-PREFIX>/tickler — /ACME/tickler, say, using any company's issue prefix. The page shows every org whichever prefix you arrive through; the prefix is only there because Paperclip mounts plugin pages under a company route.

docs/install.md covers every route in detail: upgrading, the directory layout a clone needs for its link: dependencies, and how to check the plugin actually loaded. If the page comes up blank, troubleshooting works through it in order.

Documentation

install · configuration · the board · the queue · architecture · troubleshooting · release notes

Contributing

Bugs and feature requests go through the three issue templates — feature request, bug report, or core limitation. docs/intake.md is the whole path from there to a merged change. You get an answer either way: a duplicate is closed pointing at the original, and something real but not now is parked, not closed, and reopens on a sentence. Not sure it is worth an issue yet? Say it in the Tickler thread on the Paperclip Discord first.

To send a change, read CONTRIBUTING.md — and before anything else, the one rule: Tickler never modifies Paperclip core. Everything lands here, through a plugin extension point. If the plugin surface cannot express a change, file it as a core limitation rather than working around it. CI enforces this, with no bypass.

Why "Tickler"? A tickler file is the office folder of dated reminders you work through by due date — which is what the decide-by queue is. Formerly Plica (paperclip-plugin-plica, through 0.6.0). MIT licensed.