SSD Nodes Learn Hosting plans →
Mwongozo Matt ConnorNa Matt Connor · Imeboreshwa 2026-08-13

Jinsi ya kujiendeshea Iva Telegram AI kwenye VPS

Jifunze kusakinisha Iva v0.3.13 kwenye VPS bila kufungua port au kuhitaji domain. Tumia systemd user services na Obsidian vault kuhifadhi data zako kwa usalama na ufanisi zaidi.

Unachojenga

Iva ni msaidizi wa AI wa Telegram unayeweza kujiendeshea mwenyewe, na ni mmoja wa wachache unaoweza kuupeleka kwenye seva bila kufungua mlango wowote wa kuingia (inbound port) au kuhitaji domain. Hakuna cheti cha TLS kwa sababu hakuna huduma yoyote kwenye seva inayopokea maombi kutoka kwa umma. Huduma hii hupiga simu kwenda Telegram, hudumisha muunganisho ukiwa wazi, na kusoma ujumbe wako kupitia majibu. Kila kitu kingine hutokana na muunganisho huo mmoja wa kutoka (outbound connection).

Iva ina leseni ya MIT na imeandikwa kwa Node. Kumbukumbu yake ni folda ya faili za kawaida za markdown ambazo Obsidian inaweza kuzifungua moja kwa moja, hivyo madokezo inayokuhusu yanabaki kusomeka hata bila programu hiyo. Mwongozo huu unatumia toleo la v0.3.13, lililotolewa tarehe 6 Agosti 2026.

Programu nyingi za kujiendeshea zenyewe huanza na rekodi ya DNS (domain name system) na cheti cha Let's Encrypt kilichotolewa kwa Certbot. Iva huruka hatua hiyo kabisa, ndiyo maana VPS ndogo iliyo nyuma ya firewall inayoruhusu SSH pekee inatosha kabisa kwa ajili ya uwekaji huu.

Kwa nini Iva haihitaji port zilizofunguliwa

iva-telegram-poll.service ni daraja la long polling. Inaita API ya getUpdates ya Telegram na kusubiri jibu, kwa hivyo kila muunganisho huanzia kwenye seva yako. Telegram haiunganishi kurudi nyuma, jambo linalomaanisha kuwa hakuna reverse proxy ya kusanidi na hakuna usasishaji wa cheti wa kusahau.

Wakala (agent) yenyewe husikiliza kwenye port 8723 ya 127.0.0.1 pekee. Nyaraka za mradi huu ziko wazi kuhusu hili: usifungue port 8723, na reverse proxy yoyote utakayoiweka mbele yake lazima idumishe hitaji la bearer token. Hakikisha anwani ya bind baada ya usakinishaji.

sudo ss -tlnp | grep 8723

Anwani lazima isomeke 127.0.0.1:8723. Anwani ya wildcard kama 0.0.0.0:8723 inamaanisha kuwa njia za HTTP za wakala zinaweza kufikiwa kutoka kwenye Internet, na unapaswa kurekebisha hilo kabla ya kutuma chochote cha faragha kwa bot.

Kwa hivyo firewall inabaki imefungwa. Ruhusu SSH kabla ya kuiwasha, kwa sababu ufw enable bila sheria ya SSH itafunga session unayotumia kuandika.

sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status

Kile ambacho kisakinishi cha mstari mmoja hufanya kwa hakika

Ukurasa wa mbele wa mradi huu unakupa amri moja inayopitisha script kutoka GitHub kwenda kwenye bash. Soma script hiyo kwanza, kwa sababu inafanya mengi zaidi ya kusakinisha programu moja.

