← Indice documentazione docs › prospettive estese v1

myclaw

Prospettive estese — da assistente reattivo a intelligenza ambientale
v1.0 — 22 aprile 2026
Estende Architettura Intro e Prospettive & Giudizio.
Non sostituisce: aggiunge cinque famiglie di capacità che il design attuale non copre.

Indice

  1. Perché questo doc: il salto di baricentro
  2. Le cinque famiglie di capacità
    1. A. Percezione continua (indicizzazione in background)
    2. B. Agency multi-agente (dialogo con altri agenti)
    3. C. Modalità ombra (ascolto senza risposta)
    4. D. Proattività creativa (proporre riassetti)
    5. E. Capacità esterne (web, calendari)
    6. F. Telos — la funzione di allineamento
  3. La questione trasversale: identità del parlante
  4. Tensioni costituzionali e Legge 0 estesa
  5. Mapping: cosa aggiungere alla microprogettazione
  6. Roadmap di fase

1. Perché questo doc: il salto di baricentro

myclaw, come lo disegna l'architettura attuale, è un assistente reattivo: l'utente scrive, il gateway avvia un loop, il loop risponde. Questo documento introduce cinque famiglie di capacità che spostano il baricentro: da reattivo a ambientale. myclaw smette di rispondere soltanto e inizia a percepire, collaborare, osservare, proporre.

Il design di base resta valido: i quattro strati, le quattro Leggi, l'audit, la memoria a tre livelli, l'autonomia graduata. Ma un sistema ambientale introduce elementi che la versione reattiva non prevede:

Questo doc stabilisce ciascuno di questi elementi al livello di intento e tensione architetturale. La microprogettazione concreta arriverà dopo, in nuovi HTML di Livello 2 che questo doc elenca al §5.

ambientale percettivo · collaborativo reattivo (oggi) gateway · loop · tool · channel A. Indexer foto, file, voice-id B. AgentChannel dialogo con altri agenti C. Shadow mode ascolta, non risponde D. ActionProposal propone riassetti E. Tool esterni web, calendari
Figura 1 — Lo spazio delle capacità. Al centro, ciò che l'architettura attuale copre. Nelle bande più chiare, le cinque famiglie nuove. Più ci si allontana dal centro, più aumentano la potenza e la responsabilità costituzionale.

2. Le cinque famiglie di capacità

A. Percezione continua (indicizzazione in background)

Cosa include

componente nuovo fase 5-6

Perché non sta nel design attuale

L'architettura odierna è request-driven: tutto parte da un messaggio di un canale, passa per il loop, finisce con una risposta. Queste capacità sono task-driven nel tempo: un processo scansiona, aggiorna un indice, notifica quando succede qualcosa. È un modello diverso.

Cosa introduce

Decisioni non banali da fissare più tardi

B. Agency multi-agente (dialogo con altri agenti)

Sibling agents. myclaw è pensato per convivere con altri agenti specializzati sullo stesso ambiente: tipicamente un assistente domotico che presidia wake-word, voce e controllo della casa (vedi anche il concetto generale di sibling agents). Nell'ambiente dell'autore esiste già un assistente di questo tipo, parallelo a myclaw, che condivide la stessa astrazione sottostante per l'uso di modelli linguistici (interfaccia LLM). In altri ambienti il ruolo sarà ricoperto da un agente diverso: il pattern del dialogo inter-agente resta.

Cosa include

componente nuovo cross: channel + policy fase 6-7

Cosa introduce

Domande aperte (da risolvere in microprogettazione)

C. Modalità ombra (ascolto senza risposta)

Cosa include

costituzionalmente delicato regime nuovo fase 7+

Perché è diverso dagli altri tool

Non è un tool. È un regime operativo: un modo in cui myc sta in una chat. Diverso da non presente (attuale), diverso da interattivo (attuale), simile a lurker consapevole nel vocabolario delle community online.

Cosa richiede costituzionalmente

