De CLI houdt één account per workspace bij. Inloggegevens staan in de sleutelketen van het besturingssysteem (service hansa); ze verschijnen nooit in het contextbestand, in logs of in de uitvoer.
Aanmelden
hansa chat login --workspace yourworkspace
De CLI vraagt daarna om uw e-mailadres en wachtwoord. Als de workspace tweefactorauthenticatie vereist, wordt u om een TOTP-code of een herstelcode gevraagd.
Voor scripts leest u inloggegevens in vanuit stdin in plaats van via opties of omgevingsvariabelen:
echo '{"email": "you@example.com", "password": "…"}' \
| hansa chat login --workspace yourworkspace --credentials-stdin
De JSON mag ook "totp" of "recovery_code" bevatten wanneer tweefactorauthenticatie is vereist.
Een geldige, opgeslagen sessie maakt een herhaalde aanmelding tot een no-op. Gebruik --reauth om de opgeslagen sessie bewust te vervangen.
Sessies en vernieuwen
Accesstokens worden automatisch vernieuwd met behulp van een roterend refreshtoken, beveiligd met een vergrendeling per workspace zodat parallelle CLI-processen elkaar nooit elkaars sessie breken. Als de opgeslagen sessie onbruikbaar wordt, verwijdert de CLI deze en vraagt u om opnieuw aan te melden.
Bij het afmelden wordt de sessie op de server ingetrokken en worden de opgeslagen inloggegevens verwijderd. Twee keer uitvoeren is veilig:
hansa chat logout --workspace yourworkspace
Contexten
Een context is één opgeslagen workspace: het domein, een optionele API-override en of er inloggegevens bestaan. Tokens worden nooit getoond.
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
Volgorde van workspaceresolutie: eerst de optie --workspace, daarna de omgevingsvariabele HANSA_WORKSPACE, daarna de opgeslagen standaard.
Headless-omgevingen
Zonder een sleutelketen (CI-containers, cron-jobs) levert u tokens via de omgeving aan:
export HANSA_ACCESS_TOKEN="…"
export HANSA_REFRESH_TOKEN="…" # optional, enables automatic refresh
In deze modus worden tokens nooit naar schijf geschreven, en aanmelden zonder bruikbare sleutelketen mislukt expliciet in plaats van inloggegevens in platte tekst op te slaan.