원클릭으로
arib-session-start
Session | Initialize session — read context, check I/O channel, report status, wait for approval
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Session | Initialize session — read context, check I/O channel, report status, wait for approval
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Memory | Code-graph subsystem — a native lightweight IMPORT graph (which file imports which, god-node candidates) built with ripgrep/grep, so a large monorepo can be navigated by structure instead of re-grepping every session. build/refresh/query. Honest scope: structural import graph, NOT semantic (no call-graph/type resolution); no Graphify dependency. Loads ON DEMAND only (zero always-on tokens). ADR-034.
Dev | Over-engineering review — reads a diff/module and returns a delete-list of bloat (single-use abstractions, premature generalization, speculative config, dead options) WITHOUT stripping legitimate structure. Advisory: returns recommendations, never auto-deletes. The on-demand companion to the ponytail-lite tripwire hook. Authored natively (no Ponytail dependency). ADR-033.
Wave | Pre-wave requirement lock — Act 1 derives the requirements from the codebase + memory (an honest grill, not guesswork), Act 2 hands the locked plan to an independent model (Codex) to tear apart until sign-off. Produces waves/<id>/PLAN.md + PLAN-REVIEW-LOG.md. Auto-chained idempotently from /arib-wave-start. If Act 2 can't run (no Codex), the wave proceeds but HOLDS MERGE for a human. Absorbs grill-me-codex (ADR-032).
Wave | Start a multi-session delivery wave — branch, plan, parallel architect+planner
Engine | Command the engineering team to deliver a known goal — dispatches the engineer-manager to decompose → dispatch specialists (parallel where safe) → integrate → reconcile (verification-agent) → merge gate. Scales its own reach: runs inline for a bounded goal, escalates to a parallel Workflow for a broad one, and paces under /loop for a multi-turn campaign — only when it needs to. Use when a goal needs a coordinated TEAM, not one specialist. Sibling of /arib-engine: the engine DISCOVERS its own backlog; /arib-build EXECUTES a goal you hand it.
Stack | NestJS architecture & patterns reference — modules/providers/DI, DTO+validation, guards/interceptors/pipes/filters, config, async lifecycle, testing, and the security + performance pitfalls that bite at scale. Use when building or reviewing a NestJS backend. Composes with security-auditor (OWASP), database-guardian (TypeORM/Prisma migrations), and performance (N+1). Authored natively (the ECC graft was unsourceable; this is CCM's own, MIT).
| name | arib-session-start |
| description | Session | Initialize session — read context, check I/O channel, report status, wait for approval |
Session Start is the foundation of productive Claude Code work. Every session—whether it's the first of the day or a quick check-in after switching branches—must begin with full context awareness. This skill ensures Claude Code never starts blind.
Why it matters:
Without Session Start, you might:
Session Start is mandatory. No exceptions.
/arib-session-start before doing anything elseShort answer: When in doubt, run it. The cost is 2 minutes of reading; the benefit is avoiding hours of rework.
The I/O channel is the bridge between Cowork (user oversight, async requests) and Claude Code (execution engine). It carries three types of information:
Run:
bash scripts/io-watcher.sh
Decision tree:
SIGNALS found → Process immediately, before anything else
halt → Stop all work, report to user, wait for new directionescalate → Notify user of a critical issue, wait for responsehotfix / rollback → Execute the code action specified, then reportREQUESTS pending → Report all pending items to user with priorities; propose processing order
Clear → No urgent items; continue to Step 1
Key principle: "The I/O channel bridges Cowork (oversight) and Claude Code (execution). Signals are urgent and interrupt the plan; requests are queued work that needs user prioritization."
Read only the always-on lean core at session start — CLAUDE.md and
CONSTRAINTS.md (plus the two memory files in Step 2). The other reference
docs below (TECH_STACK, CONTEXT_MAP, ERROR_PATTERNS) are read on demand
when the task touches them, NOT bulk-read at start. This keeps always-on
context ~8K instead of ~46K. Their entries are kept here as a reading map
(when to pull each), not a start-of-session checklist.
1. CLAUDE.md (Project Identity & Rules)
2. CONSTRAINTS.md (Hard Boundaries)
3. TECH_STACK.md (Approved Libraries & Versions) — read on demand
4. CONTEXT_MAP.md (Folder Structure & Ownership) — read on demand
5. ERROR_PATTERNS.md (Known Pitfalls & Solutions) — read on demand (esp. when debugging)
Lean-core reading order: CLAUDE.md sets global context; CONSTRAINTS.md sets boundaries. Those two are always-on. TECH_STACK / CONTEXT_MAP / ERROR_PATTERNS are pulled only when the task needs them — don't bulk-read them at session start (that was the pre-v3.8 ~46K habit; Lean Core is ~8K).
These files record the living state of the project—what's in progress, what's blocked, what the last session accomplished.
1. project_status.md
2. session_notes.md
Critical rule: If session_notes.md explicitly states "Next Session Starts With: [task]", treat that as the default plan. The user may override it, but you must propose it first.
Detection logic: Does this project have infrastructure to check?
docker-compose.yml in project root/services/api, /services/worker, /services/auth)If microservices architecture detected:
bash scripts/services-check.sh
docker compose up -d?"
docker compose up -d, wait 10 seconds, re-checkdocker compose logs --tail=30 [service-name], propose fixWhy this matters: Many tests and local development require all services running. If services are down, you'll hit mysterious failures later. Catching this now saves debugging time.
Get the ground truth about what branch you're on and what's changed recently.
Run:
git status
git branch
git log --oneline -5
What to look for:
Present a structured report that gives the user a complete picture of where things stand.
Template:
## Session Report — [DATE] [TIME]
**I/O Status**: [Clear / N signals / N requests pending]
**Branch**: [branch-name] ([N commits ahead of develop] / [N commits behind])
**Infrastructure**: [All healthy / N service(s) down / N service(s) unhealthy]
**Last Session**: [date] — [brief summary from session_notes.md]
**Current Task**: [from project_status.md — the high-level focus]
**Blockers**:
- [from session_notes or project_status]
- [any discovered in this check]
### Recent Changes (Last 5 Commits)
- abc1234 feat: added user authentication endpoint
- def5678 fix: corrected timezone handling in date picker
- ghi9012 refactor: extract validation logic into helpers
- jkl3456 docs: update API response schema
- mno7890 chore: bump lodash to 4.17.21
### Proposed Plan
Based on loaded context, propose a prioritized plan:
1. **Priority 1** — [from session_notes "Next Session Starts With" or I/O signal]
2. **Priority 2** — [from project_status blockers or identified issue]
3. **Priority 3** — [from user context or discovered opportunity]
**Estimated scope**: [10 min / 1 hour / full day]
**Risks/Notes**:
- [any constraint violations to watch for]
- [infrastructure considerations]
- [dependencies on other work]
Be explicit. The report is the contract between you and the user. If the plan surprises them, they'll say so here.
STOP. Do not proceed without explicit user approval.
This pause is not optional—it's a safety gate. The user may:
Never assume the report is approved. Always end with: "Ready to start? Say yes/confirm, or let me know if you'd like to adjust the plan."
Scenario: session_notes.md or project_status.md don't exist or are empty.
Action:
/arib-session-start normally, but note in the report: "First session detected — no prior context available"bootstrap/BOOTSTRAP.md (new project) or bootstrap/REVERSE_BOOTSTRAP.md
(existing codebase) — these are protocol docs you follow, not slash commandsScenario: CONSTRAINTS.md says "React only, no Vue" but session_notes say "We're refactoring to Vue in this session".
Action:
Scenario: session_notes say "Continue on feature/user-profiles" but you're currently on develop.
Action:
Scenario: Step 2.5 shows a service is down, user declines to start it.
Action:
Starting to code before reading all context files
Skipping the I/O check
Not reading session_notes.md carefully
Assuming the environment is healthy without checking
Proposing a plan without reading blockers
Not waiting for user approval
/arib-session-end — The counterpart to session-start. Writes memory files at end of session so the next session-start has full context/arib-io — Detailed I/O channel processor. Called from Step 0 if there are signals or requests to handle/arib-check-services — Deep infrastructure diagnostics. Called from Step 2.5; session-start does a quick versionLast Updated: 2026-04-19
Version: 2.0 (comprehensive reference)
Maintainer: Claude Code methodology