AiHummer-konfiguration opdeles i to strengt forskellige grupper:
Bootstrap (gateway.env) — hvad porten skal vide før det kan
læs databasen: database DSN, lytteadresser, statiske mapper,
hovednøglen. Kun disse nøgler læses fra miljøet.
Indstillingskatalog (database) — hver anden knap. Disse opbevares i
database og indstil i webadmin-brugerfladen (Administration → Indstillinger) eller med
aihummer settings set <KEY> <VALUE>. For disse
taster a gateway.env værdi er med vilje ignoreret — selvom det er indstillet, har det
ingen effekt.
Konfigurationsmodel
gateway.env er kun bootstrap. Beslutningsrækkefølge:
Indstillingskatalognøgle: database value → built-in default
(miljøet ignoreres);
bootstrap-nøgle: environment variable only.
Så den eneste kilde til sandheden for justerbare knapper er databasen (webadmin UI / aihummer settings); miljøet bærer kun det, processen har brug for at starte.
Konfigurationsfilen til en host-native installation ligger på:
[!TIP]
Sæt ikke Settings-katalogknapper i gateway.env — det har ingen effekt. Skift
dem i webadmin-brugerfladen (Administration → Indstillinger, den har søgefunktion) eller via
aihummer settings set. Nogle ændringer (såsom værktøjsskift og underagent
dybde) anvend varm; andre kræver en genstart af tjenesten.
Bootstrap (gateway.env)
De eneste nøgler, som gatewayen faktisk læser fra miljøet.
Kerne & database
Variabel
Formål
AIHUMMER_DATABASE_URL
Påkrævet. Postgres DSN. Uden det kører gatewayen kun i sundheds-tilstand.
AIHUMMER_DB_APP_URL
Begrænset-rolle DSN, der aktiverer række-niveau sikkerhed (indstilles automatisk for lokale installationer).
AIHUMMER_GATEWAY_ADDR
Offentlig lytteadresse (standard :8780) — al ekstern trafik: API (/v1/*), parring, WS/SSE, indgående webhooks, app/pocket-proxyen og sundhedsprober.
AIHUMMER_WEBUI_ADDR
Privat admin Web UI lytteadresse (standard :8781), serveret ved roden af stien /; ideelt set bundet til en intern-only grænseflade. Indstillet til 0 at deaktivere.
AIHUMMER_DEFAULT_WORKSPACE_ID
Vælger standardarbejdsområdet for konfigurerede indgående integrationer.
AIHUMMER_HOME_ROOT
Installer rod (normalt afledt af binærstien); forankrer admin-ui/blob/installer-mapperne og nøglefilerne.
AIHUMMER_BLOB_DIR
Aktiverer medie-/filtjenesten (blob-lagringsmappe). Det gemmer også private (side-indlæste) plugin-artefakter under blob: refs som deployeren løser.
AIHUMMER_ADMIN_UI_DIR
Serverer admin SPA på /admin/.
Hemmeligholdelser og infrastruktur
Variabel
Formål
AIHUMMER_MASTER_KEY
base64-kodede 32 bytes; muliggør hemmeligheder i hvile, hvælvet og BYOK.
AIHUMMER_MEDIA_TOKEN_SECRET
Holder underskrevne download-URL’er gyldige på tværs af genstarter.
AIHUMMER_OTEL_ENDPOINT
OTLP-endpoint til push af spor/metrikker.
AIHUMMER_DOWNLOAD_BASE_URL
Base-URL for udgivelsesartefakter (selvopdateringskilde).
[!WARNING]
Observabilitet er Kun OTLP push. AiHummer gør ikke afsløre en Prometheus
/metrics endepunkt eller /debug/pprof. Punkt AIHUMMER_OTEL_ENDPOINT hos dig
indsamler i stedet.
Indstillingskatalog (database — webadministrationsgrænseflade eller aihummer settings)
Hver tast nedenfor findes i databasen. Indstil den i webadmin-brugergrænsefladen (Administration → Indstillinger) eller sådan her:
aihummer settings set AIHUMMER_LLM_PROVIDER openai
A gateway.env værdien for en sådan nøgle er ignoreret.
Sikkerhed
Nøgle
Formål
AIHUMMER_APPROVAL_TOOLS
Værktøjer, der kræver menneskelig godkendelse, før de kører.
HMAC delt hemmelighed for connector → gateway /v1/inbound/* opkald.
Autentificering og SSO
Nøgle
Formål
AIHUMMER_OIDC_ISSUER
Beskytter /v1/admin/*. Uden det (og uden LDAP/SAML) stoler admin på dev-headere — udsæt aldrig en sådan instans.
LDAP/AD og SAML er konfigureret sammen med OIDC til virksomhedssignering; SCIM leverer automatisk brugerprovisionering. Se Webhooks, SCIM og parring.
LLM & modeller
Nøgle
Formål
AIHUMMER_LLM_PROVIDER
Modeludbyder, der skal bruges.
AIHUMMER_LLM_MODEL
Modelnavn.
AIHUMMER_LLM_GATEWAY_URL
Grund-URL for en OpenAI-kompatibel LLM-gateway/endpoint (den AIHUMMER_LLM_* sti; adskilt fra den oprindelige AIHUMMER_OPENAI_BASE_URL). Se BYOK & udbydere.
AIHUMMER_OPENAI_API_KEY
API-nøgle til en OpenAI-kompatibel udbyder.
AIHUMMER_SUBAGENT_MAX_DEPTH
Maksimal dybde af genererede underagenter.
[!NOTE]
Hvis ingen model er tilsluttet, falder gatewayen tilbage til en deterministisk mock så den
systemet kører stadig. Ingen betalt model-API er nogensinde nødvendig — gratis/lokale modeller og en
Codex/ChatGPT-abonnementstransport er førsteklasses.
Værktøjer
Nøgle
Formål
AIHUMMER_FS_ROOT
Muliggør filesystem_read, isoleret under denne rod.
AIHUMMER_DB_QUERY_DSN
Muliggør db_query (skrivebeskyttet) mod dette DSN.
AIHUMMER_CODE_EXEC
Skifter code_exec værktøj (som standard slået fra på delte værter).
AIHUMMER_BROWSER_PROFILE_SOCKET
Sti til browsertjenestens private managed-profiles.sock-sokkel; tom — vedvarende computer-profiler er slået fra.
AIHUMMER_BROWSER_PROFILE_BINDINGS
JSON-array af udtrykkelige bindinger for vedvarende browserprofiler (profile_id, tenant_id, user_id, agent_ids, conversation_ids).
Websøgning og browseren administreres af installationsprogrammet: de installeres direkte fra start, slås fra med --no-search / --no-browser og peges på en eksisterende instans med --external-search=URL / --external-browser=URL — der findes ingen operatørindstillinger for dem.
En ekstra pålidelig offentlig nøgle (base64 ed25519) til at verificere pluginsignaturer. Kun til udviklingsbygninger — ignoreres i udgivelsesbygninger (registreringsdatabasenøglen er fastgjort i binærfilen).
AIHUMMER_PLUGIN_DEV_UNSIGNED
1 tillader installation usigneret plugins. Kun til udvikling — ignoreres i udgivelsesbygninger. Aldrig på en eksternt tilgængelig instans.
[!WARNING]
I udgivelsesbygninger er plugin-tillidsrod indbygget i binærfilen og
kan ikke overskrives af miljøet eller indstillinger — dette er en anti-manipulation
garanti.
Tillidsmodellen (officiel → fast nøgle, privat → tillidslager, usigneret → blokeret) er beskrevet i Installation og opdateringer.
Hvor til næste
Se, hvilke værktøjer hver nøgle låser op for: Værktøjskatalog.
AiHummer-konfiguration opdeles i **to strengt forskellige grupper**:
1. **Bootstrap (`gateway.env`)** — hvad porten skal vide **før** det kan
læs databasen: database DSN, lytteadresser, statiske mapper,
hovednøglen. Kun disse nøgler læses fra miljøet.
2. **Indstillingskatalog (database)** — hver anden knap. Disse opbevares i
database og indstil i webadmin-brugerfladen (**Administration → Indstillinger**) eller med
[`aihummer settings set <KEY> <VALUE>`](/da/v1.0/reference/cli). For disse
taster a `gateway.env` værdi er **med vilje ignoreret** — selvom det er indstillet, har det
ingen effekt.
## Konfigurationsmodel
`gateway.env` er **kun bootstrap**. Beslutningsrækkefølge:
- **Indstillingskatalognøgle**: `database value → built-in default`
(miljøet ignoreres);
- **bootstrap-nøgle**: `environment variable only`.
Så den eneste kilde til sandheden for justerbare knapper er databasen (webadmin UI / `aihummer settings`); miljøet bærer kun det, processen har brug for at starte.
Konfigurationsfilen til en host-native installation ligger på:
```ini
# /home/.aihummer/etc/gateway.env
AIHUMMER_DATABASE_URL=postgres://...
AIHUMMER_MASTER_KEY=base64-32-bytes
```
> [!TIP]
> Sæt ikke Settings-katalogknapper i `gateway.env` — det har ingen effekt. Skift
> dem i webadmin-brugerfladen (Administration → Indstillinger, den har søgefunktion) eller via
> `aihummer settings set`. Nogle ændringer (såsom værktøjsskift og underagent
> dybde) anvend varm; andre kræver en genstart af tjenesten.
## Bootstrap (gateway.env)
De eneste nøgler, som gatewayen faktisk læser fra miljøet.
### Kerne & database
| Variabel | Formål |
|---|---|
| `AIHUMMER_DATABASE_URL` | **Påkrævet.** Postgres DSN. Uden det kører gatewayen kun i sundheds-tilstand. |
| `AIHUMMER_DB_APP_URL` | Begrænset-rolle DSN, der aktiverer række-niveau sikkerhed (indstilles automatisk for lokale installationer). |
| `AIHUMMER_GATEWAY_ADDR` | Offentlig lytteadresse (standard `:8780`) — al ekstern trafik: API (`/v1/*`), parring, WS/SSE, indgående webhooks, app/pocket-proxyen og sundhedsprober. |
| `AIHUMMER_WEBUI_ADDR` | Privat admin Web UI lytteadresse (standard `:8781`), serveret ved roden af stien `/`; ideelt set bundet til en intern-only grænseflade. Indstillet til `0` at deaktivere. |
| `AIHUMMER_DEFAULT_WORKSPACE_ID` | Vælger standardarbejdsområdet for konfigurerede indgående integrationer. |
| `AIHUMMER_HOME_ROOT` | Installer rod (normalt afledt af binærstien); forankrer admin-ui/blob/installer-mapperne og nøglefilerne. |
| `AIHUMMER_BLOB_DIR` | Aktiverer medie-/filtjenesten (blob-lagringsmappe). Det gemmer også **private (side-indlæste) plugin-artefakter** under `blob:` refs som deployeren løser. |
| `AIHUMMER_ADMIN_UI_DIR` | Serverer admin SPA på `/admin/`. |
### Hemmeligholdelser og infrastruktur
| Variabel | Formål |
|---|---|
| `AIHUMMER_MASTER_KEY` | base64-kodede 32 bytes; muliggør hemmeligheder i hvile, hvælvet og BYOK. |
| `AIHUMMER_MEDIA_TOKEN_SECRET` | Holder underskrevne download-URL'er gyldige på tværs af genstarter. |
| `AIHUMMER_OTEL_ENDPOINT` | OTLP-endpoint til push af spor/metrikker. |
| `AIHUMMER_DOWNLOAD_BASE_URL` | Base-URL for udgivelsesartefakter (selvopdateringskilde). |
> [!WARNING]
> Observabilitet er **Kun OTLP push**. AiHummer gør **ikke** afsløre en Prometheus
> `/metrics` endepunkt eller `/debug/pprof`. Punkt `AIHUMMER_OTEL_ENDPOINT` hos dig
> indsamler i stedet.
## Indstillingskatalog (database — webadministrationsgrænseflade eller `aihummer settings`)
Hver tast nedenfor findes i databasen. Indstil den i webadmin-brugergrænsefladen (**Administration → Indstillinger**) eller sådan her:
```bash
aihummer settings set AIHUMMER_LLM_PROVIDER openai
```
A `gateway.env` værdien for en sådan nøgle er **ignoreret**.
### Sikkerhed
| Nøgle | Formål |
|---|---|
| `AIHUMMER_APPROVAL_TOOLS` | Værktøjer, der kræver menneskelig godkendelse, før de kører. |
| `AIHUMMER_AIRGAPPED` | `1` blokerer modelstyret offentlig udgang (luftafskåret tilstand). |
| `AIHUMMER_AUDIT_RETENTION_DAYS` | Opbevaringsperiode for admin-revisionsloggen. |
| `AIHUMMER_INBOUND_SECRET` | HMAC delt hemmelighed for connector → gateway `/v1/inbound/*` opkald. |
### Autentificering og SSO
| Nøgle | Formål |
|---|---|
| `AIHUMMER_OIDC_ISSUER` | Beskytter `/v1/admin/*`. Uden det (og uden LDAP/SAML) stoler admin på dev-headere — udsæt aldrig en sådan instans. |
LDAP/AD og SAML er konfigureret sammen med OIDC til virksomhedssignering; SCIM leverer automatisk brugerprovisionering. Se [Webhooks, SCIM og parring](/da/v1.0/api/webhooks-scim-pairing).
### LLM & modeller
| Nøgle | Formål |
|---|---|
| `AIHUMMER_LLM_PROVIDER` | Modeludbyder, der skal bruges. |
| `AIHUMMER_LLM_MODEL` | Modelnavn. |
| `AIHUMMER_LLM_GATEWAY_URL` | Grund-URL for en OpenAI-kompatibel LLM-gateway/endpoint (den `AIHUMMER_LLM_*` sti; adskilt fra den oprindelige `AIHUMMER_OPENAI_BASE_URL`). Se [BYOK & udbydere](/da/v1.0/access/byok-providers). |
| `AIHUMMER_OPENAI_API_KEY` | API-nøgle til en OpenAI-kompatibel udbyder. |
| `AIHUMMER_SUBAGENT_MAX_DEPTH` | Maksimal dybde af genererede underagenter. |
> [!NOTE]
> Hvis ingen model er tilsluttet, falder gatewayen tilbage til en **deterministisk mock** så den
> systemet kører stadig. Ingen betalt model-API er nogensinde nødvendig — gratis/lokale modeller og en
> Codex/ChatGPT-abonnementstransport er førsteklasses.
### Værktøjer
| Nøgle | Formål |
|---|---|
| `AIHUMMER_FS_ROOT` | Muliggør `filesystem_read`, isoleret under denne rod. |
| `AIHUMMER_DB_QUERY_DSN` | Muliggør `db_query` (skrivebeskyttet) mod dette DSN. |
| `AIHUMMER_CODE_EXEC` | Skifter `code_exec` værktøj (som standard slået fra på delte værter). |
| `AIHUMMER_BROWSER_PROFILE_SOCKET` | Sti til browsertjenestens private `managed-profiles.sock`-sokkel; tom — vedvarende `computer`-profiler er slået fra. |
| `AIHUMMER_BROWSER_PROFILE_BINDINGS` | JSON-array af udtrykkelige bindinger for vedvarende browserprofiler (`profile_id`, `tenant_id`, `user_id`, `agent_ids`, `conversation_ids`). |
Websøgning og browseren administreres af installationsprogrammet: de installeres direkte fra start, slås fra med `--no-search` / `--no-browser` og peges på en eksisterende instans med `--external-search=URL` / `--external-browser=URL` — der findes ingen operatørindstillinger for dem.
Se hele [Værktøjskatalog](/da/v1.0/reference/tools-catalog) hvad hvert værktøj gør.
### Stemme og sidevogne
| Nøgle | Formål |
|---|---|
| `AIHUMMER_STT_URL` | Tale-til-tekst sidecar-URL (seedet af installatøren). |
| `AIHUMMER_TTS_URL` | Tekst-til-tale sidecar-URL (seedet af installatøren). |
| `AIHUMMER_VIDEO_URL` | Video-forståelse sidevogn URL. |
| `AIHUMMER_TTS_AUTO_REPLY` | Hvornår et færdigt svar læses op: `off`, `always`, `inbound` (standard), `tagged`. |
| `AIHUMMER_TTS_MAX_CHARS` | Grænse for den oplæste tekst: `0` — hele svaret, ellers `100`–`10000` tegn. |
| `AIHUMMER_TTS_SUMMARIZE` | Forkort et langt svar til oplæsning (slået til som standard). |
Sidecars er separate HTTP-tjenester; gatewayen når dem via URL.
### Vektorer & indlejring
| Nøgle | Formål |
|---|---|
| `AIHUMMER_QDRANT_URL` | Rigtig vektorbutik (Qdrant). Fraværende → hukommelseslager. |
| `AIHUMMER_EMBEDDER_URL` | Ægte indlejringsservice. Fraværende → hash-indlejer. |
### Protokolflader (valgfrit)
| Nøgle | Formål |
|---|---|
| `AIHUMMER_MCP_PUBLISH` | Præcis `1` åbner den eksterne MCP-server på `POST /v1/mcp`. Alene eksporterer den ingen værktøjer. |
| `AIHUMMER_MCP_EXPORT_TOOLS` | Kommaadskilte præcise værktøjsnavne, som MCP-klienten ser. Tom (standard) = NUL værktøjer eksporteres. |
| `AIHUMMER_A2A_PUBLISH` | `1` muliggør A2A-overfladen (`/.well-known/agent.json`, `/a2a/message`). |
## Kun udviklerbygninger
| Variabel | Formål |
|---|---|
| `AIHUMMER_PLUGIN_PUBKEY` | En ekstra pålidelig offentlig nøgle (base64 ed25519) til at verificere pluginsignaturer. **Kun til udviklingsbygninger — ignoreres i udgivelsesbygninger** (registreringsdatabasenøglen er fastgjort i binærfilen). |
| `AIHUMMER_PLUGIN_DEV_UNSIGNED` | `1` tillader installation **usigneret** plugins. **Kun til udvikling — ignoreres i udgivelsesbygninger.** Aldrig på en eksternt tilgængelig instans. |
> [!WARNING]
> I udgivelsesbygninger er plugin-tillidsrod **indbygget i binærfilen** og
> kan ikke overskrives af miljøet eller indstillinger — dette er en anti-manipulation
> garanti.
Tillidsmodellen (officiel → fast nøgle, privat → tillidslager, usigneret → blokeret) er beskrevet i [Installation og opdateringer](/da/v1.0/marketplace/install-updates#trust-model-and-the-pinned-key).
## Hvor til næste
- Se, hvilke værktøjer hver nøgle låser op for: [Værktøjskatalog](/da/v1.0/reference/tools-catalog).
- Betjen instansen dagligt: [CLI-reference](/da/v1.0/reference/cli).