How 3yearszhuang/aervox-harness works
Aervox is a local-first personal assistant spanning desktop, web, and CLI entry points. The principal workflow is a user turn entering the local API, being accepted and executed by the companion conversation runtime, and producing a streamed response; configured model and tools support that work, while local SQLite holds records. Separate capabilities cover memory and diary, proactive reminders, learning/review, and extensibility. The graph also shows core tool-safety layers. Some subsystem links are documented only at product level; unsampled implementation details are omitted.
Main entry points: app.ts Local API · execution.ts Turn execution · worker-host.ts Background worker · tools Tools and plugins
Components 19
User interfaces
- Desktop and web
apps/desktop/src/renderer/src/App.vue - CLI
apps/cli/src/cli.ts - API transport
packages/api-client/src/transport.ts
Assistant runtime
- Local API
apps/api/src/app.ts - Conversation routes
packages/host-runtime/src/modules/companion/conversation/routes.ts - Turn execution
packages/host-runtime/src/modules/companion/conversation/execution.ts - Background worker
apps/worker/src/worker-host.ts
Local data
- SQLite records
packages/repositories/src/client.ts
Product capabilities
- Tools and plugins
packages/host-runtime/src/modules/ecosystem/tools - Memory and recall
packages/host-runtime/src/modules/companion/memory - Diary generation
- Proactive assistance
packages/host-runtime/src/modules/proactive/proactive/routes.ts - Proactive rules
apps/worker/src/proactive/rule-engine.ts - Learning and review
packages/host-runtime/src/modules/learning/learning/routes.ts - Skills and MCP
packages/host-runtime/src/modules/ecosystem
Agent core
- Tool execution pipeline
packages/core/src/tool-pipeline.ts - Tool validation and safety
packages/core/src/host-tool-runtime.ts
Other components
- User
- Configured model service
Connections 18
- User → Desktop and web: uses
README.md - User → CLI: uses
README.md - Desktop and web → Local API: connects to
README.md - CLI → Local API: connects to
README.md - Local API → Conversation routes: routes requests
- Conversation routes → Turn execution: accepts turn
packages/host-runtime/src/modules/companion/conversation/routes.ts - Turn execution → Configured model service: requests generation
README.md - Turn execution → Tools and plugins: invokes tools
README.md - Tools and plugins → Tool execution pipeline: executes calls
- Tool execution pipeline → Tool validation and safety: validates inputs
packages/core/src/tool-pipeline.ts - Local API → SQLite records: persists records
README.md - Background worker → SQLite records: processes scheduled work
README.md - Turn execution → Memory and recall: uses memory
- Background worker → Diary generation: generates diary
- Background worker → Proactive rules: evaluates triggers
- Proactive assistance → Proactive rules: exposes controls
- Local API → Learning and review: serves learning
- Tools and plugins → Skills and MCP: supports extensions