Skip to content
Agent Memory
Skill

/customizing-statusline

Creates, edits, and migrates Letta Code statusline mods. Use when handling the /statusline command or continuing work started by /statusline.

From plugin
letta-code
3.8k26 skills8 hooks

Claude Code

$ npx -y skills add letta-ai/letta-code --skill customizing-statusline --agent claude-code

SKILL.md

customizing-statusline.SKILL.md
name: customizing-statusline
description: Creates, edits, and migrates Letta Code statusline mods. Use when handling the /statusline command or continuing work started by /statusline.

Customizing Statusline

Use this skill to create or update the global Letta Code statusline mod:

${LETTA_CONFIG_DIR:-$HOME/.letta}/mods/statusline.tsx

The statusline is a panel registered at `order: 0` — the primary line just below the input. It overrides the built-in `agent · model` line. Host UI can still temporarily preempt it for safety confirmations and transient hints.

Statusline ownership model

safety preemption
else transient host hint
else order-0 statusline panel
else built-in default statusline

The order-0 panel owns the whole primary row. It renders text (not React) and owns its own layout via the `row`/`columns` helpers.

Workflow

1. Check whether `${LETTA_CONFIG_DIR:-$HOME/.letta}/mods/statusline.tsx` exists. 2. If it exists, read it before editing and preserve unrelated code. 3. If it does not exist, synthesize a focused starter for the user's request. 4. If the user asks to migrate, import a `.sh` file, or match a shell prompt, read `references/migration.md`. 5. If API details or concrete patterns are needed, read `references/api.md` and `references/examples.md`. 6. If the request combines statusline work with commands, tools, events, other panels, or stateful mod behavior, also use `creating-mods` and its `references/architecture.md`. 7. Guard panel work with `letta.capabilities.ui.panels` when writing new files. 8. Edit `${LETTA_CONFIG_DIR:-$HOME/.letta}/mods/statusline.tsx`. 9. Summarize the absolute file path changed and tell the user to run `/reload` unless the command can reload automatically.

Bare `/statusline` behavior

If the user ran `/statusline` without a specific request:

  • If a custom statusline file exists, summarize what it appears to do and ask what they want to change.
  • If no custom file exists, explain that Letta is using the built-in default statusline and offer focused next steps:

1. start from a simple `agent · model` statusline 2. add project info like git branch, worktree, or PR 3. migrate an existing legacy statusline `.sh` file 4. match shell prompt / PS1 5. describe a custom statusline in their own words

Keep this conversational. Do not build a menu UI unless the product command explicitly asks for one.

Rules

  • Global-only for now. Do not create project mods.
  • Keep the mod single-file for MVP.
  • Do not assume extra npm packages are available.
  • Do not use relative multi-file imports yet.
  • Keep `render` synchronous and side-effect-free. Do not shell, fetch, await, or read files inside render.
  • Do async work in setup code, intervals, or subscriptions, store the result in a closure variable, then call `panel.update()` to re-render.
  • Register the statusline at `order: 0`. Compose left/right with `row(left, right, width)`; color with `chalk`.
  • Guard panel work with `letta.capabilities.ui.panels` in new files.
  • Return a disposer that clears timers/subscriptions and calls `panel.close()`.
  • Preserve existing mod code unless the user asks to reset.

Useful references

  • `references/api.md` - panel API, render context, lifecycle rules
  • `references/examples.md` - common statusline patterns
  • `references/migration.md` - legacy command `.sh` and PS1 migration
Read more
@letta-ai
Ships withletta-code

Letta Code is a stateful agent harness for creating agents that are more like people than tools. Letta Code agents have memory, identity, and a sense of experience over time.

Stars on GitHub

Momentum

stars in total
3.8k
Star history of letta-ai/letta-code on GitHub, a chart by star-history.com

Other skills on letta-code.

acquiring-skills

acquiring-skills

Discover and install skills from Hermes, ClawHub, GitHub, and other registries. Load this skill whenever a user asks for a…

@letta-ai@letta-aiInstall Skill
browser-use

browser-use

Control a real browser to navigate pages, click, type, fill forms, inspect rendered UI, take screenshots, or record video. Load…

@letta-ai@letta-aiInstall Skill
context-doctor

context-doctor

Investigate and repair an agent's context — memory, system prompt, and skills — using observed behavior as evidence. Use when the…

@letta-ai@letta-aiInstall Skill
creating-mods

creating-mods

Creates and edits trusted local Letta Code mods, including tools, slash commands, local-only model providers, lifecycle/turn…

@letta-ai@letta-aiInstall Skill
creating-skills

creating-skills

Guide for creating effective skills. Use when creating a new skill or updating an existing one that extends Letta Code's…

@letta-ai@letta-aiInstall Skill
customizing-commands

customizing-commands

Creates, edits, and enables Letta Code mod-provided slash commands. Use when the user asks to add a custom /command, slash…

@letta-ai@letta-aiInstall Skill

More skills from other plugins.

agent-cost-report

agent-cost-report

Believable agent cost report for any period, default the last 7 full days PT, not counting today. Measured tokens from Claude…

@thedotmack@thedotmackInstall Skill
bot-handoff

bot-handoff

Keep a durable record of work passed between Bots in the shared Hindsight memory bank. Use when handing work to another Bot, when…

@vectorize-io@vectorize-ioInstall Skill
mempalace

mempalace

Install, configure, and operate MemPalace, including a private local palace, a shared-brain hub, or a client joining an existing…

mempalace11d60k
@mempalace@mempalaceInstall Skill
mempalace

mempalace

Install, configure, and operate MemPalace, including a private local palace, a shared-brain hub, or a client joining an existing…

mempalace11d60k
@milla-jovovich@milla-jovovichInstall Skill

Questions about customizing-statusline.

Which coding agents can use customizing-statusline?
customizing-statusline installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.