Matični hive

kazalo

Kaj je to

Matično vozlišče (OSA) usklajuje USB-operaterska vozlišča prek MCP prek SSH →

PostgreSQL. USB-vozlišča pošiljajo profile strojne opreme; mati izpelje

zmožnosti in vzdržuje hive register. Ta stran beleži odločitve, ki stojijo

za izvedbo — utemeljitve, ki jih koda ne more izraziti. Za navodila za

namestitev, arhitekturne diagrame in kontrolni seznam prvega zagona glejte

packaging/mother/MOTHER-SETUP.md.

Odločitve

Meja SSH s prisiljenim ukazom (ne poslušajoči demon)

USB-vozlišča dosežejo mater tako, da zaženejo ssh colibri@mother (brez

oddaljenega ukaza). Na materini strani authorized_keys vsili

command="/usr/local/bin/colibri-mcp-ssh",restrict,... — povezava ne more

zagnati interaktivne lupine ali kateregakoli ukaza razen ovoja.

Ovoj (colibri-mcp-ssh) dodatno dovoli SSH_ORIGINAL_COMMAND samo kot ""

(stdio MCP način) ali "tools" (enkratno odkritje). Vsaka druga vrednost je

zavrnjena.

Zakaj ne poslušajoči demon (HTTP, gRPC, surovi TCP): Tailscale šifrira

prenos, zato plast SSH doda avtentikacijo in omejitev brez dodatne

infrastrukture (brez TLS certifikatov, brez avtentikacijskih žetonov, brez

odprtih vrat). Meja s prisiljenim ukazom je druga ključavnica poleg SSH

ključa — tudi ogroženi USB, ki drži ključ, lahko samo pokliče ovoj, ovoj pa

samo delegira colibri-mcp. Obramba v globino, nameščena kot ena funkcija

OpenSSH.

colibri-mcp-ssh,

MOTHER-SETUP.md §Varnost

En sam dom za matično infrastrukturo (colibri, ne clawdie-iso)

Matični MCP skripti (node-register-mcp, geodesic-dome-mcp itd.) so bili

prvotno kopirani v oba repozitorija. Kopija v clawdie-iso je odnesla — njen

node-register-mcp je uporabljal interpolacijo nizov E'${...}' (dovzetno

za SQL-injekcijo), medtem ko je kopija v colibri uporabljala parametrizirani

psql -v :'variable'. Kopija v iso je bila odstranjena v clawdie-iso PR #129. Nauk: skripta v dveh repozitorijih bo odnesla. Wiki lint je

enorepozitorijski in ne vidi podvojenih skript med repozitoriji. Zmanjšanje

tveganja je disciplina: matična infrastruktura živi na enem mestu.

naming-decisions §Strukturne

(vrstica "En sam dom")

hive_nodes — ne usb_nodes

Prvotno ime tabele je predpostavljalo, da se bodo registrirala samo

USB-zagnana vozlišča. Toda vozlišče je vsak gostitelj, ki se pridruži hive —

USB, NVMe, ječa. Preimenovano v hive_nodes s stolpcem node_type (colibri

#161). Sprožilec derive_capabilities() je agnostičen glede tabele in ob

INSERT samodejno izračuna has_gpu, gpu_vendor, can_run_local_llm,

has_wifi, max_model.

mother_schema.sql,

naming-decisions (vrstica usb_nodes → hive_nodes)

PostgreSQL peer avtentikacija (brez gesel)

Uporabnik OS colibri se poveže na mother_hive prek peer avtentikacije —

jedro potrdi Unix uporabnika, geslo ni potrebno. node-register-mcp teče kot

ta uporabnik in podeduje zaupanje. Brez datotek pgpass, brez spremenljivk

okolja, brez vrtenja poverilnic. En gibljivi del: pravilo peer v

pg_hba.conf mora biti pred morebitno vrstico local all all (prvo

ujemanje).

Zakaj ne geslo ali certifikat: gesla se vrtijo in uhajajo; certifikati

potrebujejo CA. Peer avtentikacija je vgrajena v PostgreSQL na vsakem Unixu

in deluje za povezavo localhost z nič konfiguracije razen ene vrstice v

pg_hba.conf.

MOTHER-SETUP.md §Namestitev, 6. korak

Ključ na semenski particiji, ne v sliki

Zasebni ključ mother-mcp je nameščen na particijo CLAWDIESEED, ne zapečen v

ISO. Gradbeni skript ima varovalko za izdajo, ki zavrne vgradnjo ključa v

sliko za izdajo. Uvoznik semena (clawdie-live-seed) ga namesti ob zagonu.

Zakaj: ISO za izdajo je prenosljiv artefakt. Vgradnja zasebnega ključa

vanj bi vsakemu prenašalcu dala dostop do materinega MCP. Semenska particija

je ločen fizični medij, ki ga nadzoruje operater. Tudi brez semena se ISO

zažene in deluje — zunanja MCP povezava demona do matere odpove elegantno

(SSH: "config file not found"), vozlišče pa deluje samostojno.

naming-decisions ("Znani ostanek"), clawdie-iso #133

Demonov uporabnik, ne operater

Colibri demon teče kot uporabnik colibri (/var/db/colibri), ne kot

operater (clawdie, /home/clawdie). Zunanjo MCP SSH povezavo do matere

zažene demon — zato morajo biti SSH ključ, konfiguracija in known_hosts v

demonovem domu. Uvoznik semena namesti SSH gradivo v oba domova (operater

Zakaj ne preprosto v clawdiejev dom in sudo: demon ni operater. Tek kot

ločen uporabnik pomeni, da je domet ogroženega demona omejen na tisto, kar

uporabnik colibri lahko počne — MCP klici do matere, ne operaterske

datoteke ali sudo.

clawdie-live-seed (clawdie-iso),

MOTHER-SETUP.md §Upravljanje ključev

Glej tudi