No description
  • Shell 57.8%
  • PowerShell 42.2%
Find a file
2026-08-04 22:18:30 +02:00
releases Release v1.4.7 2026-08-04 22:18:30 +02:00
install_mac.sh Release v1.4.4 2026-07-10 14:42:26 +02:00
install_mempalace_rs.sh Release v1.3.4 2026-06-30 13:17:01 +02:00
install_release.sh Release v1.4.4 2026-07-10 14:42:26 +02:00
install_windows.ps1 Release v1.4.4 2026-07-10 14:42:26 +02:00
latest_version.txt Windows 1.4.4 2026-07-10 14:17:23 +02:00
mcp_servers.json Release v1.4.5 2026-08-04 16:43:08 +02:00
models.json Release v1.4.5 2026-08-04 16:43:08 +02:00
README.md Release v1.3.5 2026-07-01 00:48:30 +02:00
user_config.json Release v1.4.3 2026-07-10 11:35:03 +02:00
VERSION Release v1.4.7 2026-08-04 22:18:30 +02:00

CodePalace - Release Compilate

Agente di sviluppo software autonomo con MemPalace.

Installazione Rapida

Linux (consigliato)

Un solo comando installa tutto: CodePalace, dipendenze Python e mempalace-rs (backend veloce in Rust):

