Uklonjen multi-tab sistem — sada jedna PTY sesija po stranici.
Dodat idle detection: status "Završeno", flash animacija, browser
notifikacija i treptanje naslova kad je tab u pozadini.
CSS premešten iz inline stilova u style.css.
Dodat /api/projects endpoint i testovi za PTY sesije.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- autofocus na inputu u hidden modalu izazivao prikaz forme
na nekim browserima pri učitavanju stranice
- Fokus se sada daje programski tek kad se modal otvori
- Isto rešenje primenjeno i na projects.html i chat.html
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- CreateProject() sa validacijom imena (regex, duplikati, prazno)
- POST /projects/create ruta sa AuthMiddleware
- Modal forma na projects stranici za unos imena
- 10 unit testova za CreateProject
- change-password.html template i testovi
- Ažuriran TESTING.md sa novom sekcijom
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Ispravljen deadlock: SetPassword zaključa mu pa pozove save() koji
opet zaključa mu. Razdvojeno u saveLocked() (bez lock-a) i save()
- Vraćeno normalno ponašanje kursora (Claude Code sam upravlja)
- PTY okruženje: TERM=xterm-256color, COLORTERM=truecolor
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Strip \e[?25l (hide cursor) iz PTY output-a jer Claude Code Ink TUI
sakrije terminal kursor. xterm.js kursor sad ostaje uvek vidljiv.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- cursorStyle: block, cursorInactiveStyle: outline
- drawBoldTextInBrightColors za bolji prikaz
- Klik na terminal daje fokus
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Sidebar sa listom .md fajlova projekta (toggle dugme, pamti stanje)
- Pregled MD fajlova u overlay-u (Esc za zatvaranje)
- 8 tema: Dark, Dracula, Monokai, Nord, Solarized, Gruvbox, Tokyo Night, Catppuccin
- Izbor teme se čuva u localStorage
- Linkovi: promeni lozinku, svi projekti, odjavi se
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Dodat creack/pty za pseudo-terminal podršku
- Claude CLI se pokreće u pravom PTY-ju (puni TUI, boje, Shift+Tab)
- xterm.js u browseru renderuje terminal identično konzoli
- WebSocket bridge: tastatura → PTY stdin, PTY stdout → terminal
- Ring buffer (128KB) za replay pri reconnect-u
- Automatski reconnect nakon 2 sekunde
- PTY sesije žive nezavisno od browsera (60min idle timeout)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Uklonjen --include-partial-messages (izazivao duple assistant evente)
- content_block_start preskače tool_use blokove (prazni divovi)
- Shift+Tab prebacuje između Code i Plan moda
- Plan mod šalje instrukciju da Claude samo planira bez izmena
- CSS za mode bar i plan poruke (plava boja, ⊞ prefix)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Dodat goldmark sa Table/Strikethrough/TaskList ekstenzijama (markdown.go)
- Prepisana CSS tema na konzolni stil (JetBrains Mono, tamna pozadina, prompt prefix)
- Prikaz troškova i trajanja posle svakog Claude odgovora (duration, cost, turns)
- Ispravljen parsing result eventa (json.RawMessage + top-level polja)
- Ispravljen concurrent write bug na WebSocket (write channel pattern)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Koristi --input-format stream-json za multi-turn razgovor
- Koristi --include-partial-messages za streaming chunk-ove
- Filtrira CLAUDECODE i CLAUDE_CODE_ENTRYPOINT env varijable
- Svi WS write-ovi idu kroz jedan kanal (nema concurrent write panic)
- Tool call prikaz: Read prikazuje putanju, Bash prikazuje komandu, itd
- result polje moze biti string ili objekat (oba obradjena)
- Subscriber/broadcast model za real-time push
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Login sa session cookie autentifikacijom
- Lista projekata iz filesystem-a
- Chat sa Claude CLI preko WebSocket-a
- Streaming NDJSON parsiranje iz CLI stdout-a
- Sesija zivi nezavisno od browsera (reconnect replay)
- Sidebar sa .md fajlovima i markdown renderovanjem
- Dark tema, htmx + Go templates
- 47 unit testova
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>