Prerequisites¶
What you need installed on the host before running Jarvis.
Host requirements¶
| Requirement | Why |
|---|---|
| Docker (running) | Runs the PocketBase, agent, and scheduler containers. |
| fvm (Flutter Version Management) | Manages the pinned Flutter SDK used to run the app. |
The Flutter SDK version is pinned in .fvmrc at the repo root:
{
"flutter": "3.44.9"
}
Install fvm, then the pinned SDK¶
Install fvm for your platform (see the fvm documentation). Then, from the repo root, install the pinned Flutter SDK:
fvm install
This reads .fvmrc and installs Flutter 3.44.9 if it isn't already on the host.
Note
This documentation focuses on macOS and Linux hosts. The Dockerized backend stack (PocketBase, agent, scheduler) is cross-platform, but the host-only connectors — iMessage and homelab — and the MCP server run outside Docker via launchd, and need macOS. See Operating → Host agents & launchd.
Verify with ./jarvis doctor¶
Once Docker and fvm are installed, run:
./jarvis doctor
It reports:
- whether Docker is present and running
- whether a local
.envfile exists - whether fvm is present, and the Flutter version pinned in
.fvmrc
Example output on a fully set-up host:
Docker: present
docker running: yes
.env present: yes
fvm present; .fvmrc pins Flutter 3.44.9
If anything is missing, doctor tells you what before you try ./jarvis up.