curl -fsSL https://raw.githubusercontent.com/smixs/iva/main/install.sh -o iva-install.sh
less iva-install.sh
  • Inasakinisha vifurushi vya mfumo kwa kutumia kiongozi wa vifurushi aliyegunduliwa: git, gh, python3, ffmpeg, pandoc na poppler-utils.
  • Inatengeneza swapfile ya 2 GB kwenye /swapfile wakati seva ina chini ya 1.5 GB ya RAM na haina swap, kwa sababu ujenzi (build) husitishwa bila hiyo.
  • Inasakinisha nvm, kisha Node 24, ambayo ndiyo toleo la chini kabisa ambalo Iva hufanyia kazi.
  • Inasakinisha uv, kiongozi wa vifurushi vya Python, kwenye ~/.local/bin.
  • Inanakili (clone) hazina (repository) kwenye ~/iva na kuendesha npm ci.
  • Inasakinisha vifurushi viwili vya npm vya kimataifa, agent-browser (ambacho kisha hupakua Chromium) na @googleworkspace/cli.
  • Inaendesha mchawi wa usanidi (setup wizard), inajenga mradi, na kutengeneza vault.
  • Inaandika amri ya iva kwenye ~/.local/bin na kusakinisha unit za mtumiaji za systemd.

Hiyo ni programu nyingi kwa mstari mmoja tu. Pia inaelezea maelekezo ya README ya kusakinisha kama mtumiaji wa kawaida na si kama root: zana ya shell ya wakala (agent) baadaye huendeshwa kwa kutumia haki ambazo kisakinishi kilikuwa nazo. Script hiyo huita sudo kwa ajili ya usakinishaji wa vifurushi na swapfile pekee, kupitia kisaidizi kimoja kinachoendesha amri moja kwa moja wakati tayari wewe ni root.

Unda mtumiaji maalum kabla ya kusakinisha

Ipa Iva akaunti yake mwenyewe. Wakala huyu huendesha amri za shell kwenye host kupitia child_process ya Node, bila container wala sandbox, kwa hivyo akaunti inayoendesha mchakato huu ndiyo mpaka wa usalama.

sudo adduser --disabled-password --gecos "" iva
sudo usermod -aG sudo iva
sudo install -d -m 700 -o iva -g iva /home/iva/.ssh
sudo cp ~/.ssh/authorized_keys /home/iva/.ssh/authorized_keys
sudo chown iva:iva /home/iva/.ssh/authorized_keys
sudo chmod 600 /home/iva/.ssh/authorized_keys
sudo loginctl enable-linger iva

enable-linger ni muhimu kwa sababu Iva huendeshwa kama user units za systemd. Bila linger, systemd husimamisha huduma za mtumiaji huyo pindi tu kikao chake cha mwisho kinapofungwa, kwa hivyo msaidizi huyu angekufa unapofunga SSH. Kanuni hiyo hiyo inatawala huduma na timer yoyote unayoiandika mwenyewe chini ya systemd.

Akaunti hii inahitaji sudo wakati tu kisakinishi kinapoongeza vifurushi. Iondoe baada ya usakinishaji kukamilika.

sudo deluser iva sudo

Ingia kama mtumiaji huyo moja kwa moja kupitia SSH. Shell unayoingia kwa kutumia sudo -iu iva haina DBUS_SESSION_BUS_ADDRESS wala XDG_RUNTIME_DIR zilizowekwa, kwa hivyo kila amri ya systemctl --user itashindwa na kutoa Failed to connect to bus. Kuchora mpaka huu ni zoezi sawa na kuendesha huduma chini ya watumiaji wenye upendeleo mdogo.

Sakinisha toleo lililofungwa (pinned release) badala ya kutumia pipe kwenda kwenye bash

Kisakinishi hiki kina sifa muhimu. Kabla hakijafanya clone ya kitu chochote, huangalia kama saraka (directory) ambayo hati hiyo ipo ina package.json iliyo na "eve". Ikiwa ipo, hujenga (build) toleo hilo lililopo na kuruka hatua ya clone. Kwa hivyo, unaweza kuchagua toleo unalotaka wewe mwenyewe.

git clone --branch v0.3.13 https://github.com/smixs/iva.git ~/iva
cd ~/iva
git log -1 --oneline
bash install.sh

