Documentation

Install it, understand it, and know exactly what it does and does not do.

Quick answer

Install the Pulse Code agent with one command, give it the API key from your account, and it imports your whole Claude Code history and then keeps up on its own. To name a scheduled job, wrap the command with cc-run. Everything else happens in the dashboard.

Last updated 14 September 2026

Installing the agent

Linux and macOS:

curl -fsSL https://code.claudepulse.cloud/downloads/install.sh | sh -s -- --key YOUR_API_KEY

Windows, in PowerShell:

& ([scriptblock]::Create((irm https://code.claudepulse.cloud/downloads/install.ps1))) -Key YOUR_API_KEY

Both scripts print exactly what they will do before doing it, check the download against a published SHA256, and refuse to install if it does not match. They are safe to run twice — re-running upgrades in place and keeps your config.

Where things live

Binaries/usr/local/bin/pulsecode-agent
Config~/.pulsecode/config.json
State~/.pulsecode/state.json
Job records~/.pulsecode/cron-runs.jsonl
Your transcripts~/.claude/projects/

The last row is the one the agent only ever reads. Nothing is written there.

Commands

CommandWhat it does
pulsecode-agent enroll --key KRegisters this machine.
pulsecode-agent onceReads anything new, uploads it, exits.
pulsecode-agent runThe same, on a loop. This is what the service runs.
pulsecode-agent statusWhat has been tracked so far.
pulsecode-agent doctorChecks everything and explains any problem.

Naming scheduled jobs

Claude Code already marks headless runs, so scheduled work is separated from interactive work with no setup. What it cannot know is what you call the job. Wrap the command:

cc-run --job "nightly-seo-audit" -- claude -p "audit the site"

Everything after -- runs unchanged, and cc-run exits with that command's own exit code — so dropping it into an existing crontab line changes nothing about how that line behaves.

Reading the dashboard

Overview

Totals, the daily burn split by token bucket, and where the money went. The cache-read band is usually the tall one, and it is the cheapest — which is exactly why a single number misleads.

Sessions

Every session, sortable. Open one for the turn-by-turn timeline and the context growth chart.

MCP servers

Per server: calls, errors, result sizes and estimated context cost. Plus the heaviest tools, ranked by cost per call — a chatty tool is paid for on every later turn of the session.

Scheduled

Per job: runs, cost, trend, and which runs matched which session.

If the agent goes quiet

pulsecode-agent doctor

It checks the Claude Code directory, counts the transcripts it can see, confirms its own state lives outside your Claude directory, tests the connection, and parses a real transcript so a broken format shows up here rather than silently.

On Linux, if the agent stops when you log out, the user service needs lingering enabled:

sudo loginctl enable-linger $USER

What is sent

The full field-by-field list is on the privacy page. The short version: counts, names and timestamps — never your prompts, your code, or what your tools returned.

How the numbers are worked out

Which figures are exact, which are estimates, and the two counting mistakes that make most token maths wrong: the methodology page.

Other things worth knowing

How much does Claude Code cost per day?

It depends entirely on how you use it, and the honest answer is that most people have no idea until they measure. A light day of interactive work looks very different from a day with a scheduled job running every hour. The point of measuring is that the answer stops being a guess.

Does Claude Code show token usage by itself?

Claude Code writes detailed usage data to disk for every session, but it does not add it up for you across sessions, projects or machines. The numbers are already there — they just need reading, deduplicating and totalling.

Can I see which project costs the most?

Yes. Every session records the working directory it started in, so cost is attributed per project automatically. No tagging, no configuration.

What happens if I stop paying?

Your account drops to the free tier. Nothing is deleted immediately — you keep one machine and seven days of detail, and your longer-term daily totals stay intact, so your history does not vanish.

Do I have to send my data anywhere?

The counts, yes — that is what makes the dashboard work. The content, never. If even project paths are sensitive, the agent has a --redact-paths flag that hashes them before upload, so you still get per-project totals without the names.

Install it and see

Get started free

Free tier · No card · 60-second install