Files
TrochtaOndrej df0baeff36 feat: initial commit — global Claude Code config
Tracked: CLAUDE.md, agents, skills, settings, memory.
Ephemeral data (sessions, history, telemetry, tasks) excluded via .gitignore.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 14:32:21 +01:00

4.2 KiB

Project Memory

User: zuf (Ondrej Trochta)

  • Git user: TrochtaOndrej / TrochtaOndrej@gmail.com
  • Sudo: NOPASSWD configured via /etc/sudoers.d/99-claude-nopasswd — always use sudo directly, never ask for password
  • Language: Czech preferred

Server Environment

  • Hostname: zuf-Virtual-Machine (VM)
  • IP: 192.168.1.33 (LAN), Tailscale: 100.126.183.1
  • mDNS: enabled via /etc/systemd/resolved.conf.d/99-enable-mdns.conf
  • Accessible as: zuf-Virtual-Machine.local from LAN

Projects in /home/zuf/dev/code/

  • CentralStore — has dev branch, remote on GitHub
  • CSAI — has dev branch (default), remote on GitHub
  • OTCryptoRobot — has dev branch (default), remote on GitHub
  • ClaudeTaskManager (CTM) — Node.js dashboard on port 3333, systemd service claude-task-manager.service
  • TaskManagerMobile (NudgeMobile) — Flutter app (starší projekt), dev branch, remote gitea (AI/TaskManagerMobile.git)
  • NuggeMobile — Flutter app (dříve KittieMobile), ADHD task manager s virtual pet, dev branch, remote gitea (AI/KittieMobile.git)

AITM Task Creation — DULEZITE

  • VZDY pouzit usePipeline: true a autoMergeDev: true (jinak task bezi jako plain session a nema auto-merge!)
  • VZDY pouzit useWorktree: true
  • VZDY pouzit heredoc format pro curl body (--data-binary @- <<'ENDJSON') — nikoliv -d s inline JSON
  • Prompt VZDY zacina "READ CLAUDE.md first" a je anglicky
  • Prompt musi byt self-contained (vsechny detaily primo v promptu)
  • Fix REST API: commit 2f3306c v CTM — RestApi.ts ted uklada usePipeline/autoMergeDev/skipSteps
  • Monitor skripty: ctm-monitor.mjs (global, 30min zombie), kittie-monitor.mjs (tmm tab, 5min zombie)

Parallel Task Execution — Fixes (commit c2a2901)

  • mergeTaskToDev: async s mutex per tabRoot + push verification (viz parallel-tasks-bugs.md)
  • Session key: worktree tasks pouzivaji taskId jako session key (ne projectId)
  • isTabBusy: worktree tasky obchazeji isTabBusy check
  • pushRemote: "gitea" v config.json (ne origin/GitHub)
  • task:archive: akceptuje i stopped/failed (nejen finished)

Workflow: TASK keyword = Full Dev Cycle

Když uživatel napíše TASK: popis tasku, provede se automaticky celý vývojový cyklus:

  1. Branch — nová branch z dev (feature/... nebo fix/...)
  2. Implementace — provedení tasku, commit
  3. Review — self-review kódu (kvalita, SOLID, coding standards)
  4. Fix review — oprava nalezených problémů, commit
  5. Testdotnet build + dotnet test, oprava padajících testů
  6. Merge — merge do dev, smazání feature branch

Modifikátory (přidat za TASK):

  • "bez review" — přeskočí kroky 3-4
  • "bez merge" — zastaví se před mergem, čeká na souhlas

Key Services (all on 0.0.0.0, accessible from LAN)

  • CTM (ClaudeTaskManager): port 3333, systemd: claude-task-manager.service
  • CSAI.Api: port 5208, systemd: csai-api.service
  • CSAI.Web: port 5274, systemd: csai-web.service
  • RobotFE: port 5000, systemd: robot-fe.service
  • RobotCBBE: port 5010, systemd: robot-cbbe.service
  • MarketDataService: ports 5020/5021 (already 0.0.0.0)
  • CTM-WEB: port 8080, systemd: ctm-web.service
  • n8n: port 5679 (localhost), systemd: n8n.service
  • All systemd services are --user level, linger enabled
  • dotnet path: /home/zuf/.dotnet/dotnet

Skills a Agents - struktura

Skills a agents se nacitaji podle CWD. Globalni + projektove se kombinuji.

  • Globalni (~/.claude/skills/, ~/.claude/agents/): code-review, deploy, full-cycle, serilog-log-analyzer, status + 5 agentu
  • OTCryptoRobot: cryptorobot-blazor-architect, cryptorobot-ef-expert
  • CSAI: csai-blazor-architect, csai-ef-expert

Subagenty - volba modelu (uspora nakladu)

  • haiku - research, hledani souboru, jednoduche ukoly
  • sonnet - code review, opravy kodu, merge branch, generovani kodu
  • opus - jen hlavni konverzace a slozite architektonicke veci
  • VZDY pouzivat nejlevnejsi model ktery zvladne dany ukol

MCP servery - uspora tokenu

  • Playwright a paretools-dotnet jsou vypnute v ~/.claude/settings.local.json
  • Kdyz uzivatel chce Playwright testy, upozornit ho: "Zapni Playwright pres /mcp a restartuj konverzaci"