Тут пералічаны ўсе налады, якія аператар можа змяніць на серверы AiHummer. Старонка збіраецца з каталога самога прадукту, таму супадае з вашым серверам.
Значэнне задаецца ў вэб-інтэрфейсе або камандай aihummer settings set KEY VALUE (Камандны радок). У калонцы значэння па змаўчанні — тое, што выкарыстоўвае сервер, пакуль сваё значэнне не зададзена.
[!NOTE]
Значэнні сакрэтаў тут не друкуюцца, а службовыя ключы вытворцы не пералічаны зусім — прадукт хавае іх з усіх спісаў. Працяжнік азначае пустое значэнне або тлумачэнне, якое паказваецца толькі ў вэб-інтэрфейсе.
API
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_PERSONAL_API_KEYS
Персанальныя API-ключы для OpenAI-сумяшчальнага API
bool
1
пасля перазапуску
«off» адключае аўтэнтыфікацыю па персанальных ключах на OpenAI-сумяшчальным эндпойнце. Любое іншае значэнне = уключана. Ужываецца пры запуску/пасля перазапуску.
Agent
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_AGENT_ANNOUNCE_SLOW_TOOLS
Агент: папярэджваць пра доўгія дзеянні
bool
1
адразу
Перад доўгім дзеяннем (малюнак, глыбокі пошук, відэа, даручэнне субагенту) агент коратка піша, што робіць, каб чаканне не было маўклівым. Выключыце, калі такія паведамленні замінаюць.
AIHUMMER_AGENT_COMPACT_AT_PCT
Агент: сціскаць гісторыю пры запаўненні, % яе месца
int 50…99
85
адразу
Калі гісторыя размовы зойме столькі працэнтаў адведзенага ёй месца ў акне мадэлі, старыя рэплікі згортваюцца ў зводку — фонам, пасля адказу, ход не чакае. Ніжэй — сцісканне часцей, але мадэль даслоўна памятае менш; вышэй — радзей, але хады цяжэйшыя. 50–99; у агента можна задаць сваё значэнне.
AIHUMMER_AGENT_COMPACT_TO_PCT
Агент: пакідаць пасля сціскання, % месца гісторыі
int 10…90
50
адразу
Колькі працэнтаў месца гісторыі застаецца даслоўным пасля сціскання; усё старэйшае ідзе ў зводку. Павінна быць ніжэй за парог сціскання: запас паміж імі — колькі ходаў пройдзе да наступнага сціскання. 10–90; у агента можна задаць сваё значэнне.
AIHUMMER_AGENT_HISTORY_TURNS
Агент: хады размовы, якія захоўваюцца даслоўна
int 1…1000
30
адразу
Колькі апошніх ходаў размовы мадэль бачыць даслоўна (да 10 больш, пакуль не пара сціскаць). Больш раннія паведамленні згортваюцца ў зводку ў фоне; сама размова ніколі не выдаляецца. Акно кантэксту мадэлі ўлічваецца аўтаматычна. 1–1000; у агента можна задаць сваё значэнне.
AIHUMMER_AGENT_MAX_ITERATIONS
Агент: максімум крокаў інструментаў за ход
int 1…256
25
адразу
Колькі разоў за адзін ход агент можа выклікаць інструменты, перш чым адказаць. На ліміце ход не падае: агент паведамляе, што зроблена і што засталося, і яго можна папрасіць працягнуць. Тры аднолькавыя выклікі запар з адным і тым жа вынікам спыняюць ход раней. 1–256; у агента можна задаць сваё значэнне.
AIHUMMER_AGENT_MEMORY_FLUSH
Агент: захоўваць нататку ў памяць перад сцісканнем
bool
1
адразу
Перш чым згарнуць старыя паведамленні ў зводку, агент запісвае ў памяць кароткую нататку пра мэты, рашэнні і незакрытыя справы. Выключыце, каб не марнаваць выклік мадэлі.
AIHUMMER_AGENT_MEMORY_FLUSH_PROMPT
Агент: што запісваць у нататку перад сцісканнем
text
—
адразу
Сваё заданне для нататкі перад сцісканнем: што захаваць з рэплік, якія ідуць у зводку (напрыклад, «запісвай толькі пакупкі, тэрміны і дамоўленасці»). Пуста — убудаванае: мэты, рашэнні, незакрытыя справы. Абарона не адключаецца: тэкст размовы застаецца данымі, а не ўказаннямі, паролі і ключы не запісваюцца. Да 4000 знакаў; у агента можна задаць сваё.
AIHUMMER_AGENT_NEW_REMINDERS_MEMORY
Новыя агенты: напаміны і запіс у памяць
bool
1
адразу
Новы агент, створаны ўручную (майстар першага запуску, «Стварыць агента», API), з першага ходу сам ставіць, мяняе і адмяняе СВАЕ напаміны і расклады і сам запісвае факты ў сваю памяць — як шаблон асабістага памочніка. Асобнаму агенту гэта выключаецца ў картцы («Магчымасці»). Шаблоны бібліятэкі задаюць сваё, копія агента нясе правы арыгінала, агенты, створаныя іншым агентам, пачынаюць без гэтых правоў; існуючыя агенты не мяняюцца. Дзейнічае для наступнага створанага агента.
AIHUMMER_AGENT_PROMPT_PART_MAX_CHARS
Агент: мяжа сімвалаў на частку промпта
int 1000…1000000
20000
адразу
Колькі сімвалаў мадэль атрымлівае ад АДНОЙ часткі асобы агента: раздзела профілю, часткі промпта або асноўнага промпта. У даўжэйшай частцы захоўваюцца пачатак (3/4) і канец (1/4) з пазнакай, колькі абрэзана; гэта відаць у картцы размовы і ў складзе промпта агента. Імя, зварот і абмежаванні персоны не абразаюцца ніколі. 1000–1000000; для агента можна задаць сваё значэнне.
AIHUMMER_AGENT_PROMPT_TOTAL_MAX_CHARS
Агент: агульная мяжа сімвалаў асобы
int 1000…2000000
60000
адразу
Агульная мяжа асобы агента: усе часткі разам. Калі яна перавышана, месца саступаюць найдаўжэйшыя часткі, кароткія застаюцца цэлымі. 1000–2000000; для агента можна задаць сваё значэнне.
AIHUMMER_AGENT_SELF_INTRO
Агент: прадстаўляцца
enum: first_contact \\| each_dialog \\| never
first_contact
адразу
«Адзін раз, пры першым знаёмстве» — агент коратка прадстаўляецца ў самай першай размове з чалавекам, калі той не просіць адразу да справы; знаёмаму чалавеку нанова не прадстаўляецца і адказвае на прывітанне натуральна. «Не прадстаўляцца» — агент ніколі не называе сябе сам. «На пачатку кожнай новай размовы» — на пачатку кожнай новай размовы і пасля доўгай паўзы, коратка і без зводкі мінулых спраў. У агента можа быць свой выбар у картцы («Кантэкст і паводзіны»).
AIHUMMER_AGENT_SESSION_IDLE_RESET_MINUTES
Агент: пачынаць размову нанова пасля цішыні (хвіліны)
int 0…525600
360
адразу
Для рэжымаў «пасля цішыні» і «кожны дзень і пасля цішыні»: калі чалавек піша пасля цішыні, даўжэйшай за гэтую, агент пачынае размову нанова. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё значэнне. 0 — не па цішыні. 0–525600; 360 = 6 гадзін, 1440 = суткі.
AIHUMMER_AGENT_SESSION_INDEX_MAX_ENTRIES
Агент: трымаць у спісе не больш за столькі сеансаў
int 0…100000
0
адразу
Першымі сыходзяць самыя ціхія; нічога не выдаляецца. 0 — без мяжы. 0–100000. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё.
AIHUMMER_AGENT_SESSION_INDEX_PRUNE_DAYS
Агент: прыбіраць са спіса сеансаў пасля столькіх дзён цішыні
int 0…3650
0
адразу
Нічога не выдаляецца: размова сыходзіць са спіса і вяртаецца з новым паведамленнем. 0 — не прыбіраць. 0–3650. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё.
AIHUMMER_AGENT_SESSION_RESET_AT_HOUR
Агент: гадзіна штодзённага пачатку нанова
int 0…23
4
адразу
Для рэжымаў «кожны дзень»: размова, пачатая раней за гэтую гадзіну, з наступнай рэплікі чалавека пачынаецца нанова. Гадзіна — па часавым поясе сервера (налада «Часавы пояс» у «Сістэме і наладах»). 0–23; 4 — ноччу, калі амаль ніхто не піша.
AIHUMMER_AGENT_SESSION_RESET_GROUP_IDLE_MINUTES
Агент: пачынаць агульны чат нанова пасля цішыні (хвіліны)
int 0…525600
0
адразу
Для агульных чатаў у рэжымах «пасля цішыні» і «кожны дзень і пасля цішыні»: колькі хвілін цішыні, пасля якіх агульны чат пачынаецца нанова. 0 — як для асабістых чатаў. 0–525600.
AIHUMMER_AGENT_SESSION_RESET_GROUP_MODE
Агент: калі агульны чат пачынаецца нанова
enum: inherit \\| daily \\| idle \\| both \\| none
inherit
адразу
Асобнае правіла для агульных чатаў (групы Telegram, гутаркі VK, чаты MAX і іншыя): як для асабістых, кожны дзень у гадзіну скіду, пасля цішыні, што настане раней, або ніколі. Гадзіна скіду — агульная. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё правіла.
AIHUMMER_AGENT_SESSION_RESET_MODE
Агент: калі размова пачынаецца нанова
enum: idle \\| daily \\| both \\| none
idle
адразу
Калі агент пачынае размову нанова: кожны дзень у гадзіну скіду (па часавым поясе з налад), пасля цішыні, што настане раней, або ніколі. Пачынаючы нанова, агент піша ў сваю памяць нататку пра мінулую размову, а першы ход атрымлівае ранейшую зводку і апошнія рэплікі; самі рэплікі застаюцца ў архіве і ў пошуку. Дзейнічае для агентаў, у якіх у картцы няма свайго правіла; там для агульных чатаў можна задаць асобнае.
AIHUMMER_AGENT_SESSION_SCOPE
Агент: куды складваюцца асабістыя размовы
enum: chat \\| per-channel-peer \\| per-peer
chat
адразу
«Адна на чалавека» зводзіць Telegram, праграму і іншыя асабістыя чаты аднаго чалавека ў адну размову. Агульныя чаты заўсёды застаюцца сваімі. Дзейнічае з наступнага паведамлення. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё.
AIHUMMER_AGENT_SILENT_REPLY
Агент: можа прамаўчаць
enum: groups \\| all \\| off
groups
адразу
У агульных чатах агент можа прамаўчаць, калі паведамленне адрасавана не яму або яму няма чаго дадаць; у асабістай перапісцы ён адказвае заўсёды. Можна дазволіць маўчанне і ў асабістай перапісцы або выключыць яго. Ход, у якім агент прамаўчаў, нічога не адпраўляе, у картцы размовы ён пазначаны «агент прамаўчаў», а мадэль не бачыць яго ў гісторыі. Дзейнічае з наступнага ходу.
AIHUMMER_AGENT_SKILLS_PROMPT_MAX_CHARS
Агент: мяжа сімвалаў спісу навыкаў у промпце
int 1000…200000
18000
адразу
У кожным ходзе мадэль бачыць не тэксты навыкаў, а іх спіс: ідэнтыфікатар, назву і калі ўжываць; інструкцыю навыка агент загружае сам, калі задача падыходзіць. Калі спіс даўжэйшы, спачатку прыбіраюцца апісанні, потым хвост спісу — астатнія навыкі агент знойдзе па запыце. 1000–200000.
AIHUMMER_AGENT_STALE_GAP_HOURS
Агент: перапынак, пасля якога мінулая размова — гісторыя (гадзіны)
int 0…8760
12
адразу
Калі чалавек піша пасля перапынку, даўжэйшага за гэты, агент атрымлівае пазнаку: усё, што абмяркоўвалася раней, — гісторыя, яе не пераказваюць і ранейшыя задачы не працягваюць без просьбы. Кожнае паведамленне і так нясе час і колькі прайшло з папярэдняга. 0 — не пазначаць. 0–8760.
AIHUMMER_AGENT_TOOL_HISTORY_TURNS
Агент: хады, у якіх помняцца вынікі інструментаў
int 0…100
5
адразу
Колькі апошніх хадоў мадэль бачыць выклікі інструментаў і іх вынікі цалкам (вынік — да 16 КБ). У старэйшых хадах застаюцца выклік і пачатак выніку. Так агент памятае, што знайшоў і што зрабіў, а не выклікае інструменты зноў. 0 — не пераносіць вынікі ў наступныя хады. 0–100; у агента можна задаць сваё значэнне.
AIHUMMER_APPROVAL_TOOLS
Інструменты, якія патрабуюць пацвярджэння
multiselect
—
адразу
Спіс інструментаў праз коску, выклік якіх патрабуе ручнога пацвярджэння аператарам перад выкананнем. Пуста = пацвярджэнне не патрабуецца. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_SUBAGENT_MAX_DEPTH
Максімальная глыбіня суб-агентаў
int 0…10
2
адразу
Максімальная глыбіня ўкладзенасці субагентаў (агент, які запускае агента). Па змаўчанні 2 — абарона ад бясконцай рэкурсіі.
AIHUMMER_SUBAGENT_TIMEOUT_SEC
Таймаўт суб-агента (секунды)
int 0…86400
180
адразу
Максімальны час аднаго запуску субагента, у секундах.
AIHUMMER_TOOL_SEARCH
Адкладзеная загрузка інструментаў
bool
false
адразу
Рабочае ядро інструментаў паказваецца мадэлі адразу, а астатняя частка вялікага каталога хаваецца за інструментам пошуку, які называе кожны схаваны інструмент. Акупляецца толькі на вялікіх каталогах (дзясяткі інструментаў плагінаў, MCP або OpenAPI): ніжэй за парог памеру ўсе інструменты паказваюцца адразу, бо лішні зварот да мадэлі дзеля пошуку даражэйшы за самі схемы. Дзейнічае з наступнага ходу.
Інструменты, якія ў лянівым рэжыме заўсёды бачныя мадэлі адразу. Па змаўчанні — рабочае ядро: пошук у інтэрнэце, чытанне старонак, памяць, гісторыя перапіскі, база ведаў, код, файлы, паведамленні, раскладзі і прывязка праграмы. Пошук па памяці і базе ведаў (memory_search, memory_get, search_knowledge) бачны заўсёды, што б ні было ў гэтым спісе. Пусты спіс вяртае гэтае ядро.
AIHUMMER_TOOL_SEARCH_MIN_POOL_TOKENS
Лянівая загрузка: мінімальны аб’ём схаваных інструментаў (токены)
int 0…1000000
4000
адразу
Хаваць інструменты, толькі калі схемы па-за ядром важаць не менш за столькі токенаў (каля 4 знакаў кожны). Ніжэй за парог усе інструменты паказваюцца адразу: лішні зварот да мадэлі дзеля пошуку інструмента даражэйшы, чым паказаць схемы.
AIHUMMER_TOOL_SEARCH_THRESHOLD
Лянівая загрузка: мінімум інструментаў для адтэрміноўкі
int 0…1000
12
адразу
Адкладваць толькі тады, калі пасля фільтра профілю агента застаецца больш за гэтую колькасць інструментаў.
Agent · Reasoning
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_AGENT_BEST_OF_N
Лепшы з N: колькасць варыянтаў
int 0…8
0
адразу
Агент рыхтуе столькі варыянтаў адказу і пакідае лепшы. 0 або 1 — выключана, ад 2 — уключана. Кожны варыянт каштуе як асобны адказ.
Агент рыхтуе столькі варыянтаў адказу, зверае іх паміж сабой і выдае лепшы. 0 або 1 — выключана, ад 2 — уключана. Кожны варыянт каштуе як асобны адказ.
AIHUMMER_AGENT_DEBATE_PROMPT
Дэбаты: промпт кандыдата (перавызначэнне)
text
—
адразу
Перавызначае промпт кандыдата ў дэбатах (пуста = убудаваны).
Мова/лакаль адказу па змаўчанні, напр. ru-RU. Інструкцыі персоны/аператара маюць прыярытэт.
AIHUMMER_TIMEZONE
Часавы пояс
text
UTC
адразу
Часавы пояс IANA для бягучай даты ў агента і для раскладаў без свайго пояса, напр. Europe/Moscow. Па змаўчанні UTC.
Channels
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_CHANNEL_FAILURE_NOTICE
Паведамляць суразмоўцу пра збой адказу
enum: always \\| once \\| off
always
адразу
Што атрымлівае суразмоўца ў канале (Telegram і іншыя), калі агент не змог адказаць: «Кожны раз» — кароткае паведамленне на яго мове; «Не часцей за раз у 4 гадзіны» — адно паведамленне на размову за 4 гадзіны; «Не паведамляць» — нічога. У паведамленні няма кодаў памылак і назваў пастаўшчыкоў; падрабязнасці вы бачыце ў «Сесіях» і апавяшчэннях.
AIHUMMER_CHANNEL_FAILURE_TEXT_BLOCKED
Тэкст пра адмову: інстанс прыпынены
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_BUDGET
Тэкст пра адмову: вычарпаны бюджэт
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_BUSY
Тэкст пра адмову: шлюз перагружаны
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_CONFIG
Тэкст пра адмову: падключэнне мадэлі патрабуе ўладальніка
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_FAILED
Тэкст пра адмову: іншы збой
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_QUOTA
Тэкст пра адмову: вычарпаны ліміт мадэлі
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_STEP_LIMIT
Тэкст пра адмову: задача не ўмясцілася ў адзін адказ
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_TOO_LONG
Тэкст пра адмову: размова не змяшчаецца ў мадэль
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CHANNEL_FAILURE_TEXT_UNAVAILABLE
Тэкст пра адмову: мадэль часова недаступная
text
—
адразу
Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу.
AIHUMMER_CONFIDENTIAL_PERSONA
Канфідэнцыйная вэб-персона
bool
0
адразу
Калі ўключана, вэб-чат-агент не раскрывае і не захоўвае даныя сваёй персоны/асобы і адказвае строга па задачы — для ананімных ці адчувальных да прыватнасці вэб-разгортванняў. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_INBOUND_COALESCE_MS
Акно аб’яднання паведамленняў (мс)
int
500
адразу
Некалькі паведамленняў, якія чалавек адпраўляе запар у адзін чат (кароткія паведамленні, фотаальбом, хуткае выпраўленне), атрымліваюць АДЗІН адказ, калі паўза паміж імі карацейшая за гэта акно. На паведамленні, што прыйшлі, пакуль рыхтуецца адказ, бот адказвае адразу пасля яго, ніколі паралельна. Па змаўчанні 500 мс; 0 — без чакання паміж асобнымі паведамленнямі; альбом фота ўсё роўна збіраецца (паўзы да 3 с, не даўжэй за 20 с), каб атрымаць адзін адказ. Склейка працуе ў Telegram; Slack, WhatsApp, VK, пошта і іншыя канектары, якія чакаюць адказу на кожнае паведамленне (і інтэграцыі праз /v1/inbound/generic), атрымліваюць адказ на кожнае — па-ранейшаму па адным і па парадку. Прымяняецца адразу.
AIHUMMER_INBOUND_EDIT_MODE
Калі чалавек правіць паведамленне, на якое ўжо адказалі
enum: correct \\| history
correct
адразу
correct — бот адказвае яшчэ раз, ведаючы, што гэта выпраўленне («было / стала»); history — праўка толькі выпраўляе гісторыю размовы, новага адказу няма (зручна для памылак друку). Праўка паведамлення, на якое бот яшчэ не адказаў, заўсёды проста замяняе яго тэкст. Працуе там, дзе канал паведамляе пра праўкі (Telegram). Ужываецца адразу.
AIHUMMER_INBOUND_QUEUE_MODE
Паведамленні, напісаныя, пакуль агент працуе
enum: steer \\| collect \\| followup
steer
адразу
Што адбываецца з паведамленнем, якое той самы чалавек піша, пакуль агент яшчэ рыхтуе адказ (шукае, запускае інструменты): steer (па змаўчанні) — агент бачыць яго перад наступным крокам і ўлічвае ў тым жа адказе; collect — на яго адказвае наступны адказ. followup — на кожнае такое паведамленне — асобны адказ, па чарзе. Фота, файлы, адказы на паведамленне і перасылкі заўсёды чакаюць наступнага адказу. Прымяняецца адразу.
AIHUMMER_INBOUND_REQUIRE_BINDING
Адказваць толькі зарэгістраваным карыстальнікам
bool
true
адразу
true = бот ігнаруе любога адпраўніка ў канале, які НЕ з’яўляецца заведзеным карыстальнікам AiHummer (карыстальнік з прывязкай ролі) — выпадковыя ўдзельнікі чата і гасцявыя выклікі не атрымліваюць адказу. false (па змаўчанні) = адказваць усім.
Integrations
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_A2A_PUBLISH
Публікаваць агента праз Agent2Agent (A2A)
bool
0
пасля перазапуску
Апублікаваць агента як A2A-сервер (Agent Card + POST /a2a/message). Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_MCP_EXPORT_TOOLS
Інструменты, адкрытыя знешнім асістэнтам
multiselect
—
пасля перазапуску
Відавочны спіс імёнаў прылад, дазволеных вонкавым MCP-кліентам, праз коску. Пуста = не публікаваць ніводнай прылады. Небяспечныя host-level класы дадаткова забароненыя ўбудаванай палітыкай, нават калі пералічаныя. Ужываецца пры старце / пасля рэстарту.
AIHUMMER_MCP_PUBLISH
Публікаваць інструменты праз MCP
bool
0
пасля перазапуску
Дазваляе знешнім асістэнтам (напрыклад, Claude Desktop) карыстацца інструментамі вашых агентаў. Якія менавіта інструменты адкрыць, выбіраецца ў суседняй наладзе: пакуль спіс пусты, не адкрываецца ніводны.
AIHUMMER_MODULE_CPU_QUOTA
Мяжа працэсара плагіна (на кожны)
text
75%
адразу
Якую долю працэсара можа заняць кожны плагін (systemd CPUQuota): 75% — тры чвэрці аднаго ядра, 150% — паўтара ядра. Новае значэнне плагін атрымае пры наступнай усталёўцы, абнаўленні або захаванні яго налад; да таго плагіны, што працуюць, жывуць з ранейшай мяжой.
AIHUMMER_MODULE_MEMORY_MAX
Мяжа памяці плагіна (на кожны)
text
512M
адразу
Колькі памяці можа заняць кожны плагін (systemd MemoryMax): памер накшталт 512M, 1G або 2048M (не менш за 64M) ці infinity — без мяжы. Плагін, які перавысіў мяжу, сістэма спыніць. Новае значэнне плагін атрымае пры наступнай усталёўцы, абнаўленні або захаванні яго налад; да таго плагіны, што працуюць, жывуць з ранейшай мяжой.
Knowledge connectors
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_KB_SYNC_INTERVAL
Як часта абнаўляць базу ведаў з крыніц
text
—
адразу
Як часта сервер сам забірае змены з падключаных крыніц базы ведаў. Напрыклад: 30m — кожныя 30 хвілін, 6h — кожныя 6 гадзін. Пуста або 0 — толькі ўручную. Паўторная загрузка не стварае дублікатаў. Выгрузку Slack загружаюць уручную.
LLM
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_AUX_FALLBACK_MODELS
Службовыя задачы: запасныя мадэлі
list
—
адразу
Мадэлі праз коску — спрабуюцца па парадку, калі службовая мадэль адмовіла (квота, збой). Апошняй заўсёды спрабуецца асноўная мадэль, каб зводка не згубілася. Кожнае пераключэнне запісваецца ў журнал. Дзейнічае адразу.
AIHUMMER_AUX_MODEL
Мадэль для службовых задач (зводкі, нататкі, загалоўкі)
text
—
адразу
Мадэль фонавых службовых задач: сцісканне старой гісторыі ў зводку, нататка ў памяць перад сцісканнем, загалоўкі размоў, выманне фактаў, перафразаванне пошукавых запытаў і пераклад. Пуста = аўтаматычна: танейшая мадэль таго ж пастаўшчыка (Claude → claude-haiku-4-5, Codex → gpt-…-luna/mini); калі такой няма — асноўная мадэль. «main» — заўсёды асноўная мадэль. Дзейнічае адразу.
AIHUMMER_CASCADE_MIN_CHARS
Каскад: мінімум сімвалаў для эскалацыі
int
0
адразу
Парог даўжыні запыту (сімвалы), з якога ўключаецца мацнейшая мадэль каскада. 0 = па змаўчанні.
AIHUMMER_CASCADE_STRONG_MODEL
Каскад: больш моцная запасная мадэль
text
—
адразу
Мадэль, на якую каскадам пераключаемся для доўгіх/складаных запытаў (пуста = выключана).
AIHUMMER_CLAUDE_AUTH_URL
Падпіска Claude: адрас старонкі ўваходу
text
—
адразу
Старонка, на якой вы дазваляеце падключыць падпіску Claude. Пуста — стандартны адрас; мяняць трэба, толькі калі пра гэта папрасіла падтрымка.
AIHUMMER_CLAUDE_CLIENT_ID
Падпіска Claude: ідэнтыфікатар кліента OAuth
text
—
адразу
Ідэнтыфікатар праграмы для ўваходу па падпісцы Claude. Пуста — стандартны; мяняць трэба, толькі калі пра гэта папрасіла падтрымка.
AIHUMMER_CLAUDE_EFFORT
Claude: глыбіня разважанняў
enum: low \\| medium \\| high \\| xhigh \\| max
medium
адразу
Наколькі глыбока мадэлі Claude разважаюць перад адказам, калі ў агента глыбіня не зададзена. Вышэй — дакладней на складаных задачах, але даўжэй і дарожэй па квоце; ніжэй — хутчэй і танней. Мадэль, якая не ведае абранага ўзроўню, атрымлівае бліжэйшы меншы; Haiku 4.5 і старыя мадэлі разважанні не падтрымліваюць. Глыбіня, зададзеная ў агента, важнейшая. Дзейнічае з наступнага ходу.
AIHUMMER_CLAUDE_MAX_TOKENS
Claude: найбольшая даўжыня адказу (токенаў)
int
16000
адразу
Колькі токенаў можа заняць адзін адказ Claude — і па падпісцы, і па ключы. Разважанні мадэлі ўваходзяць у гэты ж ліміт: занадта малое значэнне абрывае адказ на паўслове або дае пусты адказ. Калі ў агента зададзена свая даўжыня адказу, дзейнічае яна.
AIHUMMER_CLAUDE_REDIRECT_URI
Падпіска Claude: URI перанакіравання
text
—
адразу
Адрас вяртання, зарэгістраваны ў пастаўшчыка. Павінен супадаць з тым, што настроены на яго баку, інакш абмен кода не прымаецца.
AIHUMMER_CLAUDE_TOKEN_URL
Падпіска Claude: адрас атрымання доступу
text
—
адразу
Адрас, па якім сервер атрымлівае і падаўжае доступ да падпіскі Claude. Пуста — стандартны адрас; мяняць трэба, толькі калі пра гэта папрасіла падтрымка.
AIHUMMER_CODEX_BASE_URL
Базавы URL Codex
text
—
часткова пасля перазапуску
База транспарту Codex (падпіска ChatGPT). Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_CODEX_MAX_OUTPUT_TOKENS
Макс. выходных токенаў (0 = без абмежавання)
int
0
адразу
Абмежаванне max_output_tokens для ходу чата. 0 = без абмежавання. У reasoning-мадэлях токены разважанняў таксама лічацца ў гэтым бюджэце, таму занадта малое значэнне дае пусты адказ «incomplete: max_output_tokens». Ужываецца на ляту (без перазапуску).
AIHUMMER_CODEX_MODEL
Ідэнтыфікатар мадэлі (транспарт Codex / gpt-5.5)
text
gpt-5.5
часткова пасля перазапуску
Ідэнтыфікатар мадэлі асноўнага транспарту Codex/ChatGPT (напр. gpt-5.5, gpt-5.5-codex). Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_CODEX_REASONING_EFFORT
Глыбіня разважанняў
enum: none \\| low \\| medium \\| high \\| xhigh
medium
адразу
Наколькі глыбока мадэль ChatGPT (Codex) думае перад адказам, калі ў агента гэта не зададзена. Па змаўчанні — «Сярэднія». Вышэй — дакладней, але даўжэй і даражэй.
AIHUMMER_LLM_CALL_TIMEOUT_S
Таймаўт аднаго выкліку (секунды)
int
120
адразу
Колькі секунд чакаць адказу мадэлі на адзін запыт. Калі мадэль маўчыць даўжэй, запыт абрываецца і адказ пераходзіць да наступнай мадэлі са спісу. Для Claude лічыцца паўза ў патоку адказу, а не ўвесь адказ: доўгі, але бягучы адказ не абрываецца. 0 — без абмежавання.
AIHUMMER_LLM_FALLBACK_MODELS
Запасныя мадэлі (для ўсіх агентаў)
text
auto
адразу
Хто адказвае, калі асноўная мадэль і астатнія пастаўшчыкі адмовілі (вычарпаны ліміт, збой, занадта частыя запыты). auto — апошнім рубяжом у кожнага пастаўшчыка яго больш танная мадэль (Claude: claude-haiku-4-5, Codex: gpt-…-luna/mini); спіс праз коску — свой парадак, кожная мадэль ідзе да пастаўшчыкоў свайго вытворцы; off — без запасных. Уласная запасная мадэль агента галоўнейшая. Ужываецца адразу.
AIHUMMER_LLM_GATEWAY_URL
LLM шлюз URL
text
—
часткова пасля перазапуску
Базавы URL OpenAI-сумяшчальнага эндпойнта мадэлі, да якога звяртаецца агент (ваш лакальны сервер llama.cpp/vLLM/Ollama ці размешчаны шлюз). Пакіньце пустым, каб выкарыстоўваць эндпойнт правайдара па змаўчанні.
AIHUMMER_LLM_MODEL
Мадэль LLM
text
—
часткова пасля перазапуску
Назва/ідэнтыфікатар мадэлі, які адпраўляецца правайдару на кожным ходзе (мадэль, якую аддае ваш эндпойнт). Мусіць супадаць з мадэллю, якую эндпойнт сапраўды прадастаўляе.
AIHUMMER_LLM_PAUSE_AUTH_MIN
Паўза пасля адмовы ўліковых даных, хв
int
10
адразу
Колькі хвілін не звяртацца да пастаўшчыка, які адхіліў уліковыя даныя. Паўтор падвойвае паўзу, але не даўжэй за шасціразовую. Паспяховая праверка злучэння і кнопка «Зняць паўзу» вяртаюць пастаўшчыка адразу. Дзейнічае з наступнай адмовы.
AIHUMMER_LLM_PAUSE_MODEL_MIN
Паўза мадэлі, якую пастаўшчык не абслугоўвае, хв
int
60
адразу
Колькі хвілін не прапаноўваць пастаўшчыку мадэль, якую, па яго словах, ён не абслугоўвае; іншыя яго мадэлі пытаюцца як звычайна. Дзейнічае з наступнай адмовы.
AIHUMMER_LLM_PAUSE_QUOTA_MIN
Паўза пасля вычарпання ліміту, хв
int
300
адразу
Колькі хвілін не звяртацца да мадэлі (або да ўсяго акаўнта, калі вычарпаны ліміт уліковага запісу — Codex, ключ OpenAI, аплата), калі ліміт вычарпаны, а тэрмін скіду пастаўшчык не назваў. Паўтор падвойвае паўзу, але не даўжэй за суткі. Тэрмін, названы пастаўшчыком, галоўнейшы. Дзейнічае з наступнай адмовы.
AIHUMMER_LLM_PAUSE_SHORT_S
Паўза пастаўшчыка пасля збою, с
int
30
адразу
Колькі секунд не звяртацца да пастаўшчыка пасля збою, разрыву сувязі або «занадта часта». Другая адмова запар — удвая даўжэй, трэцяя і далей — удзесяцера. Калі пастаўшчык сам назваў тэрмін, чакаем яго. Дзейнічае з наступнай адмовы.
AIHUMMER_LLM_PROVIDER
Правайдэр LLM
text
—
часткова пасля перазапуску
Які бэкенд мадэлі выкарыстоўваць (OpenAI-сумяшчальны эндпойнт ці транспарт Codex/падпіскі ChatGPT). Вызначае, як адпраўляюцца і аўтарызуюцца запыты.
AIHUMMER_LLM_RETRIES
Паўторы LLM пры часовай памылцы
int
3
адразу
Колькасць паўтораў запыту да LLM пры часовай памылцы.
AIHUMMER_LLM_TEMPERATURE
Тэмпература
text
—
адразу
Наколькі разнастайна адказвае мадэль (0–2), калі ў агента гэта не зададзена: менш — дакладней і прадказальней, больш — жывей. Пуста — мадэль вырашае сама. Мадэлі з разважаннямі (ChatGPT/Codex, Claude пакалення 5) гэты параметр не прымаюць — для іх пакіньце поле пустым.
AIHUMMER_LLM_TOP_P
Top-p (nucleus-сэмплаванне)
text
—
адразу
Яшчэ адзін спосаб зрабіць адказы разнастайнейшымі (0–1), калі ў агента гэта не зададзена. Пуста — мадэль вырашае сама. Звычайна задаюць штосьці адно: альбо тэмпературу, альбо гэты параметр; мадэлі з разважаннямі яго не прымаюць.
AIHUMMER_MODEL_GUARD_INTERVAL_MIN
Зверка моделей агентаў: перыяд, хв
int
60
адразу
Як часта пераправяраць, што мадэль кожнага агента абслугоўвае ўключаны пастаўшчык. Мадэль агента не мяняецца ніколі: пакуль яе ніхто не абслугоўвае, адказвае першая мадэль з парадку адказу, якая не на паўзе, і адно паведамленне называе агентаў — і яшчэ адно, калі іх мадэль вернецца. На старце шлюза праверка ідзе заўсёды, а 0 адключае толькі паўтор. Новы перыяд дзейнічае на працягу хвіліны.
AIHUMMER_OPENAI_API
Стыль API OpenAI (chat | responses)
enum: \\| chat \\| responses
—
часткова пасля перазапуску
chat = /chat/completions, responses = /responses. Пуста = аўта/па змаўчанні. Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_OPENAI_API_KEY
API-ключ натыўнага OpenAI (прадвызначаны для ўсталёўкі)
text
—
часткова пасля перазапуску
Ключ вашага акаўнта OpenAI для натыўнага цыкла OpenAI (калі выкарыстоўваеце OpenAI як правайдара па змаўчанні). Не блытаць з BYOK працоўнай прасторы на старонцы «Мадэлі». Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_OPENAI_BASE_URL
Базавы URL натыўнага OpenAI
text
—
пасля перазапуску
База OpenAI-сумяшчальнага API (напр. https://api.openai.com/v1). Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_OPENAI_MODEL
Мадэль натыўнага OpenAI
text
—
пасля перазапуску
Мадэль для натыўнага цыкла OpenAI (калі зададзены AIHUMMER_OPENAI_API_KEY). Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_ROUTER_COMPLEX_MODEL
Роўтэр: мадэль для складаных запытаў
text
—
адразу
Мадэль для складаных запытаў агента, у якога няма сваёй мадэлі (пуста = узровень выключаны). Дзейнічае з наступнага ходу.
AIHUMMER_ROUTER_SIMPLE_MODEL
Роўтэр: мадэль для простых запытаў
text
—
адразу
Мадэль для простых запытаў агента, у якога няма сваёй мадэлі (пуста = узровень выключаны). Дзейнічае з наступнага ходу.
AIHUMMER_ROUTER_STANDARD_MODEL
Роўтэр: мадэль для звычайных запытаў
text
—
адразу
Мадэль для звычайных запытаў агента, у якога няма сваёй мадэлі (пуста = узровень выключаны). Дзейнічае з наступнага ходу.
AIHUMMER_SUBSCRIPTION_QUOTA_REFRESH_MIN
Квоты падпісак: перыяд апытання, хв
int
15
адразу
Як часта панэль пытаецца ў ChatGPT (Codex) вокны квот падпіскі: не часцей за раз за перыяд, не часцей за раз у 5 хвілін і толькі пакуль квоты адкрытыя; паміж апытаннямі паказваецца захаваная копія. Claude не пытаемся ніколі: яго ліміты — наша ацэнка. Дзейнічае з наступнага адкрыцця квот.
Media
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_DEEPGRAM_API_KEY
Ключ Deepgram API
text
—
адразу
Ключ сэрвісу Deepgram — патрэбны, калі галасавыя паведамленні распазнае Deepgram. Калі пуста, бярэцца агульны ключ распазнавання маўлення з суседняй налады. Дзейнічае адразу.
AIHUMMER_DEEPGRAM_DETECT_LANGUAGE
Вызначэнне мовы Deepgram
bool
0
адразу
Вызначаць мову замест перадачы зададзенай мовы. Ужываецца адразу.
AIHUMMER_DEEPGRAM_MODEL
Мадэль Deepgram
text
nova-2
адразу
Мадэль Deepgram (напр. nova-2, nova-3, base). Залежыць ад доступу праекта па ключы. Ужываецца адразу.
AIHUMMER_DEEPGRAM_PUNCTUATE
Пунктуацыя Deepgram
bool
1
адразу
Дадаваць знакі прыпынку і вялікія літары. Ужываецца адразу.
AIHUMMER_DEEPGRAM_SMART_FORMAT
Разумнае фарматаванне Deepgram
bool
1
адразу
Фарматаваць распазнаныя лікі і даты. Ужываецца адразу.
Мадэль для image_generate (па змаўчанні gpt-image-2).
AIHUMMER_MEDIA_MAX_UPLOAD_MB
Макс. памер загрузкі медыя (МБ)
int
256
адразу
Самы вялікі файл (фота, галасавое, відэа), які можна загрузіць за адзін раз, у мегабайтах. Абараняе дыск сервера ад перапаўнення. Па змаўчанні 256. Дзейнічае адразу.
AIHUMMER_SIDECAR_STT
Распазнаванне маўлення на гэтым серверы (faster-whisper)
bool
0
адразу
Лакальнае распазнанне прамовы (faster-whisper). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~620 МіБ на ўсе версіі Python) і ставіць службу на хост. 🔴 Дадатак публікуецца асобным рашэннем вендара (яго пакеты вязуць ffmpeg пад GPL); калі для вашага выпуску яно не апублікавана, уключэнне сапраўды скажа пра гэта і нічога не зламае. Воблачнае тарыф: распазнанне наладжвае пастаўшчык.
AIHUMMER_SIDECAR_TTS
Агучванне адказаў (edge-tts)
bool
0
адразу
Сінтэз гаворкі (edge-tts, галасы Microsoft Edge). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~26 МіБ) і ставіць службу на хост. Сам сінтэз ходзіць у інтэрнэт па галасы — «афлайн» тут адносіцца да ўстаноўкі пакета, а не да працы.
AIHUMMER_STT_API_KEY
API-ключ STT (неабавязкова)
text
—
адразу
Ключ доступу да службы распазнавання маўлення, калі яна яго патрабуе. Для службы на гэтым серверы яго задае ўсталёўшчык — мяняць не трэба. Дзейнічае адразу.
AIHUMMER_STT_ENGINE
Рухавік распазнавання маўлення (STT)
enum: auto \\| faster-whisper \\| deepgram \\| codex \\| off
auto
адразу
Чым расшыфроўваць галасавыя. Аўта (па змаўчанні): Deepgram, калі зададзены яго ключ, інакш лакальная служба, калі яна ўсталявана (пераключальнік вышэй), інакш нічым — і бот сумленна скажа суразмоўцу, што пакуль не можа слухаць. faster-whisper: лакальная служба або сумяшчальны знешні /v1/audio/transcriptions. deepgram: воблачны Deepgram са сваім ключом. codex: падключаная падпіска ChatGPT («Мадэлі» → «Падключыць ChatGPT»), выдаткоўвае яе квоту. off: не расшыфроўваць. Ужываецца адразу.
AIHUMMER_STT_LANGUAGE
Мова распазнавання маўлення (STT)
text
—
адразу
Мова распазнавання (BCP-47, напр. ru/en). Выкарыстоўваецца рухавіком deepgram (мадэль nova-2). Пуста = аўтавызначэнне ці змаўчанне рухавіка. Ужываецца адразу.
AIHUMMER_STT_MODEL
Мадэль STT
text
Systran/faster-whisper-small
адразу
Мадэль faster-whisper (напр. small/medium/large-v3 ці Systran/faster-whisper-⟨size⟩). Ужываецца адразу.
AIHUMMER_TTS_API_KEY
Клавіша TTS API (край-tts)
text
—
часткова пасля перазапуску
Ключ доступу да службы агучвання. Задаецца аўтаматычна пры ўсталёўцы — мяняць не трэба.
AIHUMMER_TTS_ENABLED
Сінтэз маўлення ўключаны
bool
1
часткова пасля перазапуску
Дазваляе агенту адказваць голасам. Для гэтага патрэбна служба агучвання — яе ставяць у раздзеле «Дадатковыя службы» вышэй.
AIHUMMER_TTS_MODEL
Мадэль TTS
text
—
часткова пасля перазапуску
Назва мадэлі для сэрвісу edge-tts. Ужываецца пры запуску/пасля перазапуску.
Голас edge-tts па змаўчанні (шматмоўны, у тым ліку руская). Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_VIDEO_API_KEY
API-ключ аналізу відэа
text
—
адразу
Ключ доступу да службы разбору відэа, калі яна яго патрабуе. Пуста — служба выкарыстоўваецца без ключа.
Media · Voice
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_TTS_AUTO_REPLY
Аўтаматычныя галасавыя адказы
enum: off \\| always \\| inbound \\| tagged
inbound
адразу
Выключана, заўсёды, у адказ на аўдыя або па яўнай пазнацы. Можна змяніць для асобнай размовы.
AIHUMMER_TTS_MAX_CHARS
Ліміт знакаў для агучвання
int
0
адразу
0: увесь тэкст; 100–10000: ліміт агучанага тэксту. Поўны адказ застаецца ў гісторыі.
AIHUMMER_TTS_SUMMARIZE
Скарачэнне доўгіх галасавых адказаў
bool
1
адразу
Скарачаць доўгія адказы для агучвання. Пры памылцы чытаць пачатак у межах ліміту.
AIHUMMER_VOICE_AEC
Падаўленне рэха (AEC)
bool
1
адразу
Прыбірае рэха: уласны голас агента з дынаміка не трапляе назад у мікрафон і не перабівае размову. Выключайце, толькі калі голас у гарнітуры гучыць скажона.
AIHUMMER_VOICE_AGC
Аўтаматычная рэгуляцыя ўзмацнення
bool
1
адразу
Патрабаваць аўтаматычную рэгуляцыю ўзмацнення мікрафона (WebRTC autoGainControl) у галасавым рэжыме.
AIHUMMER_VOICE_BARGEIN_FRAMES
Перабіць агента: колькі трэба гаварыць
int
5
адразу
Колькі трэба гаварыць (у кадрах па 20 мс), каб агент змоўк і пачаў слухаць. Па змаўчанні 5 — прыкладна 0,1 секунды.
AIHUMMER_VOICE_DUPLEX
Жывы поўнадуплексны голас
bool
0
адразу
Уключае жывы поўнадуплексны рэжым (стрымінг + VAD + barge-in). Ужываецца адразу.
AIHUMMER_VOICE_NOISE_SUPPRESSION
Шумаздушэнне
bool
1
адразу
Патрабаваць падаўленне шуму пры захопе мікрафона (WebRTC noiseSuppression) у галасавым рэжыме.
AIHUMMER_VOICE_VAD_THRESHOLD
Адчувальнасць да голасу (0–1)
text
0.02
адразу
З якой гучнасці гук лічыцца маўленнем. Менш — адчувальней: агент пачуе ціхае маўленне, але і старонні шум. Па змаўчанні 0.02.
Memory
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_EMBEDDER_DIM
Памернасць мадэлі пошуку па сэнсе
int
768
пасля перазапуску
Размернасць вектара — мусіць супадаць з мадэллю (multilingual-e5-base=768, bge-m3=1024).
AIHUMMER_EMBEDDER_KEEPALIVE
Keep-alive эмбедэра
text
5m
пасля перазапуску
Колькі мадэль пошуку па сэнсе застаецца загружанай пасля апошняга запыту (толькі ў рэжыме «Па сэнсе»). Па змаўчанні 5m — 5 хвілін: потым мадэль выгружаецца і вызваляе памяць і працэсар. Трымаць заўсёды (-1) не рэкамендуецца: завіслая мадэль можа суткамі займаць ядро працэсара. Фармат: 30s, 5m, 1h.
AIHUMMER_EMBEDDER_MODEL
Мадэль пошуку па сэнсе
text
yxchia/multilingual-e5-base
пасля перазапуску
Мадэль, якая дапамагае шукаць у памяці па сэнсе. Па змаўчанні multilingual-e5-base — разумее рускую, лёгкая і хутка працуе на звычайным працэсары. Для лепшай якасці на відэакарце падыдзе bge-m3, але тады ў суседняй наладзе памернасці ўкажыце 1024: лік павінен супадаць з мадэллю.
AIHUMMER_EMBEDDER_PASSAGE_PREFIX
Прэфікс дакумента эмбедэра
text
—
пасля перазапуску
Перавызначыць прэфікс захаванага дакумента (мадэлі e5 аўтаматычна выкарыстоўваюць «passage: »). Пакіньце пустым для аўтавызначэння па назве мадэлі.
AIHUMMER_EMBEDDER_QUERY_PREFIX
Прэфікс запыту эмбедэра
text
—
пасля перазапуску
Перавызначыць прэфікс пошукавага запыту (мадэлі e5 аўтаматычна выкарыстоўваюць «query: »). Пакіньце пустым для аўтавызначэння па назве мадэлі.
AIHUMMER_EMBEDDER_THREADS
Патокі працэсара эмбедара
int 0…256
0
пасля перазапуску
Колькі патокаў працэсара мадэль пошуку па сэнсе бярэ на адзін запыт. 0 — само: палова патокаў сервера, але не менш за 2. Без мяжы пералік вектараў базы ведаў на слабым серверы гадзінамі займаў увесь працэсар і перашкаджаў адказам агентаў. Больш — пералік хутчэйшы, але нагрузка мацнейшая.
AIHUMMER_MEMORY_AGENT_WRITES
Факты, якія агент захоўвае сам
enum: strangers \\| immediate \\| review
strangers
адразу
Што адбываецца з тым, што агент запамінае сам — напрыклад, па просьбе «запомні». «Адразу ў памяць; ад старонніх — на праверку» (па змаўчанні) — адразу ў памяць, калі гэта сказаў уладальнік або давераны круг агента; ад астатніх — на праверку. «Адразу ў памяць» — агент адразу знойдзе гэта пры пошуку. «На праверку» — спачатку ў чаргу «Памяць → на праверку», у адказы трапляе толькі пасля вашага адабрэння. У картцы агента (Памяць → Налады) можна задаць свой рэжым.
AIHUMMER_MEMORY_AUTOREPAIR
Аўтаматычнае выпраўленне памяці
bool
1
адразу
Пасля самаправеркі выпраўляць памяць: зліваць дублі, закрываць супярэчнасці з яўным пераможцам (пацвярджэнне чалавекам, пазнейшая дата падзеі, больш важкая крыніца), пераправяраць па крыніцах «правераныя» факты, якіх не пацвярджаў чалавек (непацверджаныя ідуць на праверку, нічога не выдаляецца). Спрэчнае — толькі ў чаргу. Кожнае выпраўленне — у журнал з кнопкай адмены; калі пасля праходу памяць знаходзіць горш, праход адкочваецца сам і прыходзіць апавяшчэнне. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_CAPTURE
Рэжым захопу памяці
enum: auto \\| review \\| off
review
адразу
Што рабіць з фактамі, якія агент сам заўважае ў перапісцы пасля кожнага адказу. «На праверку» — у чаргу «Памяць → на праверку»: у адказы яны трапляюць толькі пасля вашага адабрэння. «Адразу ў памяць» — без праверкі: хутчэй, але больш лішняга. «Не захоўваць» — не вымаць факты з перапіскі. Тое, што агент запамінае па просьбе, наладжваецца асобна.
AIHUMMER_MEMORY_CONTEXT_TIMEOUT
Таймаўт падгрузкі памяці
text
3s
адразу
Колькі агент чакае, пакуль знойдуцца адпаведныя ўспаміны, перш чым пачаць адказ. Калі пошук не паспеў, агент адказвае без іх, а не завісае. Напрыклад: 2s — 2 секунды, 1500ms — 1,5 секунды. 0 — чакаць колькі трэба.
AIHUMMER_MEMORY_DIARY_BOOT
Дзённік агента ў пачатку сесіі
bool
1
адразу
На кожным ходзе сесіі на любым канале трымаць перад агентам яго дзённік за сёння і ўчора — нататкі мінулых сесій, начную зводку і запісы самога агента. Паказваюцца толькі запісы пра бягучага суразмоўцу і агульныя (вашы, загружаныя): адзін кліент не бачыць запісаў пра іншага. Не больш за ~6000 знакаў; астатняе агент дачытвае сам (memory_get). Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_DIARY_HOUR
Гадзіна начной зводкі
int
3
адразу
Пасля якой гадзіны (0–23, па часавым поясе інстанса) пісаць зводку за мінулы дзень. Па змаўчанні 3 — уначы, калі размовы дня скончыліся. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_DIARY_NIGHTLY
Начная зводка дня ў дзённік агента
bool
1
адразу
Раз на суткі запісваць у дзённік агента вынік мінулага дня — асобна па кожным суразмоўцу (усе яго каналы разам): што прасілі і што зроблена, дамоўленасці, справы з датамі. Адзін выклік службовай мадэлі на агента і суразмоўцу, не больш за 3 за праход раз на 10 хвілін; прапушчаныя дні даганяюцца да тыдня назад. Размовы з «не запамінай» не бяруцца. Пры выключаным захопе памяці не пішацца. Вынік апошняга праходу відаць у картцы агента → Памяць → Дзённік. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_DREAM_INTERVAL
Інтэрвал праходу «сну»
string
1h
адразу
Як часта самаабслугоўвальны праход dream скануе правераныя сцвярджэнні на супярэчнасці ва ўсіх абласцях (Go duration, напр. 30m/1h/6h). 0 = выключыць. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_EXTRACT
Здабыванне фактаў праз LLM
bool
1
адразу
Здабываць нармалізаваныя факты суб’ект/прэдыкат/аб’ект праз LLM (па змаўчанні УКЛЮЧАНА) замест захавання сырых фрагментаў сказаў — неабходна, каб працавалі механізмы графа/супярэчнасцей/dream. Дадае адзін выклік LLM на кожнае захопленае паведамленне; выключыце, каб зэканоміць выклік. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_MEANING_TIMEOUT
Тэрмін пошуку па сэнсе
text
4s
адразу
Колькі пошук у памяці і ў базе ведаў чакае пошук па сэнсе. Калі мадэль сэнсу занятая (напрыклад, пералічвае вектары пасля імпарту) і не адказала за гэты час, агент адразу атрымлівае знойдзенае па словах з паметкай, а не чакае дзясяткі секунд. Напрыклад: 4s — 4 секунды, 1500ms — 1,5 секунды. 0 — чакаць колькі трэба. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_QUALITY_CHECK
Штодзённая самаправерка памяці
bool
1
адразу
Раз на суткі памяць сама задае сабе кантрольныя пытанні па сваіх пацверджаных фактах (да 60 фактаў, кожны дзень тыя самыя пытанні) і пытанні без адказу, праганяе іх праз пошук памяці і аўтападмешванне і лічыць паўнату, дакладнасць, MRR і ілжывыя падмешванні. Вынік і графік па днях — Памяць → Якасць памяці. Пытанні да новых фактаў адзін раз складае службовая мадэль (тая самая, што разбірае перапіску на факты; без яе — шаблонам); вынікі застаюцца на інстансе. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_RECALL
Аўтаматычнае падмешванне памяці
enum: strong \\| always \\| off
strong
адразу
Ці дадаваць знойдзенае ў памяці да адказу аўтаматычна. «Толькі дакладныя супадзенні» — факт павінен супасці з паведамленнем хаця б па двух важных словах; на прывітанні і «ок» памяць не падцягваецца. «Усё падобнае» — усё, што хоць неяк супала, і звязаныя запісы: больш лішняга. «Не дадаваць» — агент шукае ў памяці сам, калі палічыць патрэбным.
AIHUMMER_MEMORY_RECALL_MAX
Фактаў памяці на адзін адказ
int
5
адразу
Колькі фактаў памяці самае большае падмешваць у адзін адказ (па змаўчанні 5). Пераказы аднаго і таго ж факта лічацца адным. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_RECALL_MIN_SCORE
Мінімальнае супадзенне для аўтападмешвання, %
int
10
адразу
Якую долю значных слоў паведамлення (з улікам іх рэдкасці) факт павінен пакрыць, каб падмяшацца аўтаматычна, у працэнтах. Па змаўчанні 10 — падабрана на рэальнай перапісцы. Больш — радзей і дакладней, менш — часцей і шумней. На яўны пошук memory_search не ўплывае. 0 — без парога: дастаткова двух значных слоў, што супалі. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_RECALL_MIN_SIMILARITY
Мінімальнае падабенства па сэнсе для аўтападмешвання, %
int
86
адразу
Толькі для пошуку памяці па сэнсе (эмбэдэр): наколькі блізкім па сэнсе да паведамлення павінен быць факт, каб падмяшацца аўтаматычна, у працэнтах падабенства. Па змаўчанні 86 — падабрана для мадэлі multilingual-e5-base на рэальнай памяці: ніжэй за парог старонныя факты падмешваюцца амаль да кожнага паведамлення. Іншыя мадэлі (напрыклад, bge-m3) лічаць падабенства інакш — падбярыце значэнне праз «Спытаць памяць» у картцы агента. 0 — без парога. На яўны пошук memory_search не ўплывае. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MEMORY_RETRIEVAL
Рэжым атрымання памяці
enum: fulltext \\| embedding
fulltext
пасля перазапуску
Як агент шукае патрэбнае ў памяці. «Па словах» — звычайны пошук па тэксце: працуе адразу і не нагружае сервер. «Па сэнсе» — знаходзіць блізкае па значэнні, нават сказанае іншымі словамі, але патрэбна мадэль пошуку па сэнсе (раздзел «Дадатковыя службы») і заўважная нагрузка на працэсар.
AIHUMMER_QDRANT_API_KEY
Ключ Qdrant API
text
—
пасля перазапуску
API-ключ Qdrant, калі вектарнае сховішча патрабуе аўтарызацыі. Патрэбны толькі пры зададзеным адрасе Qdrant. Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_QDRANT_URL
URL Qdrant (пастаяннае вектарнае сховішча)
text
—
пасля перазапуску
Адрас сховішча Qdrant для пошуку па сэнсе. Пуста — даныя для пошуку трымаюцца ў памяці і знікаюць пры перазапуску сервера; для сталай працы задайце адрас.
AIHUMMER_RAG_QUERY_EXPANSION
Перафармуляваць запыты да базы ведаў мадэллю
bool
0
адразу
Перад пошукам па базе ведаў прасіць службовую мадэль прыдумаць 3 перафармулёўкі запыту і шукаць па ўсіх. Часам знаходзіць больш, але гэта лішні выклік мадэлі на КОЖНЫ пошук (квота і затрымка); калі мадэль адмовіла, шукаецца толькі зыходная фармулёўка, а адмова відаць у журнале і ў адказе пошуку. Па змаўчанні выключана: словы і так знаходзяцца поўнатэкставым пошукам. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_RERANKER_URL
URL сайдкара пераранжыравання RAG
text
—
пасля перазапуску
HTTP-URL сайдкара крос-энкодэра для пераранжыравання гібрыднага пошуку. Пуста = пераранжыраванне выключана. Ужываецца пры запуску/пасля перазапуску.
Moderation
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_MODERATION
Мадэрацыя ўваходных
bool
1
адразу
«off» адключае ўбудаваную ахову ад jailbreak/prompt-injection. Любое іншае значэнне = уключана. Дзейнічае адразу, перазапуск не патрэбны.
AIHUMMER_MODERATION_REFUSAL
Паведамленне адмовы мадэрацыі
text
—
адразу
Тэкст адмовы, які вяртаецца пры блакіроўцы мадэратарам (пуста = убудаваны). Дзейнічае адразу, перазапуск не патрэбны.
Network
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_OUTBOUND_PROXY_CUSTOM_URL
Выходны проксі: уласны адрас
text
—
адразу
URL проксі HTTPS; HTTP дазволены толькі на loopback, без шляху, запыту і фрагмента. Спачатку захавайце адрас, потым выберыце custom. Адрас схаваны ў API і захоўваецца ў наладах праграмы.
AIHUMMER_OUTBOUND_PROXY_MODE
Выходны проксі для замежных пастаўшчыкоў мадэляў
enum: auto \\| off \\| custom
auto
адразу
Як сервер ходзіць да замежных пастаўшчыкоў мадэляў. «Як у пастаўшчыка» — так, як зададзена ў кабінеце пастаўшчыка; «Напрамую, без проксі» — без пасярэднікаў; «Праз свой проксі» — праз адрас, які вы захавалі ніжэй. Ці працуе гэта, залежыць ад правілаў канкрэтнага пастаўшчыка.
AIHUMMER_RUSSIAN_TRUSTED_EXTRA_HOSTS
Хосты звыш .ru для каранёў Мінцыфры Расіі
list
—
пасля перазапуску
Спіс хастоў праз коску, якім можна правярацца каранямі Мінцыфры Расіі ЗВЕРХ расійскіх даменаў (.ru/.su/.рф – ужо ўключаны). Патрэбен, калі ваш вузел з сертыфікатам Мінцыфры Расіі жыве на іншым дамене. Супадзенне па імені або па мяжы паддамена: example.com пакрывае api.example.com. Пуста = толькі расійскія дамены. Ужываецца пры старце / пасля рэстарту.
Performance
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_CHANNEL_TURN_QUEUE_WAIT_SEC
Чаканне ў чарзе: паведамленне з канала (секунды)
int 10…1200
600
адразу
Колькі паведамленне з канала (Telegram і іншыя) чакае вольнага месца, калі ўсе месцы хадоў занятыя. Не дачакалася — чалавеку прыходзіць паведамленне, што сервер заняты і можна напісаць яшчэ раз. Чаканне ўваходзіць у 30-хвілінную мяжу хода. 10–1200. Дзейнічае адразу.
AIHUMMER_MAX_ACTIVE_TURNS
Хадоў агентаў адначасова (увесь сервер)
int 1…512
32
адразу
Колькі хадоў агентаў (адказы ў каналах і вэб-чаце, расклады) сервер выконвае адначасова. Астатнія чакаюць у чарзе столькі, колькі зададзена ў наладах «Чаканне ў чарзе» ніжэй, і чалавек бачыць «сервер заняты, у чарзе». Больш — менш чакання, але больш памяці, злучэнняў з базай і адначасовых запытаў да мадэлі. Палова гэтага ліку — мяжа адначасовых службовых выклікаў мадэлі (выманне памяці, зводкі). 1–512. Дзейнічае адразу.
AIHUMMER_SYNC_INBOUND_QUEUE_WAIT_SEC
Чаканне ў чарзе: сінхронны выклік інтэграцыі (секунды)
int 1…120
10
адразу
Колькі выклік інтэграцыі, якая чакае адказу ў тым жа запыце, чакае вольнага месца, калі ўсе месцы хадоў занятыя. Не дачакаўся — інтэграцыя атрымлівае «сервер заняты» з парадай паўтарыць праз тую ж колькасць секунд; паўтор з тым жа нумарам паведамлення не запісвае яго другі раз. 1–120. Дзейнічае адразу.
AIHUMMER_WEB_TURN_QUEUE_WAIT_SEC
Чаканне ў чарзе: паведамленне вэб-чата (секунды)
int 10…1200
180
адразу
Колькі паведамленне вэб-чата чакае вольнага месца, калі ўсе месцы хадоў занятыя. Увесь гэты час у чаце відаць «сервер заняты, у чарзе»; не дачакалася — адмова з кнопкай «Паўтарыць», яна застаецца ў гісторыі і пасля перазагрузкі старонкі. 10–1200. Дзейнічае адразу.
Public access
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_PUBLIC_URL
Публічны адрас сервера
text
—
часткова пасля перазапуску
Адрас, па якім панэль і праграмы адкрываюцца з інтэрнэту, напрыклад https://ai.example.com. Накіруйце яго праз свой проксі (nginx, Caddy) на порт сервера — па змаўчанні 8780.
AIHUMMER_WIDGET_ALLOWED_ORIGINS
Вэб-віджэт: дазволеныя origin сайтаў
list
—
адразу
Спіс browser origin праз коску, якім дазволена ўбудоўваць віджэт вэб-чата, напрыклад https://example.com,https://www.example.com. Схема і порт павінны супадаць дакладна. Пуста = ніводзін знешні сайт не можа выкарыстоўваць віджэт. Запіс * наўмысна ігнаруецца, інакш любая старонка ў інтэрнэце магла б расходаваць бюджэт гэтага інстанса.
POCKET_AGENT_GATEWAY_BASE_URL
Публічны URL шлюза pocket-agent
text
—
адразу
Праксіруйце → на порт шлюза pocket-agent (POCKET_AGENT_PORT, па змаўчанні 8080). Аддалены агент падключаецца сюды па аднаразовым тыкеце.
TELEGRAM_PUBLIC_URL
Публічны URL вебхука Telegram
text
—
адразу
Толькі для рэжыму webhook — праксіруйце → на порт telegram-connector (па змаўчанні 8091). Пакіньце пустым для рэжыму polling (публічны URL не патрэбны).
Уліковы запіс для пачатковага пошукавага bind, напр. CN=svc-aihummer,OU=Service,DC=corp,DC=example. Пуста = ананімны пошук.
AIHUMMER_LDAP_DEFAULT_ROLE
LDAP: Прадвызначаная роля (няма супадзення груп)
text
—
пасля перазапуску
Роля, якая выдаецца, калі ніводная група не супадае з мапінгам. Пуста = без ролі.
AIHUMMER_LDAP_ENABLED
Уключыць уваход праз LDAP/AD
bool
0
пасля перазапуску
Калі ўключана, уваходы адміністратараў адкочваюцца на каталог. Пароль прывязкі захоўваецца ў Secrets (scope ldap, name bind_password).
AIHUMMER_LDAP_GROUP_ATTR
Атрыбут групы (прадвызначана memberOf)
text
—
пасля перазапуску
Атрыбут запісу карыстальніка, які пералічвае DN груп. Пуста адключае мапінг група→роля.
AIHUMMER_LDAP_ROLE_MAPPINGS
LDAP: Супастаўленне груп → роляў (JSON)
text
—
пасля перазапуску
JSON-аб’ект DN групы (або простага CN) → роля, напр. {\“CN=Admins,OU=Groups,DC=corp,DC=example\”:\“admin\”,\“Operators\”:\“operator\”}.
AIHUMMER_LDAP_SKIP_TLS_VERIFY
Прапускаць праверку TLS (толькі для лабараторыі, 1/0)
bool
0
пасля перазапуску
Адключае праверку сертыфіката каталога. Ніколі не ўключайце ў прадакшэне.
AIHUMMER_LDAP_URL
Каталог URL
text
—
пасля перазапуску
напр. ldaps://ad.corp.example:636 (TLS) або ldap://dc1.corp.example:389.
AIHUMMER_LDAP_USER_ATTR
Атрыбут логіна (прадвызначана sAMAccountName)
text
—
пасля перазапуску
Атрыбут LDAP/Active Directory, які супастаўляецца з логінам, што ўводзіць карыстальнік (па змаўчанні sAMAccountName; uid для OpenLDAP, userPrincipalName для логінаў у стылі UPN).
AIHUMMER_LDAP_USER_FILTER
Фільтр пошуку карыстальнікаў
text
—
пасля перазапуску
Мусіць змяшчаць %s для логіна. AD: (sAMAccountName=%s); OpenLDAP: (uid=%s).
SSO (OIDC)
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_OIDC_AUDIENCE
Аўдыторыя OIDC
text
—
пасля перазапуску
Чаканы claim aud — задайце audience ГЭТАГА рэсурсу, каб адхіляць токены, выпушчаныя для іншага боку. Claim aud цяпер АБАВЯЗКОВЫ ў кожным токене па змаўчанні (токен без aud адхіляецца); калі гэта зададзена, aud мусіць таксама яго змяшчаць. Настойліва рэкамендуецца ў прадакшэне.
Публічны сертыфікат подпісу SP (PEM). Адпаведны прыватны ключ змяшчаецца ў Secrets (scope saml, name sp_key).
Schedules
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_SCHEDULE_AGENT_MAX_ACTIVE
Агент: ліміт актыўных раскладаў
int
20
адразу
Колькі актыўных раскладаў можа быць у аднаго агента, калі ён сам стварае або ўключае расклад (сваімі інструментамі раскладаў). Расклады з панэлі ўваходзяць у лік, але панэлі не адмаўляюць. На ліміце агент атрымлівае адмову з просьбай спачатку прыпыніць або выдаліць адзін. Дзейнічае адразу.
AIHUMMER_SCHEDULE_AGENT_MAX_FIRES_PER_DAY
Агент: запускаў раскладаў за суткі
int
288
адразу
Колькі разоў за суткі (па UTC) могуць спрацаваць усе расклады аднаго агента разам, уключаючы расклады з панэлі і ручныя запускі. Запускі звыш ліміту прапускаюцца і бачныя ў журнале запускаў. Дзейнічае адразу.
AIHUMMER_SCHEDULE_AGENT_MIN_INTERVAL_MINUTES
Агент: мінімальны інтэрвал раскладу, хвіліны
int
5
адразу
Найкарацейшы прамежак паміж двума запускамі паўторнага раскладу, які агент стварае або мяняе сам. Больш частый расклад адхіляецца. Расклады з панэлі гэтым не абмежаваныя. Дзейнічае адразу.
AIHUMMER_SCHEDULE_COMMANDS
Каманды на серверы ў раскладах
bool
0
адразу
Дазваляе раскладу запускаць праграму на гэтым серверы — зборшчык, справаздачу, праверку рэзервовай копіі. Па змаўчанні выключана. Выконваюцца толькі каманды з «Дазволеных каманд», дакладна як запісаныя; абалонкі няма. Вывад ідзе агенту або проста ў чат, кожны запуск бачны ў журнале запускаў задання. Дзейнічае адразу.
AIHUMMER_SCHEDULE_COMMANDS_ALLOWLIST
Дазволеныя каманды
argvlist
—
адразу
Дакладныя каманды, якія можа запускаць расклад: праграма (імя, напрыклад df, або поўны шлях) і яе аргументы. Расклад запускае толькі каманду, што цалкам супадае з запісам разам з аргументамі. Выдаленая каманда спыняе заданні, якія яе выкарыстоўваюць, і іх запускі называюць прычыну. Дзейнічае адразу.
AIHUMMER_SCHEDULE_COMMANDS_MAX_OUTPUT_KB
Мяжа вываду каманды раскладу, КБ
int 1…1024
64
адразу
Колькі вываду каманды (1–1024 КБ) захоўваецца ў журнале запускаў і перадаецца агенту або ў чат; астатняе адразаецца, і журнал пра гэта кажа. Дзейнічае адразу.
AIHUMMER_SCHEDULE_COMMANDS_SANDBOX
Запускаць каманды раскладаў у пясочніцы АС
bool
1
адразу
Уключана: каманда ідзе ў пясочніцы АС, як запуск кода, — сакрэты ўсталявання і ключы SSH схаваныя, пісаць можна толькі ў сваю часовую папку. Без пясочніцы (bubblewrap) на серверы каманда не запускаецца, і журнал запускаў кажа чаму. Выключана: каманда ідзе з правамі шлюза. Дзейнічае адразу.
AIHUMMER_SCHEDULE_FAILURE_ADMIN
Паведамляць адміністратару пра збоі заданняў
bool
1
адразу
Калі заданне па раскладзе не выканалася або не змагло пачацца, у званочку панэлі з’яўляецца апавяшчэнне з назвай задання, прычынай і тым, дзе гэта выправіць, і тое ж ідзе ўладальнікам у іх асабістыя чаты каналаў (не часцей за раз на 6 гадзін на заданне). Гэта ў дадатак да паведамлення атрымальніку задання. Выключана — адміністратар даведваецца пра збоі толькі з журнала запускаў. Дзейнічае адразу.
AIHUMMER_SCHEDULE_FAILURE_NOTIFY
Паведамляць атрымальніку пра збой задання
bool
1
адразу
Калі заданне па раскладзе не выканалася, таму ж атрымальніку ідзе кароткае паведамленне (пасля першага збою, не часцей за раз у 6 гадзін). Выключана — збоі бачныя толькі ў журнале запускаў. Для асобнага задання гэта можна выключыць у яго форме. Дзейнічае адразу.
Security
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_AIRGAPPED
Ізаляваны рэжым (без інтэрнэту)
bool
0
адразу
Забараняе агентам хадзіць у інтэрнэт: вэб-пошук, адкрыццё старонак і запыты ідуць толькі да ўнутраных адрасоў і адрасоў са спісаў дазволеных. Уключайце для закрытых контураў без выхаду вонкі.
AIHUMMER_AUDIT_RETENTION_DAYS
Колькі дзён захоўваць журнал дзеянняў
int
0
пасля перазапуску
Запісы аўдыт-лога і гісторыі змяненняў налад, старэйшыя за гэты тэрмін, выдаляюцца раз на суткі. 0 або пуста — захоўваць заўсёды.
AIHUMMER_CORS_ORIGINS
Дазволеныя Origin для CORS
list
—
пасля перазапуску
Спіс дазволеных Origin праз коску. Пуста = CORS не дазволены (толькі same-origin). Ужываецца пры запуску/пасля перазапуску.
Перавызначае загаловак CSP. Пуста = бяспечнае змаўчанне. Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_INBOUND_SECRET
Ключ сувязі плагінаў каналаў з серверам
text
—
пасля перазапуску
Ім падключаныя каналы (Telegram, VK і іншыя) пацвярджаюць, што паведамленні прыйшлі менавіта ад іх. Задаецца аўтаматычна пры ўсталёўцы — мяняць не трэба. Калі ён пусты, сервер адхіляе ўсе каналы, пакуль ключ не зададзены.
AIHUMMER_OPENAI_COMPAT_KEY
OpenAI-сумяшчальны ўваход: статычны API-ключ
text
—
пасля перазапуску
Агульны ключ для праграм, якія падключаюцца да сервера як да OpenAI-сумяшчальнага сэрвісу. Пуста — агульны ключ выключаны; падключацца можна персанальнымі ключамі са старонкі «Ключы API».
AIHUMMER_OPENAI_COMPAT_WORKSPACE
OpenAI-сумяшчальны ўваход: ID працоўнай прасторы
text
—
пасля перазапуску
ID працоўнай прасторы, у якую мапіцца статычная OpenAI-сумяшчальная аўтэнтыфікацыя. Пуста = AIHUMMER_DEFAULT_WORKSPACE_ID. Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_REQUIRE_2FA
Патрабаваць 2FA для аператараў
bool
0
адразу
Патрабаваць другі фактар (TOTP/passkey) для аператараў. Калі ўключана, аператарам без 2FA пры ўваходзе прапануецца адразу яго наладзіць (без блакіроўкі, каб уладальнік ніколі не застаўся замкнёным звонку). Ужываецца адразу.
AIHUMMER_REQUIRE_SECURE
Прымаць толькі абароненыя злучэнні (HTTPS/WSS)
bool
0
пасля перазапуску
Калі ўключана, звычайныя HTTP-запыты перанакіроўваюцца на HTTPS (для GET/HEAD) або адхіляюцца (403); доступ з localhost заўсёды дазволены, каб не адрэзаць аператара. Улічвае X-Forwarded-Proto ад зваротнага проксі, які завяршае TLS. Ужываецца пры запуску/пасля перазапуску.
AIHUMMER_TRUSTED_PROXIES
Давераныя проксі
list
—
адразу
Калі перад серверам стаіць проксі (nginx, Caddy, балансавальнік), упішыце праз коску яго адрас або сетку, напрыклад 10.0.0.0/8. Тады ў журнале дзеянняў, спісе дазволеных IP і абароне ад падбору пароля будзе бачны сапраўдны адрас наведвальніка. Пуста — улічваецца толькі адрас прамога падключэння, і падмяніць яго нельга.
Tools
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_BROWSER_ALLOWED_HOSTNAMES
Браўзер: выключэнні прыватных вузлоў
list
—
адразу
Дакладныя імёны праз коску, без шаблонаў, URL і партоў. Дадатковыя прыватныя выключэнні для native CDP на ўласным серверы, асобна ад web_fetch.
AIHUMMER_BROWSER_ALLOW_PRIVATE_NETWORK
Браўзер: доступ да прыватнай сеткі
bool
—
адразу
Пустое значэнне захоўвае ранейшую палітыку; true або false ўключае правяраны native CDP. Прыватны доступ толькі на ўласным серверы. Loopback, link-local і metadata застаюцца закрытымі.
AIHUMMER_BROWSER_PROFILE_SOCKET
Сокет кіравання профілямі браўзера
text
—
адразу
Неабавязкова. Пуста — шлюз сам знаходзіць кіравальны сокет managed-profiles.sock службы браўзера ў стандартным месцы ўсталявання. Профілі з уваходам на сайты ствараюцца на старонцы «Падключэнні» → «Профілі браўзера». Не URL і не шлях да зыходнага профілю.
AIHUMMER_CODE_EXEC
Выкананне кода агентам
enum: off \\| host \\| sandbox
off
адразу
Інструмент выканання кода агента (code_exec). «Выключана» — па змаўчанні. «На гэтым серверы» — каманды ідуць на серверы шлюза: пясочніца АС (bubblewrap) хавае сакрэты ўсталёўкі, але агенту ў рэжыме «Без абмежаванняў» бачныя ключы SSH і запіс па-за яго папкай; толькі для давернага сервера. «Толькі ў пясочніцы» — заўсёды ў пясочніцы АС: сакрэты і ключы схаваныя, запіс толькі ў папку агента; без bubblewrap (або вобраза кантэйнера) гэты рэжым не захоўваецца. Што можа запускаць кожны агент, задаецца ў агента: «Агенты → профіль → Інструменты».
TCP-парты, да якіх можа падлучацца код агента ў пясочніцы АС (выкананне кода і каманды раскладаў), праз коску. Па змаўчанні 53, 80 і 443: DNS і сайты. Астатнія службы гэтага сервера і яго лакальнай сеткі (база, панэль, браўзер, adb, лакальныя мадэлі, Home Assistant) закрытыя для кода агента. Порт са спіса адкрыты на любым адрасе, у тым ліку на гэтым серверы, таму дадавайце толькі тое, што патрэбна коду, — напрыклад, 22 для SSH. Напішыце any, каб зняць абмежаванне. Агентаў у рэжыме «Без абмежаванняў» яно не тычыцца. Патрэбны Linux 6.7 або навейшы; без яго абмежаванне не дзейнічае, і пра гэта сказана ў «Агенты → Інструменты». Дзейнічае адразу.
AIHUMMER_CODE_EXEC_READ_DIRS
Каталогі, адкрытыя коду агента для чытання
list
—
адразу
Каталогі гэтага сервера, якія можа чытаць код агента: выкананне кода і каманды раскладаў у пясочніцы АС. Праз коску або па адным у радку, напрыклад ~/reports. Можна ўказаць і асобны файл, напрыклад ~/scripts/report.py. Адкрытае тут бачна коду ўсіх агентаў, таму адкрывайце толькі тое, што патрэбна коду. Па змаўчанні пуста: у пясочніцы код бачыць толькі папку свайго агента і сістэмныя каталогі; хатні каталог карыстальніка шлюза, даныя ўстаноўкі, папкі іншых агентаў, ключы і гісторыя каманд схаваныя. Корань, увесь хатні каталог, даныя ўстаноўкі і месцы з ключамі адкрыць нельга. Пісаць у гэтыя каталогі код не можа. Дзейнічае адразу.
AIHUMMER_CODE_EXEC_SANDBOX_IMAGE
Вобраз пясочніцы code-exec
text
—
адразу
Неабавязкова, толькі для рэжыму «Толькі ў пясочніцы»: вобраз кантэйнера Docker замест пясочніцы АС (без сеткі, корань толькі для чытання, ліміты); патрэбны Docker на серверы. Пуста = пясочніца АС (bubblewrap).
AIHUMMER_CODE_EXEC_TIMEOUT_SECONDS
Ліміт часу выканання кода (секунды)
int
1800
адразу
Колькі можа працаваць адна каманда агента, уключаючы фонавыя: ад 10 секунд да 24 гадзін. Каманда, якая не адказала за 30 секунд, не абрываецца, а сыходзіць у фон — агент правярае яе інструментам process. Агент можа папрасіць меншы тэрмін, але не большы.
AIHUMMER_DB_QUERY_DSN
Падключэнне да базы для інструмента «Запыт да базы»
text
—
адразу
Радок падключэння да базы даных, якую агент можа чытаць (толькі чытанне), напрыклад postgres://reader:пароль@host/db. Укажыце карыстальніка з мінімальнымі правамі — не ўладальніка базы. Пуста — інструмент выключаны.
AIHUMMER_FS_ROOT
Корань для інструмента файлавай сістэмы
text
—
адразу
Каталог, у межах якога агент чытае файлы сервера (filesystem_read; запісваць файлы агент не можа). Пуста = увесь сервер з правамі карыстальніка шлюза, акрамя сакрэтаў: налад усталёўкі (gateway.env), ключоў SSH/GPG і асяроддзя працэсаў. Каб звузіць доступ, пакажыце каталог.
AIHUMMER_HTTP_ALLOWLIST
Адрасы для HTTP-запытаў агента
list
—
адразу
Спіс хостаў праз коску, да якіх можа звяртацца інструмент http_request. Пуста = дазволены ўсе, акрамя ўнутраных і прыватных адрасоў.
AIHUMMER_HTTP_AUTH_JSON
Аўтарызацыя http_request (JSON)
text
—
адразу
JSON-карта адпаведнасці хоста загалоўкам аўтарызацыі для інструмента http_request, каб не захоўваць токены ў промпце. Пуста = без аўтарызацыі.
AIHUMMER_MCP_SERVERS
Серверы MCP (JSON)
text
—
адразу
JSON-апісанне знешніх MCP-сервераў, чые інструменты падключаюцца да агента. Пуста = знешніх MCP няма.
AIHUMMER_PROJECT_STUDIOS_PUBLIC_NETWORK
Студыі праектаў: публічная сетка
bool
false
адразу
Дазволіць публічны HTTP(S) для выбраных пастаўшчыкоў і яўна запытаных загрузак мадэляў. Прыватныя, лакальныя і метададзеныя адрасы застаюцца заблакаванымі. Аўтаномны рэжым мае прыярытэт. Ужываецца адразу.
AIHUMMER_SIDECAR_CLOAKBROWSER
Браўзер для агента (CloakBrowser)
bool
0
адразу
Антыдэтэкт-браўзэр (CloakBrowser, прылады browser/computer). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~477 МіБ, з іх Chromium ~207 МіБ) і ставіць службу на хост. Самы цяжкі з сайдкараў - уключайце, толькі калі агенту трэба адкрываць сайты.
AIHUMMER_SIDECAR_SEARXNG
Вэб-пошук (SearXNG)
bool
0
адразу
Вэб-пошук (SearXNG, прылада web_search). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~154 МіБ) і ставіць службу на хост, выключэнне спыняе яе і вызваляе месца. Ўстаноўка ідзе ў фоне і займае некалькі хвілін; стан тут паказвае, што рэальна стаіць на серверы.
AIHUMMER_WEBFETCH_ALLOWLIST
Сайты, якія агент можа адкрываць
list
—
адразу
Спіс дамёнаў праз коску, да якіх можа звяртацца інструмент web_fetch. Пуста = дазволены ўсе, акрамя ўнутраных і прыватных адрасоў.
AIHUMMER_WEB_SEARCH_LANGUAGE
Вэб-пошук: мова вынікаў па змаўчанні
text
auto
адразу
Мова вынікаў, калі агент яе не назваў: код мовы (ru, en, de…) або auto — вызначыць па самім запыце (падыходзіць амаль заўсёды). Агент можа папрасіць іншую мову ў канкрэтным пошуку.
AIHUMMER_WEB_SEARCH_RESULTS
Вэб-пошук: вынікаў за адзін пошук
int
5
адразу
Колькі вынікаў вяртае пошук, калі агент не папрасіў іншую колькасць: ад 1 да 10. Больш вынікаў — паўнейшы адказ, але даўжэйшы кантэкст.
AIHUMMER_WEB_SEARCH_SOURCE
Крыніца вэб-пошуку
enum: auto \\| searxng \\| provider
auto
адразу
Адкуль агент шукае ў інтэрнэце (інструмент web_search). auto — SearXNG, калі ён усталяваны, інакш убудаваны пошук пастаўшчыка мадэлі. searxng — толькі SearXNG: без яго пошуку няма. provider — убудаваны пошук пастаўшчыка там, дзе ён ёсць, а SearXNG — для астатніх мадэляў. Убудаваны пошук ёсць у Codex (падпіска ChatGPT) і OpenAI (api.openai.com); у GigaChat, YandexGPT і іншых OpenAI-сумяшчальных яго няма — без SearXNG агенты на гэтых мадэлях не шукаюць. Claude (api.anthropic.com і падпіска Claude) шукае ўбудаваным пошукам Anthropic; калі ўліковы запіс яго адхіляе, шлюз піша пра гэта ў журнал і далей прапануе агенту толькі SearXNG. Каму з агентаў можна шукаць, задаецца ў картцы агента, як і раней. Дзейнічае з наступнага ходу.
AIHUMMER_WEB_SEARCH_TIMEOUT_SECONDS
Тэрмін вэб-пошуку (секунды)
int
30
адразу
1–600 секунд на пошук. Карацейшы тэрмін задачы застаецца ў сіле.
Updates
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_RESTART_APPLY
Прымяняць налады, якім патрэбны перазапуск
enum: quiet \\| manual
quiet
адразу
quiet (па змаўчанні) — захаваныя налады, якія ўступаюць у сілу толькі з новым запускам шлюза, прымяняюцца самі: шлюз перазапускаецца ў бліжэйшы ціхі момант, калі агенты нічога не робяць і людзі маўчаць не менш за акно цішыні. manual — толькі пазнака «чакае перазапуску» і кнопка. Перазапуск доўжыцца некалькі секунд; размовы і задачы не губляюцца. Дзейнічае адразу.
AIHUMMER_RESTART_QUIET_MINUTES
Ціхі момант: хвілін цішыні перад аўтаматычным перазапускам
int 0…1440
10
адразу
Колькі хвілін людзі павінны маўчаць (а агенты нічога не рабіць), каб шлюз сам перазапусціўся і прымяніў захаваныя налады. 0 — як толькі агенты скончаць бягучую працу. 0–1440. Дзейнічае адразу.
Web UI (separate port)
Ключ
Назва
Тып
Па змаўчанні
Калі дзейнічае
Што робіць
AIHUMMER_WEBUI_API_BASE
Адрас сервера для асобна размешчанай панэлі
text
—
пасля перазапуску
Патрэбны, толькі калі панэль адкрываецца не з таго ж адраса, што і сам сервер. Укажыце адрас, па якім браўзер дастукаецца да сервера, напрыклад https://api.example.com. Пуста — выкарыстоўваецца публічны адрас сервера, а калі яго няма — лакальны.
AIHUMMER_WEBUI_ENABLED
Панэль на асобным порце
bool
1
пасля перазапуску
Уключана — панэль адкрываецца на асобным унутраным порце, які можна закрыць ад інтэрнэту, а публічны порт абслугоўвае толькі праграмы і каналы. Выключыце, каб панэль была зусім недаступная.
AIHUMMER_WEBUI_ORIGIN
Адрас, па якім адкрываюць панэль
text
—
пасля перазапуску
Запоўніце, калі панэль адкрываюць праз проксі або па імені, якое адрозніваецца ад адраса яе порта, напрыклад https://admin.example.com. Сервер дазволіць браўзеру з гэтага адраса звяртацца да яго. Пуста — бярэцца адрас порта панэлі.
Налад, даступных аператару: 237.
Тут пералічаны ўсе налады, якія аператар можа змяніць на серверы AiHummer. Старонка збіраецца з каталога самога прадукту, таму супадае з вашым серверам.
Значэнне задаецца ў вэб-інтэрфейсе або камандай `aihummer settings set KEY VALUE` ([Камандны радок](/be/v1.4/reference/cli/)). У калонцы значэння па змаўчанні — тое, што выкарыстоўвае сервер, пакуль сваё значэнне не зададзена.
> [!NOTE]
> Значэнні сакрэтаў тут не друкуюцца, а службовыя ключы вытворцы не пералічаны зусім — прадукт хавае іх з усіх спісаў. Працяжнік азначае пустое значэнне або тлумачэнне, якое паказваецца толькі ў вэб-інтэрфейсе.
## API
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_PERSONAL_API_KEYS` | Персанальныя API-ключы для OpenAI-сумяшчальнага API | `bool` | `1` | пасля перазапуску | «off» адключае аўтэнтыфікацыю па персанальных ключах на OpenAI-сумяшчальным эндпойнце. Любое іншае значэнне = уключана. Ужываецца пры запуску/пасля перазапуску. |
## Agent
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AGENT_ANNOUNCE_SLOW_TOOLS` | Агент: папярэджваць пра доўгія дзеянні | `bool` | `1` | адразу | Перад доўгім дзеяннем (малюнак, глыбокі пошук, відэа, даручэнне субагенту) агент коратка піша, што робіць, каб чаканне не было маўклівым. Выключыце, калі такія паведамленні замінаюць. |
| `AIHUMMER_AGENT_COMPACT_AT_PCT` | Агент: сціскаць гісторыю пры запаўненні, % яе месца | `int 50…99` | `85` | адразу | Калі гісторыя размовы зойме столькі працэнтаў адведзенага ёй месца ў акне мадэлі, старыя рэплікі згортваюцца ў зводку — фонам, пасля адказу, ход не чакае. Ніжэй — сцісканне часцей, але мадэль даслоўна памятае менш; вышэй — радзей, але хады цяжэйшыя. 50–99; у агента можна задаць сваё значэнне. |
| `AIHUMMER_AGENT_COMPACT_TO_PCT` | Агент: пакідаць пасля сціскання, % месца гісторыі | `int 10…90` | `50` | адразу | Колькі працэнтаў месца гісторыі застаецца даслоўным пасля сціскання; усё старэйшае ідзе ў зводку. Павінна быць ніжэй за парог сціскання: запас паміж імі — колькі ходаў пройдзе да наступнага сціскання. 10–90; у агента можна задаць сваё значэнне. |
| `AIHUMMER_AGENT_HISTORY_TURNS` | Агент: хады размовы, якія захоўваюцца даслоўна | `int 1…1000` | `30` | адразу | Колькі апошніх ходаў размовы мадэль бачыць даслоўна (да 10 больш, пакуль не пара сціскаць). Больш раннія паведамленні згортваюцца ў зводку ў фоне; сама размова ніколі не выдаляецца. Акно кантэксту мадэлі ўлічваецца аўтаматычна. 1–1000; у агента можна задаць сваё значэнне. |
| `AIHUMMER_AGENT_MAX_ITERATIONS` | Агент: максімум крокаў інструментаў за ход | `int 1…256` | `25` | адразу | Колькі разоў за адзін ход агент можа выклікаць інструменты, перш чым адказаць. На ліміце ход не падае: агент паведамляе, што зроблена і што засталося, і яго можна папрасіць працягнуць. Тры аднолькавыя выклікі запар з адным і тым жа вынікам спыняюць ход раней. 1–256; у агента можна задаць сваё значэнне. |
| `AIHUMMER_AGENT_MEMORY_FLUSH` | Агент: захоўваць нататку ў памяць перад сцісканнем | `bool` | `1` | адразу | Перш чым згарнуць старыя паведамленні ў зводку, агент запісвае ў памяць кароткую нататку пра мэты, рашэнні і незакрытыя справы. Выключыце, каб не марнаваць выклік мадэлі. |
| `AIHUMMER_AGENT_MEMORY_FLUSH_PROMPT` | Агент: што запісваць у нататку перад сцісканнем | `text` | — | адразу | Сваё заданне для нататкі перад сцісканнем: што захаваць з рэплік, якія ідуць у зводку (напрыклад, «запісвай толькі пакупкі, тэрміны і дамоўленасці»). Пуста — убудаванае: мэты, рашэнні, незакрытыя справы. Абарона не адключаецца: тэкст размовы застаецца данымі, а не ўказаннямі, паролі і ключы не запісваюцца. Да 4000 знакаў; у агента можна задаць сваё. |
| `AIHUMMER_AGENT_NEW_REMINDERS_MEMORY` | Новыя агенты: напаміны і запіс у памяць | `bool` | `1` | адразу | Новы агент, створаны ўручную (майстар першага запуску, «Стварыць агента», API), з першага ходу сам ставіць, мяняе і адмяняе СВАЕ напаміны і расклады і сам запісвае факты ў сваю памяць — як шаблон асабістага памочніка. Асобнаму агенту гэта выключаецца ў картцы («Магчымасці»). Шаблоны бібліятэкі задаюць сваё, копія агента нясе правы арыгінала, агенты, створаныя іншым агентам, пачынаюць без гэтых правоў; існуючыя агенты не мяняюцца. Дзейнічае для наступнага створанага агента. |
| `AIHUMMER_AGENT_PROMPT_PART_MAX_CHARS` | Агент: мяжа сімвалаў на частку промпта | `int 1000…1000000` | `20000` | адразу | Колькі сімвалаў мадэль атрымлівае ад АДНОЙ часткі асобы агента: раздзела профілю, часткі промпта або асноўнага промпта. У даўжэйшай частцы захоўваюцца пачатак (3/4) і канец (1/4) з пазнакай, колькі абрэзана; гэта відаць у картцы размовы і ў складзе промпта агента. Імя, зварот і абмежаванні персоны не абразаюцца ніколі. 1000–1000000; для агента можна задаць сваё значэнне. |
| `AIHUMMER_AGENT_PROMPT_TOTAL_MAX_CHARS` | Агент: агульная мяжа сімвалаў асобы | `int 1000…2000000` | `60000` | адразу | Агульная мяжа асобы агента: усе часткі разам. Калі яна перавышана, месца саступаюць найдаўжэйшыя часткі, кароткія застаюцца цэлымі. 1000–2000000; для агента можна задаць сваё значэнне. |
| `AIHUMMER_AGENT_SELF_INTRO` | Агент: прадстаўляцца | `enum: first_contact \\\| each_dialog \\\| never` | `first_contact` | адразу | «Адзін раз, пры першым знаёмстве» — агент коратка прадстаўляецца ў самай першай размове з чалавекам, калі той не просіць адразу да справы; знаёмаму чалавеку нанова не прадстаўляецца і адказвае на прывітанне натуральна. «Не прадстаўляцца» — агент ніколі не называе сябе сам. «На пачатку кожнай новай размовы» — на пачатку кожнай новай размовы і пасля доўгай паўзы, коратка і без зводкі мінулых спраў. У агента можа быць свой выбар у картцы («Кантэкст і паводзіны»). |
| `AIHUMMER_AGENT_SESSION_IDLE_RESET_MINUTES` | Агент: пачынаць размову нанова пасля цішыні (хвіліны) | `int 0…525600` | `360` | адразу | Для рэжымаў «пасля цішыні» і «кожны дзень і пасля цішыні»: калі чалавек піша пасля цішыні, даўжэйшай за гэтую, агент пачынае размову нанова. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё значэнне. 0 — не па цішыні. 0–525600; 360 = 6 гадзін, 1440 = суткі. |
| `AIHUMMER_AGENT_SESSION_INDEX_MAX_ENTRIES` | Агент: трымаць у спісе не больш за столькі сеансаў | `int 0…100000` | `0` | адразу | Першымі сыходзяць самыя ціхія; нічога не выдаляецца. 0 — без мяжы. 0–100000. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё. |
| `AIHUMMER_AGENT_SESSION_INDEX_PRUNE_DAYS` | Агент: прыбіраць са спіса сеансаў пасля столькіх дзён цішыні | `int 0…3650` | `0` | адразу | Нічога не выдаляецца: размова сыходзіць са спіса і вяртаецца з новым паведамленнем. 0 — не прыбіраць. 0–3650. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё. |
| `AIHUMMER_AGENT_SESSION_RESET_AT_HOUR` | Агент: гадзіна штодзённага пачатку нанова | `int 0…23` | `4` | адразу | Для рэжымаў «кожны дзень»: размова, пачатая раней за гэтую гадзіну, з наступнай рэплікі чалавека пачынаецца нанова. Гадзіна — па часавым поясе сервера (налада «Часавы пояс» у «Сістэме і наладах»). 0–23; 4 — ноччу, калі амаль ніхто не піша. |
| `AIHUMMER_AGENT_SESSION_RESET_GROUP_IDLE_MINUTES` | Агент: пачынаць агульны чат нанова пасля цішыні (хвіліны) | `int 0…525600` | `0` | адразу | Для агульных чатаў у рэжымах «пасля цішыні» і «кожны дзень і пасля цішыні»: колькі хвілін цішыні, пасля якіх агульны чат пачынаецца нанова. 0 — як для асабістых чатаў. 0–525600. |
| `AIHUMMER_AGENT_SESSION_RESET_GROUP_MODE` | Агент: калі агульны чат пачынаецца нанова | `enum: inherit \\\| daily \\\| idle \\\| both \\\| none` | `inherit` | адразу | Асобнае правіла для агульных чатаў (групы Telegram, гутаркі VK, чаты MAX і іншыя): як для асабістых, кожны дзень у гадзіну скіду, пасля цішыні, што настане раней, або ніколі. Гадзіна скіду — агульная. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё правіла. |
| `AIHUMMER_AGENT_SESSION_RESET_MODE` | Агент: калі размова пачынаецца нанова | `enum: idle \\\| daily \\\| both \\\| none` | `idle` | адразу | Калі агент пачынае размову нанова: кожны дзень у гадзіну скіду (па часавым поясе з налад), пасля цішыні, што настане раней, або ніколі. Пачынаючы нанова, агент піша ў сваю памяць нататку пра мінулую размову, а першы ход атрымлівае ранейшую зводку і апошнія рэплікі; самі рэплікі застаюцца ў архіве і ў пошуку. Дзейнічае для агентаў, у якіх у картцы няма свайго правіла; там для агульных чатаў можна задаць асобнае. |
| `AIHUMMER_AGENT_SESSION_SCOPE` | Агент: куды складваюцца асабістыя размовы | `enum: chat \\\| per-channel-peer \\\| per-peer` | `chat` | адразу | «Адна на чалавека» зводзіць Telegram, праграму і іншыя асабістыя чаты аднаго чалавека ў адну размову. Агульныя чаты заўсёды застаюцца сваімі. Дзейнічае з наступнага паведамлення. Дзейнічае для агентаў, у якіх у картцы не зададзена сваё. |
| `AIHUMMER_AGENT_SILENT_REPLY` | Агент: можа прамаўчаць | `enum: groups \\\| all \\\| off` | `groups` | адразу | У агульных чатах агент можа прамаўчаць, калі паведамленне адрасавана не яму або яму няма чаго дадаць; у асабістай перапісцы ён адказвае заўсёды. Можна дазволіць маўчанне і ў асабістай перапісцы або выключыць яго. Ход, у якім агент прамаўчаў, нічога не адпраўляе, у картцы размовы ён пазначаны «агент прамаўчаў», а мадэль не бачыць яго ў гісторыі. Дзейнічае з наступнага ходу. |
| `AIHUMMER_AGENT_SKILLS_PROMPT_MAX_CHARS` | Агент: мяжа сімвалаў спісу навыкаў у промпце | `int 1000…200000` | `18000` | адразу | У кожным ходзе мадэль бачыць не тэксты навыкаў, а іх спіс: ідэнтыфікатар, назву і калі ўжываць; інструкцыю навыка агент загружае сам, калі задача падыходзіць. Калі спіс даўжэйшы, спачатку прыбіраюцца апісанні, потым хвост спісу — астатнія навыкі агент знойдзе па запыце. 1000–200000. |
| `AIHUMMER_AGENT_STALE_GAP_HOURS` | Агент: перапынак, пасля якога мінулая размова — гісторыя (гадзіны) | `int 0…8760` | `12` | адразу | Калі чалавек піша пасля перапынку, даўжэйшага за гэты, агент атрымлівае пазнаку: усё, што абмяркоўвалася раней, — гісторыя, яе не пераказваюць і ранейшыя задачы не працягваюць без просьбы. Кожнае паведамленне і так нясе час і колькі прайшло з папярэдняга. 0 — не пазначаць. 0–8760. |
| `AIHUMMER_AGENT_TOOL_HISTORY_TURNS` | Агент: хады, у якіх помняцца вынікі інструментаў | `int 0…100` | `5` | адразу | Колькі апошніх хадоў мадэль бачыць выклікі інструментаў і іх вынікі цалкам (вынік — да 16 КБ). У старэйшых хадах застаюцца выклік і пачатак выніку. Так агент памятае, што знайшоў і што зрабіў, а не выклікае інструменты зноў. 0 — не пераносіць вынікі ў наступныя хады. 0–100; у агента можна задаць сваё значэнне. |
| `AIHUMMER_APPROVAL_TOOLS` | Інструменты, якія патрабуюць пацвярджэння | `multiselect` | — | адразу | Спіс інструментаў праз коску, выклік якіх патрабуе ручнога пацвярджэння аператарам перад выкананнем. Пуста = пацвярджэнне не патрабуецца. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_SUBAGENT_MAX_DEPTH` | Максімальная глыбіня суб-агентаў | `int 0…10` | `2` | адразу | Максімальная глыбіня ўкладзенасці субагентаў (агент, які запускае агента). Па змаўчанні 2 — абарона ад бясконцай рэкурсіі. |
| `AIHUMMER_SUBAGENT_TIMEOUT_SEC` | Таймаўт суб-агента (секунды) | `int 0…86400` | `180` | адразу | Максімальны час аднаго запуску субагента, у секундах. |
| `AIHUMMER_TOOL_SEARCH` | Адкладзеная загрузка інструментаў | `bool` | `false` | адразу | Рабочае ядро інструментаў паказваецца мадэлі адразу, а астатняя частка вялікага каталога хаваецца за інструментам пошуку, які называе кожны схаваны інструмент. Акупляецца толькі на вялікіх каталогах (дзясяткі інструментаў плагінаў, MCP або OpenAPI): ніжэй за парог памеру ўсе інструменты паказваюцца адразу, бо лішні зварот да мадэлі дзеля пошуку даражэйшы за самі схемы. Дзейнічае з наступнага ходу. |
| `AIHUMMER_TOOL_SEARCH_CORE` | Лянівая загрузка: заўсёды ўключаныя інструменты | `multiselect` | `web_search,web_fetch,memory_search,memory_get,memory_store,search_history,search_knowledge,code_exec,process,filesystem_read,message,schedule_list,schedule_create,schedule_delete,generate_pairing_code` | адразу | Інструменты, якія ў лянівым рэжыме заўсёды бачныя мадэлі адразу. Па змаўчанні — рабочае ядро: пошук у інтэрнэце, чытанне старонак, памяць, гісторыя перапіскі, база ведаў, код, файлы, паведамленні, раскладзі і прывязка праграмы. Пошук па памяці і базе ведаў (memory_search, memory_get, search_knowledge) бачны заўсёды, што б ні было ў гэтым спісе. Пусты спіс вяртае гэтае ядро. |
| `AIHUMMER_TOOL_SEARCH_MIN_POOL_TOKENS` | Лянівая загрузка: мінімальны аб'ём схаваных інструментаў (токены) | `int 0…1000000` | `4000` | адразу | Хаваць інструменты, толькі калі схемы па-за ядром важаць не менш за столькі токенаў (каля 4 знакаў кожны). Ніжэй за парог усе інструменты паказваюцца адразу: лішні зварот да мадэлі дзеля пошуку інструмента даражэйшы, чым паказаць схемы. |
| `AIHUMMER_TOOL_SEARCH_THRESHOLD` | Лянівая загрузка: мінімум інструментаў для адтэрміноўкі | `int 0…1000` | `12` | адразу | Адкладваць толькі тады, калі пасля фільтра профілю агента застаецца больш за гэтую колькасць інструментаў. |
## Agent · Reasoning
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AGENT_BEST_OF_N` | Лепшы з N: колькасць варыянтаў | `int 0…8` | `0` | адразу | Агент рыхтуе столькі варыянтаў адказу і пакідае лепшы. 0 або 1 — выключана, ад 2 — уключана. Кожны варыянт каштуе як асобны адказ. |
| `AIHUMMER_AGENT_DEBATE_JUDGE_PROMPT` | Дэбаты: промпт суддзі (перавызначэнне) | `text` | — | адразу | Перавызначае промпт суддзі дэбатаў (пуста = убудаваны). |
| `AIHUMMER_AGENT_DEBATE_N` | Дэбаты: колькасць варыянтаў адказу | `int 0…8` | `0` | адразу | Агент рыхтуе столькі варыянтаў адказу, зверае іх паміж сабой і выдае лепшы. 0 або 1 — выключана, ад 2 — уключана. Кожны варыянт каштуе як асобны адказ. |
| `AIHUMMER_AGENT_DEBATE_PROMPT` | Дэбаты: промпт кандыдата (перавызначэнне) | `text` | — | адразу | Перавызначае промпт кандыдата ў дэбатах (пуста = убудаваны). |
| `AIHUMMER_AGENT_DEBATE_ROUNDS` | Дэбаты: раунды | `int 1…10` | `1` | адразу | Колькасць раўндаў дэбатаў для панэлі кандыдатаў. |
| `AIHUMMER_AGENT_JUDGE_PROMPT` | Промпт суддзі best-of-N (перавызначэнне) | `text` | — | адразу | Перавызначае промпт суддзі best-of-N (пуста = убудаваны). |
| `AIHUMMER_AGENT_PLAN_PROMPT` | Промпт планавальніка (перавызначэнне) | `text` | — | адразу | Перавызначае промпт планавальніка (пуста = убудаваны). |
| `AIHUMMER_AGENT_PLAN_STEPS` | Планавальнік-выканаўца: макс. крокаў плана (0=выкл.) | `int 0…32` | `0` | адразу | ⟩0 запускае асобны праход планавальнік→выканаўца→сінтэз (карысна для складаных шматкрокавых задач). 0 = выключана. Звычайна 4–8. |
| `AIHUMMER_AGENT_PLAN_STEP_ITERS` | Планавальнік: ітэрацый інструментаў на крок (0=прадвызначана) | `int 0…64` | `0` | адразу | Абмяжоўвае колькасць ітэрацый выкліку інструментаў на крок плана. 0 = убудаванае значэнне па змаўчанні (4). |
| `AIHUMMER_AGENT_REFLECT` | Праход самакрытыкі | `bool` | `0` | адразу | Дадае праход рэфлексіі/самакрытыкі перад фінальным адказам. |
| `AIHUMMER_AGENT_REFLECT_PROMPT` | Промпт рэфлексіі (перавызначэнне) | `text` | — | адразу | Перавызначае промпт самакрытыкі (пуста = убудаваны). |
| `AIHUMMER_AGENT_SELF_HEAL` | Самааднаўленне: паўторы пры памылках інструментаў (0=выкл.) | `int 0…10` | `0` | адразу | ⟩0 паўтарае няўдалыя выклікі інструментаў з карэктавальнай падказкай, аж да гэтай мяжы. |
## Agent · System prompt
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_LOCALE` | Прадвызначаная лакаль | `enum: ru-RU \\\| en-US \\\| az-AZ \\\| hy-AM \\\| be-BY \\\| kk-KZ \\\| ky-KG \\\| tg-TJ \\\| tk-TM \\\| uz-UZ \\\| ka-GE \\\| ro-RO \\\| es-ES \\\| zh-CN \\\| fr-FR \\\| de-DE \\\| hi-IN \\\| pl-PL \\\| lt-LT \\\| lv-LV \\\| et-EE \\\| fi-FI \\\| sv-SE \\\| no-NO \\\| da-DK \\\| tr-TR \\\| mn-MN` | `ru-RU` | адразу | Мова/лакаль адказу па змаўчанні, напр. ru-RU. Інструкцыі персоны/аператара маюць прыярытэт. |
| `AIHUMMER_TIMEZONE` | Часавы пояс | `text` | `UTC` | адразу | Часавы пояс IANA для бягучай даты ў агента і для раскладаў без свайго пояса, напр. Europe/Moscow. Па змаўчанні UTC. |
## Channels
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_CHANNEL_FAILURE_NOTICE` | Паведамляць суразмоўцу пра збой адказу | `enum: always \\\| once \\\| off` | `always` | адразу | Што атрымлівае суразмоўца ў канале (Telegram і іншыя), калі агент не змог адказаць: «Кожны раз» — кароткае паведамленне на яго мове; «Не часцей за раз у 4 гадзіны» — адно паведамленне на размову за 4 гадзіны; «Не паведамляць» — нічога. У паведамленні няма кодаў памылак і назваў пастаўшчыкоў; падрабязнасці вы бачыце ў «Сесіях» і апавяшчэннях. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_BLOCKED` | Тэкст пра адмову: інстанс прыпынены | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_BUDGET` | Тэкст пра адмову: вычарпаны бюджэт | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_BUSY` | Тэкст пра адмову: шлюз перагружаны | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_CONFIG` | Тэкст пра адмову: падключэнне мадэлі патрабуе ўладальніка | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_FAILED` | Тэкст пра адмову: іншы збой | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_QUOTA` | Тэкст пра адмову: вычарпаны ліміт мадэлі | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_STEP_LIMIT` | Тэкст пра адмову: задача не ўмясцілася ў адзін адказ | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_TOO_LONG` | Тэкст пра адмову: размова не змяшчаецца ў мадэль | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CHANNEL_FAILURE_TEXT_UNAVAILABLE` | Тэкст пра адмову: мадэль часова недаступная | `text` | — | адразу | Пакіньце пустым — пойдзе ўбудаванае паведамленне на мове суразмоўцы. Ваш тэкст ідзе так, як напісаны, на той мове, на якой вы яго напісалі; {ref} падстаўляе код адказу, па якім ход шукаецца ў «Сесіях». Ужываецца адразу. |
| `AIHUMMER_CONFIDENTIAL_PERSONA` | Канфідэнцыйная вэб-персона | `bool` | `0` | адразу | Калі ўключана, вэб-чат-агент не раскрывае і не захоўвае даныя сваёй персоны/асобы і адказвае строга па задачы — для ананімных ці адчувальных да прыватнасці вэб-разгортванняў. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_INBOUND_COALESCE_MS` | Акно аб'яднання паведамленняў (мс) | `int` | `500` | адразу | Некалькі паведамленняў, якія чалавек адпраўляе запар у адзін чат (кароткія паведамленні, фотаальбом, хуткае выпраўленне), атрымліваюць АДЗІН адказ, калі паўза паміж імі карацейшая за гэта акно. На паведамленні, што прыйшлі, пакуль рыхтуецца адказ, бот адказвае адразу пасля яго, ніколі паралельна. Па змаўчанні 500 мс; 0 — без чакання паміж асобнымі паведамленнямі; альбом фота ўсё роўна збіраецца (паўзы да 3 с, не даўжэй за 20 с), каб атрымаць адзін адказ. Склейка працуе ў Telegram; Slack, WhatsApp, VK, пошта і іншыя канектары, якія чакаюць адказу на кожнае паведамленне (і інтэграцыі праз /v1/inbound/generic), атрымліваюць адказ на кожнае — па-ранейшаму па адным і па парадку. Прымяняецца адразу. |
| `AIHUMMER_INBOUND_EDIT_MODE` | Калі чалавек правіць паведамленне, на якое ўжо адказалі | `enum: correct \\\| history` | `correct` | адразу | correct — бот адказвае яшчэ раз, ведаючы, што гэта выпраўленне («было / стала»); history — праўка толькі выпраўляе гісторыю размовы, новага адказу няма (зручна для памылак друку). Праўка паведамлення, на якое бот яшчэ не адказаў, заўсёды проста замяняе яго тэкст. Працуе там, дзе канал паведамляе пра праўкі (Telegram). Ужываецца адразу. |
| `AIHUMMER_INBOUND_QUEUE_MODE` | Паведамленні, напісаныя, пакуль агент працуе | `enum: steer \\\| collect \\\| followup` | `steer` | адразу | Што адбываецца з паведамленнем, якое той самы чалавек піша, пакуль агент яшчэ рыхтуе адказ (шукае, запускае інструменты): steer (па змаўчанні) — агент бачыць яго перад наступным крокам і ўлічвае ў тым жа адказе; collect — на яго адказвае наступны адказ. followup — на кожнае такое паведамленне — асобны адказ, па чарзе. Фота, файлы, адказы на паведамленне і перасылкі заўсёды чакаюць наступнага адказу. Прымяняецца адразу. |
| `AIHUMMER_INBOUND_REQUIRE_BINDING` | Адказваць толькі зарэгістраваным карыстальнікам | `bool` | `true` | адразу | true = бот ігнаруе любога адпраўніка ў канале, які НЕ з'яўляецца заведзеным карыстальнікам AiHummer (карыстальнік з прывязкай ролі) — выпадковыя ўдзельнікі чата і гасцявыя выклікі не атрымліваюць адказу. false (па змаўчанні) = адказваць усім. |
## Integrations
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_A2A_PUBLISH` | Публікаваць агента праз Agent2Agent (A2A) | `bool` | `0` | пасля перазапуску | Апублікаваць агента як A2A-сервер (Agent Card + POST /a2a/message). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_MCP_EXPORT_TOOLS` | Інструменты, адкрытыя знешнім асістэнтам | `multiselect` | — | пасля перазапуску | Відавочны спіс імёнаў прылад, дазволеных вонкавым MCP-кліентам, праз коску. Пуста = не публікаваць ніводнай прылады. Небяспечныя host-level класы дадаткова забароненыя ўбудаванай палітыкай, нават калі пералічаныя. Ужываецца пры старце / пасля рэстарту. |
| `AIHUMMER_MCP_PUBLISH` | Публікаваць інструменты праз MCP | `bool` | `0` | пасля перазапуску | Дазваляе знешнім асістэнтам (напрыклад, Claude Desktop) карыстацца інструментамі вашых агентаў. Якія менавіта інструменты адкрыць, выбіраецца ў суседняй наладзе: пакуль спіс пусты, не адкрываецца ніводны. |
| `AIHUMMER_MODULE_CPU_QUOTA` | Мяжа працэсара плагіна (на кожны) | `text` | `75%` | адразу | Якую долю працэсара можа заняць кожны плагін (systemd CPUQuota): 75% — тры чвэрці аднаго ядра, 150% — паўтара ядра. Новае значэнне плагін атрымае пры наступнай усталёўцы, абнаўленні або захаванні яго налад; да таго плагіны, што працуюць, жывуць з ранейшай мяжой. |
| `AIHUMMER_MODULE_MEMORY_MAX` | Мяжа памяці плагіна (на кожны) | `text` | `512M` | адразу | Колькі памяці можа заняць кожны плагін (systemd MemoryMax): памер накшталт 512M, 1G або 2048M (не менш за 64M) ці infinity — без мяжы. Плагін, які перавысіў мяжу, сістэма спыніць. Новае значэнне плагін атрымае пры наступнай усталёўцы, абнаўленні або захаванні яго налад; да таго плагіны, што працуюць, жывуць з ранейшай мяжой. |
## Knowledge connectors
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_KB_SYNC_INTERVAL` | Як часта абнаўляць базу ведаў з крыніц | `text` | — | адразу | Як часта сервер сам забірае змены з падключаных крыніц базы ведаў. Напрыклад: 30m — кожныя 30 хвілін, 6h — кожныя 6 гадзін. Пуста або 0 — толькі ўручную. Паўторная загрузка не стварае дублікатаў. Выгрузку Slack загружаюць уручную. |
## LLM
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AUX_FALLBACK_MODELS` | Службовыя задачы: запасныя мадэлі | `list` | — | адразу | Мадэлі праз коску — спрабуюцца па парадку, калі службовая мадэль адмовіла (квота, збой). Апошняй заўсёды спрабуецца асноўная мадэль, каб зводка не згубілася. Кожнае пераключэнне запісваецца ў журнал. Дзейнічае адразу. |
| `AIHUMMER_AUX_MODEL` | Мадэль для службовых задач (зводкі, нататкі, загалоўкі) | `text` | — | адразу | Мадэль фонавых службовых задач: сцісканне старой гісторыі ў зводку, нататка ў памяць перад сцісканнем, загалоўкі размоў, выманне фактаў, перафразаванне пошукавых запытаў і пераклад. Пуста = аўтаматычна: танейшая мадэль таго ж пастаўшчыка (Claude → claude-haiku-4-5, Codex → gpt-…-luna/mini); калі такой няма — асноўная мадэль. «main» — заўсёды асноўная мадэль. Дзейнічае адразу. |
| `AIHUMMER_CASCADE_MIN_CHARS` | Каскад: мінімум сімвалаў для эскалацыі | `int` | `0` | адразу | Парог даўжыні запыту (сімвалы), з якога ўключаецца мацнейшая мадэль каскада. 0 = па змаўчанні. |
| `AIHUMMER_CASCADE_STRONG_MODEL` | Каскад: больш моцная запасная мадэль | `text` | — | адразу | Мадэль, на якую каскадам пераключаемся для доўгіх/складаных запытаў (пуста = выключана). |
| `AIHUMMER_CLAUDE_AUTH_URL` | Падпіска Claude: адрас старонкі ўваходу | `text` | — | адразу | Старонка, на якой вы дазваляеце падключыць падпіску Claude. Пуста — стандартны адрас; мяняць трэба, толькі калі пра гэта папрасіла падтрымка. |
| `AIHUMMER_CLAUDE_CLIENT_ID` | Падпіска Claude: ідэнтыфікатар кліента OAuth | `text` | — | адразу | Ідэнтыфікатар праграмы для ўваходу па падпісцы Claude. Пуста — стандартны; мяняць трэба, толькі калі пра гэта папрасіла падтрымка. |
| `AIHUMMER_CLAUDE_EFFORT` | Claude: глыбіня разважанняў | `enum: low \\\| medium \\\| high \\\| xhigh \\\| max` | `medium` | адразу | Наколькі глыбока мадэлі Claude разважаюць перад адказам, калі ў агента глыбіня не зададзена. Вышэй — дакладней на складаных задачах, але даўжэй і дарожэй па квоце; ніжэй — хутчэй і танней. Мадэль, якая не ведае абранага ўзроўню, атрымлівае бліжэйшы меншы; Haiku 4.5 і старыя мадэлі разважанні не падтрымліваюць. Глыбіня, зададзеная ў агента, важнейшая. Дзейнічае з наступнага ходу. |
| `AIHUMMER_CLAUDE_MAX_TOKENS` | Claude: найбольшая даўжыня адказу (токенаў) | `int` | `16000` | адразу | Колькі токенаў можа заняць адзін адказ Claude — і па падпісцы, і па ключы. Разважанні мадэлі ўваходзяць у гэты ж ліміт: занадта малое значэнне абрывае адказ на паўслове або дае пусты адказ. Калі ў агента зададзена свая даўжыня адказу, дзейнічае яна. |
| `AIHUMMER_CLAUDE_REDIRECT_URI` | Падпіска Claude: URI перанакіравання | `text` | — | адразу | Адрас вяртання, зарэгістраваны ў пастаўшчыка. Павінен супадаць з тым, што настроены на яго баку, інакш абмен кода не прымаецца. |
| `AIHUMMER_CLAUDE_TOKEN_URL` | Падпіска Claude: адрас атрымання доступу | `text` | — | адразу | Адрас, па якім сервер атрымлівае і падаўжае доступ да падпіскі Claude. Пуста — стандартны адрас; мяняць трэба, толькі калі пра гэта папрасіла падтрымка. |
| `AIHUMMER_CODEX_BASE_URL` | Базавы URL Codex | `text` | — | часткова пасля перазапуску | База транспарту Codex (падпіска ChatGPT). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_CODEX_MAX_OUTPUT_TOKENS` | Макс. выходных токенаў (0 = без абмежавання) | `int` | `0` | адразу | Абмежаванне max_output_tokens для ходу чата. 0 = без абмежавання. У reasoning-мадэлях токены разважанняў таксама лічацца ў гэтым бюджэце, таму занадта малое значэнне дае пусты адказ «incomplete: max_output_tokens». Ужываецца на ляту (без перазапуску). |
| `AIHUMMER_CODEX_MODEL` | Ідэнтыфікатар мадэлі (транспарт Codex / gpt-5.5) | `text` | `gpt-5.5` | часткова пасля перазапуску | Ідэнтыфікатар мадэлі асноўнага транспарту Codex/ChatGPT (напр. gpt-5.5, gpt-5.5-codex). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_CODEX_REASONING_EFFORT` | Глыбіня разважанняў | `enum: none \\\| low \\\| medium \\\| high \\\| xhigh` | `medium` | адразу | Наколькі глыбока мадэль ChatGPT (Codex) думае перад адказам, калі ў агента гэта не зададзена. Па змаўчанні — «Сярэднія». Вышэй — дакладней, але даўжэй і даражэй. |
| `AIHUMMER_LLM_CALL_TIMEOUT_S` | Таймаўт аднаго выкліку (секунды) | `int` | `120` | адразу | Колькі секунд чакаць адказу мадэлі на адзін запыт. Калі мадэль маўчыць даўжэй, запыт абрываецца і адказ пераходзіць да наступнай мадэлі са спісу. Для Claude лічыцца паўза ў патоку адказу, а не ўвесь адказ: доўгі, але бягучы адказ не абрываецца. 0 — без абмежавання. |
| `AIHUMMER_LLM_FALLBACK_MODELS` | Запасныя мадэлі (для ўсіх агентаў) | `text` | `auto` | адразу | Хто адказвае, калі асноўная мадэль і астатнія пастаўшчыкі адмовілі (вычарпаны ліміт, збой, занадта частыя запыты). auto — апошнім рубяжом у кожнага пастаўшчыка яго больш танная мадэль (Claude: claude-haiku-4-5, Codex: gpt-…-luna/mini); спіс праз коску — свой парадак, кожная мадэль ідзе да пастаўшчыкоў свайго вытворцы; off — без запасных. Уласная запасная мадэль агента галоўнейшая. Ужываецца адразу. |
| `AIHUMMER_LLM_GATEWAY_URL` | LLM шлюз URL | `text` | — | часткова пасля перазапуску | Базавы URL OpenAI-сумяшчальнага эндпойнта мадэлі, да якога звяртаецца агент (ваш лакальны сервер llama.cpp/vLLM/Ollama ці размешчаны шлюз). Пакіньце пустым, каб выкарыстоўваць эндпойнт правайдара па змаўчанні. |
| `AIHUMMER_LLM_MODEL` | Мадэль LLM | `text` | — | часткова пасля перазапуску | Назва/ідэнтыфікатар мадэлі, які адпраўляецца правайдару на кожным ходзе (мадэль, якую аддае ваш эндпойнт). Мусіць супадаць з мадэллю, якую эндпойнт сапраўды прадастаўляе. |
| `AIHUMMER_LLM_PAUSE_AUTH_MIN` | Паўза пасля адмовы ўліковых даных, хв | `int` | `10` | адразу | Колькі хвілін не звяртацца да пастаўшчыка, які адхіліў уліковыя даныя. Паўтор падвойвае паўзу, але не даўжэй за шасціразовую. Паспяховая праверка злучэння і кнопка «Зняць паўзу» вяртаюць пастаўшчыка адразу. Дзейнічае з наступнай адмовы. |
| `AIHUMMER_LLM_PAUSE_MODEL_MIN` | Паўза мадэлі, якую пастаўшчык не абслугоўвае, хв | `int` | `60` | адразу | Колькі хвілін не прапаноўваць пастаўшчыку мадэль, якую, па яго словах, ён не абслугоўвае; іншыя яго мадэлі пытаюцца як звычайна. Дзейнічае з наступнай адмовы. |
| `AIHUMMER_LLM_PAUSE_QUOTA_MIN` | Паўза пасля вычарпання ліміту, хв | `int` | `300` | адразу | Колькі хвілін не звяртацца да мадэлі (або да ўсяго акаўнта, калі вычарпаны ліміт уліковага запісу — Codex, ключ OpenAI, аплата), калі ліміт вычарпаны, а тэрмін скіду пастаўшчык не назваў. Паўтор падвойвае паўзу, але не даўжэй за суткі. Тэрмін, названы пастаўшчыком, галоўнейшы. Дзейнічае з наступнай адмовы. |
| `AIHUMMER_LLM_PAUSE_SHORT_S` | Паўза пастаўшчыка пасля збою, с | `int` | `30` | адразу | Колькі секунд не звяртацца да пастаўшчыка пасля збою, разрыву сувязі або «занадта часта». Другая адмова запар — удвая даўжэй, трэцяя і далей — удзесяцера. Калі пастаўшчык сам назваў тэрмін, чакаем яго. Дзейнічае з наступнай адмовы. |
| `AIHUMMER_LLM_PROVIDER` | Правайдэр LLM | `text` | — | часткова пасля перазапуску | Які бэкенд мадэлі выкарыстоўваць (OpenAI-сумяшчальны эндпойнт ці транспарт Codex/падпіскі ChatGPT). Вызначае, як адпраўляюцца і аўтарызуюцца запыты. |
| `AIHUMMER_LLM_RETRIES` | Паўторы LLM пры часовай памылцы | `int` | `3` | адразу | Колькасць паўтораў запыту да LLM пры часовай памылцы. |
| `AIHUMMER_LLM_TEMPERATURE` | Тэмпература | `text` | — | адразу | Наколькі разнастайна адказвае мадэль (0–2), калі ў агента гэта не зададзена: менш — дакладней і прадказальней, больш — жывей. Пуста — мадэль вырашае сама. Мадэлі з разважаннямі (ChatGPT/Codex, Claude пакалення 5) гэты параметр не прымаюць — для іх пакіньце поле пустым. |
| `AIHUMMER_LLM_TOP_P` | Top-p (nucleus-сэмплаванне) | `text` | — | адразу | Яшчэ адзін спосаб зрабіць адказы разнастайнейшымі (0–1), калі ў агента гэта не зададзена. Пуста — мадэль вырашае сама. Звычайна задаюць штосьці адно: альбо тэмпературу, альбо гэты параметр; мадэлі з разважаннямі яго не прымаюць. |
| `AIHUMMER_MODEL_GUARD_INTERVAL_MIN` | Зверка моделей агентаў: перыяд, хв | `int` | `60` | адразу | Як часта пераправяраць, што мадэль кожнага агента абслугоўвае ўключаны пастаўшчык. Мадэль агента не мяняецца ніколі: пакуль яе ніхто не абслугоўвае, адказвае першая мадэль з парадку адказу, якая не на паўзе, і адно паведамленне называе агентаў — і яшчэ адно, калі іх мадэль вернецца. На старце шлюза праверка ідзе заўсёды, а 0 адключае толькі паўтор. Новы перыяд дзейнічае на працягу хвіліны. |
| `AIHUMMER_OPENAI_API` | Стыль API OpenAI (chat \| responses) | `enum: \\\| chat \\\| responses` | — | часткова пасля перазапуску | chat = /chat/completions, responses = /responses. Пуста = аўта/па змаўчанні. Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_OPENAI_API_KEY` | API-ключ натыўнага OpenAI (прадвызначаны для ўсталёўкі) | `text` | — | часткова пасля перазапуску | Ключ вашага акаўнта OpenAI для натыўнага цыкла OpenAI (калі выкарыстоўваеце OpenAI як правайдара па змаўчанні). Не блытаць з BYOK працоўнай прасторы на старонцы «Мадэлі». Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_OPENAI_BASE_URL` | Базавы URL натыўнага OpenAI | `text` | — | пасля перазапуску | База OpenAI-сумяшчальнага API (напр. https://api.openai.com/v1). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_OPENAI_MODEL` | Мадэль натыўнага OpenAI | `text` | — | пасля перазапуску | Мадэль для натыўнага цыкла OpenAI (калі зададзены AIHUMMER_OPENAI_API_KEY). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_ROUTER_COMPLEX_MODEL` | Роўтэр: мадэль для складаных запытаў | `text` | — | адразу | Мадэль для складаных запытаў агента, у якога няма сваёй мадэлі (пуста = узровень выключаны). Дзейнічае з наступнага ходу. |
| `AIHUMMER_ROUTER_SIMPLE_MODEL` | Роўтэр: мадэль для простых запытаў | `text` | — | адразу | Мадэль для простых запытаў агента, у якога няма сваёй мадэлі (пуста = узровень выключаны). Дзейнічае з наступнага ходу. |
| `AIHUMMER_ROUTER_STANDARD_MODEL` | Роўтэр: мадэль для звычайных запытаў | `text` | — | адразу | Мадэль для звычайных запытаў агента, у якога няма сваёй мадэлі (пуста = узровень выключаны). Дзейнічае з наступнага ходу. |
| `AIHUMMER_SUBSCRIPTION_QUOTA_REFRESH_MIN` | Квоты падпісак: перыяд апытання, хв | `int` | `15` | адразу | Як часта панэль пытаецца ў ChatGPT (Codex) вокны квот падпіскі: не часцей за раз за перыяд, не часцей за раз у 5 хвілін і толькі пакуль квоты адкрытыя; паміж апытаннямі паказваецца захаваная копія. Claude не пытаемся ніколі: яго ліміты — наша ацэнка. Дзейнічае з наступнага адкрыцця квот. |
## Media
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_DEEPGRAM_API_KEY` | Ключ Deepgram API | `text` | — | адразу | Ключ сэрвісу Deepgram — патрэбны, калі галасавыя паведамленні распазнае Deepgram. Калі пуста, бярэцца агульны ключ распазнавання маўлення з суседняй налады. Дзейнічае адразу. |
| `AIHUMMER_DEEPGRAM_DETECT_LANGUAGE` | Вызначэнне мовы Deepgram | `bool` | `0` | адразу | Вызначаць мову замест перадачы зададзенай мовы. Ужываецца адразу. |
| `AIHUMMER_DEEPGRAM_MODEL` | Мадэль Deepgram | `text` | `nova-2` | адразу | Мадэль Deepgram (напр. nova-2, nova-3, base). Залежыць ад доступу праекта па ключы. Ужываецца адразу. |
| `AIHUMMER_DEEPGRAM_PUNCTUATE` | Пунктуацыя Deepgram | `bool` | `1` | адразу | Дадаваць знакі прыпынку і вялікія літары. Ужываецца адразу. |
| `AIHUMMER_DEEPGRAM_SMART_FORMAT` | Разумнае фарматаванне Deepgram | `bool` | `1` | адразу | Фарматаваць распазнаныя лікі і даты. Ужываецца адразу. |
| `AIHUMMER_DEEPGRAM_URL` | Базавы URL Deepgram | `text` | — | адразу | База Deepgram API. Пуста = https://api.deepgram.com. Ужываецца адразу. |
| `AIHUMMER_IMAGE_BASE_URL` | Базавы URL API выяў (запасны OpenAI) | `text` | — | адразу | База /images API пры працы праз ключ OpenAI (пуста = https://api.openai.com/v1). |
| `AIHUMMER_IMAGE_MODEL` | Мадэль генерацыі выяў | `text` | — | адразу | Мадэль для image_generate (па змаўчанні gpt-image-2). |
| `AIHUMMER_MEDIA_MAX_UPLOAD_MB` | Макс. памер загрузкі медыя (МБ) | `int` | `256` | адразу | Самы вялікі файл (фота, галасавое, відэа), які можна загрузіць за адзін раз, у мегабайтах. Абараняе дыск сервера ад перапаўнення. Па змаўчанні 256. Дзейнічае адразу. |
| `AIHUMMER_SIDECAR_STT` | Распазнаванне маўлення на гэтым серверы (faster-whisper) | `bool` | `0` | адразу | Лакальнае распазнанне прамовы (faster-whisper). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~620 МіБ на ўсе версіі Python) і ставіць службу на хост. 🔴 Дадатак публікуецца асобным рашэннем вендара (яго пакеты вязуць ffmpeg пад GPL); калі для вашага выпуску яно не апублікавана, уключэнне сапраўды скажа пра гэта і нічога не зламае. Воблачнае тарыф: распазнанне наладжвае пастаўшчык. |
| `AIHUMMER_SIDECAR_TTS` | Агучванне адказаў (edge-tts) | `bool` | `0` | адразу | Сінтэз гаворкі (edge-tts, галасы Microsoft Edge). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~26 МіБ) і ставіць службу на хост. Сам сінтэз ходзіць у інтэрнэт па галасы — «афлайн» тут адносіцца да ўстаноўкі пакета, а не да працы. |
| `AIHUMMER_STT_API_KEY` | API-ключ STT (неабавязкова) | `text` | — | адразу | Ключ доступу да службы распазнавання маўлення, калі яна яго патрабуе. Для службы на гэтым серверы яго задае ўсталёўшчык — мяняць не трэба. Дзейнічае адразу. |
| `AIHUMMER_STT_ENGINE` | Рухавік распазнавання маўлення (STT) | `enum: auto \\\| faster-whisper \\\| deepgram \\\| codex \\\| off` | `auto` | адразу | Чым расшыфроўваць галасавыя. Аўта (па змаўчанні): Deepgram, калі зададзены яго ключ, інакш лакальная служба, калі яна ўсталявана (пераключальнік вышэй), інакш нічым — і бот сумленна скажа суразмоўцу, што пакуль не можа слухаць. faster-whisper: лакальная служба або сумяшчальны знешні /v1/audio/transcriptions. deepgram: воблачны Deepgram са сваім ключом. codex: падключаная падпіска ChatGPT («Мадэлі» → «Падключыць ChatGPT»), выдаткоўвае яе квоту. off: не расшыфроўваць. Ужываецца адразу. |
| `AIHUMMER_STT_LANGUAGE` | Мова распазнавання маўлення (STT) | `text` | — | адразу | Мова распазнавання (BCP-47, напр. ru/en). Выкарыстоўваецца рухавіком deepgram (мадэль nova-2). Пуста = аўтавызначэнне ці змаўчанне рухавіка. Ужываецца адразу. |
| `AIHUMMER_STT_MODEL` | Мадэль STT | `text` | `Systran/faster-whisper-small` | адразу | Мадэль faster-whisper (напр. small/medium/large-v3 ці Systran/faster-whisper-⟨size⟩). Ужываецца адразу. |
| `AIHUMMER_TTS_API_KEY` | Клавіша TTS API (край-tts) | `text` | — | часткова пасля перазапуску | Ключ доступу да службы агучвання. Задаецца аўтаматычна пры ўсталёўцы — мяняць не трэба. |
| `AIHUMMER_TTS_ENABLED` | Сінтэз маўлення ўключаны | `bool` | `1` | часткова пасля перазапуску | Дазваляе агенту адказваць голасам. Для гэтага патрэбна служба агучвання — яе ставяць у раздзеле «Дадатковыя службы» вышэй. |
| `AIHUMMER_TTS_MODEL` | Мадэль TTS | `text` | — | часткова пасля перазапуску | Назва мадэлі для сэрвісу edge-tts. Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_TTS_VOICE` | Голас TTS | `enum: de-DE-FlorianMultilingualNeural \\\| de-DE-SeraphinaMultilingualNeural \\\| en-US-AndrewMultilingualNeural \\\| en-US-AvaMultilingualNeural \\\| en-US-BrianMultilingualNeural \\\| en-US-EmmaMultilingualNeural \\\| fr-FR-RemyMultilingualNeural \\\| fr-FR-VivienneMultilingualNeural \\\| ru-RU-SvetlanaNeural \\\| ru-RU-DmitryNeural \\\| en-US-JennyNeural \\\| en-US-GuyNeural \\\| en-GB-SoniaNeural \\\| de-DE-KatjaNeural \\\| fr-FR-DeniseNeural \\\| es-ES-ElviraNeural \\\| tr-TR-EmelNeural \\\| pl-PL-ZofiaNeural \\\| zh-CN-XiaoxiaoNeural` | `de-DE-FlorianMultilingualNeural` | часткова пасля перазапуску | Голас edge-tts па змаўчанні (шматмоўны, у тым ліку руская). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_VIDEO_API_KEY` | API-ключ аналізу відэа | `text` | — | адразу | Ключ доступу да службы разбору відэа, калі яна яго патрабуе. Пуста — служба выкарыстоўваецца без ключа. |
## Media · Voice
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_TTS_AUTO_REPLY` | Аўтаматычныя галасавыя адказы | `enum: off \\\| always \\\| inbound \\\| tagged` | `inbound` | адразу | Выключана, заўсёды, у адказ на аўдыя або па яўнай пазнацы. Можна змяніць для асобнай размовы. |
| `AIHUMMER_TTS_MAX_CHARS` | Ліміт знакаў для агучвання | `int` | `0` | адразу | 0: увесь тэкст; 100–10000: ліміт агучанага тэксту. Поўны адказ застаецца ў гісторыі. |
| `AIHUMMER_TTS_SUMMARIZE` | Скарачэнне доўгіх галасавых адказаў | `bool` | `1` | адразу | Скарачаць доўгія адказы для агучвання. Пры памылцы чытаць пачатак у межах ліміту. |
| `AIHUMMER_VOICE_AEC` | Падаўленне рэха (AEC) | `bool` | `1` | адразу | Прыбірае рэха: уласны голас агента з дынаміка не трапляе назад у мікрафон і не перабівае размову. Выключайце, толькі калі голас у гарнітуры гучыць скажона. |
| `AIHUMMER_VOICE_AGC` | Аўтаматычная рэгуляцыя ўзмацнення | `bool` | `1` | адразу | Патрабаваць аўтаматычную рэгуляцыю ўзмацнення мікрафона (WebRTC autoGainControl) у галасавым рэжыме. |
| `AIHUMMER_VOICE_BARGEIN_FRAMES` | Перабіць агента: колькі трэба гаварыць | `int` | `5` | адразу | Колькі трэба гаварыць (у кадрах па 20 мс), каб агент змоўк і пачаў слухаць. Па змаўчанні 5 — прыкладна 0,1 секунды. |
| `AIHUMMER_VOICE_DUPLEX` | Жывы поўнадуплексны голас | `bool` | `0` | адразу | Уключае жывы поўнадуплексны рэжым (стрымінг + VAD + barge-in). Ужываецца адразу. |
| `AIHUMMER_VOICE_NOISE_SUPPRESSION` | Шумаздушэнне | `bool` | `1` | адразу | Патрабаваць падаўленне шуму пры захопе мікрафона (WebRTC noiseSuppression) у галасавым рэжыме. |
| `AIHUMMER_VOICE_VAD_THRESHOLD` | Адчувальнасць да голасу (0–1) | `text` | `0.02` | адразу | З якой гучнасці гук лічыцца маўленнем. Менш — адчувальней: агент пачуе ціхае маўленне, але і старонні шум. Па змаўчанні 0.02. |
## Memory
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_EMBEDDER_DIM` | Памернасць мадэлі пошуку па сэнсе | `int` | `768` | пасля перазапуску | Размернасць вектара — мусіць супадаць з мадэллю (multilingual-e5-base=768, bge-m3=1024). |
| `AIHUMMER_EMBEDDER_KEEPALIVE` | Keep-alive эмбедэра | `text` | `5m` | пасля перазапуску | Колькі мадэль пошуку па сэнсе застаецца загружанай пасля апошняга запыту (толькі ў рэжыме «Па сэнсе»). Па змаўчанні 5m — 5 хвілін: потым мадэль выгружаецца і вызваляе памяць і працэсар. Трымаць заўсёды (-1) не рэкамендуецца: завіслая мадэль можа суткамі займаць ядро працэсара. Фармат: 30s, 5m, 1h. |
| `AIHUMMER_EMBEDDER_MODEL` | Мадэль пошуку па сэнсе | `text` | `yxchia/multilingual-e5-base` | пасля перазапуску | Мадэль, якая дапамагае шукаць у памяці па сэнсе. Па змаўчанні multilingual-e5-base — разумее рускую, лёгкая і хутка працуе на звычайным працэсары. Для лепшай якасці на відэакарце падыдзе bge-m3, але тады ў суседняй наладзе памернасці ўкажыце 1024: лік павінен супадаць з мадэллю. |
| `AIHUMMER_EMBEDDER_PASSAGE_PREFIX` | Прэфікс дакумента эмбедэра | `text` | — | пасля перазапуску | Перавызначыць прэфікс захаванага дакумента (мадэлі e5 аўтаматычна выкарыстоўваюць «passage: »). Пакіньце пустым для аўтавызначэння па назве мадэлі. |
| `AIHUMMER_EMBEDDER_QUERY_PREFIX` | Прэфікс запыту эмбедэра | `text` | — | пасля перазапуску | Перавызначыць прэфікс пошукавага запыту (мадэлі e5 аўтаматычна выкарыстоўваюць «query: »). Пакіньце пустым для аўтавызначэння па назве мадэлі. |
| `AIHUMMER_EMBEDDER_THREADS` | Патокі працэсара эмбедара | `int 0…256` | `0` | пасля перазапуску | Колькі патокаў працэсара мадэль пошуку па сэнсе бярэ на адзін запыт. 0 — само: палова патокаў сервера, але не менш за 2. Без мяжы пералік вектараў базы ведаў на слабым серверы гадзінамі займаў увесь працэсар і перашкаджаў адказам агентаў. Больш — пералік хутчэйшы, але нагрузка мацнейшая. |
| `AIHUMMER_MEMORY_AGENT_WRITES` | Факты, якія агент захоўвае сам | `enum: strangers \\\| immediate \\\| review` | `strangers` | адразу | Што адбываецца з тым, што агент запамінае сам — напрыклад, па просьбе «запомні». «Адразу ў памяць; ад старонніх — на праверку» (па змаўчанні) — адразу ў памяць, калі гэта сказаў уладальнік або давераны круг агента; ад астатніх — на праверку. «Адразу ў памяць» — агент адразу знойдзе гэта пры пошуку. «На праверку» — спачатку ў чаргу «Памяць → на праверку», у адказы трапляе толькі пасля вашага адабрэння. У картцы агента (Памяць → Налады) можна задаць свой рэжым. |
| `AIHUMMER_MEMORY_AUTOREPAIR` | Аўтаматычнае выпраўленне памяці | `bool` | `1` | адразу | Пасля самаправеркі выпраўляць памяць: зліваць дублі, закрываць супярэчнасці з яўным пераможцам (пацвярджэнне чалавекам, пазнейшая дата падзеі, больш важкая крыніца), пераправяраць па крыніцах «правераныя» факты, якіх не пацвярджаў чалавек (непацверджаныя ідуць на праверку, нічога не выдаляецца). Спрэчнае — толькі ў чаргу. Кожнае выпраўленне — у журнал з кнопкай адмены; калі пасля праходу памяць знаходзіць горш, праход адкочваецца сам і прыходзіць апавяшчэнне. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_CAPTURE` | Рэжым захопу памяці | `enum: auto \\\| review \\\| off` | `review` | адразу | Што рабіць з фактамі, якія агент сам заўважае ў перапісцы пасля кожнага адказу. «На праверку» — у чаргу «Памяць → на праверку»: у адказы яны трапляюць толькі пасля вашага адабрэння. «Адразу ў памяць» — без праверкі: хутчэй, але больш лішняга. «Не захоўваць» — не вымаць факты з перапіскі. Тое, што агент запамінае па просьбе, наладжваецца асобна. |
| `AIHUMMER_MEMORY_CONTEXT_TIMEOUT` | Таймаўт падгрузкі памяці | `text` | `3s` | адразу | Колькі агент чакае, пакуль знойдуцца адпаведныя ўспаміны, перш чым пачаць адказ. Калі пошук не паспеў, агент адказвае без іх, а не завісае. Напрыклад: 2s — 2 секунды, 1500ms — 1,5 секунды. 0 — чакаць колькі трэба. |
| `AIHUMMER_MEMORY_DIARY_BOOT` | Дзённік агента ў пачатку сесіі | `bool` | `1` | адразу | На кожным ходзе сесіі на любым канале трымаць перад агентам яго дзённік за сёння і ўчора — нататкі мінулых сесій, начную зводку і запісы самога агента. Паказваюцца толькі запісы пра бягучага суразмоўцу і агульныя (вашы, загружаныя): адзін кліент не бачыць запісаў пра іншага. Не больш за ~6000 знакаў; астатняе агент дачытвае сам (memory_get). Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_DIARY_HOUR` | Гадзіна начной зводкі | `int` | `3` | адразу | Пасля якой гадзіны (0–23, па часавым поясе інстанса) пісаць зводку за мінулы дзень. Па змаўчанні 3 — уначы, калі размовы дня скончыліся. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_DIARY_NIGHTLY` | Начная зводка дня ў дзённік агента | `bool` | `1` | адразу | Раз на суткі запісваць у дзённік агента вынік мінулага дня — асобна па кожным суразмоўцу (усе яго каналы разам): што прасілі і што зроблена, дамоўленасці, справы з датамі. Адзін выклік службовай мадэлі на агента і суразмоўцу, не больш за 3 за праход раз на 10 хвілін; прапушчаныя дні даганяюцца да тыдня назад. Размовы з «не запамінай» не бяруцца. Пры выключаным захопе памяці не пішацца. Вынік апошняга праходу відаць у картцы агента → Памяць → Дзённік. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_DREAM_INTERVAL` | Інтэрвал праходу «сну» | `string` | `1h` | адразу | Як часта самаабслугоўвальны праход dream скануе правераныя сцвярджэнні на супярэчнасці ва ўсіх абласцях (Go duration, напр. 30m/1h/6h). 0 = выключыць. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_EXTRACT` | Здабыванне фактаў праз LLM | `bool` | `1` | адразу | Здабываць нармалізаваныя факты суб'ект/прэдыкат/аб'ект праз LLM (па змаўчанні УКЛЮЧАНА) замест захавання сырых фрагментаў сказаў — неабходна, каб працавалі механізмы графа/супярэчнасцей/dream. Дадае адзін выклік LLM на кожнае захопленае паведамленне; выключыце, каб зэканоміць выклік. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_MEANING_TIMEOUT` | Тэрмін пошуку па сэнсе | `text` | `4s` | адразу | Колькі пошук у памяці і ў базе ведаў чакае пошук па сэнсе. Калі мадэль сэнсу занятая (напрыклад, пералічвае вектары пасля імпарту) і не адказала за гэты час, агент адразу атрымлівае знойдзенае па словах з паметкай, а не чакае дзясяткі секунд. Напрыклад: 4s — 4 секунды, 1500ms — 1,5 секунды. 0 — чакаць колькі трэба. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_QUALITY_CHECK` | Штодзённая самаправерка памяці | `bool` | `1` | адразу | Раз на суткі памяць сама задае сабе кантрольныя пытанні па сваіх пацверджаных фактах (да 60 фактаў, кожны дзень тыя самыя пытанні) і пытанні без адказу, праганяе іх праз пошук памяці і аўтападмешванне і лічыць паўнату, дакладнасць, MRR і ілжывыя падмешванні. Вынік і графік па днях — Памяць → Якасць памяці. Пытанні да новых фактаў адзін раз складае службовая мадэль (тая самая, што разбірае перапіску на факты; без яе — шаблонам); вынікі застаюцца на інстансе. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_RECALL` | Аўтаматычнае падмешванне памяці | `enum: strong \\\| always \\\| off` | `strong` | адразу | Ці дадаваць знойдзенае ў памяці да адказу аўтаматычна. «Толькі дакладныя супадзенні» — факт павінен супасці з паведамленнем хаця б па двух важных словах; на прывітанні і «ок» памяць не падцягваецца. «Усё падобнае» — усё, што хоць неяк супала, і звязаныя запісы: больш лішняга. «Не дадаваць» — агент шукае ў памяці сам, калі палічыць патрэбным. |
| `AIHUMMER_MEMORY_RECALL_MAX` | Фактаў памяці на адзін адказ | `int` | `5` | адразу | Колькі фактаў памяці самае большае падмешваць у адзін адказ (па змаўчанні 5). Пераказы аднаго і таго ж факта лічацца адным. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_RECALL_MIN_SCORE` | Мінімальнае супадзенне для аўтападмешвання, % | `int` | `10` | адразу | Якую долю значных слоў паведамлення (з улікам іх рэдкасці) факт павінен пакрыць, каб падмяшацца аўтаматычна, у працэнтах. Па змаўчанні 10 — падабрана на рэальнай перапісцы. Больш — радзей і дакладней, менш — часцей і шумней. На яўны пошук memory_search не ўплывае. 0 — без парога: дастаткова двух значных слоў, што супалі. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_RECALL_MIN_SIMILARITY` | Мінімальнае падабенства па сэнсе для аўтападмешвання, % | `int` | `86` | адразу | Толькі для пошуку памяці па сэнсе (эмбэдэр): наколькі блізкім па сэнсе да паведамлення павінен быць факт, каб падмяшацца аўтаматычна, у працэнтах падабенства. Па змаўчанні 86 — падабрана для мадэлі multilingual-e5-base на рэальнай памяці: ніжэй за парог старонныя факты падмешваюцца амаль да кожнага паведамлення. Іншыя мадэлі (напрыклад, bge-m3) лічаць падабенства інакш — падбярыце значэнне праз «Спытаць памяць» у картцы агента. 0 — без парога. На яўны пошук memory_search не ўплывае. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MEMORY_RETRIEVAL` | Рэжым атрымання памяці | `enum: fulltext \\\| embedding` | `fulltext` | пасля перазапуску | Як агент шукае патрэбнае ў памяці. «Па словах» — звычайны пошук па тэксце: працуе адразу і не нагружае сервер. «Па сэнсе» — знаходзіць блізкае па значэнні, нават сказанае іншымі словамі, але патрэбна мадэль пошуку па сэнсе (раздзел «Дадатковыя службы») і заўважная нагрузка на працэсар. |
| `AIHUMMER_QDRANT_API_KEY` | Ключ Qdrant API | `text` | — | пасля перазапуску | API-ключ Qdrant, калі вектарнае сховішча патрабуе аўтарызацыі. Патрэбны толькі пры зададзеным адрасе Qdrant. Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_QDRANT_URL` | URL Qdrant (пастаяннае вектарнае сховішча) | `text` | — | пасля перазапуску | Адрас сховішча Qdrant для пошуку па сэнсе. Пуста — даныя для пошуку трымаюцца ў памяці і знікаюць пры перазапуску сервера; для сталай працы задайце адрас. |
| `AIHUMMER_RAG_QUERY_EXPANSION` | Перафармуляваць запыты да базы ведаў мадэллю | `bool` | `0` | адразу | Перад пошукам па базе ведаў прасіць службовую мадэль прыдумаць 3 перафармулёўкі запыту і шукаць па ўсіх. Часам знаходзіць больш, але гэта лішні выклік мадэлі на КОЖНЫ пошук (квота і затрымка); калі мадэль адмовіла, шукаецца толькі зыходная фармулёўка, а адмова відаць у журнале і ў адказе пошуку. Па змаўчанні выключана: словы і так знаходзяцца поўнатэкставым пошукам. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_RERANKER_URL` | URL сайдкара пераранжыравання RAG | `text` | — | пасля перазапуску | HTTP-URL сайдкара крос-энкодэра для пераранжыравання гібрыднага пошуку. Пуста = пераранжыраванне выключана. Ужываецца пры запуску/пасля перазапуску. |
## Moderation
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_MODERATION` | Мадэрацыя ўваходных | `bool` | `1` | адразу | «off» адключае ўбудаваную ахову ад jailbreak/prompt-injection. Любое іншае значэнне = уключана. Дзейнічае адразу, перазапуск не патрэбны. |
| `AIHUMMER_MODERATION_REFUSAL` | Паведамленне адмовы мадэрацыі | `text` | — | адразу | Тэкст адмовы, які вяртаецца пры блакіроўцы мадэратарам (пуста = убудаваны). Дзейнічае адразу, перазапуск не патрэбны. |
## Network
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_OUTBOUND_PROXY_CUSTOM_URL` | Выходны проксі: уласны адрас | `text` | — | адразу | URL проксі HTTPS; HTTP дазволены толькі на loopback, без шляху, запыту і фрагмента. Спачатку захавайце адрас, потым выберыце custom. Адрас схаваны ў API і захоўваецца ў наладах праграмы. |
| `AIHUMMER_OUTBOUND_PROXY_MODE` | Выходны проксі для замежных пастаўшчыкоў мадэляў | `enum: auto \\\| off \\\| custom` | `auto` | адразу | Як сервер ходзіць да замежных пастаўшчыкоў мадэляў. «Як у пастаўшчыка» — так, як зададзена ў кабінеце пастаўшчыка; «Напрамую, без проксі» — без пасярэднікаў; «Праз свой проксі» — праз адрас, які вы захавалі ніжэй. Ці працуе гэта, залежыць ад правілаў канкрэтнага пастаўшчыка. |
| `AIHUMMER_RUSSIAN_TRUSTED_EXTRA_HOSTS` | Хосты звыш .ru для каранёў Мінцыфры Расіі | `list` | — | пасля перазапуску | Спіс хастоў праз коску, якім можна правярацца каранямі Мінцыфры Расіі ЗВЕРХ расійскіх даменаў (.ru/.su/.рф – ужо ўключаны). Патрэбен, калі ваш вузел з сертыфікатам Мінцыфры Расіі жыве на іншым дамене. Супадзенне па імені або па мяжы паддамена: example.com пакрывае api.example.com. Пуста = толькі расійскія дамены. Ужываецца пры старце / пасля рэстарту. |
## Performance
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_CHANNEL_TURN_QUEUE_WAIT_SEC` | Чаканне ў чарзе: паведамленне з канала (секунды) | `int 10…1200` | `600` | адразу | Колькі паведамленне з канала (Telegram і іншыя) чакае вольнага месца, калі ўсе месцы хадоў занятыя. Не дачакалася — чалавеку прыходзіць паведамленне, што сервер заняты і можна напісаць яшчэ раз. Чаканне ўваходзіць у 30-хвілінную мяжу хода. 10–1200. Дзейнічае адразу. |
| `AIHUMMER_MAX_ACTIVE_TURNS` | Хадоў агентаў адначасова (увесь сервер) | `int 1…512` | `32` | адразу | Колькі хадоў агентаў (адказы ў каналах і вэб-чаце, расклады) сервер выконвае адначасова. Астатнія чакаюць у чарзе столькі, колькі зададзена ў наладах «Чаканне ў чарзе» ніжэй, і чалавек бачыць «сервер заняты, у чарзе». Больш — менш чакання, але больш памяці, злучэнняў з базай і адначасовых запытаў да мадэлі. Палова гэтага ліку — мяжа адначасовых службовых выклікаў мадэлі (выманне памяці, зводкі). 1–512. Дзейнічае адразу. |
| `AIHUMMER_SYNC_INBOUND_QUEUE_WAIT_SEC` | Чаканне ў чарзе: сінхронны выклік інтэграцыі (секунды) | `int 1…120` | `10` | адразу | Колькі выклік інтэграцыі, якая чакае адказу ў тым жа запыце, чакае вольнага месца, калі ўсе месцы хадоў занятыя. Не дачакаўся — інтэграцыя атрымлівае «сервер заняты» з парадай паўтарыць праз тую ж колькасць секунд; паўтор з тым жа нумарам паведамлення не запісвае яго другі раз. 1–120. Дзейнічае адразу. |
| `AIHUMMER_WEB_TURN_QUEUE_WAIT_SEC` | Чаканне ў чарзе: паведамленне вэб-чата (секунды) | `int 10…1200` | `180` | адразу | Колькі паведамленне вэб-чата чакае вольнага месца, калі ўсе месцы хадоў занятыя. Увесь гэты час у чаце відаць «сервер заняты, у чарзе»; не дачакалася — адмова з кнопкай «Паўтарыць», яна застаецца ў гісторыі і пасля перазагрузкі старонкі. 10–1200. Дзейнічае адразу. |
## Public access
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_PUBLIC_URL` | Публічны адрас сервера | `text` | — | часткова пасля перазапуску | Адрас, па якім панэль і праграмы адкрываюцца з інтэрнэту, напрыклад https://ai.example.com. Накіруйце яго праз свой проксі (nginx, Caddy) на порт сервера — па змаўчанні 8780. |
| `AIHUMMER_WIDGET_ALLOWED_ORIGINS` | Вэб-віджэт: дазволеныя origin сайтаў | `list` | — | адразу | Спіс browser origin праз коску, якім дазволена ўбудоўваць віджэт вэб-чата, напрыклад https://example.com,https://www.example.com. Схема і порт павінны супадаць дакладна. Пуста = ніводзін знешні сайт не можа выкарыстоўваць віджэт. Запіс `*` наўмысна ігнаруецца, інакш любая старонка ў інтэрнэце магла б расходаваць бюджэт гэтага інстанса. |
| `POCKET_AGENT_GATEWAY_BASE_URL` | Публічны URL шлюза pocket-agent | `text` | — | адразу | Праксіруйце → на порт шлюза pocket-agent (POCKET_AGENT_PORT, па змаўчанні 8080). Аддалены агент падключаецца сюды па аднаразовым тыкеце. |
| `TELEGRAM_PUBLIC_URL` | Публічны URL вебхука Telegram | `text` | — | адразу | Толькі для рэжыму webhook — праксіруйце → на порт telegram-connector (па змаўчанні 8091). Пакіньце пустым для рэжыму polling (публічны URL не патрэбны). |
## SSO (LDAP/AD)
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_LDAP_BASE_DN` | Базавы DN пошуку карыстальнікаў | `text` | — | пасля перазапуску | Корань пошуку, напр. OU=Карыстальнікі,DC=карпарацыя,DC=прыклад. |
| `AIHUMMER_LDAP_BIND_DN` | Службовы DN для прывязкі | `text` | — | пасля перазапуску | Уліковы запіс для пачатковага пошукавага bind, напр. CN=svc-aihummer,OU=Service,DC=corp,DC=example. Пуста = ананімны пошук. |
| `AIHUMMER_LDAP_DEFAULT_ROLE` | LDAP: Прадвызначаная роля (няма супадзення груп) | `text` | — | пасля перазапуску | Роля, якая выдаецца, калі ніводная група не супадае з мапінгам. Пуста = без ролі. |
| `AIHUMMER_LDAP_ENABLED` | Уключыць уваход праз LDAP/AD | `bool` | `0` | пасля перазапуску | Калі ўключана, уваходы адміністратараў адкочваюцца на каталог. Пароль прывязкі захоўваецца ў Secrets (scope ldap, name bind_password). |
| `AIHUMMER_LDAP_GROUP_ATTR` | Атрыбут групы (прадвызначана memberOf) | `text` | — | пасля перазапуску | Атрыбут запісу карыстальніка, які пералічвае DN груп. Пуста адключае мапінг група→роля. |
| `AIHUMMER_LDAP_ROLE_MAPPINGS` | LDAP: Супастаўленне груп → роляў (JSON) | `text` | — | пасля перазапуску | JSON-аб'ект DN групы (або простага CN) → роля, напр. {\\"CN=Admins,OU=Groups,DC=corp,DC=example\\":\\"admin\\",\\"Operators\\":\\"operator\\"}. |
| `AIHUMMER_LDAP_SKIP_TLS_VERIFY` | Прапускаць праверку TLS (толькі для лабараторыі, 1/0) | `bool` | `0` | пасля перазапуску | Адключае праверку сертыфіката каталога. Ніколі не ўключайце ў прадакшэне. |
| `AIHUMMER_LDAP_URL` | Каталог URL | `text` | — | пасля перазапуску | напр. ldaps://ad.corp.example:636 (TLS) або ldap://dc1.corp.example:389. |
| `AIHUMMER_LDAP_USER_ATTR` | Атрыбут логіна (прадвызначана sAMAccountName) | `text` | — | пасля перазапуску | Атрыбут LDAP/Active Directory, які супастаўляецца з логінам, што ўводзіць карыстальнік (па змаўчанні sAMAccountName; uid для OpenLDAP, userPrincipalName для логінаў у стылі UPN). |
| `AIHUMMER_LDAP_USER_FILTER` | Фільтр пошуку карыстальнікаў | `text` | — | пасля перазапуску | Мусіць змяшчаць %s для логіна. AD: (sAMAccountName=%s); OpenLDAP: (uid=%s). |
## SSO (OIDC)
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_OIDC_AUDIENCE` | Аўдыторыя OIDC | `text` | — | пасля перазапуску | Чаканы claim `aud` — задайце audience ГЭТАГА рэсурсу, каб адхіляць токены, выпушчаныя для іншага боку. Claim `aud` цяпер АБАВЯЗКОВЫ ў кожным токене па змаўчанні (токен без aud адхіляецца); калі гэта зададзена, aud мусіць таксама яго змяшчаць. Настойліва рэкамендуецца ў прадакшэне. |
| `AIHUMMER_OIDC_ISSUER` | URL эмітэнта OIDC | `text` | — | пасля перазапуску | Эмітэнт IdP (напр. https://login.example.com). Уключае аўтэнтыфікацыю па OIDC JWT, калі зададзены. |
| `AIHUMMER_OIDC_JWKS_URL` | URL JWKS у OIDC | `text` | — | пасля перазапуску | Эндпойнт JSON Web Key Set для праверкі подпісаў токенаў. |
| `AIHUMMER_OIDC_TENANT_CLAIM` | Claim працоўнай прасторы ў OIDC | `text` | — | пасля перазапуску | Claim JWT, які нясе ідэнтыфікатар працоўнай прасторы (напр. tenant_id / org). |
## SSO (SAML)
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_SAML_DEFAULT_ROLE` | SAML: Прадвызначаная роля (няма супадзення груп) | `text` | — | пасля перазапуску | Роля, якая выдаецца, калі ніводнае сцверджанае значэнне не мапіцца. Пуста = без ролі. |
| `AIHUMMER_SAML_ENABLED` | Уключыць SSO SAML 2.0 | `bool` | `0` | пасля перазапуску | Адкрывае /saml/metadata, /saml/acs, /saml/login. Прыватны ключ SP захоўваецца ў Secrets (scope saml, name sp_key). |
| `AIHUMMER_SAML_ENTITY_ID` | Ідэнтыфікатар арганізацыі SP | `text` | — | пасля перазапуску | Entity ID сэрвіс-правайдара (па змаўчанні ⟨root⟩/saml/metadata, калі пуста). |
| `AIHUMMER_SAML_IDP_METADATA` | XML-метаданыя IdP | `text` | — | пасля перазапуску | Устаўце дакумент SAML-метаданых вашага IdP (Okta/Azure AD/ADFS). |
| `AIHUMMER_SAML_ROLE_ATTRIBUTE` | Атрыбут ролі/групы (прадвызначана groups) | `text` | — | пасля перазапуску | Атрыбут assertion, які нясе значэнні груп/роляў. |
| `AIHUMMER_SAML_ROLE_MAPPINGS` | SAML: Супастаўленне груп → роляў (JSON) | `text` | — | пасля перазапуску | JSON-аб'ект сцверджанага значэння → роля, напр. {\\"AdminGroup\\":\\"admin\\",\\"Ops\\":\\"operator\\"}. |
| `AIHUMMER_SAML_ROOT_URL` | Каранёвы URL SP | `text` | — | пасля перазапуску | Звонку даступны базавы URL гэтага шлюза, напр. https://app.example.com. ACS = ⟨root⟩/saml/acs. |
| `AIHUMMER_SAML_SP_CERT` | Сертыфікат SP (PEM) | `text` | — | пасля перазапуску | Публічны сертыфікат подпісу SP (PEM). Адпаведны прыватны ключ змяшчаецца ў Secrets (scope saml, name sp_key). |
## Schedules
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_SCHEDULE_AGENT_MAX_ACTIVE` | Агент: ліміт актыўных раскладаў | `int` | `20` | адразу | Колькі актыўных раскладаў можа быць у аднаго агента, калі ён сам стварае або ўключае расклад (сваімі інструментамі раскладаў). Расклады з панэлі ўваходзяць у лік, але панэлі не адмаўляюць. На ліміце агент атрымлівае адмову з просьбай спачатку прыпыніць або выдаліць адзін. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_AGENT_MAX_FIRES_PER_DAY` | Агент: запускаў раскладаў за суткі | `int` | `288` | адразу | Колькі разоў за суткі (па UTC) могуць спрацаваць усе расклады аднаго агента разам, уключаючы расклады з панэлі і ручныя запускі. Запускі звыш ліміту прапускаюцца і бачныя ў журнале запускаў. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_AGENT_MIN_INTERVAL_MINUTES` | Агент: мінімальны інтэрвал раскладу, хвіліны | `int` | `5` | адразу | Найкарацейшы прамежак паміж двума запускамі паўторнага раскладу, які агент стварае або мяняе сам. Больш частый расклад адхіляецца. Расклады з панэлі гэтым не абмежаваныя. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_COMMANDS` | Каманды на серверы ў раскладах | `bool` | `0` | адразу | Дазваляе раскладу запускаць праграму на гэтым серверы — зборшчык, справаздачу, праверку рэзервовай копіі. Па змаўчанні выключана. Выконваюцца толькі каманды з «Дазволеных каманд», дакладна як запісаныя; абалонкі няма. Вывад ідзе агенту або проста ў чат, кожны запуск бачны ў журнале запускаў задання. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_COMMANDS_ALLOWLIST` | Дазволеныя каманды | `argvlist` | — | адразу | Дакладныя каманды, якія можа запускаць расклад: праграма (імя, напрыклад df, або поўны шлях) і яе аргументы. Расклад запускае толькі каманду, што цалкам супадае з запісам разам з аргументамі. Выдаленая каманда спыняе заданні, якія яе выкарыстоўваюць, і іх запускі называюць прычыну. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_COMMANDS_MAX_OUTPUT_KB` | Мяжа вываду каманды раскладу, КБ | `int 1…1024` | `64` | адразу | Колькі вываду каманды (1–1024 КБ) захоўваецца ў журнале запускаў і перадаецца агенту або ў чат; астатняе адразаецца, і журнал пра гэта кажа. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_COMMANDS_SANDBOX` | Запускаць каманды раскладаў у пясочніцы АС | `bool` | `1` | адразу | Уключана: каманда ідзе ў пясочніцы АС, як запуск кода, — сакрэты ўсталявання і ключы SSH схаваныя, пісаць можна толькі ў сваю часовую папку. Без пясочніцы (bubblewrap) на серверы каманда не запускаецца, і журнал запускаў кажа чаму. Выключана: каманда ідзе з правамі шлюза. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_FAILURE_ADMIN` | Паведамляць адміністратару пра збоі заданняў | `bool` | `1` | адразу | Калі заданне па раскладзе не выканалася або не змагло пачацца, у званочку панэлі з'яўляецца апавяшчэнне з назвай задання, прычынай і тым, дзе гэта выправіць, і тое ж ідзе ўладальнікам у іх асабістыя чаты каналаў (не часцей за раз на 6 гадзін на заданне). Гэта ў дадатак да паведамлення атрымальніку задання. Выключана — адміністратар даведваецца пра збоі толькі з журнала запускаў. Дзейнічае адразу. |
| `AIHUMMER_SCHEDULE_FAILURE_NOTIFY` | Паведамляць атрымальніку пра збой задання | `bool` | `1` | адразу | Калі заданне па раскладзе не выканалася, таму ж атрымальніку ідзе кароткае паведамленне (пасля першага збою, не часцей за раз у 6 гадзін). Выключана — збоі бачныя толькі ў журнале запускаў. Для асобнага задання гэта можна выключыць у яго форме. Дзейнічае адразу. |
## Security
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_AIRGAPPED` | Ізаляваны рэжым (без інтэрнэту) | `bool` | `0` | адразу | Забараняе агентам хадзіць у інтэрнэт: вэб-пошук, адкрыццё старонак і запыты ідуць толькі да ўнутраных адрасоў і адрасоў са спісаў дазволеных. Уключайце для закрытых контураў без выхаду вонкі. |
| `AIHUMMER_AUDIT_RETENTION_DAYS` | Колькі дзён захоўваць журнал дзеянняў | `int` | `0` | пасля перазапуску | Запісы аўдыт-лога і гісторыі змяненняў налад, старэйшыя за гэты тэрмін, выдаляюцца раз на суткі. 0 або пуста — захоўваць заўсёды. |
| `AIHUMMER_CORS_ORIGINS` | Дазволеныя Origin для CORS | `list` | — | пасля перазапуску | Спіс дазволеных Origin праз коску. Пуста = CORS не дазволены (толькі same-origin). Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_CSP` | Загаловак Content-Security-Policy (перавызначэнне) | `text` | — | пасля перазапуску | Перавызначае загаловак CSP. Пуста = бяспечнае змаўчанне. Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_INBOUND_SECRET` | Ключ сувязі плагінаў каналаў з серверам | `text` | — | пасля перазапуску | Ім падключаныя каналы (Telegram, VK і іншыя) пацвярджаюць, што паведамленні прыйшлі менавіта ад іх. Задаецца аўтаматычна пры ўсталёўцы — мяняць не трэба. Калі ён пусты, сервер адхіляе ўсе каналы, пакуль ключ не зададзены. |
| `AIHUMMER_OPENAI_COMPAT_KEY` | OpenAI-сумяшчальны ўваход: статычны API-ключ | `text` | — | пасля перазапуску | Агульны ключ для праграм, якія падключаюцца да сервера як да OpenAI-сумяшчальнага сэрвісу. Пуста — агульны ключ выключаны; падключацца можна персанальнымі ключамі са старонкі «Ключы API». |
| `AIHUMMER_OPENAI_COMPAT_WORKSPACE` | OpenAI-сумяшчальны ўваход: ID працоўнай прасторы | `text` | — | пасля перазапуску | ID працоўнай прасторы, у якую мапіцца статычная OpenAI-сумяшчальная аўтэнтыфікацыя. Пуста = AIHUMMER_DEFAULT_WORKSPACE_ID. Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_REQUIRE_2FA` | Патрабаваць 2FA для аператараў | `bool` | `0` | адразу | Патрабаваць другі фактар (TOTP/passkey) для аператараў. Калі ўключана, аператарам без 2FA пры ўваходзе прапануецца адразу яго наладзіць (без блакіроўкі, каб уладальнік ніколі не застаўся замкнёным звонку). Ужываецца адразу. |
| `AIHUMMER_REQUIRE_SECURE` | Прымаць толькі абароненыя злучэнні (HTTPS/WSS) | `bool` | `0` | пасля перазапуску | Калі ўключана, звычайныя HTTP-запыты перанакіроўваюцца на HTTPS (для GET/HEAD) або адхіляюцца (403); доступ з localhost заўсёды дазволены, каб не адрэзаць аператара. Улічвае X-Forwarded-Proto ад зваротнага проксі, які завяршае TLS. Ужываецца пры запуску/пасля перазапуску. |
| `AIHUMMER_TRUSTED_PROXIES` | Давераныя проксі | `list` | — | адразу | Калі перад серверам стаіць проксі (nginx, Caddy, балансавальнік), упішыце праз коску яго адрас або сетку, напрыклад 10.0.0.0/8. Тады ў журнале дзеянняў, спісе дазволеных IP і абароне ад падбору пароля будзе бачны сапраўдны адрас наведвальніка. Пуста — улічваецца толькі адрас прамога падключэння, і падмяніць яго нельга. |
## Tools
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_BROWSER_ALLOWED_HOSTNAMES` | Браўзер: выключэнні прыватных вузлоў | `list` | — | адразу | Дакладныя імёны праз коску, без шаблонаў, URL і партоў. Дадатковыя прыватныя выключэнні для native CDP на ўласным серверы, асобна ад web_fetch. |
| `AIHUMMER_BROWSER_ALLOW_PRIVATE_NETWORK` | Браўзер: доступ да прыватнай сеткі | `bool` | — | адразу | Пустое значэнне захоўвае ранейшую палітыку; true або false ўключае правяраны native CDP. Прыватны доступ толькі на ўласным серверы. Loopback, link-local і metadata застаюцца закрытымі. |
| `AIHUMMER_BROWSER_PROFILE_SOCKET` | Сокет кіравання профілямі браўзера | `text` | — | адразу | Неабавязкова. Пуста — шлюз сам знаходзіць кіравальны сокет managed-profiles.sock службы браўзера ў стандартным месцы ўсталявання. Профілі з уваходам на сайты ствараюцца на старонцы «Падключэнні» → «Профілі браўзера». Не URL і не шлях да зыходнага профілю. |
| `AIHUMMER_CODE_EXEC` | Выкананне кода агентам | `enum: off \\\| host \\\| sandbox` | `off` | адразу | Інструмент выканання кода агента (code_exec). «Выключана» — па змаўчанні. «На гэтым серверы» — каманды ідуць на серверы шлюза: пясочніца АС (bubblewrap) хавае сакрэты ўсталёўкі, але агенту ў рэжыме «Без абмежаванняў» бачныя ключы SSH і запіс па-за яго папкай; толькі для давернага сервера. «Толькі ў пясочніцы» — заўсёды ў пясочніцы АС: сакрэты і ключы схаваныя, запіс толькі ў папку агента; без bubblewrap (або вобраза кантэйнера) гэты рэжым не захоўваецца. Што можа запускаць кожны агент, задаецца ў агента: «Агенты → профіль → Інструменты». |
| `AIHUMMER_CODE_EXEC_INTERPRETERS` | Інтэрпрэтатары code-exec (JSON) | `text` | — | адразу | JSON-аб'ект {language: path_to_binary}, напр. {\\"python\\":\\"/usr/bin/python3\\"}. Пуста = аўтавызначэнне. |
| `AIHUMMER_CODE_EXEC_NET_PORTS` | Сеткавыя парты, адкрытыя коду агента | `list` | `53,80,443` | адразу | TCP-парты, да якіх можа падлучацца код агента ў пясочніцы АС (выкананне кода і каманды раскладаў), праз коску. Па змаўчанні 53, 80 і 443: DNS і сайты. Астатнія службы гэтага сервера і яго лакальнай сеткі (база, панэль, браўзер, adb, лакальныя мадэлі, Home Assistant) закрытыя для кода агента. Порт са спіса адкрыты на любым адрасе, у тым ліку на гэтым серверы, таму дадавайце толькі тое, што патрэбна коду, — напрыклад, 22 для SSH. Напішыце any, каб зняць абмежаванне. Агентаў у рэжыме «Без абмежаванняў» яно не тычыцца. Патрэбны Linux 6.7 або навейшы; без яго абмежаванне не дзейнічае, і пра гэта сказана ў «Агенты → Інструменты». Дзейнічае адразу. |
| `AIHUMMER_CODE_EXEC_READ_DIRS` | Каталогі, адкрытыя коду агента для чытання | `list` | — | адразу | Каталогі гэтага сервера, якія можа чытаць код агента: выкананне кода і каманды раскладаў у пясочніцы АС. Праз коску або па адным у радку, напрыклад ~/reports. Можна ўказаць і асобны файл, напрыклад ~/scripts/report.py. Адкрытае тут бачна коду ўсіх агентаў, таму адкрывайце толькі тое, што патрэбна коду. Па змаўчанні пуста: у пясочніцы код бачыць толькі папку свайго агента і сістэмныя каталогі; хатні каталог карыстальніка шлюза, даныя ўстаноўкі, папкі іншых агентаў, ключы і гісторыя каманд схаваныя. Корань, увесь хатні каталог, даныя ўстаноўкі і месцы з ключамі адкрыць нельга. Пісаць у гэтыя каталогі код не можа. Дзейнічае адразу. |
| `AIHUMMER_CODE_EXEC_SANDBOX_IMAGE` | Вобраз пясочніцы code-exec | `text` | — | адразу | Неабавязкова, толькі для рэжыму «Толькі ў пясочніцы»: вобраз кантэйнера Docker замест пясочніцы АС (без сеткі, корань толькі для чытання, ліміты); патрэбны Docker на серверы. Пуста = пясочніца АС (bubblewrap). |
| `AIHUMMER_CODE_EXEC_TIMEOUT_SECONDS` | Ліміт часу выканання кода (секунды) | `int` | `1800` | адразу | Колькі можа працаваць адна каманда агента, уключаючы фонавыя: ад 10 секунд да 24 гадзін. Каманда, якая не адказала за 30 секунд, не абрываецца, а сыходзіць у фон — агент правярае яе інструментам process. Агент можа папрасіць меншы тэрмін, але не большы. |
| `AIHUMMER_DB_QUERY_DSN` | Падключэнне да базы для інструмента «Запыт да базы» | `text` | — | адразу | Радок падключэння да базы даных, якую агент можа чытаць (толькі чытанне), напрыклад postgres://reader:пароль@host/db. Укажыце карыстальніка з мінімальнымі правамі — не ўладальніка базы. Пуста — інструмент выключаны. |
| `AIHUMMER_FS_ROOT` | Корань для інструмента файлавай сістэмы | `text` | — | адразу | Каталог, у межах якога агент чытае файлы сервера (filesystem_read; запісваць файлы агент не можа). Пуста = увесь сервер з правамі карыстальніка шлюза, акрамя сакрэтаў: налад усталёўкі (gateway.env), ключоў SSH/GPG і асяроддзя працэсаў. Каб звузіць доступ, пакажыце каталог. |
| `AIHUMMER_HTTP_ALLOWLIST` | Адрасы для HTTP-запытаў агента | `list` | — | адразу | Спіс хостаў праз коску, да якіх можа звяртацца інструмент http_request. Пуста = дазволены ўсе, акрамя ўнутраных і прыватных адрасоў. |
| `AIHUMMER_HTTP_AUTH_JSON` | Аўтарызацыя http_request (JSON) | `text` | — | адразу | JSON-карта адпаведнасці хоста загалоўкам аўтарызацыі для інструмента http_request, каб не захоўваць токены ў промпце. Пуста = без аўтарызацыі. |
| `AIHUMMER_MCP_SERVERS` | Серверы MCP (JSON) | `text` | — | адразу | JSON-апісанне знешніх MCP-сервераў, чые інструменты падключаюцца да агента. Пуста = знешніх MCP няма. |
| `AIHUMMER_PROJECT_STUDIOS_PUBLIC_NETWORK` | Студыі праектаў: публічная сетка | `bool` | `false` | адразу | Дазволіць публічны HTTP(S) для выбраных пастаўшчыкоў і яўна запытаных загрузак мадэляў. Прыватныя, лакальныя і метададзеныя адрасы застаюцца заблакаванымі. Аўтаномны рэжым мае прыярытэт. Ужываецца адразу. |
| `AIHUMMER_SIDECAR_CLOAKBROWSER` | Браўзер для агента (CloakBrowser) | `bool` | `0` | адразу | Антыдэтэкт-браўзэр (CloakBrowser, прылады browser/computer). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~477 МіБ, з іх Chromium ~207 МіБ) і ставіць службу на хост. Самы цяжкі з сайдкараў - уключайце, толькі калі агенту трэба адкрываць сайты. |
| `AIHUMMER_SIDECAR_SEARXNG` | Вэб-пошук (SearXNG) | `bool` | `0` | адразу | Вэб-пошук (SearXNG, прылада web_search). У камплект пастаўкі НЕ ўваходзіць: уключэнне спампоўвае падпісаны дадатак (~154 МіБ) і ставіць службу на хост, выключэнне спыняе яе і вызваляе месца. Ўстаноўка ідзе ў фоне і займае некалькі хвілін; стан тут паказвае, што рэальна стаіць на серверы. |
| `AIHUMMER_WEBFETCH_ALLOWLIST` | Сайты, якія агент можа адкрываць | `list` | — | адразу | Спіс дамёнаў праз коску, да якіх можа звяртацца інструмент web_fetch. Пуста = дазволены ўсе, акрамя ўнутраных і прыватных адрасоў. |
| `AIHUMMER_WEB_SEARCH_LANGUAGE` | Вэб-пошук: мова вынікаў па змаўчанні | `text` | `auto` | адразу | Мова вынікаў, калі агент яе не назваў: код мовы (ru, en, de…) або auto — вызначыць па самім запыце (падыходзіць амаль заўсёды). Агент можа папрасіць іншую мову ў канкрэтным пошуку. |
| `AIHUMMER_WEB_SEARCH_RESULTS` | Вэб-пошук: вынікаў за адзін пошук | `int` | `5` | адразу | Колькі вынікаў вяртае пошук, калі агент не папрасіў іншую колькасць: ад 1 да 10. Больш вынікаў — паўнейшы адказ, але даўжэйшы кантэкст. |
| `AIHUMMER_WEB_SEARCH_SOURCE` | Крыніца вэб-пошуку | `enum: auto \\\| searxng \\\| provider` | `auto` | адразу | Адкуль агент шукае ў інтэрнэце (інструмент web_search). auto — SearXNG, калі ён усталяваны, інакш убудаваны пошук пастаўшчыка мадэлі. searxng — толькі SearXNG: без яго пошуку няма. provider — убудаваны пошук пастаўшчыка там, дзе ён ёсць, а SearXNG — для астатніх мадэляў. Убудаваны пошук ёсць у Codex (падпіска ChatGPT) і OpenAI (api.openai.com); у GigaChat, YandexGPT і іншых OpenAI-сумяшчальных яго няма — без SearXNG агенты на гэтых мадэлях не шукаюць. Claude (api.anthropic.com і падпіска Claude) шукае ўбудаваным пошукам Anthropic; калі ўліковы запіс яго адхіляе, шлюз піша пра гэта ў журнал і далей прапануе агенту толькі SearXNG. Каму з агентаў можна шукаць, задаецца ў картцы агента, як і раней. Дзейнічае з наступнага ходу. |
| `AIHUMMER_WEB_SEARCH_TIMEOUT_SECONDS` | Тэрмін вэб-пошуку (секунды) | `int` | `30` | адразу | 1–600 секунд на пошук. Карацейшы тэрмін задачы застаецца ў сіле. |
## Updates
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_RESTART_APPLY` | Прымяняць налады, якім патрэбны перазапуск | `enum: quiet \\\| manual` | `quiet` | адразу | quiet (па змаўчанні) — захаваныя налады, якія ўступаюць у сілу толькі з новым запускам шлюза, прымяняюцца самі: шлюз перазапускаецца ў бліжэйшы ціхі момант, калі агенты нічога не робяць і людзі маўчаць не менш за акно цішыні. manual — толькі пазнака «чакае перазапуску» і кнопка. Перазапуск доўжыцца некалькі секунд; размовы і задачы не губляюцца. Дзейнічае адразу. |
| `AIHUMMER_RESTART_QUIET_MINUTES` | Ціхі момант: хвілін цішыні перад аўтаматычным перазапускам | `int 0…1440` | `10` | адразу | Колькі хвілін людзі павінны маўчаць (а агенты нічога не рабіць), каб шлюз сам перазапусціўся і прымяніў захаваныя налады. 0 — як толькі агенты скончаць бягучую працу. 0–1440. Дзейнічае адразу. |
## Web UI (separate port)
| Ключ | Назва | Тып | Па змаўчанні | Калі дзейнічае | Што робіць |
| --- | --- | --- | --- | --- | --- |
| `AIHUMMER_WEBUI_API_BASE` | Адрас сервера для асобна размешчанай панэлі | `text` | — | пасля перазапуску | Патрэбны, толькі калі панэль адкрываецца не з таго ж адраса, што і сам сервер. Укажыце адрас, па якім браўзер дастукаецца да сервера, напрыклад https://api.example.com. Пуста — выкарыстоўваецца публічны адрас сервера, а калі яго няма — лакальны. |
| `AIHUMMER_WEBUI_ENABLED` | Панэль на асобным порце | `bool` | `1` | пасля перазапуску | Уключана — панэль адкрываецца на асобным унутраным порце, які можна закрыць ад інтэрнэту, а публічны порт абслугоўвае толькі праграмы і каналы. Выключыце, каб панэль была зусім недаступная. |
| `AIHUMMER_WEBUI_ORIGIN` | Адрас, па якім адкрываюць панэль | `text` | — | пасля перазапуску | Запоўніце, калі панэль адкрываюць праз проксі або па імені, якое адрозніваецца ад адраса яе порта, напрыклад https://admin.example.com. Сервер дазволіць браўзеру з гэтага адраса звяртацца да яго. Пуста — бярэцца адрас порта панэлі. |
Налад, даступных аператару: 237.