Commit Graph
75 Commits
Author SHA1 Message Date
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
opencode a2f933edee fix: return tool result directly for detected intents 2026-03-23 17:19:55 +01:00
opencode 9970bba6c7 fix: aggiunge intent detection per fallback automatico
- Rileva automaticamente richieste di system info e list file
- Non dipende dal modello per usare i tool base
- System prompt semplificato
2026-03-23 17:02:30 +01:00
opencode 2fa06ec0af fix: migliora parsing e system prompt per tool calling
- Nuovo formato TOOL:toolname|arg=val più semplice
- System prompt semplificato con lista chiara tool
- Parsing supporta sia formato nuovo che vecchio
- Validazione tool names esistenti
2026-03-23 16:20:37 +01:00
opencode a309c7e27c feat: aggiunge OllamaToolAgent con tool calling
- Nuovo modulo ollama_agent.py con parsing delle risposte
- Supporta chiamate tool per provider senza bind_tools
- Tool built-in: execute, read_file, write_file, ls, search, system_info
- Il modello risponde con [TOOL_CALL] che noi parsiamo ed eseguiamo
- Integrato in main.py per uso automatico con Ollama
2026-03-23 16:14:37 +01:00
opencode 2077618f52 fix: corregge import langchain_core.messages 2026-03-23 16:03:08 +01:00
opencode 0b5c6a874e fix: usa sempre agente semplice per Ollama
- Rimuovi condizione len(custom_tools) > 0
- Ora usa simple agent per qualsiasi config con provider=ollama
2026-03-23 16:01:28 +01:00
opencode 8acbeb7dfe feat: aggiunge supporto agente semplice per Ollama
- Crea create_simple_agent() per provider senza tool-calling
- Detecta automaticamente Ollama e usa agente semplice
- Aggiunge comando /reset per pulire cronologia
2026-03-23 15:59:11 +01:00
opencode b25aa8fbad feat: migliora gestione errori con suggerimenti contextuali
- Aggiunge config_manager a load_model_from_config() per usare config attive
- Migliora error handling con tipo eccezione e suggerimenti
- Aggiunge pyproject.toml e setup.py per installazione pip
2026-03-23 11:14:20 +01:00
opencode 4de50a1712 docs: riscrive QUICKSTART.md completo con tutte le funzionalità
- Chat interattiva, Server web, Dashboard, API
- CLI configurazione, TUI, Analytics
- Comandi memory, planning, skills
- Struttura progetto e troubleshooting
2026-03-23 09:50:19 +01:00
opencode 122ad6930b docs: aggiunge guida rapida QUICKSTART.md
Guida veloce per installazione da zero su nuova macchina
2026-03-23 09:43:40 +01:00
opencode 05fc002cb4 fix: rimuove virgolette dai fatti salvati nella memoria
- Aggiunta funzione _clean_text() per pulire le virgolette
- Corretto memory_remember per salvare testo pulito
2026-03-23 09:41:46 +01:00
opencode d055204067 fix: migliora parsing comando /plan create per gestire nomi con spazi
- Aggiunto regex parsing per estrarre virgolette dalla stringa grezza
- Il comando ora funziona correttamente con nomi multi-parola
- Formato supportato: /plan create "Nome Piano" "Task1; Task2; Task3"
2026-03-23 09:11:00 +01:00
opencode 56f2819a92 feat: Aggiunge miglioramenti per memoria e pianificazione con integrazione MCP
- Aggiunto sistema SimplePersistentMemory per fatti, preferenze e cronologia conversazioni
- Aggiunto EnhancedPlanner con dipendenze task, priorità e tracciamento progresso
- Integrati strumenti di miglioramento nell'agente (remember, recall, preference, planning)
- Aggiunti comandi CLI /memory e /plan per accesso diretto da terminale
- Aggiunto client MCP per connessione a server Model Context Protocol
- Aggiornato README con documentazione completa per tutte le nuove funzionalità
- Corretto parsing comando creazione piano per gestire nomi multi-parola

Nuovi comandi:
- /memory remember <testo> - Ricorda un fatto
- /memory recall <query> - Cerca nella memoria
- /memory preference set/get - Gestisci preferenze
- /memory stats - Statistiche memoria
- /plan create <nome> <task1;task2;...> - Crea un piano
- /plan list - Elenca tutti i piani
- /plan progress <plan_id> - Mostra progresso piano
- /plan start <task_id> - Inizia un task
- /plan complete <task_id> - Completa un task
2026-03-23 08:57:21 +01:00
opencode 5a8fcda993 fix: remove pycache files and finalize integration 2026-03-22 14:41:40 +01:00
opencode d68417bbc8 cleanup: remove pycache files and update main.py 2026-03-21 22:39:51 +01:00
opencode 6e7ae3a959 feat: Add skill management capabilities to discover, install, and manage agent skills
- Created skill_manager.py for interacting with skills.sh and other skill registries
- Added skill management tools (search_skills, install_skill, uninstall_skill, list_installed_skills, get_skill_details) as LangChain Tools
- Integrated skill management into the agent's tool system via get_skill_tools()
- Added /skills subcommand to CLI for direct terminal access to skill management
- Updated system prompt to inform users about skill management capabilities
- Created comprehensive documentation in docs/skills-management-design.md
- Enables users to discover and install community skills to extend agent capabilities
2026-03-21 22:31:14 +01:00