Feature request: per-project scoped statusLine and notifications
Context
Claude Code's statusLine in settings.json is a global config. When users set up a custom status line script that shows project-specific info (e.g. unread message counts, build status), it displays across all projects — even where it's irrelevant.
Proposal
Support per-project statusLine configuration, similar to how .claude/settings.json already provides per-project hook and permission settings. This would allow:
- Project-level
statusLinein.claude/settings.json(per-project) that overrides or extends the global one. - Pass project root path as part of the JSON input to statusLine scripts, so scripts can self-filter without hardcoding paths.
Option 2 is the minimal change — the statusLine script already receives JSON via stdin with workspace.current_dir, but having an explicit workspace.project_root would make project-scoping trivial.
Why
Users working across multiple projects shouldn't see status info from unrelated projects. Currently the workaround is hardcoding path checks in the shell script, which is fragile.
---
Note: this is a genuine feature request. A previous issue (#56412) was filed by mistake about a misconfigured script — this one is about the actual product gap behind it.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