Session Start
Purpose
Load context bundle from CLI, interpret signals, and propose focused work for the session.
Mastery Levels (ShuHaRi)
- Shu: Explain context, progress metrics, and concepts in presentation
- Ha: Explain only new or non-obvious signals
- Ri: Minimal output — context line, focus, signals, "Go."
Context
When to use: At the start of every working session.
When to skip: Continuation of an active session (context already loaded).
Inputs: Developer profile (~/.rai/developer.yaml). If no profile exists, ask for the developer's name and pass --name "Name".
Steps
Step 1: Load Orientation Bundle
rai session start --project . --context
Loads developer profile, session state, and orientation bundle. If graph unavailable: run rai graph build first.
IMPORTANT: This is the ONLY CLI command in this skill. The context bundle output is complete — do NOT invent additional flags (e.g. --section), sub-commands (e.g. rai context load), or follow-up CLI calls to "fetch more". If the bundle mentions available context sections, that information is for display only. All interpretation happens in Step 2 using inference, not additional tool calls.
Step 2: Interpret & Present
Check signals (priority order):
- Next session prompt → guidance from your past self, highest-priority continuity
- Release/deadline pressure → flag urgency with days remaining
- Session narrative → review decisions, research, artifacts for continuity
- Pending decisions or blockers → address first
- Communication preferences → adapt tone
Check MCP health (non-blocking, never alarming):
- Run
rai mcp listto detect registered servers - If no servers registered: skip silently (no output)
- If servers found: run
rai mcp health <name>for each - Collect status: healthy count, unhealthy count, total
- If health check fails (missing module, connection error, etc.): report as "not connected" — never show tracebacks or error details to the user. MCP servers are optional integrations, not critical infrastructure
- Run
Propose session focus from: pending items > current story/phase > deadlines
Present (adapt verbosity to developer level):
## Session: YYYY-MM-DD
**Context:** [Release →] [Epic] → [Story], [phase]
**Focus:** [goal]
**MCP:** [{total} servers, all healthy] or [{total} servers, {N} not connected — run /rai-mcp-status]
**Signals:** [any, or "None"]
Omit the MCP: line entirely if no servers are registered.
Output
| Item | Destination |
|---|---|
| Session initialized | CLI session state updated |
| Focus proposed | Presented to developer |
| Next | Begin work on proposed focus |
Quality Checklist
- Orientation bundle loaded successfully
- Signals interpreted in priority order
- Session focus proposed from pending work
- Verbosity adapted to developer ShuHaRi level
- MCP health checked when servers registered (silent skip if none)
References
- Profile:
~/.rai/developer.yaml - Session state:
.raise/rai/session-state.yaml - MCP:
rai mcp list,rai mcp health,/rai-mcp-status - Complement:
/rai-session-close