CLI on suunniteltu skriptien ja agenttien luettavaksi. JSON on oletustuloste; taulukot ja rivikohtainen JSON ovat valittavissa erikseen.
Kirjekuori
Jokainen onnistunut komento tulostaa yhden JSON-objektin stdoutiin:
{
"ok": true,
"schema_version": "1",
"workspace": "yourworkspace",
"domain": "yourworkspace.hansa.chat",
"changed": false,
"data": { }
}
changed kertoo, muuttiko komento todellisuudessa mitään — arvo false tarkoittaa, että haluttu tila oli jo olemassa. data sisältää tuloksen: luetteloita kanavista tai viesteistä, viestin omine sisältöineen aitoona sisäkkäisenä JSONina sekä komentojen kuittauksia.
Virheet menevät JSONina stderriin eivätkä koskaan koske stdoutia:
{
"ok": false,
"schema_version": "1",
"error": { "code": "unauthenticated", "message": "…", "retryable": false }
}
Poistumiskoodit
| Koodi | Merkitys |
|---|---|
| 0 | Onnistuminen, myös ei-muutos (changed: false) |
| 1 | Sisäinen virhe |
| 2 | Käyttö- tai asetusvirhe |
| 3 | Todennus vaaditaan tai epäonnistui |
| 4 | Pääsy estetty tai esiehto epäonnistui |
| 5 | Ei löytynyt tai ristiriita |
| 6 | Aikakatkaisu, palvelu ei saatavilla tai pyyntöraja ylittyi |
Kestävä skriptimalli:
if hansa chat channels ensure --name Deploy --type public >/dev/null 2>&1; then
echo "channel ready"
fi
Tulostemuodot
hansa chat channels list -o json # default, one envelope
hansa chat channels list -o jsonl # one JSON object per line
hansa chat channels list -o table # aligned text columns for humans
Hyödylliset yleiset liput
--workspace <alias-or-domain> # override the workspace for one command
--timeout 30s # network timeout
--config /path/config.json # custom context file (default: OS config dir)
--verbose # diagnostics to stderr, secrets filtered
Ympäristömuuttuja HANSA_CONFIG siirtää koko kontekstitiedoston, joten rinnakkaiset ajot voivat käyttää eristettyjä konteksteja. Tokeneiden toimittaminen ilman avainnippua ja avainnipun toiminta on kuvattu todennusoppaassa.
Tietoturvahuomiot
- Kirjautumistiedot elävät vain käyttöjärjestelmän avainnipussa tai prosessin ympäristössä — ei koskaan tulosteessa, lokeissa tai kontekstitiedostossa.
--verbose-diagnostiikka suodattaa todennusotsikot, kirjautumistietoja sisältävän syötteen ja päivitysvastaukset.- Kaikki tunnisteet tulostuvat JSON-merkkijonoina ja aikaleimat UTC-muotoisina RFC3339-arvoina; viestien sisältö näkyy aitoona sisäkkäisenä JSONina, ei lainattuna merkkijonona.