
Statusline
Fix or set up the daily.dev headlines in Claude Code.
Install
npx skills add dailydotdev/daily --skill statusline -g -a claude-code -y- Repository
- dailydotdev/daily20.1k
- Category
- AI and agents
- Updated
- 3d ago
- License
- AGPL-3.0
- Context cost
- Lightabout 774 tokens
- Runs scripts
- No, instructions only
What it does
Fix or set up the daily.dev headlines in Claude Code. Use when the user sees the daily.dev headline twice, wants the old statusline entry removed after upgrading, asks to enable/disable the daily.dev statusline, or the headlines are not showing after installing the plugin.
Since plugin version 0.7.0 the headlines come from a hooks module (hooks/register.tsx) that Claude Code 2.1.275 or later loads automatically: a status line entry under the prompt and a band above it, with no settings.json edits. Older plugin versions wired the same script into statusLine in ~/.claude/settings.json. This skill cleans up that old entry, and sets it up only as a fallback on Claude Code versions that cannot load the hooks module.
First, find out which case applies:
- Run
claude --versionand compare with 2.1.275. - Read
~/.claude/settings.json(treat a missing file as{}) and look for astatusLinekey whosecommandreferencesstatusline/statusline.mjs. That is the legacy daily.dev entry.
Claude Code 2.1.275 or later
The hooks module shows the headlines on its own.
- If the legacy entry is present, remove the
statusLinekey and tell the user that was why the headline showed twice. IfstatusLinepoints somewhere else, leave it alone. - If no headline is showing at all: check that
nodeis on PATH, that the plugin is enabled in/plugin, and that the user has started a new session since installing. The band can also be hidden for the session with its Hide button; a new session brings it back. - Do not add a
statusLineentry on these versions.
Claude Code before 2.1.275
The hooks module does not load here, so wire the script into settings as before.
This plugin's statusline script lives at ${CLAUDE_PLUGIN_ROOT}/statusline/statusline.mjs. That path is version-pinned (it changes on every plugin update), so DO NOT write it into settings literally. Instead, derive the version-independent parent directory (strip the trailing /<version> segment from ${CLAUDE_PLUGIN_ROOT}) and use a shell glob that always resolves the most recently installed version.