Sasa unajua ni msimbo (code) upi unaoendeshwa. Hujui hilo wakati hati inafanya clone ya main katika hali yoyote ile iliyopo wakati huo. Iva ilitoa matoleo matano kati ya tarehe 4 na 6 Agosti 2026, kwa hivyo main ya asubuhi hii na main ya mchana huu si programu ile ile.

Checkout ya tag huacha git katika hali ya detached HEAD. Hiyo hufanya kazi vizuri, lakini elewa kikomo chake: iva update husogeza checkout mbele kwenye tawi la sasisho (update branch), kwa hivyo kufunga toleo (pin) ni hatua ya kuanzia inayojulikana na si kugandisha kwa kudumu. iva version huchapisha toleo la kifurushi na git commit, ili uweze kuona kila wakati mahali ulipo.

Ili kuhamia kwenye toleo la baadaye kwa makusudi, orodhesha tag, weka IVA_TAG kwenye ile uliyochagua, kisha endesha kisakinishi kutoka ndani ya checkout hiyo tena.

cd ~/iva
git fetch --tags
git tag --list 'v*' | sort -V | tail -5
IVA_TAG=v0.3.13
git checkout "$IVA_TAG"
bash install.sh --skip-setup
iva restart

--skip-setup huzuia mchawi (wizard) kuendeshwa tena juu ya .env ambayo tayari inafanya kazi.

Hatua tano za mchawi, na funguo zinazohitajika

  1. Mtoa huduma wa modeli na modeli yenyewe. MODEL_PROVIDER inakubali opencode, ollama, openrouter au codex. Mchawi huthibitisha ufunguo papo hapo na kuorodhesha modeli ambazo mpango wako unatoa.
  2. Sauti na utafutaji. Ufunguo wa Deepgram hubadilisha madokezo ya sauti kuwa maandishi. Ufunguo wa utafutaji wa wavuti (Tavily, Exa, Parallel au Brave) ni wa hiari.
  3. Token ya Telegram bot kutoka kwa @BotFather, inayothibitishwa dhidi ya endpoint ya getMe.
  4. Udhibiti wa ufikiaji. Unatuma ujumbe kwa bot yako, na mchawi husoma kitambulisho chako cha mtumiaji (numeric user ID) kutoka getUpdates.
  5. Mipangilio ya mfumo. Eneo la saa la IANA, saraka ya vault, na port ya ndani, ambayo ni 8723 kwa chaguo-msingi.

Mbili kati ya hizo ni utegemezi ambao mfumo wa "amri moja" huuficha. Iva haiji na modeli yoyote, kwa hivyo inahitaji mpango wa modeli unaolipishwa au ufunguo wa API kabla ya kujibu chochote. Pia, haibadilishi sauti kuwa maandishi yenyewe, kwa hivyo madokezo ya sauti yanahitaji huduma tofauti. Modeli ya nova-3 ya Deepgram pamoja na DEEPGRAM_LANGUAGE=multi hutambua lugha, na akaunti mpya za Deepgram hupata mikopo ya kuanzia inayotosheleza matumizi ya kibinafsi ya miezi kadhaa. Maandishi hufanya kazi kwa kutumia ufunguo wa modeli pekee. Sauti pekee ndiyo inayotegemea Deepgram.

Kagua kile ambacho mchawi amekiandika.

grep -E '^(MODEL_PROVIDER|TELEGRAM_ALLOWED_USER_IDS|ASSISTANT_VAULT_DIR|IVA_PORT)=' ~/iva/.env
ls -l ~/iva/.env

ls inapaswa kuchapisha -rw-------, mode 0600, kwa sababu faili hiyo huhifadhi kila ufunguo ulioubandika. TELEGRAM_ALLOWED_USER_IDS lazima iwe na kitambulisho chako cha namba. Orodha ya kuruhusiwa (allowlist) hufungwa ikikosa data, kwa hivyo thamani tupu inamaanisha Iva hamjibu mtu yeyote.

