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 發布版本後會顯示在這裡。
AI-powered investment memo generation and management
翻譯準備中
正在載入完整 README。 以下為已儲存的摘錄。
AI-powered investment memo generation for venture capital firms.
This is the workspace for MemoPop's client surface — the desktop app, the marketing site, and (eventually) a hosted web app. The agent engine that does the actual memo generation lives in a sibling repo: investment-memo-orchestrator. Together they make a complete product, but they're versioned independently.
The orchestrator is a Python multi-agent system (LangGraph + 30+ specialized agents) that generates the actual memos. It exposes a FastAPI HTTP sidecar that memopop-native drives over localhost:8765.檢視完整 README ↗AI-powered investment memo generation for venture capital firms.
This is the workspace for MemoPop's client surface — the desktop app, the marketing site, and (eventually) a hosted web app. The agent engine that does the actual memo generation lives in a sibling repo: investment-memo-orchestrator. Together they make a complete product, but they're versioned independently.
memopop-ai/
├── apps/
│ ├── memopop-native/ # Tauri 2 desktop app — the substantive client
│ ├── memopop-site/ # Astro marketing site
│ └── memopop-web-app/ # SvelteKit web app (placeholder; hosted-mode home)
│
├── packages/
│ └── shared-styles/ # Tailwind config & design tokens shared across apps
│
├── changelog/ # Monorepo-level changelog (integration narrative)
├── context-v/ # Specs, explorations, plans, reminders
└── README.md
investment-memo-orchestratorThe orchestrator is a Python multi-agent system (LangGraph + 30+ specialized agents) that generates the actual memos. It exposes a FastAPI HTTP sidecar that memopop-native drives over localhost:8765.
It lives in a separate repo for two reasons:
generate_memo() over HTTP. It's not a memopop-specific feature.The Tauri app spawns the FastAPI sidecar as a child process pointed at the user's locally-cloned orchestrator. See context-v/explorations/Moving-an-Agent-Orchestrator-to-an-API.md for the design rationale.
curl -fsSL https://bun.sh/install | bashrustup), plus the orchestrator cloned and uv pip install -e .'d at a sibling path. See its README for orchestrator setup.bun install
bun run dev:native
Window opens, the outline gallery renders once you've anchored an orchestrator path. The first action that needs Python (POST /memos) auto-spawns the FastAPI sidecar; subsequent calls reuse it.
To produce a release binary (.app / .dmg / .exe / .AppImage, depending on host OS):
bun run build:native
bun run dev:site
bun run dev:app
| Layer | Technology |
|---|---|
| Package manager | Bun + workspaces |
| Marketing site | Astro |
| Web app | SvelteKit + Svelte 5 (runes) |
| Desktop app | Tauri 2 + SvelteKit (static adapter) + Svelte 5 (runes) |
| Desktop backend | Rust — reqwest, tokio, tauri-plugin-shell, plugins (dialog, store, fs, opener) |
| Agent engine | Python + LangGraph (lives in sibling investment-memo-orchestrator) |
| Styling | Tailwind CSS (shared config) |
| Deployment | Vercel (sites); the desktop app installs locally |
| Auth (future) | SuperTokens (Railway) |
| Database (future) | Baserow (Railway) |
memopop-native — Tauri 2 desktop appThe substantive client. Drives the orchestrator's HTTP API end-to-end:
templates/outlines/ → optionally drill into outline detail → create a firm (snake_case slug + idempotent .gitignore handling) → capture deal details (URL, optional deck PDF, mode).JobView with three live panes:
⏹ Stop in the JobView header. Routes through the Rust dispatcher directly to SidecarManager::shutdown() — bypasses Python entirely so it works when the sidecar is wedged in a retry loop.SidecarManager lazy-spawns {repoPath}/.venv/bin/python -m src.server, polls /healthz, and on every subsequent call probes health first — dropping stale handles and respawning fresh if the sidecar is dead, hung, or crashed.See apps/memopop-native/changelog/ for the foundation entries (2026-04-27_01 through _03) and this monorepo's changelog/ for the integration story.
memopop-site — Astro marketing siteMarketing copy, changelog aggregation, thought-leadership, documentation. Built with Astro for SEO and zero-JS-by-default performance.
memopop-web-app — SvelteKit web app (placeholder)Reserved for the future hosted-mode home, when the FastAPI sidecar lives behind a deployed URL instead of in-process. Not yet wired into the user journey.
@memopop/shared-stylesTailwind config and design tokens shared across Astro and Svelte apps.
以上為 README 的開頭部分。其餘內容請閱讀原文。 檢視完整 README ↗