statusline

Configure a custom command-based status line for the Cursor CLI prompt.

Updated Aug 6, 2026
One-click install
npx skills add https://github.com/ferrarifankid04/ai-skills-public --skill statusline-ferrarifankid04
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: statusline
Source: https://github.com/ferrarifankid04/ai-skills-public/tree/main/cursor/skills-cursor/statusline
Command: npx skills add https://github.com/ferrarifankid04/ai-skills-public --skill statusline-ferrarifankid04

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? The Cursor CLI prompt area shows no session context by default, forcing users to manually check which model is active, how much context window remains, or which git branch they are on. ## Core Features & Use Cases - Custom status line commands: Register any executable or inline command in ~/.cursor/cli-config.json that receives a JSON session payload on stdin and renders stdout above the prompt. - Rich session payload: Access model name, context window usage percentages, working directory, vim mode, worktree info, and output style from the structured stdin JSON. - Multi-line and ANSI color output: Render multiple rows with terminal color codes, with configurable padding, update interval, and timeout. - Use Case: A developer wants a persistent indicator showing the current model and a context-usage progress bar. They write a small bash script using jq to parse the payload and render [Claude 4 Opus] ▓▓▓░░░░░░░ 34% above the prompt. ## Quick Start Set up a status line in my Cursor CLI that shows the current model name and context window usage percentage.

Frequently Asked Questions about statusline

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure a custom status line in the Cursor CLI?

Add a statusLine entry to ~/.cursor/cli-config.json with type set to "command" and a command pointing to an executable script or inline command. The command receives a JSON session payload on stdin and its stdout is rendered above the prompt.

What data is available in the Cursor CLI status line payload?

The stdin JSON payload includes session_id, transcript_path, cwd, model id and display name, context window token usage and percentages, output style, vim mode, and worktree info. Some fields like session_name, vim, and worktree are only present when applicable.

Can the Cursor CLI status line show multiple lines and colors?

Yes, each line of stdout renders as a separate row in the status area, and ANSI color codes are supported via tools like chalk, tput, or raw escape sequences. A padding option controls horizontal inset.

Why is my Cursor CLI status line not updating?

If the command exits non-zero with empty stdout, the previous text is kept. Commands are also killed if they exceed the timeout (default 2000ms) or if a new update arrives while the script is still running, so keep scripts fast.

How do I test a status line script without running the CLI?

Pipe a mock JSON payload into your script, for example: echo '{"model":{"display_name":"Opus"},"context_window":{"used_percentage":25}}' | ./statusline.sh. This simulates the stdin payload the CLI sends on each update.