Modeli husomwa mara moja, wakati mchakato unapoanza. Kuhariri MODEL_PROVIDER au jina la modeli katika .env hakubadilishi chochote hadi utakapokimbiza iva restart. Kwenye openrouter jina la modeli ni slug ya mtoa huduma kama vile anthropic/claude-sonnet-4.5, si jina tupu. Kwenye codex hakuna ufunguo wa API hata kidogo: iva login huingia kwenye usajili uliopo wa ChatGPT.

Je, Iva inagharimu kiasi gani kuendesha kila mwezi

ChartMonthly cost of a self-hosted Iva, published list prices, August 2026
The data behind this chart
[
  {
    "plan": "Small VPS, always on",
    "usd_per_month": 5
  },
  {
    "plan": "OpenCode Go model plan",
    "usd_per_month": 5
  },
  {
    "plan": "Ollama Cloud model plan",
    "usd_per_month": 20
  },
  {
    "plan": "Deepgram voice, starter credits",
    "usd_per_month": 0
  },
  {
    "plan": "Tavily web search, free tier",
    "usd_per_month": 0
  },
  {
    "plan": "Cheapest complete setup",
    "usd_per_month": 10
  }
]

Hizi ni bei zilizochapishwa kwenye orodha kuanzia Agosti 2026, si vipimo halisi. VPS ndogo kwa 5 dola za Marekani pamoja na mpango wa OpenCode Go kwa 5 dola ndiyo usanidi kamili wa bei nafuu zaidi, takriban 10 dola kwa mwezi. Ollama Cloud ni chaguo jingine la bei isiyobadilika kwa 20 dola, na mifano yake ya frontier hutoza gharama za ziada kulingana na matumizi juu ya mpango huo. Sauti inagharimu 0 wakati mikopo ya kuanzia ya Deepgram bado inatumika.

OpenRouter haina nafasi hapa kwa sababu inatumia mfumo wa kulipia unavyotumia (pay as you go), kwa hivyo bili yako hufuata matumizi yako. Hilo ndilo chaguo la kufuatilia: msaidizi anayebeba dirisha la muktadha la token 131072 katika kila hatua anaweza kuzidi gharama ya mpango wa bei isiyobadilika haraka. Weka kigezo cha dirisha la muktadha kwenye ukubwa halisi wa modeli, kwa sababu thamani iliyotiwa chumvi hupoteza token tu.

Huduma mbili na vipima muda viwili

  • iva.service huendesha wakala (agent) wenyewe.
  • iva-telegram-poll.service huendesha daraja la long polling linalowasiliana na Telegram.
  • iva-memory-doctor.timer huanza saa 05:00 na kuendesha kazi ya matengenezo ya kila usiku kwenye vault.
  • iva-update-check.timer huanza saa 10:00 na kuangalia kama kuna release mpya zaidi.
  • iva-telegram-userbot.service ipo tu ikiwa umesanidi proxy ya hiari ya Telethon.
iva status
systemctl --user status iva.service iva-telegram-poll.service
systemctl --user list-timers
iva logs poll

iva status huripoti huduma zote mbili na vipima muda viwili vya ufuatiliaji. systemctl --user list-timers huchapisha muda wa kuanza unaofuata kwa kila kipima muda, hii ndiyo njia ya kuthibitisha kuwa daktari wa kumbukumbu (memory doctor) ataendesha kazi usiku wa leo. Huduma zote mbili zinapaswa kuwa katika hali ya active (running). Ikiwa moja inajianzisha upya mara kwa mara, journalctl --user -u iva.service -n 100 hutoa sababu.

Mgawanyo huu ni muhimu unapofanya debugging. Daraja linaweza kuwa hai na kufanya polling wakati wakala amezimwa, na hapo Telegram itapokea ujumbe wako lakini hakuna kitakachojibu. iva logs poll hufuatilia daraja, iva logs hufuatilia wakala, kwa hivyo logi hizi mbili zitakuambia ni nusu ipi iliyoharibika.

