diff --git a/.paul/PROJECT.md b/.paul/PROJECT.md
new file mode 100644
index 0000000..830f843
--- /dev/null
+++ b/.paul/PROJECT.md
@@ -0,0 +1,56 @@
+# Project: crmPRO
+
+## Description
+Autorski system CRM do zarządzania projektami, zadaniami, klientami, finansami i śledzeniem czasu pracy. Zbudowany w PHP + MySQL z Bootstrap, jQuery i własnym systemem szablonów.
+
+## Core Value
+Użytkownicy mogą efektywnie zarządzać projektami, zadaniami i klientami w jednym systemie CRM.
+
+## Current State
+
+| Metric | Value | Source |
+|--------|-------|--------|
+| Version | v0.1.0 (in progress) | Milestone |
+| Status | Phase 1 complete, Phase 2 next | STATE.md |
+| Lines of Code | 9 356 | SonarQube baseline |
+| Bugs | 58 | SonarQube baseline |
+| Code Smells | 1 649 | SonarQube baseline |
+| Coverage | 0% | SonarQube baseline |
+| Technical Debt | ~127h | SonarQube baseline |
+| Reliability | D | SonarQube baseline |
+| Security | A | SonarQube baseline |
+
+## Requirements
+
+### Validated
+- ✓ SonarQube baseline — Phase 1: projekt skonfigurowany, skan wykonany, metryki udokumentowane
+
+### Active
+- [ ] Naprawić 58 bugów (priorytet: 3 CRITICAL, 35 MAJOR)
+- [ ] Zredukować 780 CRITICAL code smells
+- [ ] Zwiększyć coverage z 0%
+- [ ] Zredukować technical debt (~127h)
+
+### Out of Scope
+- (none yet)
+
+## Constraints
+- PHP 7.4 na serwerze
+- SonarQube @ https://sonar.project-pro.pl
+
+## Key Decisions
+
+| Decision | Phase | Impact |
+|----------|-------|--------|
+| SonarQube URL: https://sonar.project-pro.pl | Phase 1 | Konfiguracja skanera |
+| Skan automatyczny CLI + MCP | Phase 1 | Nie wymaga ręcznego uruchomienia |
+
+## Success Criteria
+- Użytkownicy mogą efektywnie zarządzać projektami, zadaniami i klientami w jednym systemie CRM
+- Reliability rating: A (currently D)
+- Technical debt < 50h (currently 127h)
+- Coverage > 30% (currently 0%)
+
+---
+*Created: 2026-03-15*
+*Last updated: 2026-03-15 after Phase 1*
diff --git a/.paul/ROADMAP.md b/.paul/ROADMAP.md
new file mode 100644
index 0000000..3c2d564
--- /dev/null
+++ b/.paul/ROADMAP.md
@@ -0,0 +1,80 @@
+# Roadmap: crmPRO
+
+## Overview
+Stabilizacja i poprawa jakości kodu crmPRO — identyfikacja i naprawa błędów, analiza jakości kodu przez SonarQube.
+
+## Current Milestone
+**v0.1 Stabilizacja i jakość kodu** (v0.1.0)
+Status: In progress
+Phases: 1 of 4 complete
+
+## Phases
+
+| Phase | Name | Plans | Status | Completed |
+|-------|------|-------|--------|-----------|
+| 1 | Konfiguracja SonarQube i baseline | 1/1 | ✅ Complete | 2026-03-15 |
+| 2 | Naprawa błędów krytycznych | TBD | 🔵 Next | - |
+| 3 | Naprawa błędów głównych | TBD | Not started | - |
+| 4 | Poprawa pokrycia testami | TBD | Not started | - |
+
+## Phase Details
+
+### Phase 1: Konfiguracja SonarQube i baseline ✅
+
+**Goal:** Skonfigurować projekt w SonarQube, uruchomić pierwszy skan i uzyskać baseline jakości kodu
+**Depends on:** Nothing (first phase)
+**Completed:** 2026-03-15
+
+**Results:**
+- sonar-project.properties skonfigurowany
+- Pierwszy skan: 88 plików, 9356 LoC
+- Baseline: 58 bugs, 1649 code smells, 0% coverage, 5.6% duplikacji
+- Reliability: D, Security: A, Maintainability: A
+
+**Plans:**
+- [x] 01-01: Konfiguracja SonarQube i analiza wyników pierwszego skanu
+
+### Phase 2: Naprawa błędów krytycznych
+
+**Goal:** Naprawić wszystkie bugs i vulnerabilities o priorytecie Critical/Blocker
+**Depends on:** Phase 1 (wyniki skanu)
+**Research:** Unlikely
+
+**Scope (based on Phase 1 baseline):**
+- Naprawa 3 CRITICAL bugs i 35 MAJOR bugs
+- 17 Security Hotspots do review
+- Reskan po naprawach
+
+**Plans:**
+- [ ] 02-01: TBD (na podstawie wyników Phase 1)
+
+### Phase 3: Naprawa błędów głównych
+
+**Goal:** Naprawić bugs o priorytecie Major i code smells wpływające na stabilność
+**Depends on:** Phase 2
+**Research:** Unlikely
+
+**Scope:**
+- Naprawa Major bugs
+- Naprawa krytycznych code smells (S121: 664, S1192: 84, S3776: 24)
+- Reskan po naprawach
+
+**Plans:**
+- [ ] 03-01: TBD (na podstawie wyników Phase 2)
+
+### Phase 4: Poprawa pokrycia testami
+
+**Goal:** Dodać testy dla kluczowych modułów zidentyfikowanych przez SonarQube
+**Depends on:** Phase 3
+**Research:** Unlikely
+
+**Scope:**
+- Testy dla modułów o najniższym pokryciu
+- Testy regresji dla naprawionych bugów
+
+**Plans:**
+- [ ] 04-01: TBD (na podstawie wyników Phase 3)
+
+---
+*Roadmap created: 2026-03-15*
+*Last updated: 2026-03-15 — Phase 1 complete*
diff --git a/.paul/STATE.md b/.paul/STATE.md
new file mode 100644
index 0000000..0f14d9d
--- /dev/null
+++ b/.paul/STATE.md
@@ -0,0 +1,55 @@
+# Project State
+
+## Project Reference
+
+See: .paul/PROJECT.md (updated 2026-03-15)
+
+**Core value:** Użytkownicy mogą efektywnie zarządzać projektami, zadaniami i klientami w jednym systemie CRM
+**Current focus:** Faza 2 — Naprawa błędów krytycznych
+
+## Current Position
+
+Milestone: v0.1 Stabilizacja i jakość kodu
+Phase: 2 of 4 (Naprawa błędów krytycznych) — Not started
+Plan: Not started
+Status: Ready to plan
+Last activity: 2026-03-15 — Phase 1 complete, transitioned to Phase 2
+
+Progress:
+- Milestone: [██░░░░░░░░] 25%
+- Phase 2: [░░░░░░░░░░] 0%
+
+## Loop Position
+
+Current loop state:
+```
+PLAN ──▶ APPLY ──▶ UNIFY
+ ○ ○ ○ [Ready to plan Phase 2]
+```
+
+## Accumulated Context
+
+### Decisions
+- 2026-03-15: SonarQube URL = https://sonar.project-pro.pl (nie localhost)
+- 2026-03-15: Skan automatyczny via sonar-scanner CLI + MCP do odczytu wyników
+
+### Deferred Issues
+None yet.
+
+### Blockers/Concerns
+None.
+
+### Git State
+Last commit: (pending phase commit)
+Branch: main
+Feature branches merged: none
+
+## Session Continuity
+
+Last session: 2026-03-15
+Stopped at: Phase 1 complete, ready to plan Phase 2
+Next action: /paul:plan for Phase 2
+Resume file: .paul/ROADMAP.md
+
+---
+*STATE.md — Updated after every significant action*
diff --git a/.paul/phases/01-sonarqube-baseline/01-01-PLAN.md b/.paul/phases/01-sonarqube-baseline/01-01-PLAN.md
new file mode 100644
index 0000000..2771ffc
--- /dev/null
+++ b/.paul/phases/01-sonarqube-baseline/01-01-PLAN.md
@@ -0,0 +1,142 @@
+---
+phase: 01-sonarqube-baseline
+plan: 01
+type: execute
+wave: 1
+depends_on: []
+files_modified: [sonar-project.properties]
+autonomous: false
+---
+
+
+## Goal
+Skonfigurować projekt crmPRO w SonarQube, uruchomić pierwszy skan i udokumentować baseline jakości kodu.
+
+## Purpose
+Uzyskanie obiektywnej oceny stanu kodu — lista bugów, vulnerabilities, code smells i duplikacji. Baseline posłuży jako punkt odniesienia dla kolejnych faz naprawczych.
+
+## Output
+- `sonar-project.properties` — konfiguracja projektu dla SonarQube
+- `.paul/phases/01-sonarqube-baseline/01-01-SUMMARY.md` — udokumentowany baseline
+
+
+
+## Project Context
+@.paul/PROJECT.md
+@.paul/ROADMAP.md
+@.paul/STATE.md
+
+## Source Files
+@index.php
+@autoload/ (główny kod PHP)
+@templates/ (szablony)
+@tests/ (testy)
+
+
+
+
+## AC-1: Konfiguracja SonarQube
+```gherkin
+Given projekt crmPRO bez konfiguracji SonarQube
+When utworzony zostanie plik sonar-project.properties z poprawnymi ścieżkami źródeł
+Then SonarQube Scanner może przeskanować projekt bez błędów konfiguracji
+```
+
+## AC-2: Pierwszy skan zakończony
+```gherkin
+Given skonfigurowany projekt w SonarQube
+When użytkownik uruchomi sonar-scanner
+Then skan zakończy się sukcesem i wyniki będą widoczne w SonarQube
+```
+
+## AC-3: Baseline udokumentowany
+```gherkin
+Given zakończony pierwszy skan
+When wyniki zostaną przeanalizowane
+Then SUMMARY.md zawiera liczbę bugów, vulnerabilities, code smells, pokrycie i duplikacje
+```
+
+
+
+
+
+
+ Task 1: Utworzenie sonar-project.properties
+ sonar-project.properties
+
+ Utworzyć plik sonar-project.properties w katalogu głównym projektu:
+ - projectKey: crmPRO (zgodny z .paul/config.md)
+ - projectName: crmPRO
+ - sources: autoload, templates (główne katalogi z kodem PHP)
+ - tests: tests
+ - exclusions: vendor/**, node_modules/**, .paul/**, *.min.js, *.min.css
+ - sourceEncoding: UTF-8
+ - language: php
+ - php.version: 7.4
+
+ Plik sonar-project.properties istnieje i zawiera poprawne ścieżki
+ AC-1 satisfied: Konfiguracja SonarQube gotowa do skanu
+
+
+
+
+ Uruchom skan SonarQube:
+ 1. Upewnij się, że serwer SonarQube działa (http://localhost:9000 lub Twój adres)
+ 2. Utwórz projekt "crmPRO" w SonarQube UI jeśli nie istnieje
+ 3. Uruchom w katalogu projektu: sonar-scanner
+ 4. Poczekaj na zakończenie skanu
+ 5. Podaj wyniki z dashboardu SonarQube (lub wklej output skanera)
+
+ Wklej wyniki skanu lub podaj link do dashboardu. Wpisz "done" jeśli skan zakończony.
+
+
+
+ Task 3: Dokumentacja baseline w SUMMARY.md
+ .paul/phases/01-sonarqube-baseline/01-01-SUMMARY.md
+
+ Na podstawie wyników skanu od użytkownika:
+ - Udokumentować metryki baseline (bugs, vulnerabilities, code smells, coverage, duplications)
+ - Wylistować issues pogrupowane po severity (CRITICAL, MAJOR, MINOR)
+ - Zidentyfikować pliki z największą liczbą problemów
+ - Zapisać rekomendacje dla Phase 2 (co naprawić najpierw)
+
+ SUMMARY.md zawiera kompletne metryki i rekomendacje
+ AC-3 satisfied: Baseline udokumentowany z rekomendacjami
+
+
+
+
+
+
+## DO NOT CHANGE
+- autoload/** (żaden kod źródłowy nie jest modyfikowany w tej fazie)
+- templates/** (żadne szablony nie są modyfikowane)
+- config.php (konfiguracja aplikacji)
+- index.php (punkt wejścia)
+
+## SCOPE LIMITS
+- Ta faza to TYLKO konfiguracja i analiza — żadne naprawy kodu
+- Nie modyfikujemy istniejącego kodu
+- Nie dodajemy nowych zależności
+
+
+
+
+Before declaring plan complete:
+- [ ] sonar-project.properties istnieje z poprawnymi ścieżkami
+- [ ] Skan SonarQube zakończony sukcesem
+- [ ] SUMMARY.md zawiera metryki baseline
+- [ ] Zidentyfikowane priorytety dla Phase 2
+- [ ] All acceptance criteria met
+
+
+
+- sonar-project.properties skonfigurowany poprawnie
+- Pierwszy skan zakończony bez błędów
+- Baseline udokumentowany w SUMMARY.md
+- Rekomendacje dla Phase 2 przygotowane
+
+
+
diff --git a/.paul/phases/01-sonarqube-baseline/01-01-SUMMARY.md b/.paul/phases/01-sonarqube-baseline/01-01-SUMMARY.md
new file mode 100644
index 0000000..b491994
--- /dev/null
+++ b/.paul/phases/01-sonarqube-baseline/01-01-SUMMARY.md
@@ -0,0 +1,172 @@
+---
+phase: 01-sonarqube-baseline
+plan: 01
+subsystem: infra
+tags: [sonarqube, quality, baseline, php]
+
+requires:
+ - phase: none
+ provides: first phase, no dependencies
+provides:
+ - SonarQube project configuration for crmPRO
+ - Quality baseline metrics (bugs, smells, coverage, duplications)
+ - Prioritized recommendations for Phase 2
+affects: [02-critical-bugs-fix, 03-code-smells-reduction]
+
+tech-stack:
+ added: [sonar-scanner]
+ patterns: [sonarqube-integration]
+
+key-files:
+ created: [sonar-project.properties]
+ modified: []
+
+key-decisions:
+ - "SonarQube URL: https://sonar.project-pro.pl (not localhost)"
+ - "Skan automated via sonar-scanner CLI + MCP for results"
+
+patterns-established:
+ - "SonarQube MCP for reading metrics programmatically"
+
+duration: ~15min
+started: 2026-03-15
+completed: 2026-03-15
+---
+
+# Phase 1 Plan 01: SonarQube Baseline Summary
+
+**Skonfigurowano SonarQube dla crmPRO, wykonano pierwszy skan (88 plików PHP), udokumentowano baseline: 58 bugs, 1649 code smells, 0% coverage, 5.6% duplikacji**
+
+## Performance
+
+| Metric | Value |
+|--------|-------|
+| Duration | ~15 min |
+| Started | 2026-03-15 |
+| Completed | 2026-03-15 |
+| Tasks | 3 completed |
+| Files created | 1 (sonar-project.properties) |
+
+## Acceptance Criteria Results
+
+| Criterion | Status | Notes |
+|-----------|--------|-------|
+| AC-1: Konfiguracja SonarQube | Pass | sonar-project.properties z poprawnym URL, ścieżkami, exclusions |
+| AC-2: Pierwszy skan zakończony | Pass | 88 plików przeskanowanych, wyniki na dashboardzie |
+| AC-3: Baseline udokumentowany | Pass | Pełne metryki, rozkład issues, rekomendacje |
+
+## Accomplishments
+
+- Skonfigurowano projekt crmPRO w SonarQube (sonar-project.properties)
+- Wykonano pierwszy skan: 88 plików PHP, 9356 linii kodu
+- Udokumentowano baseline jakości z priorytetami napraw
+
+## Files Created/Modified
+
+| File | Change | Purpose |
+|------|--------|---------|
+| `sonar-project.properties` | Created | Konfiguracja SonarQube Scanner |
+
+## Baseline Metrics
+
+| Metryka | Wartość |
+|---------|--------|
+| Lines of Code (ncloc) | 9 356 |
+| Bugs | 58 |
+| Vulnerabilities | 0 |
+| Security Hotspots | 17 |
+| Code Smells | 1 649 |
+| Coverage | 0.0% |
+| Duplicated Lines | 5.6% |
+| Technical Debt | 7 628 min (~127h) |
+| Reliability Rating | D (4.0) |
+| Security Rating | A (1.0) |
+| Maintainability Rating | A (1.0) |
+
+## Issues wg Severity
+
+| Severity | Ilość |
+|----------|-------|
+| BLOCKER | 0 |
+| CRITICAL | 780 |
+| MAJOR | 144 |
+| MINOR | 783 |
+| **RAZEM** | **1 707** |
+
+## Top 10 plików z największą liczbą issues
+
+| Plik | Issues |
+|------|--------|
+| autoload/Domain/Tasks/MailToTaskImporter.php | 225 |
+| autoload/factory/class.Tasks.php | 207 |
+| autoload/controls/class.Tasks.php | 154 |
+| autoload/factory/class.Projects.php | 146 |
+| autoload/factory/class.Cron.php | 112 |
+| autoload/class.S.php | 48 |
+| autoload/Domain/Tasks/TaskAttachmentRepository.php | 43 |
+| autoload/controls/class.Projects.php | 41 |
+| autoload/Controllers/UsersController.php | 36 |
+| autoload/factory/class.Finances.php | 33 |
+
+## Top reguły CRITICAL (780 issues)
+
+| Reguła | Ilość | Opis |
+|--------|-------|------|
+| php:S121 | 664 | Brak klamer wokół zagnieżdżonych instrukcji |
+| php:S1192 | 84 | Zduplikowane literały string |
+| php:S3776 | 24 | Zbyt złożone funkcje (cognitive complexity) |
+| php:S3973 | 3 | Warunkowe instrukcje bez klamer |
+| Web:S7930 | 3 | Problemy z szablonami HTML |
+
+## Decisions Made
+
+| Decision | Rationale | Impact |
+|----------|-----------|--------|
+| SonarQube URL = https://sonar.project-pro.pl | MCP config wskazywał ten adres, nie localhost | sonar-project.properties skonfigurowany poprawnie |
+| Skan automatyczny (CLI + MCP) | sonar-scanner dostępny w PATH, MCP do odczytu wyników | Nie wymaga ręcznego uruchomienia |
+
+## Deviations from Plan
+
+| Type | Count | Impact |
+|------|-------|--------|
+| Auto-fixed | 1 | Zmiana URL z localhost:9000 na właściwy adres |
+| Scope additions | 0 | - |
+| Deferred | 0 | - |
+
+**Total impact:** Minimalna dewiacja — poprawka URL, plan wykonany zgodnie ze specyfikacją.
+
+## Rekomendacje dla Phase 2
+
+### Priorytet 1: Bugi (58)
+- 35 bugów MAJOR (return z void, self-assignment)
+- Accessibility issues w templates/finances/
+
+### Priorytet 2: Critical Code Smells (780)
+- S121 (664): Dodanie klamer — niski risk, automatyzowalne
+- S1192 (84): Ekstrakcja stringów do stałych
+- S3776 (24): Refactoring złożonych funkcji
+
+### Priorytet 3: Coverage
+- 0% — testy do krytycznych flow
+
+### Pliki priorytetowe
+1. `MailToTaskImporter.php` — 225 issues, nowy kod Domain
+2. `factory/class.Tasks.php` — 207 issues, legacy aktywny
+3. `controls/class.Tasks.php` — 154 issues, w trakcie migracji
+
+## Next Phase Readiness
+
+**Ready:**
+- Baseline udokumentowany, dashboard SonarQube dostępny
+- Priorytety napraw zdefiniowane na podstawie danych
+
+**Concerns:**
+- 127h technical debt — wymaga stopniowego adresowania
+- Coverage 0% — brak safety net przed refactoringiem
+
+**Blockers:**
+- None
+
+---
+*Phase: 01-sonarqube-baseline, Plan: 01*
+*Completed: 2026-03-15*
diff --git a/sonar-project.properties b/sonar-project.properties
new file mode 100644
index 0000000..2a3ff3c
--- /dev/null
+++ b/sonar-project.properties
@@ -0,0 +1,19 @@
+# SonarQube Configuration for crmPRO
+sonar.host.url=https://sonar.project-pro.pl
+sonar.projectKey=crmPRO
+sonar.projectName=crmPRO
+sonar.projectVersion=0.1
+
+# Source directories
+sonar.sources=autoload,templates
+sonar.tests=tests
+
+# Exclusions
+sonar.exclusions=vendor/**,node_modules/**,.paul/**,*.min.js,*.min.css
+
+# Encoding
+sonar.sourceEncoding=UTF-8
+
+# Language
+sonar.language=php
+sonar.php.version=7.4