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

dsh-signal

v0.7.13

Published

Tidal DSH branding, verified multi-provider resources, filterable local analytics, and local provider identity overrides.

Readme

DSH Signal

DSH Signal extends the existing DeepSeek Harness surfaces with a pointer-responsive brand field, transparent Provider marks, one verified resource pill, and a local Token-usage view in Settings. It does not replace the DSH shell or model selector.

What it shows

  • The active billing route is read from DSH's modelDirectories service. The collapsed rail leads with verified brand/product identity (for example OpenCode · Go); the selected model remains secondary in the detail popover.
  • DeepSeek routes can show the official account balance from https://api.deepseek.com/user/balance; wallet balances never receive a percentage track.
  • OpenCode Go routes can show rolling 5-hour, weekly, and monthly quota from https://opencode.ai/zen/go/v1/usage. The rail chooses the first verified window in that order, so an unavailable hourly window falls back to weekly before monthly. Each available reset shows a minute-updating countdown first and its exact time second. Quota tracks and written percentages both use remaining capacity; the details retain the used value in the accessible label.
  • Codex routes read the independently installed Codex Connect status endpoint. The selected model's 5-hour window is preferred when present; a normal Codex plan that exposes only a weekly window shows that weekly value instead. Optional server-returned Credits are displayed only when present and are never described as money.
  • OpenRouter reads the authenticated key's official usage and optional limit fields from https://openrouter.ai/api/v1/key. When the provider returns limit_remaining, the rail shows 上限剩余; otherwise it honestly says 余额未提供 and keeps detailed usage as usage rather than relabelling it as a balance. It remains amount-only and never draws a percentage track.
  • Kimi/Moonshot international and China routes read their respective official /v1/users/me/balance endpoints. SiliconFlow reads the strictly allowlisted official /v1/user/info endpoint. All three remain amount-only wallet routes.
  • Providers whose organization resource APIs require a separate Admin/Management key, or expose billing only in a console, show a provider-specific explanation and fall back to exact local Token activity. The plugin never sends a normal inference key to an admin endpoint or invents a percentage, reset time, subscription, or balance.
  • Settings → Signal 用量 aggregates exact assistant/message.usage records from DSH's local session query service. Statistics can be recomputed for 7, 30, 90, or 365 days and filtered by Provider or model, while the daily calendar keeps a complete 365-day grid and dims dates outside the selected range instead of deleting cells. Daily cells expose exact Token, request, model, and input/output/cache splits on hover/focus; clicking pins that detail. Days before the first available usage record are labelled 未记录, rather than presented as zero; one-month cumulative data is labelled as a starting point instead of implying a trend.
  • Settings → Signal 外观 preserves local brand, subscription-label and Logo overrides. Authentication and model settings belong to an independently installed Codex Connect plugin.
  • The conversation header's utility row contributes a compact top-right 模型工作说明 action beside the native Session log utility. Its right-aligned panel translates the current session snapshot into four plain-language steps (understand, plan, act, check), stays open while focus moves around the conversation, and closes with its toggle, close button, or Escape. The panel has its own right-edge scroll track for the richer explanations.
  • The Settings view writes data freshness, last successful read, last scan attempt, missing credentials, and failure-with-cached-data explicitly. Resource and analytics failures retain the last successful values without pretending they are current.
  • Unknown or custom Provider IDs can be given a local brand name, subscription name, and transparent icon from the bundled mark library. These mappings stay in browser-local storage and never create a quota source.
  • Closing Settings returns focus to the Settings entry, and the activity tabs support arrow/Home/End navigation. The plugin does not inspect or move the desktop pet.
  • The rail uses a white surface with a soft shadow in the light theme and the inherited dark surface in the dark theme. A one-pixel blue gradient highlight flows continuously around the capsule in both themes and becomes static under prefers-reduced-motion.
  • Analytics reads only Token counts, an anonymous per-scan session ordinal, route identifiers, and event times. It does not inspect message bodies, estimate cost, or send analytics over the network.

DeepSeek, OpenCode, OpenRouter, Kimi/Moonshot, and SiliconFlow credentials are resolved only on the Host through the DSH credential service, provider settings references, environment variables, or the OpenCode login file. Every credential is sent only to a fixed or strictly allowlisted official HTTPS host. The independent Codex Connect plugin owns its OAuth file and official endpoints; retired Grok source and credentials are not loaded by Signal.

