HansaChat

Documentation

Godkendelse og workspaces

Login, sessioner, nøglering, kontekster og headless-tokens.

CLI'en holder styr på én konto pr. workspace. Loginoplysningerne ligger i operativsystemets nøglering (tjenesten hansa); de optræder aldrig i kontekstfilen, loggene eller outputtet.

Log ind

hansa chat login --workspace yourworkspace

Kommandoen beder om Deres e-mail og adgangskode. Hvis workspacet kræver tofaktorgodkendelse, bedes De om en TOTP-kode eller en gendannelseskode.

Til scripts kan loginoplysningerne læses fra stdin i stedet for via flag eller miljøvariabler:

echo '{"email": "you@example.com", "password": "…"}' \
  | hansa chat login --workspace yourworkspace --credentials-stdin

JSON'en kan også indeholde "totp" eller "recovery_code", når der kræves tofaktorgodkendelse.

En gyldig gemt session gør et gentaget login til en no-op. Brug --reauth for bevidst at erstatte den gemte session.

Sessioner og refresh

Access-tokens fornys automatisk med en roterende refresh-token, der er beskyttet af en lås pr. workspace, så parallelle CLI-processer aldrig ødelægger hinandens session. Hvis den gemte session bliver ubrugelig, fjerner CLI'en den og beder Dem logge ind igen.

En logout tilbagekalder sessionen på serveren og sletter de gemte loginoplysninger. Det er sikkert at køre den to gange:

hansa chat logout --workspace yourworkspace

Kontekster

En kontekst er ét gemt workspace: dets domæne, en valgfri API-override og om der findes loginoplysninger. Tokens vises aldrig.

hansa context list        # saved contexts, default marker
hansa context show        # details for the current workspace
hansa context use yourworkspace     # set the default workspace
hansa context remove yourworkspace  # log out remotely and delete everything

Rækkefølgen for workspace-opløsning: flaget --workspace, derefter miljøvariablen HANSA_WORKSPACE, derefter den gemte standard.

Headless-miljøer

Uden en nøglering (CI-containere, cron-job) angives tokens via miljøet:

export HANSA_ACCESS_TOKEN="…"
export HANSA_REFRESH_TOKEN="…"   # optional, enables automatic refresh

I denne tilstand skriv tokens aldrig til disken, og login uden en brugbar nøglering fejler eksplicit i stedet for at gemme loginoplysninger i klartekst.