Project dashboard
Mods
A mod is a small plugin that changes your coding agent itself: what appears on screen (a side panel, a strip above where you type, an item in the status line, a quick notice) or what happens (blocking a dangerous command, changing a request before it arrives, a new slash command). Mods work in Claude Code only, since Codex doesn't let plugins change its screen or how it works.
Faundr's status line is configuration. A mod is code that runs inside the agent and reacts to what's happening.
Faundr's mod
Faundr ships a ready-made mod, faundr-mod:
- it warns you, once each, when the conversation's context or a usage limit (5-hour, weekly) passes 80% and 95%;
- with Bar above the prompt turned on in the dashboard (Settings → Status line), it shows the bars right above where you type.
To install it, type this in your agent:
/plugin install faundr-mod@faundr
It reads the same choices as the dashboard's Status line tab.
Build your own
Ask the agent with /faundr:mod and describe what you want to see or what should happen:
/faundr:mod a notice when I go more than 30 minutes without running the tests
The agent follows a best-practice routine:
- It loads the official plugin guide, which gives the exact API for the version you're running (it changes between versions).
- It checks whether you really need a mod. Sometimes a rule, a workflow or a status line item does the job with less.
- It asks only what's missing: what appears and when, where (terminal, desktop app, VS Code) and what you can turn on and off.
- It records the mod in Faundr as a feature, with its steps.
- It writes it carefully: logic separated from display (so it can be tested), state stored in the right place, no interference with other plugins, and it works in a narrow terminal and across more than one screen.
- It verifies before saying it's done: it validates, type-checks and runs the tests.
- It hands it over: it tells you how to see it working and offers to save the mod in a folder of yours.
While the agent writes, it asks once whether it can live-reload in this session. If you say yes, the mod appears as soon as the response finishes, and every change reloads on its own. If you say no, it loads in the next session.
Commands
| Command | Where | What it does |
|---|---|---|
/faundr:mod [what the mod does] | agent | Creates or adjusts a mod following the routine above. |
/plugin | agent | Lists installed plugins and mods; turns them on or off, updates and removes them. |
/plugin install <mod> --marketplace <owner>/<repository> | agent | Installs a mod from a GitHub repository. |
/reload-plugins | agent | Reloads plugins and mods without restarting. |
claude plugin validate <folder> | terminal | Checks the mod the way the agent will read it: what it turns on, what it calls and what would be refused. |
claude plugin test <folder> | terminal | Runs the mod's tests (*.test.ts). |
claude --plugin-dir <folder> | terminal | Opens a session with the mod loaded straight from the folder, for testing. |
claude --debug | terminal | Opens a session that logs why a mod didn't load or a hook was skipped. |
Troubleshooting
- The mod doesn't appear: run
/pluginand check that it's on, then run/reload-plugins. - A dimmed line shows the mod's name and "refused": the agent rejected something the mod drew or returned. The reason is on that line. Ask the agent to fix it with
/faundr:mod. - Nothing happens and there's no warning: start a session with
claude --debug. The reason ends up in the log.