localization(sl): demon→ozadnji proces, krajevni→lokalni, oprema→vprega, vrata→preverjanje
Glossary alignment — demon (devil) replaced with the established ozadnji proces (background process) per okrajsave.md glossary. Full sweep across all sl/ wiki and guide files (61 replacements in 18 files). demon→ozadnji proces (nominative, 15 instances) demona→ozadnjega procesa (genitive, 42 instances) demonom→ozadnjim procesom (instrumental, 1 instance) demonov→ozadnjih procesov, demonovem/demonovim rephrased (3 instances) krajevni→lokalni (7 instances across 4 files) oprema→vprega (agent harness context, 3 instances) vrata→preverjanje (quality gate context, 1 instance)
This commit is contained in:
parent
fba3f24267
commit
d002e480c3
20 changed files with 68 additions and 68 deletions
|
|
@ -4,7 +4,7 @@ description: Dostop do krmilne ravnine Colibri med gostitelji prek omrežja Tail
|
|||
---
|
||||
|
||||
Vsak gostitelj poganja `colibri-daemon`, ki posluša na **lokalni vtičnici Unix**
|
||||
(samo krajevno). Most krmilne ravnine to vtičnico izpostavi kot **vrata [TCP](../reference/okrajsave/#tcp) na
|
||||
(samo lokalno). Most krmilne ravnine to vtičnico izpostavi kot **vrata [TCP](../reference/okrajsave/#tcp) na
|
||||
vmesniku Tailscale**, da lahko drugi gostitelji v omrežju upravljajo krmilno
|
||||
ravnino — ustvarjajo opravila, registrirajo agente, opazujejo terminale — ne da
|
||||
bi bila vtičnica kdaj dosegljiva z javnega interneta.
|
||||
|
|
@ -74,11 +74,11 @@ izda celoten nabor ukazov (`spawn-agent`, `kill-agent`, `intake-task`,
|
|||
lastni naslov (`tailscale ip -4`). Privzetki rc.d na FreeBSD se prav tako ne
|
||||
zaženejo, dokler naslov ni nastavljen.
|
||||
- **Skladnost poti vtičnice.** Most se poveže na `/run/colibri/colibri.sock`
|
||||
(FreeBSD: `/var/run/colibri/colibri.sock`); demon mora biti zagnan z ujemajočim
|
||||
`COLIBRI_DAEMON_SOCKET`. Privzeta pot demona je pod `$XDG_DATA_HOME`, do katere
|
||||
(FreeBSD: `/var/run/colibri/colibri.sock`); ozadnji proces mora biti zagnan z ujemajočim
|
||||
`COLIBRI_DAEMON_SOCKET`. Privzeta pot ozadnjega procesa je pod `$XDG_DATA_HOME`, do katere
|
||||
zaprta enota systemd (`ProtectHome=yes`) nima dostopa — uporabnikova domača mapa
|
||||
ni vidna. Obe poti usmerite na `/run`.
|
||||
- Uporabnik mostu mora biti v skupini vtičnice demona (vtičnica je `0770`,
|
||||
- Uporabnik mostu mora biti v skupini vtičnice ozadnjega procesa (vtičnica je `0770`,
|
||||
lastnik + skupina).
|
||||
|
||||
## Preverjanje
|
||||
|
|
@ -89,7 +89,7 @@ Z drugega gostitelja v omrežju tailnet:
|
|||
printf '{"cmd":"status"}\n' | nc -w2 <gostiteljev-tailnet-ip> 9190
|
||||
```
|
||||
|
||||
Zdrav most vrne stanje demona v obliki [JSON](../reference/okrajsave/#json) (vključno z demonovim `host`), kar
|
||||
Zdrav most vrne stanje ozadnjega procesa v obliki [JSON](../reference/okrajsave/#json) (vključno z gostiteljem ozadnjega procesa), kar
|
||||
od konca do konca potrdi dosegljivost prek omrežja.
|
||||
|
||||
## Način Hive — mati in hčere
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ Ta stran pokriva izbiro slike in zapis na USB. Za nastavitev ob prvem zagonu
|
|||
|
||||
Izberite sliko, ki ustreza vašemu cilju:
|
||||
|
||||
- **Fizična strojna oprema:** namizje + paketi brez povezave za krajevne
|
||||
- **Fizična strojna oprema:** namizje + paketi brez povezave za lokalne
|
||||
namestitve
|
||||
- **Oblak:** slika brez zaslona za postavitve v slogu [VPS](../reference/okrajsave/#vps)
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ skupen.
|
|||
|
||||
## Nastavitev
|
||||
|
||||
Nastavi se v okolju demona (privzeto izklopljeno):
|
||||
Nastavi se v okolju ozadnjega procesa (privzeto izklopljeno):
|
||||
|
||||
| Spremenljivka | Namen | Privzeto |
|
||||
| ----------------------------------------- | ---------------------------------------------------- | -------------------------------- |
|
||||
|
|
@ -51,7 +51,7 @@ Nastavi se v okolju demona (privzeto izklopljeno):
|
|||
| `TELEGRAM_BOT_TOKEN` / `TELEGRAM_CHAT_ID` | Posredovanje opozoril ob prehodu v Telegram | _(nenastavljeno → samo dnevnik)_ |
|
||||
|
||||
Kadar žeton bota in id klepeta nista nastavljena, se opozorila čisto prelevijo v
|
||||
vrstico dnevnika demona — funkcijo je varno pustiti vklopljeno tudi brez
|
||||
vrstico dnevnika ozadnjega procesa — funkcijo je varno pustiti vklopljeno tudi brez
|
||||
nastavljenega Telegrama.
|
||||
|
||||
## Ukazi krmilne ravnine
|
||||
|
|
@ -72,7 +72,7 @@ zajemu.
|
|||
|
||||
## Opombe za upravljanje
|
||||
|
||||
- Opazujte podokna, ki so pomembna (podokno gradnje, podokno demona, statusno
|
||||
- Opazujte podokna, ki so pomembna (podokno gradnje, podokno ozadnjega procesa, statusno
|
||||
okno), ne vseh — vrednost je v signalu, ne v količini.
|
||||
- Opozorila so sprožena ob prehodu, zato odpovedana storitev opozori enkrat in
|
||||
znova šele po okrevanju in ponovni odpovedi; z `terminal-list` vidite, kaj je
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ Pogodba zaganjalnika: zaženi agenta, beri stdout JSONL.
|
|||
neposredno.
|
||||
- Edini strukturirani trajni način **zot** je `zot rpc`, vrstnik
|
||||
zahteva/odgovor, ki **bere stdin**. Zato zaganjalnik napelje stdin za RPC
|
||||
agente in demon pošlje poziv prek `RpcSender`.
|
||||
agente in ozadnji proces pošlje poziv prek `RpcSender`.
|
||||
|
||||
Kje živi:
|
||||
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ Ustvarjeni skript rc.d za FreeBSD izvede `/usr/local/bin/colibri-daemon` skozi
|
|||
in proces pade na neprivilegiranega uporabnika. Enota systemd je preprosta
|
||||
storitev z `Restart=on-failure`.
|
||||
|
||||
Nameščevalnik sam ne zažene demona ali ne pripravi binarne datoteke; samo
|
||||
Nameščevalnik sam ne zažene ozadnjega procesa ali ne pripravi binarne datoteke; samo
|
||||
ustvari okolje. Operater ali paketna gradnja pripravi `colibri-daemon` in nato
|
||||
`service clawdie start`.
|
||||
|
||||
|
|
@ -112,7 +112,7 @@ ustvari okolje. Operater ali paketna gradnja pripravi `colibri-daemon` in nato
|
|||
|
||||
Nameščevalnik se ne dotika ključev API ponudnika. Ločena datoteka — običajno
|
||||
`/usr/local/etc/colibri/provider` — hrani skrivnosti in jo pred zagonom
|
||||
demona prebere rc.d. To ohranja domet nameščevalnika omejen na ZFS, imenike,
|
||||
ozadnjega procesa prebere rc.d. To ohranja domet nameščevalnika omejen na ZFS, imenike,
|
||||
uporabnike in datoteke storitev.
|
||||
|
||||
→ [vault-provision](./vault-provision.md)
|
||||
|
|
@ -164,7 +164,7 @@ sudo service clawdie start
|
|||
Po namestitvi ima storitev te poti:
|
||||
|
||||
- `/var/db/clawdie/colibri.sqlite` — koordinacijska shramba SQLite
|
||||
- `/var/run/clawdie/clawdie.sock` — Unix vtičnica demona
|
||||
- `/var/run/clawdie/clawdie.sock` — Unix vtičnica ozadnjega procesa
|
||||
- `/var/log/clawdie/daemon.log` — dnevnik stdout/stderr
|
||||
- `/usr/local/etc/colibri/` — konfiguracija in skrivnosti ponudnika
|
||||
|
||||
|
|
|
|||
|
|
@ -24,9 +24,9 @@ podpira. Prav tako se izogne potrebi po odprtju drugega omrežnega vmesnika.
|
|||
|
||||
Strežnik MCP izpostavlja tri orodja:
|
||||
|
||||
| Orodje | Ukaz demona | Namen |
|
||||
| Orodje | Ukaz ozadnjega procesa | Namen |
|
||||
| ------------------ | -------------------- | ----------------------------------------------- |
|
||||
| `colibri_status` | `status` | Stanje demona (agenti, opravila, predpomnilnik) |
|
||||
| `colibri_status` | `status` | Stanje ozadnjega procesa (agenti, opravila, predpomnilnik) |
|
||||
| `colibri_snapshot` | `glasspane-snapshot` | Trenutni posnetek podoken Glasspane |
|
||||
| `colibri_spawn` | `spawn-agent` | Zaženi novega agenta |
|
||||
|
||||
|
|
@ -35,19 +35,19 @@ voljo neposrednim odjemalcem vtičnice; MCP je priročna podmnožica.
|
|||
|
||||
### Ovoj Bash, ne vgrajeni proces
|
||||
|
||||
`colibri-mcp` je skripta Bash, ki se poveže na vtičnico demona, pošlje ukaz
|
||||
`colibri-mcp` je skripta Bash, ki se poveže na vtičnico ozadnjega procesa, pošlje ukaz
|
||||
JSON in vrne odgovor JSON. Ni dolgotrajen proces — vsak klic zažene novo
|
||||
skripto. To pomeni, da je ničelna konfiguracija za odjemalce MCP (samo
|
||||
registrirajte pot skripte) in ničelno vzdrževanje stanja.
|
||||
|
||||
→ `packaging/freebsd/colibri-mcp`
|
||||
|
||||
### Vrata za branje/pisanje in zunanje klice
|
||||
### Preverjanje za branje/pisanje in zunanje klice
|
||||
|
||||
Implementacija MCP ločuje tri skrbi:
|
||||
|
||||
- **Branje**: `status`, `snapshot` — samo za branje, vedno na voljo.
|
||||
- **Pisanje**: `spawn` — spremeni stanje demona. Zaščiteno z zastavico
|
||||
- **Pisanje**: `spawn` — spremeni stanje ozadnjega procesa. Zaščiteno z zastavico
|
||||
`allow_write` v konfiguraciji MCP.
|
||||
- **Zunanji klic**: katerokoli orodje lahko sproži verigo MCP, ki sega
|
||||
navzven do drugega strežnika MCP. Zaščiteno z zastavico `allow_external_call`.
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ description: "Colibrijeva plast za opazovanje agentov. Gleda podprocese agentov
|
|||
Glasspane je Colibrijeva plast za opazovanje agentov. Opazuje podprocese
|
||||
agentov prek njihovega stdout JSONL, zlaga tok v semantični avtomat stanj
|
||||
(`Idle → Working → Done`) in izpostavlja API posnetkov za nadzorne plošče in
|
||||
koordinacijo demona. Vsak zagnani agent — Pi, zot ali krajevni sample — se
|
||||
koordinacijo ozadnjega procesa. Vsak zagnani agent — Pi, zot ali lokalni sample — se
|
||||
pretaka skozi isti vnosnik in konča v isti taksonomiji.
|
||||
|
||||
## Odločitve
|
||||
|
|
@ -39,7 +39,7 @@ pozornost (Error / Blocked / Stalled) pokriva
|
|||
**Zakaj ne preprosto slediti dnevniku**: surovi dnevniki dogodkov so
|
||||
agentsko-specifični in se sčasoma spreminjajo (zot dodaja nove vrste
|
||||
dogodkov). Avtomat stanj je stabilna pogodba, na katero se lahko zanesejo
|
||||
demon, TUI in odjemalski CLI.
|
||||
ozadnji proces, TUI in odjemalski CLI.
|
||||
|
||||
→ [`crates/colibri-glasspane/src/lib.rs`](../../crates/colibri-glasspane/src/lib.rs)
|
||||
|
||||
|
|
@ -51,7 +51,7 @@ vrstico in jo poda v `PiJsonlIngestor` (ime je podedovano — obdeluje tudi zot
|
|||
dogodke).
|
||||
|
||||
Bralnik teče v **eni sami nalogi ozadja na podokno** (`pane_reader_loop`).
|
||||
Nikoli ne blokira glavne zanke demona — vnosnik je sinhrono zlaganje, ki
|
||||
Nikoli ne blokira glavne zanke ozadnjega procesa — vnosnik je sinhrono zlaganje, ki
|
||||
posodablja stanje podokna v pomnilniku, API posnetkov pa bere iz
|
||||
`Arc<RwLock<...>>` brez sporov na vroči poti bralnika.
|
||||
|
||||
|
|
@ -59,7 +59,7 @@ Napačno oblikovane vrstice so **preskočene** s povečanjem števca, ne kot
|
|||
napaka — izpadi v JSONL agenta ne smejo zrušiti opazovalca.
|
||||
|
||||
**Zakaj JSONL, ne vtičnica ali gRPC**: agent je podproces, ne storitev.
|
||||
stdout je univerzalni vmesnik — vsak jezik, vsaka oprema, brez nastavitve.
|
||||
stdout je univerzalni vmesnik — vsak jezik, vsaka vprega, brez nastavitve.
|
||||
JSONL je trivialno pisati iz bash, Go, Python, Rust. Strukturiran žični
|
||||
format bi dodal odvisnost in rokovanje vsakemu agentu.
|
||||
|
||||
|
|
@ -78,7 +78,7 @@ Polje `session_id` v strukturi `Pane` uporablja
|
|||
`#[serde(alias = "pi_session_id")]` za povratno združljivost s
|
||||
pred-nevtralnostnimi serializiranimi posnetki.
|
||||
|
||||
**Zakaj ne dva ločena avtomata stanj**: TUI, razporejevalnik demona in
|
||||
**Zakaj ne dva ločena avtomata stanj**: TUI, razporejevalnik ozadnjega procesa in
|
||||
odjemalski CLI morajo vsi vprašati "v kakšnem stanju je ta agent?" — vseeno
|
||||
jim je, ali je zot ali Pi. Ena taksonomija, en API. Preslikava je ~50-vrstična
|
||||
funkcija, ne podsistem.
|
||||
|
|
@ -128,9 +128,9 @@ vrstica/povzetek naloge**, **ječa**, v kateri agent teče, neobvezno vrata za
|
|||
poslušanje. Spremeni "Working" v "Working on `fix/x` v ječi `cms`, zadnje:
|
||||
running tests".
|
||||
|
||||
### Ohrani zgodovino podoken med ponovnimi zagoni demona
|
||||
### Ohrani zgodovino podoken med ponovnimi zagoni ozadnjega procesa
|
||||
|
||||
Nadzornik je v pomnilniku (`Arc<RwLock<...>>`); ponovni zagon demona izgubi
|
||||
Nadzornik je v pomnilniku (`Arc<RwLock<...>>`); ponovni zagon ozadnjega procesa izgubi
|
||||
časovnico. Ohrani prehode/zgodovino podoken, da vrnitev po urah (ali ponovnem
|
||||
zagonu) ohrani "kaj se je zgodilo, ko me ni bilo". Lahka trajnost, ne nov
|
||||
podsistem.
|
||||
|
|
@ -138,7 +138,7 @@ podsistem.
|
|||
### Odgovori blokiranemu agentu z nadzorne plošče (večji dvig)
|
||||
|
||||
API posnetkov je namenoma bralno usmerjen. Prihodnja pisalna pot — "pošlji
|
||||
vnos v podokno N" prek vtičnice demona — bi operaterju omogočila **odziv**
|
||||
vnos v podokno N" prek vtičnice ozadnjega procesa — bi operaterju omogočila **odziv**
|
||||
blokiranemu agentu iz `colibri-tui`, ne samo opazovanje/zagon/uboj. To je
|
||||
smer, ne hitra zmaga; spremeni vtičnico iz bralnega nadzora v interaktivno
|
||||
upravljanje in potrebuje lasten načrtovalski prehod.
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
---
|
||||
title: Stranski vagon Headroom
|
||||
description: "Colibri lahko neobvezno prosi krajevni stranski vagon headroom-ai, da stisne rezultate orodij, preden dosežejo proračun žetonov."
|
||||
description: "Colibri lahko neobvezno prosi lokalni stranski vagon headroom-ai, da stisne rezultate orodij, preden dosežejo proračun žetonov."
|
||||
---
|
||||
|
||||
← [kazalo](./index.md)
|
||||
|
||||
Colibri lahko neobvezno prosi krajevni stranski vagon `headroom-ai`, da stisne
|
||||
Colibri lahko neobvezno prosi lokalni stranski vagon `headroom-ai`, da stisne
|
||||
rezultate orodij, preden dosežejo proračun žetonov. Je ločen proces Python, ki
|
||||
posluša na drugi vtičnici Unix, in je privzeto izklopljen.
|
||||
|
||||
|
|
@ -38,7 +38,7 @@ klic je brez stanja.
|
|||
### Ločen proces, ne knjižnica
|
||||
|
||||
Stranski vagon teče kot neodvisen proces Python, ne kot uvoz Rust. To ga
|
||||
izolira od zrušitev (če stranski vagon pade, demon nadaljuje brez njega),
|
||||
izolira od zrušitev (če stranski vagon pade, ozadnji proces nadaljuje brez njega),
|
||||
izolira njegov pomnilnik (model Python je lačen) in omogoča neodvisno
|
||||
posodabljanje.
|
||||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ clippy.
|
|||
| [contracts](./contracts.md) | Stabilne JSON sheme (run-manifest, runtime-inventory, provider-smoke), zlati testi |
|
||||
| [store-schema](./store-schema.md) | Usklajevalna shema SQLite in disciplina migracij |
|
||||
| [external-mcp](./external-mcp.md) | Most MCP za urejevalnike + zunanji gostitelj stdio MCP; dovoljenja za branje/pisanje/zunanji-klic |
|
||||
| [operator-cli](./operator-cli.md) | CLI `colibri` kot tanek tipiziran odjemalec Unix vtičnice prek API demona |
|
||||
| [operator-cli](./operator-cli.md) | CLI `colibri` kot tanek tipiziran odjemalec Unix vtičnice prek API ozadnjega procesa |
|
||||
| [tui](./tui.md) | Odjemalec terminalske nadzorne plošče (colibri-tui) proti avtomatu stanj colibri-glasspane |
|
||||
| [terminal](./terminal.md) | Odločitev o terminalski zmožnosti (Kitty, razširjeno poročanje tipk, prehod tmux, SSH terminfo) |
|
||||
| [runtime-inventory](./runtime-inventory.md) | Popis izvajalnega okolja gostitelja + bralnik statusa čuvaja; aditivne, bralne integracije |
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ sveže — brez stanja, brez ostankov.
|
|||
|
||||
Vse ječe delijo privzeti pravilnik, ki prepoveduje priklope, surova vtičnice,
|
||||
spreminjanje lastništva in dostop do naprav. Vsaka priklopna točka, ki jo
|
||||
agent potrebuje (repozitoriji, vtičnica demona, imeniki stanja), je izrecno
|
||||
agent potrebuje (repozitoriji, vtičnica ozadnjega procesa, imeniki stanja), je izrecno
|
||||
navedena v konfiguraciji Bastille.
|
||||
|
||||
### Ista omejitev zaganjalnika za MCP kot za agente
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ namestitev, arhitekturne diagrame in kontrolni seznam prvega zagona glejte
|
|||
|
||||
## Odločitve
|
||||
|
||||
### Meja SSH s prisiljenim ukazom (ne poslušajoči demon)
|
||||
### Meja SSH s prisiljenim ukazom (ne poslušajoči ozadnji proces)
|
||||
|
||||
USB-vozlišča dosežejo mater tako, da zaženejo `ssh colibri@mother` (brez
|
||||
oddaljenega ukaza). Na materini strani `authorized_keys` vsili
|
||||
|
|
@ -27,7 +27,7 @@ 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
|
||||
**Zakaj ne poslušajoči ozadnji proces** (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
|
||||
|
|
@ -90,22 +90,22 @@ 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
|
||||
zažene in deluje — zunanja MCP povezava ozadnjega procesa do matere odpove elegantno
|
||||
(SSH: "config file not found"), vozlišče pa deluje samostojno.
|
||||
|
||||
→ [naming-decisions](./naming-decisions.md) ("Znani ostanek"), clawdie-iso #133
|
||||
|
||||
### Demonov uporabnik, ne operater
|
||||
|
||||
Colibri demon teče kot uporabnik `colibri` (`/var/db/colibri`), ne kot
|
||||
Colibri ozadnji proces 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
|
||||
zažene ozadnji proces — zato morajo biti SSH ključ, konfiguracija in known_hosts v
|
||||
v domu ozadnjega procesa. Uvoznik semena namesti SSH gradivo v **oba** domova (operater
|
||||
|
||||
- demon).
|
||||
- ozadnji proces).
|
||||
|
||||
**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
|
||||
**Zakaj ne preprosto v clawdiejev dom in `sudo`**: ozadnji proces ni operater. Tek kot
|
||||
ločen uporabnik pomeni, da je domet ogroženega ozadnjega procesa omejen na tisto, kar
|
||||
uporabnik `colibri` lahko počne — MCP klici do matere, ne operaterske
|
||||
datoteke ali `sudo`.
|
||||
|
||||
|
|
|
|||
|
|
@ -13,8 +13,8 @@ v `main`; preveri proti povezani kodi, preden zaupaš vrstici.
|
|||
|
||||
Poimenuj stvar po tem, kar **je**, ne po opremi, ki je trenutno privzeta:
|
||||
|
||||
- **Nevtralen koncept** (vsaka oprema ga ima — ID seje, vrsta dogodka,
|
||||
samodejni zagon, "agent") → **nevtralno ime**. Oprema je _nastavljiva
|
||||
- **Nevtralen koncept** (vsaka vprega ga ima — ID seje, vrsta dogodka,
|
||||
samodejni zagon, "agent") → **nevtralno ime**. Vprega je _nastavljiva
|
||||
vrednost_ (npr. `COLIBRI_AUTOSPAWN_BINARY=zot`), nikoli zapečena v ime in
|
||||
vedno preglasljiva s strani operaterja.
|
||||
- **Stvar, specifična za opremo** (dejanski žični format ene opreme) → ime
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ pomeni "to se je pravkar začelo".
|
|||
kljuka harnessa) je neodločen.
|
||||
- **Odgovarjanje blokiranemu agentu z nadzorne plošče.** API posnetkov je
|
||||
namenoma bralno usmerjen. Pisalna pot ("pošlji vnos v podokno N" prek
|
||||
vtičnice demona) bi operaterju omogočila, da se odzove na `Blocked` podokno
|
||||
vtičnice ozadnjega procesa) bi operaterju omogočila, da se odzove na `Blocked` podokno
|
||||
iz TUI. Spremeni vtičnico iz nadzora v interaktivno upravljanje — lasten
|
||||
načrtovalski prehod.
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
title: Operaterski CLI (`colibri`)
|
||||
description: "Binarna datoteka `colibri` je operaterski vmesnik ukazne vrstice do demona — tanek tipiziran odjemalec Unix vtičnice."
|
||||
description: "Binarna datoteka `colibri` je operaterski vmesnik ukazne vrstice do ozadnjega procesa — tanek tipiziran odjemalec Unix vtičnice."
|
||||
---
|
||||
|
||||
← [kazalo](./index.md)
|
||||
|
||||
Binarna datoteka `colibri` je operaterski vmesnik ukazne vrstice do demona.
|
||||
Binarna datoteka `colibri` je operaterski vmesnik ukazne vrstice do ozadnjega procesa.
|
||||
Je tanek odjemalec — pošilja ukaze JSON po vtičnici Unix, razčlenjuje odgovore
|
||||
in jih izpisuje. Vsak podukaz CLI se preslika v en ukaz demona. Vmesnik CLI
|
||||
in jih izpisuje. Vsak podukaz CLI se preslika v en ukaz ozadnjega procesa. Vmesnik CLI
|
||||
dodaja priročnost (barvni izpis, privzetki, oblikovalci), ne poslovne logike.
|
||||
|
||||
→ `crates/colibri-client/src/bin/colibri.rs`
|
||||
|
|
@ -18,11 +18,11 @@ dodaja priročnost (barvni izpis, privzetki, oblikovalci), ne poslovne logike.
|
|||
|
||||
Obstaja ena binarna datoteka `colibri`, ki se poveže na eno vtičnico
|
||||
(`/var/run/colibri/colibri.sock` ali `COLIBRI_SOCKET`). Ni podukazov za
|
||||
izbiro demona — večgostiteljske operacije gredo skozi most krmilne ravnine.
|
||||
izbiro ozadnjega procesa — večgostiteljske operacije gredo skozi most krmilne ravnine.
|
||||
Operater izrecno usmeri na drug gostitelj (`nc <tailnet-ip> 9190`), ne da bi
|
||||
CLI podpiral več končnih točk.
|
||||
|
||||
**Zakaj ne več profilov demona**: en demon na gostitelja je zadosten. Več
|
||||
**Zakaj ne več profilov ozadnjega procesa**: en ozadnji proces na gostitelja je zadosten. Več
|
||||
končnih točk bi v CLI vneslo stanje (`colibri --host osa status`), ki ga most
|
||||
že rešuje na omrežni plasti.
|
||||
|
||||
|
|
@ -33,7 +33,7 @@ Vsak podukaz zgradi objekt `ColibriCommand`, pokliče
|
|||
pomenu kateregakoli ukaza — samo serializira in razčlenjuje.
|
||||
|
||||
Oblikovalci izhodov (`print_json`, `print_table`, `print_key_value`) so čiste
|
||||
funkcije nad `serde_json::Value`. Če demon doda novo polje, se samodejno
|
||||
funkcije nad `serde_json::Value`. Če ozadnji proces doda novo polje, se samodejno
|
||||
prikaže v izhodu JSON brez spremembe v CLI.
|
||||
|
||||
### En ukaz na zagon, ne interaktivno
|
||||
|
|
@ -59,4 +59,4 @@ dodeljevanju s strani agenta, ne ročnemu upravljanju.
|
|||
## Glej tudi
|
||||
|
||||
- [task-board](./task-board.md) — ukazi, ki jih CLI zrcali
|
||||
- [deployment](./deployment.md) — kako je nameščena binarna datoteka demona
|
||||
- [deployment](./deployment.md) — kako je nameščena binarna datoteka ozadnjega procesa
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ Popis se serializira v `clawdie.runtime-version-inventory.v1`. Trije porabniki:
|
|||
### Brez pisanja — integracije so samo za branje
|
||||
|
||||
Bralnik ne piše v podatkovno zbirko, ne spreminja konfiguracije in ne
|
||||
spreminja stanja demona. Je čista funkcija `HostReader::read() → HostInfo`.
|
||||
spreminja stanja ozadnjega procesa. Je čista funkcija `HostReader::read() → HostInfo`.
|
||||
To pomeni, da je varno zagnati ga v cronu, ob zagonu ali ročno brez stranskih
|
||||
učinkov.
|
||||
|
||||
|
|
|
|||
|
|
@ -33,8 +33,8 @@ odvisnosti med veščinami. To ustreza trenutnemu obsegu (~50 veščin).
|
|||
|
||||
### Uvoz ob zagonu, ne sproti
|
||||
|
||||
Veščine se uvozijo ob zagonu demona, ne med izvajanjem. Če operater doda
|
||||
veščino, ponovno zažene demona (ali ročno zažene uvozno skripto). Nobena pot
|
||||
Veščine se uvozijo ob zagonu ozadnjega procesa, ne med izvajanjem. Če operater doda
|
||||
veščino, ponovno zažene ozadnjega procesa (ali ročno zažene uvozno skripto). Nobena pot
|
||||
izvajalne kode ne piše v tabelo `skills`.
|
||||
|
||||
→ `scripts/import-clawdie-skills.sh`
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ description: "Koordinacijska shramba Colibri — ena sama podatkovna zbirka SQLi
|
|||
Colibrijeva koordinacijska shramba je ena sama podatkovna zbirka SQLite v
|
||||
lasti storitve `colibri`. Hrani tablo opravil, register agentov in veščin ter
|
||||
preslikavo najemnikov trezorja. Ni predpomnilnik — je trajno stanje. Večina
|
||||
pisanj gre skozi API vtičnice demona, vendar shema pripada `colibri-store`.
|
||||
pisanj gre skozi API vtičnice ozadnjega procesa, vendar shema pripada `colibri-store`.
|
||||
|
||||
→ `crates/colibri-store/src/schema.rs`
|
||||
|
||||
|
|
@ -108,7 +108,7 @@ Privzetek shrambe je:
|
|||
- Linux/macOS: `$XDG_DATA_HOME/colibri/colibri.sqlite`, s padcem na
|
||||
`$HOME/.local/share/colibri/colibri.sqlite`, nato `/tmp`.
|
||||
|
||||
FreeBSD privzeto uporablja `/var/db`, ker je to običajni imenik za krajevno
|
||||
FreeBSD privzeto uporablja `/var/db`, ker je to običajni imenik za lokalno
|
||||
stanje storitev. Linuxov padec spoštuje XDG, tako da je razvoj na delovni
|
||||
postaji normalen.
|
||||
|
||||
|
|
|
|||
|
|
@ -9,8 +9,8 @@ description: "Kako Colibri hrani operaterska opravila in jih razporeja med agent
|
|||
|
||||
Colibrjeva tabla opravil hrani delovne naloge, ki jih odda operater, razporejevalnik
|
||||
pa jih ob vsakem taktu dodeli najprimernejšemu agentu. Opravila pritekajo prek
|
||||
Unix vtičnice demona (`create-task`, `intake-task`), prazni pa jih zanka
|
||||
razporejevalnika, ki teče znotraj demona vsakih ~30 sekund.
|
||||
Unix vtičnice ozadnjega procesa (`create-task`, `intake-task`), prazni pa jih zanka
|
||||
razporejevalnika, ki teče znotraj ozadnjega procesa vsakih ~30 sekund.
|
||||
|
||||
## Odločitve
|
||||
|
||||
|
|
@ -82,15 +82,15 @@ kateri agenti so na voljo — sklopitev, ki se ji tabla opravil namenoma izogne.
|
|||
|
||||
Tabla opravil hrani opravila, registracije agentov, podatke o najemnikih in
|
||||
katalog veščin v vgrajeni podatkovni zbirki SQLite na
|
||||
`/var/db/colibri/colibri.sqlite`. Brez ločenega podatkovnega procesa — demon
|
||||
`/var/db/colibri/colibri.sqlite`. Brez ločenega podatkovnega procesa — ozadnji proces
|
||||
odpre datoteko neposredno.
|
||||
|
||||
**Zakaj SQLite, ne PostgreSQL**: demon teče na operaterskem USB-ju in na
|
||||
**Zakaj SQLite, ne PostgreSQL**: ozadnji proces teče na operaterskem USB-ju in na
|
||||
nameščenih gostiteljih. Polna storitev PostgreSQL je pretežka za
|
||||
koordinacijsko stanje enega samega demona. SQLite je brez konfiguracije, brez
|
||||
administracije in preživi ponovne zagone demona brez ločenega življenjskega
|
||||
koordinacijsko stanje enega samega ozadnjega procesa. SQLite je brez konfiguracije, brez
|
||||
administracije in preživi ponovne zagone ozadnjega procesa brez ločenega življenjskega
|
||||
cikla. Matično vozlišče uporablja PostgreSQL za hive register, ker je
|
||||
večnajemniško; krajevni demon je enonajemniški.
|
||||
večnajemniško; lokalni ozadnji proces je enonajemniški.
|
||||
|
||||
→ [`crates/colibri-store/src/lib.rs`](../../crates/colibri-store/src/lib.rs)
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ odjemalec in agenta, ne nadomesti terminalskega odjemalca.
|
|||
|
||||
`tmux-256color` je edina vrednost `TERM`, podprta za SSH povezave do agentov.
|
||||
Ne podpira `xterm-256color`, ker zunaj tmux ta vrednost ne more poročati
|
||||
razširjenih zaporedij Kitty. Terminfo se uveljavi v zanki demona za vse
|
||||
razširjenih zaporedij Kitty. Terminfo se uveljavi v zanki ozadnjega procesa za vse
|
||||
povezave.
|
||||
|
||||
### ANSI, ne lastniški — vendar s prehodom Kitty
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
---
|
||||
title: Terminalska nadzorna plošča (colibri-tui)
|
||||
description: "Colibrijeva živa terminalska nadzorna plošča — povezuje se na Unix vtičnico demona in prikazuje agente, stanja ter pozornostna opozorila."
|
||||
description: "Colibrijeva živa terminalska nadzorna plošča — povezuje se na Unix vtičnico ozadnjega procesa in prikazuje agente, stanja ter pozornostna opozorila."
|
||||
---
|
||||
|
||||
← [kazalo](./index.md)
|
||||
|
||||
TUI je Colibrijeva živa terminalska nadzorna plošča. Poveže se na Unix
|
||||
vtičnico demona, poizveduje API posnetkov (`glasspane-snapshot`) in ga
|
||||
vtičnico ozadnjega procesa, poizveduje API posnetkov (`glasspane-snapshot`) in ga
|
||||
upodablja kot tabelo podoken s stanjem. Zgrajena z ratatui + crossterm za
|
||||
barvni terminalski izhod.
|
||||
|
||||
|
|
@ -38,9 +38,9 @@ metapodatkov podokna za bogatejše vrstice.
|
|||
|
||||
### Osveževanje — poizvedovanje, ne potiskanje
|
||||
|
||||
TUI poizveduje demonov API posnetkov (`glasspane-snapshot`) vsakih 250 ms.
|
||||
Brez WebSocket, brez SSE, brez potisnih obvestil med TUI in demonom.
|
||||
Poizvedovanje ohranja vtičnico demona brez stanja.
|
||||
TUI poizveduje ozadnjih procesov API posnetkov (`glasspane-snapshot`) vsakih 250 ms.
|
||||
Brez WebSocket, brez SSE, brez potisnih obvestil med TUI in ozadnjim procesom.
|
||||
Poizvedovanje ohranja vtičnico ozadnjega procesa brez stanja.
|
||||
|
||||
### Barve so nosilne
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue