91 Commits
Author SHA1 Message Date
opencode 442c91ee66 refactor: UI semplicissima con input() standard
- input() normale invece di raw mode
- /scroll per vedere tutto lo scrollback con paginazione
- /history per vedere ultime 50 righe
- Molto piu stabile e compatibile
- Niente piu problemi di escape sequences
2026-03-24 18:44:55 +01:00
opencode 858b469def fix: correggi raw mode per terminali che non supportano bitwise OR
- Usa lista invece di bitwise OR per attributi terminale
- Compatibilità con piu versioni Python/termios
2026-03-24 18:42:54 +01:00
opencode 2e4175f26b refactor: riscrivi TerminalUI super semplice
- Rileva dimensioni terminale con ioctl in tempo reale
- Header minimale
- Niente wrap automatico
- Piu stabile
2026-03-24 18:38:26 +01:00
opencode e72905fd78 fix: usa ASCII semplice invece di box drawing Unicode
- Compatibilità migliore con terminali diversi
- Caratteri = e - invece di ╔ ╗ ╚ ╝
2026-03-24 18:36:18 +01:00
opencode aec5736394 fix: wrap linee e padding per display corretto
- Testo wrap a colonne del terminale
- Padding con spazi per linee corte
- Rimosso riferimento a pyte non usato
2026-03-24 18:07:22 +01:00
opencode e69a289361 fix: scroll_history buffer manuale per pyte
- Teniamo il nostro history list manualmente
- screen.display per contenuto corrente
- Nessun accesso a screen.lines o screen.scroll_history come list
2026-03-24 17:57:41 +01:00
opencode b6e8864829 fix: pyte scroll_history è int, non list
- Corretto accesso a screen.scroll_history
- Usato screen.display per il contenuto
2026-03-24 17:42:08 +01:00
opencode 39b9288773 feat: pyte UI con scrollback e navigazione PgUp/PgDn/frecce
- Modalità scroll: PgUp entra in scroll mode
- q o ENTER esce da scroll mode
- j/k frecce navigano nello scrollback
- Resize automatico del terminale
2026-03-24 17:34:06 +01:00
opencode 20233db282 fix: riscrivi TerminalUI piu semplice e robusto
- Usa output_buffer per scrollback manuale
- Non usa pty/select complessi
- Piu stabile su terminali diversi
2026-03-24 17:26:55 +01:00
opencode c76beb764c feat: aggiungi TerminalUI con scrollback usando pyte
- Nuovo file terminal_ui.py con emulatore terminale
- Flag --terminal per attivare UI con scrollback
- 10000 righe di scrollback buffer
- Supporta resize automatico del terminale
- Ctrl+C per uscire
2026-03-24 17:23:56 +01:00
opencode 6cb514ec13 fix: reset terminal e stdout flush per CLI semplice
- stty sane resetta il terminale dopo EnhancedCLI fallito
- sys.stdin.readline() invece di input() per terminali problematici
- stdout flush prima di read per garantire prompt visibile
2026-03-24 17:03:48 +01:00
opencode 5d9bd48013 fix: CLI semplice è ora il default, EnhancedCLI solo con --enhanced
- Default: CLI semplice (funziona sempre)
- --enhanced per provare EnhancedCLI (sperimentale)
2026-03-24 17:03:06 +01:00
opencode 453156148c fix: EnhancedCLI timeout e fallback a CLI semplice
- Rimosso CursorShape.BEAM che causa hang su alcuni terminali
- Aggiunto timeout 30s con fallback a CLI semplice
- Cattura KeyboardInterrupt, EOFError, OSError per hang
- Signal handler per Ctrl+C in EnhancedCLI
2026-03-24 17:00:16 +01:00
opencode e75a75e16c fix: output lungo salvato in file + visualizzato con less per scrollback
- Output > 10 righe salvato in .langcode/output_TIMESTAMP.txt
- Visualizzato con 'less -R' che supporta frecce e scroll
- Fallback a cat parziale se less non disponibile
2026-03-24 15:56:58 +01:00
opencode f1d1248d4b fix: paginazione output con stile 'more'
- Output mostrato in blocchi da 15 righe
- Premi ENTER per continuare, 'q' per uscire
- SepARATOR visivo tra pagine
2026-03-24 15:37:38 +01:00
opencode 3197dedd4c fix: rimuovi codici ANSI e aggiungi info scroll per CLI semplice
- strip_ansi() rimuove escape sequences per terminali base
- Info scroll per output > 1000 caratteri
2026-03-24 14:13:50 +01:00
opencode 918b1f3a5b feat: aggiungi indicatore 'Pensando...' durante elaborazione
- Spinner animato mostra che l'agent sta elaborando
- Previene confusione su operazioni lunghe
2026-03-24 11:23:30 +01:00
opencode c8e7489c26 fix: Ctrl+C ora esce correttamente con signal handler 2026-03-24 11:13:40 +01:00
opencode 82b70f88d1 feat: aggiungi fallback CLI semplice per terminali incompatibili
- Aggiunto flag --simple per usare input() invece di prompt_toolkit
- EnhancedCLI ora ha try/except con fallback automatico
- CLI semplice supporta comandi base: /help, /status, /exit
2026-03-24 11:10:37 +01:00
opencode 3a042355b8 docs: aggiorna documentazione con stato finale progetto
- QUICKSTART.md: aggiornata sezione Chat Interattiva con EnhancedCLI
- AGENT_ROADMAP.md: aggiornato stato a "Agente AI completo"
- Aggiunto completamento fasi roadmap
- Aggiornato commit log con tutti gli 8 commit
2026-03-24 10:31:26 +01:00
opencode 9fa564e12b feat: potenzia EnhancedCLI con funzionalità avanzate
Features aggiunte:
- 4 temi: default, dark, light, monokai
- Syntax highlighting per code blocks (pygments)
- Keyboard shortcuts: Ctrl+A/E (inizio/fine), Ctrl+K/U (kill line), Ctrl+W (kill word)
- Toggle timestamps, syntax con comandi dedicati
- Status avanzato con uptime e statistics
- Codici ANSI predefiniti per ogni tema
- Mouse support per scrolling
- Pygments per syntax highlighting di codice
2026-03-24 10:23:35 +01:00
opencode 4a0342dcb7 feat: aggiungi EnhancedCLI con prompt_toolkit
- Nuovo modulo enhanced_cli.py con UI moderna
- Colors: user (cyan), agent (green), system (yellow), error (red)
- History persistente in .langcode/.cli_history
- Autocomplete comandi (/help, /status, /clear, /theme, /exit)
- Supporto temi: default, dark, light
- Multiline input
- Integrato in langcode.py chat mode
2026-03-24 10:15:51 +01:00
opencode 32ed76e5be docs: aggiorna AGENT_ROADMAP - Fase 3 completata 2026-03-24 09:57:53 +01:00
opencode fc60fc1fd0 feat: integra Simple Memory nel ReActAgent
- Aggiunti tool memory: remember, recall, preference, memory_stats
- Memory persistente tra sessioni (file .langcode/simple_memory.json)
- create_react_agent() supporta include_memory_tools
- Metodi便捷: remember(), recall(), get_memory_stats()
- Tool disponibili: 10 totali (6 built-in + 4 memory)
2026-03-24 09:55:22 +01:00
opencode cce8709149 docs: aggiorna AGENT_ROADMAP con progressi completati
- Fase 1 e 2: completate
- Aggiunti esempi di utilizzo
- Aggiornato commit log
2026-03-24 09:48:00 +01:00
opencode f847b92b0a feat: integra Planning system nel ReActAgent
- run() crea e traccia task nel planner
- run_plan() esegue sequenze di goal con progresso
- decompose_goal() scompone goal complessi via LLM
- Task tracciati con stato: pending->in_progress->completed/failed
2026-03-24 09:45:21 +01:00
opencode 1c7781a68f feat: aggiungi ReAct Agent Loop per trasformare chatbot in agente
- Nuovo ReActAgent con loop Pensa->Agisci->Osserva
- Usa intent detection esistente per affidabilità
- Supporta tutti i tool built-in
- Planning e memory integration point
- docs/AGENT_ROADMAP.md: gap analysis e roadmap
2026-03-24 09:32:00 +01:00
opencode e5ce70c68e fix: migliora intent detection e parsing message dict
- Shell commands: supporta comando singolo (pwd, echo) oltre a quelli con argomenti
- write_file: parsing migliorato per estrarre contenuto con vari pattern
- invoke: gestisce correttamente messaggi in formato dict (non solo oggetti con .content)

