Skip to content
PluginStats

@kym6464/claude-state weekly downloads statistics

By kym6464 · npm · Claude Code

A lightweight CLI for managing session-scoped state in Claude Code hooks

View on npm Fresh · Nov 4, 2026

@kym6464/claude-state has 2,884 recorded weekly downloads on npm, ranking #1456 of 2,855 tracked listings.

Weekly downloads
2,884
Official API · Nov 2, 2026
7-day growth
—
Insufficient history
30-day growth
—
Insufficient history
90-day growth
—
Insufficient history
Rank
#1456
Among tracked npm listings

About @kym6464/claude-state

claude-state

A lightweight CLI for managing session-scoped state in Claude Code hooks.

Why

Claude Code hooks often need to track state across a session (e.g., "only nudge once", "remember if lint errors were pre-existing"). Without a shared mechanism, each hook invents its own marker files, polluting /tmp and duplicating logic.

claude-state provides a single key-value store per session, scoped automatically by session_id.

Installation

brew install kym6464/tap/claude-state

Usage

claude-state [--session-id <id>] <command> <key> [value]
Commands
CommandDescriptionExit code
has <key>Check if a key exists0 if set, 1 if not
get <key>Print the value of a key1 if not set
set <key>Set a flag (boolean true)
set <key> <value>Set a key to a value
delete <key>Remove a key
listPrint all key-value pairs
Session ID

By default, claude-state reads the hook's JSON input from stdin to extract session_id. This means in the simple case you don't need to pass anything — just pipe stdin through.

If your hook needs stdin for other purposes, pass the session ID explicitly:

claude-state --session-id <id> <command> <key> [value]
Storage

State is stored in ${TMPDIR:-/tmp}/claude-state/<session_id>.json. Each session gets its own file, automatically created on first write.

Examples

Simple hook — only fire once per session

A PostToolUse hook that provides feedback to Claude, but only the first time:

#!/bin/bash
claude-state has migration_warning_sent && exit 0
claude-state set migration_warning_sent
cat <<'EOF'
{
  "hookSpecificOutput": {
    "hookEventName": "PostToolUse",
    "additionalContext": "This project uses v2 of the config format. See docs/migration.md before making changes."
  }
}
EOF
Hook that also reads stdin

When your hook needs to inspect the tool input/output in addition to managing state, capture stdin first and pass the session ID explicitly:

#!/bin/bash
INPUT=$(cat)
SESSION_ID=$(echo "$INPUT" | jq -r '.session_id')

claude-state --session-id "$SESSION_ID" has deprecation_warning_sent && exit 0

if echo "$INPUT" | grep -q 'legacyApi'; then
  claude-state --session-id "$SESSION_ID" set deprecation_warning_sent
  # ... output nudge JSON
fi

Description from the npm listing.

  • claude
  • claude-code
  • hooks
  • state

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

@kym6464/claude-state weekly downloads on npm, last 90 days: 2,884 weekly downloads as of Nov 2, 2026.@kym6464/claude-stateWeekly downloads on npm · Last 90 days2,884downloads / week2.5K2.6K2.7K2.8K2.9K3K3.1K3.2KAug 4Aug 19Sep 3Sep 18Oct 3Oct 18Nov 2downloads / weekNov 2, 2026 – Nov 2, 2026 · 1 observations · Updated Nov 2, 2026pluginstats.com
@kym6464/claude-state weekly downloads on npm, last 90 days: 2,884 weekly downloads as of Nov 2, 2026.

7/30/90-day growth

@kym6464/claude-state weekly downloads growth on npm: 7-day growth unavailable, 30-day growth unavailable, 90-day growth unavailable.@kym6464/claude-stateWeekly downloads growth on npm2,884downloads / week now7-day growthinsufficient historyInsufficient history30-day growthinsufficient historyInsufficient history90-day growthinsufficient historyInsufficient historyGrowth vs. nearest observation to each baseline date · Updated Nov 2, 2026pluginstats.com
@kym6464/claude-state weekly downloads growth on npm: 7-day growth unavailable, 30-day growth unavailable, 90-day growth unavailable.

Ranking history

@kym6464/claude-state npm ranking history: currently #1456 (by weekly downloads).@kym6464/claude-statenpm ranking · by weekly downloads · Last 90 days#1456current rank#1444#1446#1448#1450#1452#1454#1456#1458Aug 7Aug 22Sep 6Sep 21Oct 6Oct 21Nov 5rankNov 4, 2026 – Nov 5, 2026 · 2 observations · Updated Nov 2, 2026pluginstats.com
@kym6464/claude-state npm ranking history: currently #1456 (by weekly downloads).

Listing placement

All npm2,853 listings · 143 pages · 1,428 shown · page 79, #18 (overall #1,578)
All npm: every listing in weekly downloads order

Listing placement

Claude Code460 listings · 23 pages · page 11, #12 (overall #212)
Claude Code: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (1)
Recent weekly downloads observations for @kym6464/claude-state
Date (UTC)Weekly downloadsChange vs. previous
2,884—

Similar npm Claude Code plugins

All 20 @kym6464/claude-state alternatives

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/@kym6464/claude-state. First seen Nov 4, 2026; last successful collection Nov 4, 2026. See the methodology.