Mahali ambapo Obsidian vault huhifadhiwa, na jinsi ya kuifanyia backup

ASSISTANT_VAULT_DIR kwa kawaida huchagua vault ndani ya saraka ya usakinishaji, kwa hivyo kumbukumbu hukaa kwenye ~/iva/vault. Hii ni git repository inayojitegemea, tofauti na msimbo wa programu, jambo linalokuwezesha kusasisha Iva bila kugusa madokezo yako.

  • vault/CORE.md huhifadhi ukweli wa kudumu na mapendeleo ya kudumu, yakiwa na ukomo wa herufi 1200, na husafiri katika kila system prompt.
  • vault/daily/YYYY-MM-DD.md ni nakala ya mazungumzo ya siku, inayoshughulikiwa kama faili ya kuongeza data pekee (append only).
  • vault/cards/ huhifadhi kadi zilizochapwa kwa ajili ya anwani, miradi, maamuzi, mawazo na madokezo.
  • vault/summaries/daily/, weekly/, monthly/ na yearly/ huhifadhi muhtasari (rollups).
  • vault/attachments/ huhifadhi faili kulingana na tarehe, na vault/.graph/ huhifadhi grafu ya viungo (link graph).
  • vault/schema.json hufafanua aina za kadi na sheria za kufutika (decay rules).

Muhtasari huendeshwa kwa ratiba ndani ya mchakato. Mchakato wa kila siku saa 04:00 hubadilisha mazungumzo ya jana kuwa kadi na muhtasari, kisha huandika upya CORE.md; baada ya hapo, michakato ya kila wiki, kila mwezi na kila mwaka hubana data hizo kwa zamu. Saa 05:00, daktari wa kumbukumbu (memory doctor) huendesha mchakato wa kideterministi bila kuhusisha model yoyote: hutekeleza schema, hujenga upya grafu ya viungo, huzalisha upya index, kisha hufanya commit na push.

Push hiyo ndiyo backup yako, na ndiyo hatua ambayo watu wengi husahau. Ikiwa vault haina git remote, daktari hujaribu kuunda private GitHub repository kupitia gh, ambayo inahitaji GitHub CLI iliyothibitishwa.

gh auth login
systemctl --user start iva-memory-doctor.service
cd ~/iva/vault && git log --oneline -3

Commit yenye tarehe ya leo inamaanisha kuwa mchakato umekamilika na vault imehifadhiwa. Onyo la gh not available kwenye logi linamaanisha kinyume chake: vault inatunzwa lakini haitoki kamwe kwenye seva, kwa hivyo VPS ikifa, kumbukumbu zako hupotea nayo.

Hifadhi nakala unayoimiliki wewe mwenyewe pia.

tar czf ~/iva-vault-backup.tgz -C ~/iva vault

Nakili faili hiyo kutoka kwenye seva kwa kutumia scp, kisha uifute kutoka kwenye seva. Ili kusoma kumbukumbu katika Obsidian, elekeza Obsidian kwenye clone ya vault repository hiyo. Wikilinks na backlinks hufanya kazi kama zilivyo, na vivyo hivyo kwa mwonekano wa grafu (graph view). Kuhariri kadi na CORE.md kwa mkono ni salama. Usiguse MOC.md na .graph/, kwa sababu mchakato wa usiku huzalisha upya faili zote mbili.

Chukulia vault kama kumbukumbu ya maisha yako

Saraka hiyo ni rekodi ya tarehe ya uliyosema, uliyekutana nao, na uliyoamua, kwenye mashine unayokodisha. Mambo mawili yanatokana na hili.

