Skip to main content

claude-planner

Generator środowiska Claude Code do planowania projektów IT — dla dowolnego stacku.

claude-planner init tworzy lokalne repo projektu i wypełnia je:

  • wywiadem discovery — sekwencja non-interactive sesji claude -p, cztery role software house'u (PM/BA → Architekt → Backend/Frontend Dev → QA/DevOps/UX),
  • analizą materiałów od klienta (folder podany przez --intake: spec, notatki, makiety, schemat bazy) — Claude czyta go sam narzędziami Read/Glob/Grep,
  • dokumentacją planistyczną w docs/: wizja, backlog/PRD, roadmapa, standardy kodowania, Definition of Done, strategia testów, ADR-y,
  • środowiskiem Claude Code w .claude/: agenci, skille, slash commands (/new-adr, /update-roadmap, /update-state, /log-decision, /daily-standup, /sprint-review), hooki,
  • state.md — jedyne źródło prawdy o stanie projektu, nadpisywane w całości przez /update-state,
  • /setup-dev-environment — instaluje zależności/SDK wybranego stacku, wymagane dla LSP,
  • hookiem antyhalucynacyjnym (check-pinned-dependency.py) — blokuje instalację pakietu z wersją "na sztywno", dopóki Claude nie sprawdzi jej realnie lub nie zapyta użytkownika,
  • WORKFLOW.md wygenerowanym w projekcie — instrukcja "jak pracować z Claude Code w TYM projekcie", dopasowana do wybranych profili (przykład: WORKFLOW.md).

Narzędzie generuje tylko artefakty planistyczne, nie szkielet kodu aplikacji.

Instalacja

pipx install claude-planner   # docelowo, po publikacji na PyPI
# albo lokalnie z tego repo:
uv pip install -e .

Wymaga Claude Code CLI (claude w PATH) — sprawdź przez claude-planner doctor.

Użycie

claude-planner profiles list
claude-planner init \
  --name "Sklep XYZ" \
  --client "Acme Sp. z o.o." \
  --output ./sklep-xyz \
  --intake ~/software-house/clients/acme/sklep-xyz/intake \
  --profile web-fullstack --profile postgresql-pgvector-postgis \
  --model sonnet   # albo opus — dobierany raz dla całego wywiadu+generowania

Bez flag init pyta interaktywnie o wszystko. Pełny przykład od init po wdrożenie: WORKFLOW.md.

Generowanie nowych profili przez Claude

Gdy żaden wbudowany profil nie pasuje do stacku, Claude projektuje nowy zamiast ręcznego YAML-a:

claude-planner profiles create "Ruby on Rails + Sidekiq + PostgreSQL" \
  --id ruby-on-rails --model sonnet

Profil trafia do ~/.claude-planner/profiles/ (zmienne przez --profiles-dir) i jest od razu widoczny w profiles list/profiles show/init.

Profile stacków

Deklaratywne YAML w src/claude_planner/profiles/*.yaml, każdy opisuje języki/frameworki, dodatkowych agentów, skille i wskazówki do standardów kodowania/testów. Składalne — projekt może użyć kilku naraz (np. web-fullstack + postgresql-pgvector-postgis).

Dostępne w v1: web-fullstack, backend-api, mobile, python, wordpress-woocommerce, ai-ml, postgresql-pgvector-postgis, generic (fallback), symfony, laravel, django, react-native, flutter, rag-ai-agents, data-engineering, machine-learning.

Nowy profil = nowy plik YAML w profiles/, zero zmian w kodzie Pythona. Schemat pól: src/claude_planner/models.py::StackProfile.

Architektura

src/claude_planner/
  cli.py               — CLI (Typer): init, profiles list/show/create, doctor
  claude_client.py     — wrapper na `claude -p` (--session-id/--resume)
  interview.py         — sekwencyjny wywiad per rola, wymuszony JSON (--json-schema)
  intake.py            — analiza folderu z materiałami od klienta
  generator.py         — generowanie docs/, .claude/, WORKFLOW.md (Claude dla treści,
                          Jinja2 dla struktury)
  profile_generator.py — generowanie nowego profilu stacku przez Claude
  scaffold.py           — orkiestracja `init`: git init, metadane, commit startowy
  roles.py              — 4 bazowe role software house'u jako agenci Claude Code
  textutils.py          — wspólne narzędzia (slugify z transliteracją PL)
  profiles/              — profile stacków (YAML); `DEFAULT_CUSTOM_PROFILES_DIR`
                          (`~/.claude-planner/profiles/`) dla profili od Claude
  templates/             — szablony Jinja2 (CLAUDE.md, WORKFLOW.md, agent.j2, skill.j2,
                          komendy, ADR, hook antyhalucynacyjny)

Claude jest wywoływany wyłącznie narzędziami do odczytu (Read/Glob/Grep) — zapis plików wykonuje Python deterministycznie, po otrzymaniu treści od Claude.

Rozwój

uv pip install -e ".[dev]"
pytest

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

claude_planner-0.1.0.tar.gz (61.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

claude_planner-0.1.0-py3-none-any.whl (73.1 kB view details)

Uploaded Python 3

File details

Details for the file claude_planner-0.1.0.tar.gz.

File metadata

  • Download URL: claude_planner-0.1.0.tar.gz
  • Upload date:
  • Size: 61.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for claude_planner-0.1.0.tar.gz
Algorithm Hash digest
SHA256 74ed7ecd1636121b8f1ed4832beb720747a062bfbcc594f575a51cd8a7d35a4a
MD5 4073ae98a37882e700e033177a48f0b0
BLAKE2b-256 942370223d0130ba86163f078f1a0dc43627c6a6c7afb0d355b6cec5e0cf7e57

See more details on using hashes here.

Provenance

The following attestation bundles were made for claude_planner-0.1.0.tar.gz:

Publisher: publish.yml on piatkowski/claude-planner

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file claude_planner-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: claude_planner-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 73.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for claude_planner-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 931925fd4d797f9404c0ae38adfc1581d8bbad8d94983e06fc96eb0eaf0084e0
MD5 35c0584f08d5202d76f33ce6f8dfc398
BLAKE2b-256 b5b4691297a70adf609b0c571bde5b419bf25dc3fc56608a106a36841a564e38

See more details on using hashes here.

Provenance

The following attestation bundles were made for claude_planner-0.1.0-py3-none-any.whl:

Publisher: publish.yml on piatkowski/claude-planner

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page