chronoclaude-setup

chronoclaude-setup is a command for Claude Code from pleasedodisturb/chronoclaude. It costs 17 tokens per session (821 once invoked), scanned B, original, MIT.

A setup command for adding the ChronoClaude statusline fragment to an existing Claude statusline script. A statusline is the small display that shows session information while the tool runs.

In plain words
What is it for?
Use it to inspect statusline settings, check refresh configuration, and get a paste-ready integration snippet.
Why use it?
It identifies the current statusline configuration and provides the wiring needed to display the fragment and refresh it periodically.

Command for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: reads .claude/ paths; mentions Claude Code.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the chronoclaude plugin — 3 commands, 5 hooks, 1 MCP server shipped together

Good fit Use it to inspect statusline settings, check refresh configuration, and get a paste-ready integration snippet.

Compare 6 commands from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add pleasedodisturb/chronoclaude
Claude Code
/plugin install chronoclaude

Made for: Claude Code.

Or install chronoclaude, the plugin that ships this one along with the rest of its 3 commands, 5 hooks, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for chronoclaude-setup

README.md
[![agentmods](https://agentmods.dev/badge/commands/pleasedodisturb/chronoclaude/chronoclaude-setup/github.svg)](https://agentmods.dev/commands/pleasedodisturb/chronoclaude/chronoclaude-setup)
Your own site
<a href="https://agentmods.dev/commands/pleasedodisturb/chronoclaude/chronoclaude-setup"><img src="https://agentmods.dev/badge/commands/pleasedodisturb/chronoclaude/chronoclaude-setup/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for chronoclaude-setup

Your own site · 80×15
<a href="https://agentmods.dev/commands/pleasedodisturb/chronoclaude/chronoclaude-setup"><img src="https://agentmods.dev/badge/commands/pleasedodisturb/chronoclaude/chronoclaude-setup.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 17 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 821 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00017 $0.00821
Opus 5 $0.00009 $0.00411
Sonnet 5 $0.00003 $0.00164
Haiku 4.5 $0.00002 $0.00082

Measured 10d ago against content hash 1ff1b227712e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade B, and why

chronoclaude-setup scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reads agent configuration directoriesmediumAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

1. Locate the user's current statusline configuration. Read `~/.claude/settings.json` (may not exist; may be named `settings.local.json`; project-scoped settings may be at `.claude/settings.json` in the working directory
commands/chronoclaude-setup.md · 59 lines

What it actually says

ChronoClaude statusline setup

Goal: help the user add the statusline-fragment to their existing statusline script and enable periodic refresh.

Steps:

  1. Locate the user's current statusline configuration. Read ~/.claude/settings.json (may not exist; may be named settings.local.json; project-scoped settings may be at .claude/settings.json in the working directory). Extract the statusLine.command string and any existing statusLine.refreshInterval value.

  2. If a statusLine.command is set, read the script it points to (handle leading bash , sh , env substitutions like ${HOME} or $HOME, and ~). Confirm it reads stdin once into a variable (look for $(cat) or an equivalent) — the snippet assumes that.

  3. Print a short summary:

    • The path of the statusline script being patched
    • Whether refreshInterval is already set and its current value
    • The plugin root path: note that $CLAUDE_PLUGIN_ROOT is set when the script runs as a hook, but the statusline script runs outside hook context — use the hardcoded installed path instead.
  4. Print the paste-ready snippet the user can drop into their statusline script. If the script already assigns stdin to a variable named input, use that name; otherwise suggest renaming. The fragment reads the full statusline JSON from stdin so it can see both session_id and model.id (used to blank the timer with --- when the model changes). Place the snippet just before the final output assembly. Example snippet:

    # --- chronoclaude fragment ---
    idle=$(echo "$input" | node "/path/to/chronoclaude/scripts/statusline-fragment.js" 2>/dev/null || true)
    [ -n "$idle" ] && parts+=("$idle")
    # --- /chronoclaude fragment ---
    

    Substitute the actual installed plugin path (e.g. /home/<user>/src/chronoclaude for local installs, or the path under ~/.claude/plugins/ for marketplace installs).

    To also show the current local time from the plugin (instead of a separate date call), add --clock to the fragment invocation (and optionally --clock-position after). The clock renders even before any elapsed time exists, so you can drop a hand-rolled date '+%H:%M' line and let the plugin own it.

    If the script does not use a parts bash array, show a variant that appends directly to the output string instead:

    # --- chronoclaude fragment ---
    idle=$(echo "$input" | node "/path/to/chronoclaude/scripts/statusline-fragment.js" 2>/dev/null || true)
    [ -n "$idle" ] && result="$result | $idle"
    # --- /chronoclaude fragment ---
    
  5. Print the settings change to enable periodic refresh:

    {
      "statusLine": {
        "command": "<existing command>",
        "refreshInterval": 1
      }
    }
    

    Tell the user to add "refreshInterval": 1 (seconds) to their statusLine object in ~/.claude/settings.json. Note that without it, the fragment still updates on every event (new message, tool result) but will not tick while idle.

  6. Do NOT modify any files. This command prints instructions only.

  7. Close with a one-line test hint: start a new Claude Code session, wait a few seconds after Claude replies, and you should see the elapsed time appear in the statusline and tick once per second.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 59 lines · 17 tokens per session scan B 1ff1b227712e

Subscribe to this mod's changes

chronoclaude-setup is a command published in the GitHub repository pleasedodisturb/chronoclaude (6 stars, last pushed 1mo ago), licensed MIT. It adds 17 tokens to every session and 821 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.