Self-hosting huhamisha hifadhi, si uchakataji. Kila zamu huenda kwa mtoa huduma wako wa model, na kila ujumbe wa sauti huenda kwa Deepgram. Vault ni yako. Maombi hayo si ya faragha kutoka kwa makampuni yanayoyahudumia. Kuendesha safu ya kumbukumbu wewe mwenyewe, kama ilivyo kwa seva ya kumbukumbu ya Mem0 kwenye VPS yako mwenyewe, ina umbo lilelile: hifadhi ni ya ndani wakati wito wa model bado unatoka nje ya seva. Ikiwa mada ni nyeti sana kwa upande wa tatu, iweke nje ya chat.

Ufikiaji wa akaunti hiyo ni vault nzima. Zana za Iva huendeshwa kwa asili kwenye host kupitia fs na child_process za Node, bila Docker na bila sandbox, kwa hivyo zamu iliyotekwa ina ufikiaji wowote ambao mtumiaji wa huduma anao. Ndiyo maana akaunti haishiki sudo baada ya usakinishaji, na kwa nini allowlist inastahili umakini zaidi kuliko inavyoonekana: ndiyo lango linaloamua ujumbe wa nani unakuwa amri kwenye seva yako. Ikiwa unataka msaidizi mfukoni mwako bila kufungua chochote, huu ni muundo uleule unaotumiwa kufikia wakala wa Hermes uliopo kwenye seva yako kutoka kwa simu yako, huku mteja wa chat akifanya kazi ambayo endpoint ya umma ingefanya vinginevyo.

Nini kinaharibika, na ujumbe utakaouona

Build killed, exit 137. Kernel's out of memory killer imesitisha build. Kisakinishi huongeza swap tu ikiwa RAM ni chini ya 1.5 GB na hakuna swap iliyopo, kwa hivyo iongeze wewe mwenyewe na uendeshe kisakinishi tena.

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
free -h

Failed to connect to bus. Kila amri ya systemctl --user huchapisha ujumbe huu wakati shell haina user session bus, ambayo ndiyo inayotolewa na sudo -iu iva. Fungua session ya kawaida ya SSH kama mtumiaji huyo, au fanya export ya XDG_RUNTIME_DIR=/run/user/$(id -u iva) kabla ya amri hiyo.

Bot inakupuuza. TELEGRAM_ALLOWED_USER_IDS haina kitu, na allowlist imefungwa kwa chaguo-msingi. Itumie bot ujumbe: itajibu kwa ID yako ya namba na si kitu kingine. Weka ID hiyo kwenye .env na uendeshe iva restart.

Bot inanyamaza mara tu baada ya iva config. Wizard inaweza kuhamisha IVA_PORT bila kusasisha ASSISTANT_HOST, kwa hivyo bridge huunganishwa kwenye port ambayo haina jibu. Linganisha mistari hiyo miwili, kisha uanzishe upya.

grep -E '^(IVA_PORT|ASSISTANT_HOST)=' ~/iva/.env
iva restart

Ujumbe wa sauti haupati jibu. Telegram's Bot API inakataa kupakua faili kubwa kuliko 20 MB, kwa hivyo bridge haipokei sauti ndefu na haina kitu cha kutuma kwa Deepgram. Gawanya faili kabla ya kuituma.

ffmpeg -i long.ogg -f segment -segment_time 600 -c copy part-%02d.ogg

Turn inakwama na haijibu kamwe. Hali ya workflow iliyokwama huendelea kuwepo hata baada ya kuanzisha upya na hujipanga kwenye foleni yenyewe, kwa hivyo kuanzisha upya pekee hakuitatui. iva reset hutenga hali hiyo na kuanzisha upya huduma zote mbili. /new kwenye chat huanzisha mazungumzo mapya.

Chromium inafeli kwenye Ubuntu 24.04. Ubuntu 24.04 inazuia unprivileged user namespaces kupitia AppArmor, kwa hivyo sandbox ya Chromium haiwezi kuanza na agent-browser inafeli. Kisakinishi hupita kizuizi hiki kwa kuandika "--no-sandbox" ndani ya ~/.agent-browser/config.json. Fahamu kuwa hii ipo. Inapunguza usalama wa browser, ambayo ni sababu nyingine kwa nini akaunti hiyo haipaswi kumiliki kitu kingine isipokuwa Iva.

