
Sistema operativo per agenti AI sicuro e privato, con archiviazione crittografata locale, autenticazione OAuth/SSO, controllo degli accessi basato su policy e un framework estensibile per la creazione di strumenti, adatto a implementazioni personali e di produzione.
Il tuo assistente AI personale sicuro, sempre al tuo fianco
English | 简体中文 | Русский | 日本語 | 한국어
Reborn Quick Start • Philosophy • Features • Installation • Configuration • Security • Architecture
IronClaw Reborn è il runtime standalone presente nel branch reborn-integration.
Utilizza il binario separato ironclaw-reborn del pacchetto
ironclaw_reborn_cli e una directory di stato Reborn separata. Non utilizza
la directory di stato legacy ironclaw come root di configurazione.
Per il binario più vecchio ironclaw, consulta Installazione e
Utilizzo legacy di IronClaw.
Dalla root del repository:```bash cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- --help
Oppure compilalo prima:```bash
cargo build -p ironclaw_reborn_cli --bin ironclaw-reborn
./target/debug/ironclaw-reborn --help
La home predefinita di Reborn è $HOME/.ironclaw/reborn. Sostituiscila con un percorso assoluto quando vuoi uno stato isolato:```bash
export IRONCLAW_REBORN_HOME="$PWD/.reborn-home"
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- config path
`config path` e `doctor` sono diagnostici sicuri; riportano la home risolta, il profilo, `config.toml`, `providers.json`, e `v1_state: not-used`.
Non creano stato Reborn o file di configurazione seed.
### Configurare la route del modello
Il modo nativo tramite CLI per configurare la route predefinita del modello di Reborn è:```bash
export IRONCLAW_REBORN_HOME="$PWD/.reborn-home"
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- models set-provider openai --model gpt-5-mini
Questo scrive $IRONCLAW_REBORN_HOME/config.toml con [llm.default] e il
nome della variabile d'ambiente per le credenziali del provider. Controllalo con:```bash
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- models status
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- models list openai
Per OpenAI, imposta il valore segreto nell'ambiente prima di iniziare:```bash
export OPENAI_API_KEY="sk-..."
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- run --message "hello"
Ometti --message o usa repl per una sessione interattiva su stdin:```bash
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- repl
### `config.toml` forma
`config init` crea file di avvio modificabili:```bash
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- config init
Scrive:
$IRONCLAW_REBORN_HOME/config.toml$IRONCLAW_REBORN_HOME/providers.jsonUn percorso modello configurato minimale assomiglia a:```toml [llm.default] provider_id = "openai" model = "gpt-5-mini" api_key_env = "OPENAI_API_KEY"
`config.toml` può anche includere sezioni opzionali come `[boot]`, `[identity]`, `[runner]` e `[skills]`; `config init` scrive una guida commentata per i campi supportati.
Se `config.toml` è assente, il primo avvio stateful del runtime tramite `run`, `repl` o `serve` popola un file sparso con `api_version` e il profilo di avvio sicuro `local-dev`. I comandi in sola lettura e `run --dry-run` rimangono senza effetti collaterali. Selezioni ambientali una tantum come `IRONCLAW_REBORN_PROFILE=local-dev-yolo` non vengono persistite nel file popolato.
Importante: `api_key_env` è il nome di una variabile d'ambiente, non il segreto stesso. Reborn rifiuta valori inline con forma di segreto in `config.toml` e `providers.json`.
Lo storage di produzione utilizza lo stesso pattern solo-env. Una configurazione Reborn di produzione può nominare la variabile dell'URL PostgreSQL, ma non deve contenere l'URL grezzo:```toml
[storage]
backend = "postgres"
url_env = "IRONCLAW_REBORN_POSTGRES_URL"
secret_master_key_env = "IRONCLAW_REBORN_SECRET_MASTER_KEY"
# Optional; defaults to 2. Keep below the PostgreSQL server or managed
# session-pool cap after reserving capacity for restarts and operator sessions.
pool_max_size = 2
[policy]
deployment_mode = "hosted_multi_tenant"
default_profile = "secure_default"
Imposta IRONCLAW_REBORN_POSTGRES_URL nell'ambiente di processo, e imposta IRONCLAW_REBORN_SECRET_MASTER_KEY come materiale crittografico chiave indipendente.
I provider PostgreSQL remoti gestiti devono utilizzare TLS, ad esempio aggiungendo sslmode=require.
Il run in produzione richiede anche una sezione [policy] esplicita. La prima slice di avvio in produzione supporta policy runtime che non richiedono un binding di processo tenant-sandbox.
Una volta che [llm.default] esiste, quella configurazione seleziona il provider. LLM_BACKEND è solo un fallback di ambiente quando nessuno slot LLM predefinito è configurato. Per cambiare provider dopo aver scritto la configurazione, usa models set-provider <provider> o modifica [llm.default].provider_id.
Se $IRONCLAW_REBORN_HOME/config.toml è assente o non ha [llm.default], Reborn può risolvere l'LLM dalle variabili d'ambiente. Una configurazione seed sparsa al primo avvio non include [llm.default], quindi la selezione del modello solo tramite ambiente continua a funzionare:```bash
export IRONCLAW_REBORN_HOME="$PWD/.reborn-env-only"
export LLM_BACKEND=openai
export OPENAI_API_KEY="sk-..."
cargo run -q -p ironclaw_reborn_cli --bin ironclaw-reborn -- run --message "hello"
Variabili d'ambiente comuni del provider:
| Provider | Selettore | Env richiesti |
| --- | --- | --- |
| OpenAI | `LLM_BACKEND=openai` | `OPENAI_API_KEY`; opzionali `OPENAI_MODEL`, `OPENAI_BASE_URL` |
| Anthropic | `LLM_BACKEND=anthropic` | `ANTHROPIC_API_KEY`; opzionali `ANTHROPIC_MODEL`, `ANTHROPIC_BASE_URL` |
| OpenAI-compatible | `LLM_BACKEND=openai_compatible` | `LLM_BASE_URL`; opzionali `LLM_API_KEY`, `LLM_MODEL` |
| OpenRouter | `LLM_BACKEND=openrouter` | `OPENROUTER_API_KEY`; opzionale `OPENROUTER_MODEL` |
| Ollama | `LLM_BACKEND=ollama` | nessuna chiave; opzionali `OLLAMA_BASE_URL`, `OLLAMA_MODEL` |
| Codex auth | `LLM_BACKEND=openai_codex` | `LLM_USE_CODEX_AUTH=true` o `CODEX_AUTH_PATH`; opzionale `OPENAI_CODEX_MODEL` |
Usa `models list <provider>` per vedere i metadati esatti del provider compilati nel ramo corrente.
### Variabili di avvio