DECISIONE v1: lo shadow mode non è inviato in produzione fino a quando la sotto-legge costituzionale non è scritta, firmata e collaudata. Non è un'opzione di configurazione nascosta: è una capacità che richiede una versione della Costituzione bumped (1.0 → 2.0) e la firma esplicita di Roberto. Nel frattempo, può vivere come branch sperimentale in ambiente isolato.

D. Proattività creativa (proporre riassetti)

Cosa include

tipo nuovo cross: memory + neuron fase 4-5

Cosa introduce

Oggi memory §6 definisce la reflection come produttrice di FactProposal: la proposta di ricordare qualcosa. La proattività creativa è una generalizzazione: la reflection produce anche ActionProposal, la proposta di fare qualcosa di non banale (che coinvolga molti file, molti record, azioni ripetitive).

@dataclass
class ActionProposal:
    """Una proposta di azione di grande scala emersa da reflection."""
    kind: Literal["restructure", "homogenize", "cleanup",
                  "enrich", "classify", "consolidate"]
    scope: str                        # "~/Documenti/lavoro/" etc
    impact: ImpactReport              # quanti record/file toccati
    rationale: str                    # perché myc propone questo
    plan: list[PlannedAction]         # azioni concrete, step-by-step
    reversibility: Literal["reversible", "reversible_with_cost", "irreversible"]
    confidence: float                 # 0..1, quanta fiducia ha myc
    created_at: datetime

Differenze dalle approval esistenti

AspettoApprovalRequest (oggi)ActionProposal (nuovo)
OrigineIl loop sta per fare qualcosa, chiede permesso.myc ha osservato dati, propone qualcosa che nessuno ha chiesto.
UrgenzaBlocca il loop finché l'utente risponde.Non blocca nulla. Rimane in un inbox proposte finché l'utente la guarda.
Azione implicitaSe timeout: l'azione non succede.Se timeout: la proposta scade senza conseguenze.
UXBottoni Sì/No/Modifichiamo nel canale attivo.Digest serale, inbox proposte, preview di esempio, accetta/rifiuta/ricevi meno di queste.

È una superficie UX nuova. Va dettagliata in un proposal_ux.html dedicato.

E. Capacità esterne (web, calendari)

Cosa include

architetturalmente semplice fase 2-3

Perché è la più facile del pacchetto

Sono tool nel senso stretto del Protocol attuale. Implementano la stessa interfaccia di fs_read o shell_exec. Passano per Policy, approvazione, trace. Non introducono componenti architetturali nuovi.

Decisioni non banali

F. Telos — la funzione di allineamento

Cosa risolve

tipo nuovo cross: fondante per A, B, D fase 4-5

Le famiglie A, B e D generano intenzioni non richieste: l'indexer propone una tassonomia, un agente suggerisce una delega, la proattività propone un riassetto. Serve un criterio per dire quali di queste intenzioni hanno senso, senza chiedere all'utente di valutarle tutte. È la funzione di valutazione che l'agente proattivo, da solo, non ha.

Il design reattivo non si pone il problema: l'utente chiede, myc esegue, la valutazione è implicita nella richiesta. L'agente proattivo è libero di proporre qualunque cosa — e senza un criterio diventa un generatore entusiasta di rumore.

Tre livelli di allineamento

Livello 1 — I fini ultimi espliciti (TELOS.md)

Un sesto file nel workspace, accanto a IDENTITY, USER, MEMORY, AGENTS, SOUL. Scritto dall'utente, 3-7 frasi brevi. Non si raggiungono, si approssimano: sono aristotelici. Esempi tipo:

  1. Liberare il mio tempo dalle incombenze ripetitive (tempo)
  2. Mantenere l'ordine dei miei dati digitali (ordine)
  3. Non farmi perdere scadenze importanti (puntualità)
  4. Proteggere la mia privacy e quella di chi mi è vicino (protezione)
  5. Sorprendermi utilmente, ma non interrompermi (discrezione)
  6. Non spendere più di quanto serve (parsimonia)