FAQ

Je, ninahitaji domain au port iliyo wazi ili ku-self-host Iva?

Hapana. Iva huwasiliana na Telegram kupitia long polling: iva-telegram-poll.service hupiga getUpdates na kusubiri, kwa hivyo kila muunganisho hutoka nje (outbound) kutoka kwenye seva yako. Hakuna kinachohitajika kufika kwenye seva kutoka nje, kwa hivyo huhitaji DNS record wala cheti chochote. Port ya HTTP ya wakala huyo, 8723, hufungwa kwenye 127.0.0.1, na nyaraka za mradi zinakuelekeza usiiweke wazi hadharani. Firewall inayoruhusu SSH pekee ndiyo usanidi sahihi.

Gharama ya kuendesha Iva kila mwezi ni kiasi gani?

Kulingana na bei zilizochapishwa mnamo Agosti 2026, VPS ndogo kwa 5 dola pamoja na mpango wa bei nafuu zaidi wa flat rate kwa 5 dola hufikia takriban 10 dola za Marekani kwa mwezi. Ollama Cloud hugharimu 20 dola badala yake, na hutoza gharama za ziada kwa miundo ya frontier. Credits za kuanzia za Deepgram hugharamia sauti mwanzoni, na viwango vya utafutaji wa wavuti vina posho za bure. OpenRouter hutumia mfumo wa kulipia unavyotumia (pay as you go), kwa hivyo haina gharama isiyobadilika ya kila mwezi.

Iva huhifadhi data yangu wapi, na ninaifanyia vipi backup?

Katika ~/iva/vault kwa chaguo-msingi, iliyowekwa na ASSISTANT_VAULT_DIR. Hii ni git repository binafsi tofauti ya faili za markdown: CORE.md, daily/YYYY-MM-DD.md, cards/ na summaries/. Daktari wa kumbukumbu wa saa 05:00 hufanya commit na push, jambo ambalo husaidia tu ikiwa repository ina remote, kwa hivyo endesha gh auth login au ongeza remote yako mwenyewe wakati wa usanidi. Weka nakala ya nje ya mtandao pia kwa kutumia tar czf ~/iva-vault-backup.tgz -C ~/iva vault na uhamishe faili hiyo kutoka kwenye seva.

Je, data yangu ni ya faragha nikijihifadhia (self-host) Iva?

Hifadhi ni yako. Uchakataji si wako. Vault hubaki kwenye diski yako hadi utakapofanya push, na .env hubaki katika mode 0600 ikiwa inamilikiwa na mtumiaji wa huduma hiyo. Miito ya miundo (model calls) na unukuzi wa sauti ni API za wingu, kwa hivyo ujumbe huo hupita kwa mtoa huduma wako wa miundo na Deepgram. Iva ina leseni ya MIT, kwa hivyo unaweza kusoma hasa kile inachotuma na kukibadilisha. Orodha ya kuruhusiwa (allowlist) ya Telegram hufungwa ikishindwa (fail closed), kumaanisha kuwa TELEGRAM_ALLOWED_USER_IDS tupu huwazuia wote, wewe ukiwemo.

Iva inasaidia watoa huduma gani wa miundo (model providers)?

MODEL_PROVIDER inakubali opencode (OpenCode Go), ollama (Ollama Cloud), openrouter na codex. OpenRouter inachukua vendor slug kama vile anthropic/claude-sonnet-4.5 na inatoa chaguo pana zaidi la miundo. codex huingia kwenye usajili uliopo wa ChatGPT kwa kutumia iva login na haitumii API key. Weka mtoa huduma, weka context window inayolingana na ukubwa halisi wa muundo huo, kisha endesha iva restart, kwa sababu muundo huo husomwa mara moja wakati mchakato unapoanza.