---
name: session-start-protocol
title: Protokół startu sesji — 5 minut przed dotknięciem kodu
description: "Ritual startu nowej sesji Claude Code. 5 minut czytania przed dotknięciem czegokolwiek — w ustalonej kolejności. Rozwiązuje \"cold start bias\": agent skacze do kodu zanim zrozumie stan. Lista źródeł prawdy, kolejność, checklista infra."
category: system
tags:
  - start-sesji
  - harness
  - protocol
  - ciągłość
  - read-first
model: Claude Sonnet 4.6 / Opus 4.7
source: https://madejski.ai/pl/promptoteka/session-start-protocol
locale: pl
license: MIT
---

# Protokół startu sesji — 5 minut przed dotknięciem kodu

## Po co

Nowa sesja Claude'a zaczyna bez pamięci. Bez rytuału startu zadziała domyślnie — skoczy do kodu, zignoruje stan, nadpisze cudzą pracę. 5 minut czytania ratuje godziny debugowania.

## Kolejność czytania (5 min, ZANIM cokolwiek zrobisz)

1. **`CLAUDE.md`** (repo root, auto-loaded) — nienegocjowalne zasady harness'u (plan przed kodem, read before edit, jedna sprawa na commit, dyscyplina faz, tool failed → STOP).
2. **Session brief** (`docs/session-briefs/next-session-phase{N}-brief.md`) — aktualny stan, pierwsze zadanie, insights/gotchas.
3. **Phase spec** (zewnętrzny roadmap — ClickUp / Linear / Notion) — DoD bieżącej fazy.
4. **Relevant ADR** (zewnętrzny doc lub `docs/adr/`) — decyzje architektoniczne wpływające na bieżący zakres.
5. **Credentials** (`.env.*.local` lub inny plik gitignored) — fallback dla connection strings.

## Kick-off wiadomość (paste on start)

```
Jestem nową sesją Claude dla <project>. Przeczytaj:
1. CLAUDE.md
2. docs/session-briefs/next-session-phase{N}-brief.md
3. <phase spec link>
4. <relevant ADR link>

Działaj zgodnie z harness'em. Plan przed kodem. Czekaj na GO.
```

## Infra quick-check (uruchom przed pierwszym commitem)

```bash
# branch
git switch <feature-branch> && git pull

# harness sanity
cat CLAUDE.md | head -40  # zasady nienegocjowalne

# test env live (jeśli masz)
curl -s <backend-test-url>/health

# Auth check (jeśli potrzeba)
<cli> whoami --json | head -3
# jeśli 401 → <cli> login w Terminal.app, nie Claude Code bash

# DB/vector quick check
psql "<test-pooler-url>" -c "SELECT ..."
```

## Pre-flight checklist (przed pierwszym planem)

- [ ] Phase spec przeczytany (DoD jasne)
- [ ] Relevant ADR przeczytany
- [ ] `git log -5 --oneline` + `git status` sprawdzone
- [ ] Test env zweryfikowany (health, pooler, auth)
- [ ] Credentials zlokalizowane
- [ ] Wiem, jaki jest **pierwszy konkretny task**

## Co NIE robić na starcie

- NIE edytować żadnego pliku przed przeczytaniem CLAUDE.md + briefa
- NIE ufać swojej pamięci z poprzedniej sesji (nie masz pamięci)
- NIE zgadywać stanu — czytaj brief
- NIE pomijać quick-check (30 sekund — oszczędza godziny)
- NIE zaczynać od `git push` lub `git reset` — najpierw sprawdź stan

## Zamknięcie sesji

Przed końcem sesji **zawsze**:

1. Status note w zewnętrznym systemie (data, co done, co next, co blocked)
2. Jeśli faza zamknięta → utwórz `next-session-phase{N+1}-brief.md`
3. `git log -5 --oneline` — czy commits są atomowe?
4. TODO list odzwierciedla stan

Zostawienie następnej sesji "świeżego" briefa to największy prezent, jaki możesz sobie zrobić na rano.