Motion

The 14.8px point field occupies up to 950 × 440 CSS pixels, drifts up to roughly six pixels with pointer inertia, and carries a phase-continuous water ripple around the pointer before returning gently. Dots move in shallow depth-separated currents instead of one rigid sheet. Across the official whale and complete slogan, the pointer lens locally replaces the glyphs themselves with solid DSH Signal Blue before blue refraction, caustic crests, a narrow specular meniscus, and an elliptical velocity wake distort that color. Black or white base glyphs remain visible only outside the active lens. Fast movement is immediately interruptible; stationary hover keeps both a clearly visible water-surface breath and a locally pulsing blue response. The semantic title and geometry remain fixed. The canvas pauses when hidden or offscreen; touch input and prefers-reduced-motion use a static field with no wordmark refraction.

The field follows live theme changes: light mode uses a visible cool light-gray dot palette, while dark mode derives its neutral dots from the current DSH label color.

DSH integration

  • conversation.hero.brand.mark — shadows the official mark occupant while reusing the official FishLogo component.
  • conversation.input.dock — adds the fixed-height resource rail.
  • settings.section — adds the Signal 用量 settings view.
  • settings.section — adds Signal 外观 for local display overrides.
  • conversation.session.header.utilities — adds the compact 模型工作说明 panel shown beside the native Session log utility, with a sidebar-safe right alignment.
  • signalResource — Host-only balance/quota service exposed through the Typert gateway.
  • sessionQuery — read-only local source for aggregate Token usage; corrupt sessions are isolated and reported as skipped.

No compiled DSH class names are referenced.

Verification

& 'C:\Users\1\.local\tools\node\npm.cmd' run build:client
& 'C:\Users\1\.local\tools\node\npm.cmd' run check
& 'C:\Users\1\.local\tools\node\npm.cmd' pack --dry-run
# DSH Desktop must be running on 3080 for the browser smoke pass.
& 'C:\Users\1\.local\tools\node\npm.cmd' run qa:browser

The source package is [email protected]. It declares dsh >=0.1.5-rc.1 <0.2.0. The floor moved here on purpose: the whole DSH client package set in the active profile is materialised at 0.1.5-rc.2, so claiming 0.1.1 compatibility would be a promise the surrounding install no longer honours. @deepseek-ai/dsh-credentials and @deepseek-ai/dsh-typert-protocol are pinned to 0.1.5-rc.2 to match the host, so a credential reference is never exchanged across two different copies of that module. Signal no longer bundles or registers login providers, account settings, or a Fast Mode control. Independent Codex Connect owns those features; Signal reads its redacted status endpoint for quotas. AGY and Grok remain retired. Old source snapshots are retained outside the published package for rollback. The maintenance helper only promotes Signal and preserves independently installed plugins. Validate the independent Codex Connect installation before deploying this split to a profile that still relies on embedded login.

Local rollback

Close DSH Desktop first. The repository includes a host-specific reversible maintenance helper. It always writes a fresh backup before changing the active profile.

$env:ELECTRON_RUN_AS_NODE = '1'
& 'C:\Users\1\AppData\Local\Programs\DeepSeek Harness Desktop\DeepSeek Harness Desktop.exe' `
  'C:\Users\1\Documents\ChatGPT\DSH 桌面端\tools\reconcile-desktop.mjs' --rollback

Rollback removes DSH Signal and restores [email protected] through the same candidate gate. Restart DSH Desktop after the transaction completes.

Resource freshness and card motion (0.7.2)

Resource refresh is foreground polling rather than a server push stream. The visible selected source is refreshed after the previous request settles; opening details, returning to the page, changing models, and finishing a turn request an additional refresh. Requests are coalesced and automatic failures back off. Provider-side caches may still delay the official quota. Verified values stay visible while refreshing.

Card surfaces stay opaque. Pointer-local edge light and a narrow travelling blue border accompany interaction; background pages and reduced-motion mode pause nonessential effects. Brand acquisition keeps the slogan visible from its first frame. Reference directions and attribution are recorded in output/visual-motion-references.md.