liawzishen/claude-code-mods/tree/main/session-status
session-status
A Claude Code plugin mod adding a status line that shows the session's elapsed time, prompt count, and tool call count. Installable via CLAUDE_CODE_PLUGIN_DIRS or the claude --plugin-dir flag.
About this mod
session-status is a Claude Code mod from the claude-code-mods collection with a verified .claude-plugin/plugin.json and a hooks/register.tsx module registering a tool.call hook. It renders a status line with the session's time, prompts, and tool calls. Load it in every session by listing its folder in the CLAUDE_CODE_PLUGIN_DIRS env entry of ~/.claude/settings.json (with CLAUDE_CODE_PLUGIN_DIR_WATCH=1 for live reloads), or for a single session with claude --plugin-dir ./session-status. Validate and test with claude plugin validate and claude plugin test.
Installation
Check the author's README for the marketplace and plugin name first. Commands may change as the repository evolves.
claude plugin marketplace add liawzishen/claude-code-mods claude plugin install session-status
Original text / README
claude-code-mods
Mods that change Claude Code's UI, in the terminal and the desktop app's Code tab. Each folder is one mod: a plugin of function hooks.
| Mod | What it does |
| --- | --- |
| git-diff-timeline | A Git Diff timeline above the prompt. Click one commit to see it or two to compare them, with their commit messages. A Branches tab compares two branches. A GitHub-style "Files changed" panel shows each file's diff. |
| session-status | A status line with the session's time, prompts and tool calls. |
Use them
To load mods in every session, list their folders in the env block of ~/.claude/settings.json. Separate the paths with ; on Windows and : elsewhere:
{
"env": {
"CLAUDE_CODE_PLUGIN_DIRS": "C:\\path\\to\\claude-code-mods\\git-diff-timeline;C:\\path\\to\\claude-code-mods\\session-status",
"CLAUDE_CODE_PLUGIN_DIR_WATCH": "1"
}
}
A session reads this when it starts. With CLAUDE_CODE_PLUGIN_DIR_WATCH=1, open sessions reload a mod when its files change.
To load a mod for one session only: claude --plugin-dir ./git-diff-timeline.
Make a new mod
my-mod/
.claude-plugin/plugin.json { "name": "my-mod", "version": "0.1.0", "description": "..." }
hooks/hooks.json { "modules": ["./register.tsx"] }
hooks/register.tsx export const register: Register = (on, options) => { ... }
See CLAUDE.md for the rules the engine holds mods to.
Check a mod
claude plugin test ./git-diff-timeline
claude plugin validate ./git-diff-timeline