Fix principali:
- ls, pwd, echo, git ora funzionano come execute
- write_file con 'con dentro' e virgolette
- llm.invoke con {content: 'testo'} invece di HumanMessage
2026-03-23 21:12:08 +01:00
opencode 4fef38b740 Aggiungi documentazione OllamaToolAgent con tool calling 2026-03-23 19:14:11 +01:00
opencode f9def3e389 Execute: check comandi shell PRIMA di list_patterns (ls, git, cat, etc.) 2026-03-23 19:12:42 +01:00
opencode 462f3d1785 Execute: riconosci comandi shell con argomenti (ls -la, etc.) 2026-03-23 19:11:09 +01:00
opencode 57c43d4738 Correzione pattern write_file: usa file_path già estratto 2026-03-23 19:09:28 +01:00
opencode f678a6f20d Rimuovi debug print e aggiungi pattern write_file
- Rimuovi print di debug da _execute_tool e invoke
- Aggiungi pattern intent per write_file (scrivi, crea, salva)
2026-03-23 19:06:58 +01:00
opencode 34d6623cb2 fix: rimuove model-based tool calling, usa solo intent detection
Il model-based tool calling causava comportamenti imprevedibili con modelli locali. Ora usa solo intent detection.
2026-03-23 19:00:46 +01:00
opencode f8ebfb65ab feat: aggiunge pattern per comando 'cerca file' 2026-03-23 19:00:09 +01:00
opencode 1e49eff703 fix: migliora pattern detection con regex case-insensitive e keyword generiche
- Usa re.IGNORECASE per estrarre path
- Usa ANY keyword read invece di pattern esatti
- Più flessibile nell'interpretazione dell'intento
2026-03-23 18:41:57 +01:00
opencode 9cccbabef1 feat: aggiunge pattern detection per 'leggi file'
- Aggiunge pattern per comandi di lettura file
- Estrae automaticamente il path dal messaggio
2026-03-23 18:39:42 +01:00
opencode cffac60211 fix: langcode.py usa result['response'] invece di messages[-1]
Il bug era che langcode.py prendeva l'ultimo messaggio dalla cronologia invece del campo 'response' che OllamaToolAgent restituisce.
2026-03-23 18:35:45 +01:00
opencode d16102587d debug: add flush=True to print statements 2026-03-23 18:32:40 +01:00
opencode a0ce57132d debug: trace before and after invoke 2026-03-23 18:29:01 +01:00
opencode fbc19aef23 debug: trace invoke execution 2026-03-23 18:15:16 +01:00
opencode e7cd792954 debug: check result keys in main.py 2026-03-23 18:05:36 +01:00
opencode b22297a5d4 fix: usa @tool decorator invece di Tool() per i built-in
Il problema era che Tool() senza parametri si lamentava quando invocato con {}. Usando @tool decorator funziona correttamente.
2026-03-23 18:01:40 +01:00
opencode 2253fbad13 debug: trace full tool execution 2026-03-23 17:57:16 +01:00
opencode 658f7cd580 debug: aggiunge print esplicito 2026-03-23 17:49:19 +01:00
opencode 8528068995 fix: force reload module to avoid cached version 2026-03-23 17:47:24 +01:00
opencode 7fd3bfd26b fix: non passare argomenti vuoti a tool senza parametri 2026-03-23 17:36:50 +01:00
opencode 52925d80ce debug: mostra result del tool 2026-03-23 17:30:39 +01:00
opencode ecf4648393 debug: aggiunge print per vedere detection 2026-03-23 17:29:25 +01:00
opencode 7c645bff78 fix: migliora intent detection con più patterns 2026-03-23 17:21:52 +01:00