Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Working demo for Bahrain Tender Board 3/2026/SIO — Chat Bot Solution, Social Insurance Organization, Kingdom of Bahrain. Built by Nanta Tech.
Needs Node 18 or newer. Nothing to install.
cp .env.example .env # add your Anthropic API key
npm start # http://localhost:3000
In VS Code you can also press F5 — the launch config starts the server and opens the browser.
The key stays in .env on the server side; the browser calls /api/chat and never sees it.
No speech key is needed. Read-aloud uses the browser's own voice when one is installed for the
language (Edge has natural Arabic voices); otherwise the server fetches free audio through
/api/tts, so Arabic also plays in Chrome, Firefox and Safari. Speech input uses the browser's
built-in recognition in Chrome, Edge and Safari, and in Firefox runs Whisper inside the page
(a one-time ~75 MB model download). Both need internet access. The free read-aloud source is
unofficial — the delivery build should use a contracted speech service.
Roughly four minutes, and it lights all eight items on the coverage rail:
Reset demo data in the bottom-left restores the starting state between demos.
server.js Node server + Anthropic proxy (no dependencies)
public/index.html Markup
public/styles.css Styling
public/app.js Chat engine, rule engine, KB, logs, dashboard
CLAUDE.md Context for Claude Code
.env.example Copy to .env
Integration with SIO core systems, SSO, production security hardening, hosting and Bahrainisation compliance are addressed in the technical bid. The demo states this on screen rather than implying coverage it does not have.