Feature request: welcomePanel setting for plugin-driven header customization
Summary
Allow plugins to customize the right-side panel of the Claude Code welcome screen via a welcomePanel setting, similar to how statusLine already works for the footer.
Motivation
The current welcome header shows a hardcoded "Tips for getting started" panel with suggestions like "Run /init to create a CLAUDE.md file". In team environments with plugins that orchestrate workflows (dashboards, Jira integration, onboarding), this panel is wasted space — and sometimes actively counterproductive when the tips suggest actions the team doesn't want engineers to take.
The statusLine setting already proves the pattern: a command-type hook that renders dynamic content in a fixed UI slot. A welcomePanel equivalent for the header's right-side panel would let plugins show contextual information at session start — project status, active stories, environment health, etc.
Proposed API
// settings.json
{
"welcomePanel": {
"type": "command",
"command": "node path/to/my-welcome.js"
}
}
The command would:
- Run at session start (before first prompt)
- Output plain text or markdown to stdout
- Replace the "Tips for getting started" / "Recent activity" right-side panel
- Fall back to the default panel if the command fails or returns empty
Use cases
- Team plugins — show team-specific onboarding tips instead of generic ones
- Orchestration dashboards — display active stories, blockers, or sprint status
- Environment checks — surface warnings (outdated deps, missing config) prominently in the header rather than buried in model context via SessionStart hooks
- Project context — show relevant project info (branch, last commit, CI status) at a glance
Current workarounds and their limitations
| Approach | Limitation |
|----------|-----------|
| SessionStart hook | Output goes to model context only, invisible to the user in the terminal |
| statusLine | Single line at the bottom, not enough space for a dashboard |
| --append-system-prompt | Model-only, not visible in terminal UI |
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