Claude Code status lines vs mods

A status line is a script you set as statusLine in your settings. Claude Code pipes it a JSON snapshot of the session and prints its output at the bottom of the terminal.

A mod is a Claude Code plugin whose JavaScript or TypeScript runs inside Claude Code. It can draw panes and a band above the prompt, add slash commands and change how Claude Code behaves.

Where each one shows up

AttributeStatus lineMod
Claude Code in a terminalYesYes
Claude Desktop's Code tabNoYes
The VS Code extensionNot documentedYes, from extension 2.1.299

Claude Desktop's Code tab never runs the statusLine command. statusline-anywhere is a mod that runs it there and draws the output above the prompt. Set it up in Claude Desktop.

Which one to pick

Pick a status line for session facts at the bottom of the terminal, such as the model, git branch, context use and cost. A few lines of bash is enough. The guide to writing your own has a working script, and the gallery shows each one's real output before you copy it.

Pick a mod for what a status line can't do: a pane, a toast, a slash command, or a display in Claude Desktop. Mods need Claude Code 2.1.287 or later. Browse mods with real previews.

Both run with your permissions, so read the code before you install either. The mod safety guide covers what to check.

Common questions

Are mods replacing status lines?

No. Claude Code supports both. The statusLine setting has no deprecation notice, and /statusline still writes a status line script.

Do Claude Code status lines work in Claude Desktop?

No. Claude Desktop's Code tab never runs the statusLine command. The statusline-anywhere mod runs it and draws the output above the prompt.

Can a mod show the same numbers as my status line?

Mostly. A mod reads $.session.usage(), which gives it the context window, cost and rate-limit figures a status line gets. A few status line fields, such as lines added and removed, have no mod equivalent yet.