Ogni telos ha un peso (priorità in conflitto) e una soglia di attivazione. Sono revisionabili in ogni momento con rito firmato, come la Costituzione.

Leggi vs Telos. Le 4 Leggi dicono cosa non fare mai (sono negative, le scrive myc con l'utente, riguardano la sicurezza). I Telos dicono verso cosa tendere (sono positivi, li scrive l'utente da solo, riguardano l'utilità). Sono ortogonali.

Livello 2 — La funzione di allineamento

Ogni proposta viene valutata con un singolo scalare:

expected_alignment = Σᵢ (weightᵢ · fitᵢ) · urgency · confidence − bother_cost

dove:
  weightᵢ     = peso del telos i (dichiarato in TELOS.md)
  fitᵢ        = quanto la proposta avvicina il telos i (0..1, stimato dall'LLM)
  urgency     = pressione temporale (scadenze, eventi)
  confidence  = fiducia di myc nella stima
  bother_cost = costo del disturbare, cresce con la frequenza recente

Se expected_alignment < θ → la proposta non arriva all'utente. Finisce in un journal interno che l'utente può ispezionare a volontà ("proposte scartate oggi: 47"). Il threshold θ è un parametro, non una decisione morale.

Livello 3 — Apprendimento dai silenzi, non solo dai no

Il TrustStore (già in rl_offline) si estende con un asse per-telos: se le proposte legate a ordine vengono accettate in 8/10 casi recenti, il peso effettivo di quel telos cresce. Se quelle legate a parsimonia vengono ignorate per 48 ore, il peso decresce. L'ignorare è un segnale — più debole di un "no", più forte di "non ancora vista".

Due trappole, due contromisure

TrappolaPerché è pericolosaContromisura
Goodhart Se i telos sono misurabili con metriche troppo precise, myc ottimizza la metrica invece della sostanza. I fitᵢ sono stimati dall'LLM con spiegazione testuale ("libera 2h/mese perché…"), non da contatori hardcoded. L'LLM giudica la sostanza.
Paternalismo "Non spendere oltre X" come telos rischia di diventare giudizio morale sugli acquisti dell'utente. I telos si applicano a ciò che myc fa per l'utente, non a ciò che l'utente fa. myc non giudica, si giudica. Questo va scritto esplicitamente in constitution.html.

Cosa introduce

Perché questa famiglia è fondante, non accessoria. Senza telos, le famiglie A, B e D producono proposte che l'utente deve valutare tutte, manualmente. Con i telos, myc porta all'utente solo il filtrato. È la differenza fra un maggiordomo attento e un collega entusiasta. La famiglia F non si rilascia dopo le altre: si rilascia con la famiglia D, altrimenti la D stessa è inutilizzabile.
Traccia del processo decisionale. Questa famiglia è emersa il 22 aprile 2026 da una domanda posta durante la revisione della visione: "come fa myc a capire se un servizio che ha pensato da solo ha senso, senza disturbare ogni volta l'utente con infinite proposte? Serve una linea guida, la definizione di fini ultimi." — Roberto. Il nome telos è stato scelto perché evoca esattamente l'intenzione aristotelica: fini verso cui si tende, non obiettivi che si raggiungono. La distinzione Leggi/Telos come "cosa non fare" / "verso cosa tendere" (le prime negative e scritte con l'utente per sicurezza; i secondi positivi e scritti dall'utente per utilità) è il cardine concettuale.
Nota del 22 aprile (ore successive). La stima dei fit della funzione di allineamento non può essere affidata all'LLM che ha generato la proposta: un LLM valuta i propri output in modo conforme (self-enhancement bias, Zheng 2023). Da questa osservazione è emerso un secondo componente, Vaglio, che garantisce indipendenza di contesto tra proponente e valutatore. Il Vaglio ha due fasi di natura diversa: Guardia costituzionale (deterministica, binaria) e Giudice teleologico (LLM indipendente, gradiente). Il principio che articola le due fasi è cristallizzato nella frase: "La Costituzione non giudica, la teleologia sì." — la Costituzione verifica e, se viola, blocca; altrimenti tace. Solo il giudizio teleologico produce un punteggio. La ricostruzione completa del ragionamento è nel Dialogo sui fini e i limiti, Giornate III-IV.

3. La questione trasversale: identità del parlante

Quattro delle cinque famiglie (A voice-id, B agent channel, C shadow mode, D proattività per-utente) condividono un bisogno che il design attuale copre male: sapere chi sta parlando.

Oggi il binding è: sender = "<canale>:<handle>" (es. telegram:@roberto). La memoria episodic usa sender come chiave (vedi il fix §3.5 di review di coerenza). Questo è sufficiente per un utente singolo che usa sempre lo stesso canale.

Appena entrano voice-id, agenti, casa condivisa, serve un livello in più:

telegram:@roberto sender (canale) voice:spk_a3f1 sender (voce) cli:roberto sender (terminale) IdentityResolver mapping evidenze → identità con confidence identity:roberto identità umana persistente Memoria episodic e semantica indicizzate per identità, non per sender. Il sender resta come metadato dell'evidenza (quale canale ha portato il segnale).
Figura 2 — Identità umana come chiave primaria della memoria. Più evidenze sullo stesso umano si aggregano. Il binding multi-canale diventa naturale.

Questo introduce:

DECISIONE DA CONFERMARE. Il design multi-utente è rimandato oltre fase 8, ma lo IdentityResolver nasce già in fase 4 come singleton identity (sempre Roberto). La struttura esiste, ma tratta un solo utente. Questo permette di introdurre voice-id senza rifattorizzare tutto dopo.

4. Tensioni costituzionali e Legge 0 estesa

Queste capacità introducono attriti con le 4 Leggi che il design attuale non può risolvere in-situ. Elenco le più importanti con verdetto provvisorio.

TensioneFamigliaVerdetto v1Motivazione
Ascoltare chat di terzi senza consenso esplicito C. Shadow blocca Sotto-legge dedicata obbligatoria prima del rilascio. Default off, whitelist scritta, notifica in chat.
Volti umani riconosciuti → etichettati con nome A. Percezione gate Clustering OK (cluster_id). Associazione cluster → nome solo con ActionProposal approvata.
Voice ID su chiunque passa in microfono A. Percezione gate Riconoscere solo voci iscritte nel workspace (enrollment esplicito). Voci sconosciute → unknown_speaker.
Un sibling agent delega azioni senza conferma dell'utente B. Multi-agente blocca Nessun agente esterno può firmare approvazioni per conto dell'utente. Richiesta inter-agente → loop approvazione standard.
Proposta di rinominare 300 file senza preview D. Proattività gate ActionProposal deve includere sempre: preview, impact count, piano di rollback. Senza questi, rigetto automatico.
Web search su topic sensibili (finanza, salute, minori) E. Esterno gate Lista di topic dove la ricerca passa a supervised anche in full autonomy.
Indexer scansiona directory con file personali di altri conviventi A. Percezione blocca Sorgenti indicizzabili solo quelle dichiarate in SOURCES.md. Mai scoperta autonoma.
La Legge 0 si estende, non si riscrive. Nessuna delle Leggi esistenti va riscritta. Serve aggiungere nel file costituzionale una sezione "estensioni applicative" che elenchi queste sotto-leggi specifiche — ognuna derivata da una Legge esistente. Il rito di modifica della Costituzione (firma, Merkle, verify all'avvio) copre automaticamente anche queste.

5. Mapping: cosa aggiungere alla microprogettazione

Questa sezione elenca i nuovi doc di Livello 2 che le cinque famiglie richiederanno. Non sostituisce l'ordine canonico di Prospettive & Giudizio §8, che resta valido fino a compimento. Li aggiunge in coda.

#Nuovo docCosa copreFase
1telos.htmlTELOS.md, funzione di allineamento, bother budget, apprendimento dai silenzi. Fondante per le famiglie A, B, D.4-5
2indexer.htmlProcesso long-running, scan, embedding, indici persistenti. Integra famiglia A.5
3identity.htmlIdentityResolver, evidenze multi-canale, voice enrollment, confidence. Rende primario il concetto di identità umana.4
4agent_channel.htmlQuinto canale, pairing simmetrico, vocabolario inter-agente, delega. Integra famiglia B.6
5shadow_mode.htmlRegime di ascolto, sotto-legge costituzionale, filtri, audit intensificato. Integra famiglia C.7+
6proposal_ux.htmlActionProposal, inbox proposte, digest serale, preview. Integra famiglia D.5
7estensioni a tool.htmlTool web_search, calendar_read, calendar_write. Famiglia E — non serve un doc nuovo, basta un'appendice.3
8estensioni a constitution.htmlSezione "estensioni applicative" con le 7 sotto-leggi del §4 + clausola anti-paternalismo dei telos.2
9estensioni a workspace.htmlAggiunta del 6° file TELOS.md al manifest del workspace.4
10estensioni a memory.html e rl_offline.htmlReflection produce ActionProposal pesate contro telos. TrustStore aggiunge asse telos_fitness.5

Cinque doc nuovi (telos, indexer, identity, agent_channel, shadow_mode, proposal_ux), quattro estensioni. Nessuno di questi blocca i 19 doc di microprogettazione già approvati. Nessuno di questi richiede di riscrivere un doc esistente.

Priorità naturale. I primi due da scrivere sono telos.html e identity.html. Il primo perché è fondante per tre famiglie (A, B, D): senza funzione di allineamento, la proattività è inutilizzabile. Il secondo perché sblocca quattro famiglie e richiede di raffinare il fix §3.5 della review di coerenza (episodic indicizzata per identità, non per sender). Tutti gli altri possono seguire in base alla fase.

6. Roadmap di fase

Le fasi di rilascio di Neuroni & Memoria §11 restano valide. Qui mappo le cinque famiglie sulle fasi, con priorità interna.

FaseFocus esistenteAggiunte da questo doc
1scheletro + CLI + shell sandboxata
2policy + workspace + auditEstensione constitution.html con le 7 sotto-leggi
3Telegram + pairingTool web_search, calendar_read (famiglia E)
4memory + failoveridentity.html (singleton-identity iniziale), telos.html (contratto), TELOS.md nel workspace
5voce, tunnel, dashboardindexer.html, proposal_ux.html, attivazione funzione di allineamento (famiglie A+D+F insieme)
6neuroni, sintesi, sinapsiagent_channel.html (famiglia B)
7+maturazioneshadow_mode.html (famiglia C, dopo collaudo e sotto-legge)

La fase 5 diventa così più densa: indexer e inbox proposte sono entrambi capacità d'uso quotidiano che cambiano la percezione del prodotto. È voluto: la fase 5 è il salto da "prompt → risposta" a "myclaw mi sorprende".

Principio guida. Nessuna capacità di questo doc va costruita prima di aver completato la fase 1-2 dell'architettura di base. La tentazione di saltare avanti — specie su indexer e voice-id, che sono affascinanti — va resistita. Un myclaw reattivo solido è il prerequisito per un myclaw ambientale utile.

Continua a leggere

fondamenti · 20 min
Architettura — Introduzione v1
Il "cosa" di base: questo doc lo estende, non lo riscrive.
fondamenti · 20 min
Prospettive & Giudizio v1
Il giudizio che ha ordinato la microprogettazione. Questo doc apre un nuovo tronco.
non tecnico · 5 min
Quick tour
Per chi vuole prima capire cosa fa myclaw oggi.
microprogettazione
Indice componenti
I doc di Livello 2. I 6 nuovi doc del §5 verranno aggiunti qui.

myclaw — Prospettive estese v1.0 — 22 aprile 2026
Apre un secondo tronco di design: da reattivo ad ambientale. Non sostituisce nessun doc.