73 lines
3.1 KiB
Markdown
73 lines
3.1 KiB
Markdown
# Jarvis documentation
|
|
|
|
Jarvis is a local-first voice and computer-use assistant for Ubuntu GNOME,
|
|
released by HoneyPeer, LLC under AGPLv3 or later. This directory is the
|
|
maintained technical reference for the repository. The Debian/npm package id
|
|
remains `jarvis-qvac`.
|
|
|
|
## Start here
|
|
|
|
| Need | Document |
|
|
| --- | --- |
|
|
| Understand the system | [Architecture](architecture.md) |
|
|
| Run it locally | [Operations](operations.md) and [Local demo](local-demo.md) |
|
|
| Understand the voice loop | [Voice pipeline](voice-pipeline.md) |
|
|
| Change voice, listening, or appearance | [Settings](settings.md) |
|
|
| Brand tokens and HUD styling | [Brand](brand.md) |
|
|
| Build desktop control | [Computer use](computer-use.md) |
|
|
| Integrate QVAC | [QVAC runtime](qvac-runtime.md) |
|
|
| Run the packaged runtime | [Bare runtime](bare-runtime.md) |
|
|
| Understand the agent | [Harness integration](harness-integration.md) |
|
|
| Use the D-Bus API | [API reference](api.md) |
|
|
| Build and release with Gitea | [CI and releases](ci-gitea.md) |
|
|
| Review privacy and safety | [Security and privacy](security-privacy.md) |
|
|
| Test changes | [Testing](testing.md) |
|
|
| Diagnose failures | [Troubleshooting](troubleshooting.md) |
|
|
| Track implementation | [Roadmap](ROADMAP.md) |
|
|
| Upgrade an install | [Migration notes](MIGRATIONS.md) |
|
|
| Release a build | [Release checklist](RELEASE.md) |
|
|
| Hardware and GPU fit | [Hardware compatibility](hardware-compatibility.md) |
|
|
| Capability matrix | [Capabilities](capabilities.md) |
|
|
| Development workflow | [Development](development.md) |
|
|
| Vendored harness layout | [Agent harness map](agent-harness-map.md) |
|
|
| Voice acceptance | [Voice acceptance](voice-acceptance.md) |
|
|
| Computer-use acceptance | [CU acceptance](cu-acceptance.md) |
|
|
|
|
## Runtime promise
|
|
|
|
The project has one cognition loop and one QVAC authority. `jarvisd` owns the
|
|
QVAC SDK worker, model lifecycle, GPU policy, scheduler, and cancellation. The
|
|
vendored harness supplies planning, sessions, memory, and the tool-loop behavior.
|
|
The GNOME Shell extension only renders state and forwards desktop facts. It
|
|
does not load models or perform inference.
|
|
|
|
```mermaid
|
|
flowchart LR
|
|
U[User] --> G[GNOME Shell extension]
|
|
G <--> D[jarvisd]
|
|
D --> H[Vendored agent harness]
|
|
D --> Q[Single QVAC master]
|
|
D --> C[Computer-use backend]
|
|
D --> A[PipeWire audio]
|
|
Q --> GPU[GPU inference]
|
|
```
|
|
|
|
## Implementation truth
|
|
|
|
The roadmap distinguishes implemented behavior (`[x]`), partial behavior
|
|
(``[~]``), and planned behavior (`[ ]`). A doctor command or acceptance test
|
|
is the source of truth for host-dependent capabilities. In particular, GPU
|
|
visibility, wake-word bridge availability, portal consent, and live EIS input
|
|
must be verified on the target GNOME session.
|
|
|
|
## Documentation conventions
|
|
|
|
- Commands are run from the repository root unless stated otherwise.
|
|
- Paths beginning with `~` are user-scoped paths.
|
|
- `jarvisd` means the user service and its packaged Bare process.
|
|
- “Master” means the singleton in `daemon/qvac-master.js`.
|
|
- Mermaid diagrams use Gitea-compatible fenced Markdown.
|
|
|
|
Jarvis is released by HoneyPeer, LLC under the GNU Affero General Public
|
|
License v3 or later. See [LICENSE](../LICENSE) and [COPYRIGHT](../COPYRIGHT).
|