bash <(curl -sL https://git.infinitech.it/forgejo-admin/codepalace_release/raw/branch/master/install_release.sh)

Oppure clona e installa:

git clone https://git.infinitech.it/forgejo-admin/codepalace_release.git
cd codepalace_release
bash install_release.sh

macOS (Intel e Apple Silicon)

bash <(curl -sL https://git.infinitech.it/forgejo-admin/codepalace_release/raw/branch/master/install_mac.sh)

Oppure:

git clone https://git.infinitech.it/forgejo-admin/codepalace_release.git
cd codepalace_release
bash install_mac.sh          # Installazione di sistema (richiede sudo)
bash install_mac.sh --user   # Installazione nella home utente (no sudo)

Windows (PowerShell)

# Scarica il repository
git clone https://git.infinitech.it/forgejo-admin/codepalace_release.git
cd codepalace_release

# Installazione di sistema (richiede admin)
.\install_windows.ps1

# Installazione nella home utente (no admin)
.\install_windows.ps1 -User

Nota Windows: Può essere necessario eseguire Set-ExecutionPolicy -Scope CurrentUser RemoteSigned per abilitare gli script PowerShell. Windows SmartScreen potrebbe mostrare un avviso al primo avvio: clicca "More info" > "Run anyway".

Opzioni di install_release.sh (Linux)

Opzione Descrizione
--skip-rust Salta installazione mempalace-rs (usa backend Python)
--skip-deps Salta dipendenze di sistema
--skip-sqlite Salta compilazione sqlite3 dai sorgenti
--skip-onnx Salta installazione ONNX Runtime
--include-onnx Include ONNX Runtime nella build PyInstaller (~100MB+)
--include-fastembed Compila mempalace-rs con fastembed (ricerca semantica)
--python-only Solo dipendenze Python (= --skip-rust --skip-sqlite --skip-onnx)
--local-dir PATH Usa directory locale per mempalace-rs
--force Forza reinstallazione
--verbose Output verboso per debug
--help Mostra tutte le opzioni

Esempio per installare solo CodePalace senza mempalace-rs:

bash install_release.sh --skip-rust

Installazione Release Compilata (alternativa - Linux)

Per installare solo il binario precompilato senza mempalace-rs:

bash <(curl -sL https://git.infinitech.it/forgejo-admin/codepalace_release/raw/branch/master/install_release.sh)

Installazione Manuale

  1. Scarica l'archivio per la tua piattaforma dalla cartella releases/
  2. Estrai l'archivio: tar xzf codepalace_VERSIONE_piattaforma.tar.gz
  3. Esegui lo script di installazione per la tua piattaforma:
    • Linux: cd codepalace_VERSIONE_piattaforma && bash install_release.sh --local
    • macOS: cd codepalace_VERSIONE_piattaforma && bash install_mac.sh --user
    • Windows: Estrarre lo ZIP e lanciare .\install_windows.ps1 -User
  4. Avvia CodePalace: codepalace

Configurazione ONNX Runtime (ricerca semantica)

CodePalace supporta la ricerca semantica via fastembed e ONNX Runtime. Quando ONNX Runtime è installato, mempalace-rs utilizza embedding semantico (AllMiniLML6V2) per una ricerca più precisa. Senza ONNX Runtime, mempalace-rs utilizza SHA3 fallback (ricerca sintattica).

Installazione ONNX Runtime

# Metodo automatico (via install_release.sh)
bash install_release.sh  # ONNX Runtime viene installato automaticamente

# Metodo manuale (Linux x64)
ONNX_VER=1.20.1
wget https://github.com/microsoft/onnxruntime/releases/download/v${ONNX_VER}/onnxruntime-linux-x64-${ONNX_VER}.tgz
tar xzf onnxruntime-linux-x64-${ONNX_VER}.tgz
sudo mkdir -p /usr/local/lib/onnxruntime
sudo cp onnxruntime-*/lib/* /usr/local/lib/onnxruntime/
sudo ldconfig

Configurazione variabili d'ambiente

mempalace-rs con ort-load-dynamic carica libonnxruntime a runtime. Deve poter trovare la libreria tramite ORT_LIB_LOCATION o LD_LIBRARY_PATH:

# Imposta ORT_LIB_LOCATION (metodo raccomandato per mempalace-rs)
export ORT_LIB_LOCATION=/usr/local/lib/onnxruntime

# Aggiungi anche a LD_LIBRARY_PATH per il linker dinamico
export LD_LIBRARY_PATH=/usr/local/lib/onnxruntime:${LD_LIBRARY_PATH:-}

# Per persistenza, aggiungi a ~/.bashrc
echo 'export ORT_LIB_LOCATION=/usr/local/lib/onnxruntime' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/lib/onnxruntime:${LD_LIBRARY_PATH:-}' >> ~/.bashrc

Docker con ONNX Runtime

# Build con ONNX Runtime
INCLUDE_ONNX=true docker compose build

# Verifica che ONNX Runtime sia disponibile nel container
docker compose exec agent ls /usr/local/lib/onnxruntime/

Build PyInstaller con ONNX Runtime

# Build con ONNX Runtime incluso nel binario (~100MB+)
bash scripts/build.sh --include-onnx --include-fastembed

# Release con ONNX Runtime e fastembed
bash scripts/release.sh --build-rust

Esecuzione

Comandi Principali

Comando Descrizione
codepalace Lancia la TUI nella directory corrente
codepalace -p /path/to/project Lancia la TUI sul progetto specificato
codepalace run -t "task" Esegue un singolo task
codepalace interactive Modalità interattiva REPL
codepalace serve Server API (porta 8080)
codepalace webmempalace Web server MemPalace (Flask)
codepalace self-update Verifica e installa aggiornamenti
codepalace version Mostra la versione corrente

Parametri Globali

Parametro Descrizione
-p, --project PATH Directory del progetto
--model MODELLO Modello LLM da usare (es. z-ai/glm-5.1)
--classification-model MODELLO Modello per classificazione/analisi (più economico, default: openai/gpt-4o-mini)
--web Esegui la TUI via web browser
--host HOST Host per modalità web (default: 0.0.0.0)
--port PORTA Porta per modalità web (default: 8000)

Parametri run

Parametro Descrizione
-t, --task TESTO Task da eseguire
--task-file FILE File contenente il task
-m, --model MODELLO Modello LLM
--max-steps N Numero massimo di step
--no-dedup Disabilita deduplicazione
--sandbox Modalità sandbox
--no-git Disabilita git auto-commit
--api-key KEY Chiave API OpenRouter

Parametri serve

Parametro Descrizione
--host HOST Host del server (default: 0.0.0.0)
--port PORTA Porta del server (default: 8080)
--api-key KEY Chiave API OpenRouter

Esempi

# Esegui un task specifico
kindle run -t "Crea una classe Calculator con add, subtract, multiply, divide"

# Usa un modello diverso
codepalace run -t "Refactor the auth module" --model z-ai/glm-5.1

# Usa un modello di classificazione personalizzato
codepalace --classification-model openai/gpt-4o-mini -p ./myproject

# Modalità interattiva
codepalace interactive -p ./myproject

# Server API su porta personalizzata
codepalace serve --port 9090 --host 127.0.0.1

# TUI via browser
codepalace --web --port 8000 -p ./myproject

File di Configurazione

CodePalace utilizza tre file JSON di configurazione nella directory ~/.codepalace/:

models.json - Configurazione Modelli AI

Parametro Tipo Default Descrizione
model string z-ai/glm-5.1 Modello LLM principale
classification_model string openai/gpt-4o-mini Modello per classificazione/analisi (più economico)
base_url string https://openrouter.ai/api/v1 URL base API
temperature float 0.7 Temperatura di generazione
context_max_tokens int 64000 Token massimi di contesto
max_tokens_default int/null null Token massimi per risposta default
max_tokens_write int/null null Token massimi per write_file
max_tokens_respond int/null null Token massimi per respond
max_tokens_plan int/null null Token massimi per pianificazione
thinking string medium Livello di ragionamento (high/medium/normal)
json_mode bool true Forza response_format JSON nelle chiamate API
mempalace_backend string rust Backend MemPalace (rust o python)

Esempio:

{
  "model": "z-ai/glm-5.1",
  "classification_model": "openai/gpt-4o-mini",
  "base_url": "https://openrouter.ai/api/v1",
  "temperature": 0.7,
  "context_max_tokens": 64000,
  "thinking": "medium",
  "mempalace_backend": "rust"
}

user_config.json - Configurazione Utente

Parametro Tipo Default Descrizione
language string en Lingua dell'interfaccia
user_id string "" Identificativo utente
classification_model string openai/gpt-4o-mini Override modello classificazione (vuoto = usa models.json)
prompt_caching bool true Abilita caching dei prompt
cache_control_default string ephemeral Tipo di caching predefinito
share_conversations bool false Condividi conversazioni per miglioramento
license.key string "" Chiave di licenza
license.api_url string https://www.codepalace.ai/api URL API per validazione licenza
license.report_usage bool true Abilita reporting utilizzo

Esempio:

{
  "language": "en",
  "classification_model": "openai/gpt-4o-mini",
  "prompt_caching": true,
  "license": {
    "key": "LA_TUA_CHIAVE_QUI",
    "api_url": "https://www.codepalace.ai/api",
    "report_usage": true
  }
}

mcp_servers.json - Configurazione Server MCP

Configura i server MCP (Model Context Protocol) disponibili. I server possono essere abilitati/disabilitati con il campo enabled.

Server Default Descrizione
filesystem Accesso al file system
fetch Fetch di risorse web
sqlite Database SQLite
code-quality Analisi qualità codice
test-runner Esecuzione test
git Operazioni Git
memory Gestione memoria
database Operazioni database
documentation Generazione documentazione
package Gestione pacchetti
web Interazione web
web-debug Debug e screenshot browser
env Variabili d'ambiente
testing Testing avanzato
github API GitHub (richiede GITHUB_PERSONAL_ACCESS_TOKEN)
brave-search Ricerca web (richiede BRAVE_API_KEY)
docker Gestione container Docker

Per abilitare un server disabilitato, impostare "enabled": true e configurare le variabili d'ambiente necessarie.

Disinstallazione

# Linux
bash install_release.sh --uninstall

# macOS
bash install_mac.sh --uninstall

# Windows
.\install_windows.ps1 -Uninstall

Aggiornamento

CodePalace verifica automaticamente la disponibilità di aggiornamenti all'avvio. Per aggiornare manualmente:

# Linux
bash install_release.sh  # Reinstalla tutto con l'ultima versione
# oppure solo il binario:
bash install_release.sh

# macOS
bash install_mac.sh

# Windows
.\install_windows.ps1

Oppure dall'interno di CodePalace:

codepalace self-update
codepalace self-update --check-only  # Solo verifica

Aggiornamento Standalone (senza licenza)

Se la licenza è scaduta e non è possibile avviare CodePalace, è possibile aggiornare usando lo script standalone:

python3.11 self_update.py --check     # Verifica aggiornamenti disponibili
python3.11 self_update.py --force     # Forza re-installazione dell'ultima versione
python3.11 self_update.py --version   # Mostra versione corrente

I comandi self-update e version non richiedono una licenza valida. È anche possibile usare la variabile d'ambiente CODEPALACE_SKIP_LICENSE_CHECK=1 per bypassare il controllo licenza.

Struttura del Repository

codepalace_release/
├── install_release.sh              # Script installazione completa Linux (consigliato)
├── install_mac.sh              # Script installazione macOS
├── install_windows.ps1         # Script installazione Windows (PowerShell)
├── models.json                 # Configurazione modelli AI
├── user_config.json            # Template configurazione utente
├── mcp_servers.json            # Configurazione server MCP
├── README.md                   # Questo file
├── VERSION                     # Versione corrente
└── releases/
    └── v1.3.2/
        ├── codepalace_1.3.2_linux_amd64.tar.gz
        └── codepalace_1.3.2_linux_amd64.tar.gz.sha256

Switch Backend MemPalace

CodePalace supporta due backend per la memoria:

Backend Velocità Compatibilità Installazione
Rust (mempalace-rs) Veloce Linux, macOS incluso in install_release.sh
Python (mempalace) 🐢 Standard Tutte le piattaforme pip install mempalace

Per cambiare backend:

# Via variabile d'ambiente
export MEMPALACE_BACKEND=rust    # Rust (veloce)
export MEMPALACE_BACKEND=python  # Python (compatibile)

# Via models.json
# {"mempalace_backend": "rust"}

Contenuto della Release

Ogni archivio contiene:

  • codepalace - Binario compilato standalone (non richiede Python)
  • models.json - Configurazione dei modelli AI
  • user_config.json - Template configurazione utente (senza dati personali)
  • mcp_servers.json - Configurazione server MCP
  • install_release.sh - Script installazione Linux
  • install_mac.sh - Script installazione macOS
  • install_windows.ps1 - Script installazione Windows
  • install_release.sh - Script installazione completa Linux
  • RELEASE_NOTES.md - Note di versione
  • *.sha256 - Checksum di verifica integrità

Struttura delle Directory

CodePalace utilizza due directory separate nella home dell'utente:

Directory Contenuto Note
~/.codepalace/ Configurazione utente user_config.json, models.json, mcp_servers.json
~/.mempalace/ Dati MemPalace Memoria dell'agente, palace, logs, conversazioni

Requisiti di Sistema

Piattaforma Requisiti
Linux x86_64/amd64 o ARM64, ~100MB spazio (200MB con mempalace-rs)
macOS Intel o Apple Silicon, ~100MB spazio (200MB con mempalace-rs)
Windows Windows 10+, ~100MB spazio

Comune: Connessione internet (per aggiornamenti e API AI)

Prerequisiti per mempalace-rs (opzionale ma consigliato)

  • Rust (installabile con curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh)
  • Lo script install_release.sh rileva automaticamente se Rust è installato e offre di installarlo
  • Senza Rust, CodePalace funziona con il backend Python (fallback automatico)

Prerequisiti per backend Python

  • Python 3.8+
  • pip (gestore pacchetti Python)
  • Le dipendenze vengono installate automaticamente dallo script

🔑 Gestione Licenza

CodePalace richiede una chiave di licenza valida per funzionare. Il sito web codepalace.ai gestisce registrazione, licenze e abbonamenti (è un servizio separato dall'agente).

Configurazione Licenza

  1. File di configurazione: Inserisci la chiave nel file ~/.codepalace/user_config.json:

    {
      "license": {
        "key": "LA_TUA_CHIAVE_QUI"
      }
    }
    
  2. Variabile d'ambiente:

    export CODEPALACE_LICENSE_KEY="LA_TUA_CHIAVE_QUI"
    
  3. Parametro CLI (per comandi run/interactive/serve):

    codepalace run -t "task" --api-key LA_TUA_CHIAVE_QUI
    

Variabili d'Ambiente Correlate

Variabile Default Descrizione
CODEPALACE_LICENSE_KEY Chiave di licenza
CODEPALACE_API_URL https://www.codepalace.ai/api URL base per la validazione
OPENROUTER_API_KEY Chiave API OpenRouter (per LLM)
OPENAI_API_KEY Chiave API OpenAI (alternativa)
GITHUB_PERSONAL_ACCESS_TOKEN Per server MCP GitHub
BRAVE_API_KEY Per server MCP Brave Search

Piani Disponibili

Consulta la pagina Pricing per i dettagli sui piani e i limiti associati.


📋 Changelog Recente

Per i dettagli completi su tutte le versioni, consulta il CHANGELOG.md nel repository di sviluppo.

v1.3.2

  • Self-update senza licenza: i comandi self-update e version non richiedono più licenza
  • Script standalone self_update.py per aggiornamenti senza licenza
  • Variabile d'ambiente CODEPALACE_SKIP_LICENSE_CHECK per bypassare il controllo licenza

Supporto

Per problemi o domande, contatta il supporto.