How to talk to Jarvis, what it can and can't do, and what to do when something looks off.
Technical reference (hosts, config, backups, updates): Jarvis service page.
In one sentence: Jarvis is a private assistant that runs on your own hardware. You message it from your phone through the ntfy app, and nothing you say goes to a cloud AI. It can read your Proxmox cluster, Ceph, backups, Home Assistant, cameras and wiki. By itself it can change only three small things (its own notes, its reminders and your shopping list); for anything bigger (start, stop or restart a container, edit the backup job, run a command) it asks you first and does nothing until you reply yes.
https://ntfy.codycodez.com and sign in as cody.jarvis. (It is the only topic Jarvis uses. Your other topics are unaffected.)hello. Jarvis replies in the same topic with the title Jarvis.Everything you type in the jarvis topic is a message to Jarvis; Jarvis's own replies show up in the same conversation.
Open https://jarvis.tailbacb1d.ts.net:8766 on your phone or computer with Tailscale on (no password: your own devices only; http://jarvis:8765 also works but has no microphone). On the iPhone: Safari → Share → Add to Home Screen (do it from the https address), and it opens like an app.
/etc/jarvis/web_access.json).The ntfy apps are mainly built to receive. What you can do depends on the phone:
| Phone | How to type to Jarvis |
|---|---|
| Android | The ntfy app has a built-in message bar at the bottom of the topic screen. If you don't see it: update the app, then Settings → General → Show message bar. (If it's off you get a floating button instead.) |
| iPhone | The ntfy iPhone app can only receive: it has no message box (that is why you can read on the phone but not write). Use the ntfy web app to write: open https://ntfy.codycodez.com/app in Safari, sign in as cody, subscribe to jarvis, then Share → Add to Home Screen so it opens like an app. Keep the iPhone app for notifications, and use the home-screen web app to type and to answer approval requests with yes / no. A small Jarvis chat page that does both in one place is on the roadmap. |
| Either (one-tap shortcut) | Make a shortcut that asks you for text and POSTs it to https://ntfy.codycodez.com/jarvis (iOS Shortcuts: Ask for Input → Get Contents of URL, method POST, request body = the text, header Authorization: Basic <base64 of cody:password>; Android: the HTTP Shortcuts app does the same). Notifications still arrive in the ntfy app. |
Quiet mode: ntfy messages sent at low or min priority get a silent reply (no buzz). Useful at night. From a computer:
curl -u cody -H "Priority: min" -d "your message" https://ntfy.codycodez.com/jarvis
Ask in normal words. Jarvis looks the answer up in the real system first, so the numbers come from the data, not from the AI's memory.
| Ask | What happens |
|---|---|
| "Is anything wrong?" / "What needs my attention?" / "Is anything down in the lab?" | A health check across everything Jarvis can see: Uptime Kuma monitors, the Proxmox nodes, Ceph, nearly-full disks, backups and cameras. It lists only real problems. |
| "Is Ceph healthy?" / "How many OSDs are up?" | Live Ceph status from Proxmox. |
| "Which containers are stopped?" / "Is Jellyfin running?" / "How much RAM is Ollama using?" | Live container list and numbers from Proxmox. |
| "How full are my disks?" | Storage pools and container root disks; anything nearly full is flagged. |
| "When was the last backup?" / "Was Jellyfin backed up?" / "Is the CRM in the backup job?" | Reads Proxmox's backup history: the last scheduled run, any failures, guests that are in no backup job. |
| "How hot is the server?" | CPU, NVMe and iGPU temperatures of SuperPC (read from the host's sensors). |
| "What's the IP of Ollama?" / "What is the NAS IP address?" | The live address from Proxmox (more trustworthy than the wiki, which can be out of date). |
| "What port does Frigate use?" / "How do I restore the wiki?" | Searches your wiki and answers from the matching sections. |
| "Is anyone home?" / "What's my phone battery?" / "How much power is the NAS using?" | Home Assistant, read-only. |
| "What's on my shopping list?" / "Add milk to the shopping list." | Reads, or adds to, your Home Assistant shopping list. |
| "What time is it?" / "What's the date today?" | Reads the real clock (it never guesses the time). |
| "How are you doing?" / "Is your brain healthy?" | Jarvis's own health: brain status, memory use, uptime. |
| "What's the weather?" / "Do I need an umbrella tomorrow?" | Live weather and a 4-day forecast for home (Catonsville). |
| "Are the cameras ok?" / "Did anyone come to the front door in the last 3 hours?" | Frigate status and recent detections (people, cars, dogs) by camera and time; recognised faces are named. |
| "What's 18% of 52.40?" / "Split $87.40 four ways." | Exact math from a calculator, never from the AI's head. |
"Restart jellyfin." / "Start crm." / "Shut down obsidian." / "Add crm to the backup job." / /run storj ls /root (a command that is not on the allow-list) |
Jarvis asks you to approve the exact action first (section 5b). Read-only checks such as /run storj df -h run at once (section 5d). |
| "Remind me in 20 minutes to check the oven." / "Remind me at 5:30pm to leave." / "Remind me tomorrow at 8am to call the dentist." | Schedules a reminder (section 4). |
| "Remember that the spare key is under the blue pot." / "Add a line to projects/garden-plan saying: plant in early May." | Saves or appends to a note in the notebook (section 7) and tells you the file path. |
| "Save a note at logs/ceph-status with the current Ceph health." / "Write down the storage usage in a note." | Looks the data up first, then writes it into the note (a snapshot you can read later). |
| "Which of my notes mention tomatoes?" | Searches the notebook, even after a /reset. |
| Anything else (questions, drafting, brainstorming) | Normal chat. It remembers the current conversation. |
What Jarvis cannot do: read mail, your calendar or files outside its notebook, or switch Home Assistant devices on or off. It cannot touch the ntfy container or its own container, and it never runs anything on the Proxmox hosts themselves. For containers and the backup job it can only ask; you decide with a yes. If you ask for something else it says so rather than pretending.
local-lvm pool).Commands start with / and are answered instantly without the AI model (so they're fast and can't be wrong about the data). Most also accept an argument.
| Command | What it does |
|---|---|
/help |
Lists the commands. |
/problems |
Everything wrong right now (monitors, nodes, Ceph, full disks, backups, cameras) and what was checked. |
/cluster |
Proxmox nodes: online, quorum, CPU, RAM, uptime, IPs, and the host's temperatures. |
/guests · /guests jelly |
Container/VM summary, or one guest in detail (with its IP). |
/ceph |
Ceph health, OSDs, space, live I/O. |
/storage |
Storage pools and container root disks, with nearly-full ones flagged. |
/backups · /backups crm |
The backup job, the last run, failures, guests in no job; or one guest. |
/temps |
CPU, NVMe and iGPU temperatures. |
/ip nas |
Live IP of a node or container (falls back to the wiki and says so). |
/lab |
The Uptime Kuma monitors. |
/cams |
Camera status and the last 12 hours of detections. |
/home · /ha phone battery |
Home Assistant summary, or search for entities and their states. |
/shopping · /add oat milk |
Show the shopping list / add an item (instant, no AI). |
/wiki ip of ollama |
Search the wiki. |
/weather |
Weather now and the 4-day forecast. |
/brief · /briefing 07:30 · /briefing off |
A briefing now / every day at that time / stop it. |
/remind 20m check the oven |
Instant reminder. Forms: 20m, 2h, 90s, 17:30, 5pm, tomorrow 8am + the text. A bare number is refused as ambiguous. |
/reminders · /cancel r3 |
List pending reminders / cancel one. |
/notes · /note <path> |
The 10 newest notes / show one. |
/audit |
What Jarvis has changed or sent on its own (notes, reminders, shopping list, mutes, watch alerts, approval requests and their results), newest first. |
/start jellyfin · /stop crm · /kill crm · /restart jellyfin |
Ask to start / gracefully shut down / FORCE-stop / restart a container or VM (name or number). Nothing happens until you reply yes. |
/addbackup crm · /rmbackup crm |
Ask to add / remove a guest in the weekly backup job. |
/run storj df -h |
A read-only check from the allow-list (section 5d) runs at once in that running container (never ntfy or Jarvis' own). |
/run storj <anything else> |
Shows you the exact command and waits for your yes. |
/pending · yes / no · yes 7 · yes all |
List open requests / answer them. |
/projects · /project <name> |
Your OpenProject projects with progress / one project with its open tasks (section 5c). |
/newproject <name> · /addtask <project>: <task> · /done [<project>:] <task> · /finish <project> |
Create a project, add a task, check a task off, mark a project finished (done at once; section 5c). |
/rmproject <name> · /rmtask [<project>:] <task> |
Delete a project or task: asks first (you reply yes). |
/jobs |
The backup jobs, their guests, and the guests in no job. |
/tasks · /tasks failed · /tasks jarvis |
Proxmox's own task history: what happened to your guests, who did it (jarvis@pve!actions is Jarvis) and how it ended. |
/storj · /storj money · /storj forecast · /storj payouts |
Your Storj node: health, earnings and hold-back, forecast, payments received (section 5e). |
/watch on · /watch off · /watch |
Proactive alerts (section 6). |
/mute <text> · /unmute <text> · /muted |
Leave a known problem out of checks (section 6). |
/status |
Jarvis's own health. Works even if the brain is down. |
/reset (also /clear, /new, /forget) |
Forget the current conversation (notebook and reminders are not touched). |
/pause · /resume |
Stop/start answering chat (commands, reminders and the briefing still work). |
Short aliases exist too: /vms, /containers, /pve, /disk, /backup, /docs, /groceries, /buy, /timer, /log, /who, and a few more.
Reminders are delivered to the jarvis topic at ntfy's high priority with an alarm-clock tag, which phones treat as a louder, more insistent alert than a normal reply (how loud depends on your ntfy app's notification settings for that priority). You can say them naturally:
Things to know: there can be 50 pending at once; they survive restarts; if Jarvis was switched off when one was due, it arrives late with "(this was due 2h 5m ago)"; and they only fire while the Jarvis container is running.
The daily briefing is built by plain code (not the AI), so it can't make things up: today's and tomorrow's weather; a Lab line (monitors up, nodes and quorum, Ceph, backups) and a Needs attention line listing any real problems; cameras online and what they saw in the last 12 hours; who is home and how many things are on the shopping list; and today's reminders. Anything it couldn't check is listed as Could not check, never silently skipped.
Jarvis can read these systems. The only things it can change are described in 5b, and each one needs your yes.
| Source | What it reads | How it is limited |
|---|---|---|
| Proxmox (all 3 nodes) | Nodes, containers/VMs, storage, Ceph, the backup job and its history, container IPs | Uses an API token for the jarvis@pve user that has only the built-in read-only PVEAuditor role. Proxmox itself refuses any change (tested: stop, start and config changes all return "permission denied"). |
| Home Assistant | Who is home, helpers (home mode, guest mode, quiet hours), phone battery, network latency, smart plugs and their power, camera activity, the shopping list | A token, but the code only ever reads states, reads the shopping list, and has exactly one write: adding an item to the shopping list. No other service can be called. |
| The wiki | Every wiki page, searched by keyword | Reads the public pages. Jarvis builds a small search index of them (refreshed every 15 minutes) so it can find the row that answers a question, such as the IP table row for a container. |
| This host's sensors | CPU, NVMe and iGPU temperatures, I/O pressure | Read-only, from the hardware sensors the container can see. |
Things worth knowing:
.100; it is .103.)Ask in plain words or with a command. Jarvis answers with an approval request that says exactly what would happen, for example:
Approval #7: restart jellyfin (LXC 125 on SuperPC) (running 3d 4h)
Reply yes to do it, or no to cancel. (Expires 8:41 PM; nothing happens until you say yes.)
Then reply yes (or no). Jarvis does it, checks the result and tells you ("#7 done: restart jellyfin. It is now running.").
yes 7, yes 8 or yes all.yes only answers the last request Jarvis showed you. If you chatted about something else in between, use yes 7 with the number (/pending lists them). For commands, force-stops and backup edits a casual "ok" or "sure" is not enough: say yes./audit lists every request, decision and result. For commands the log keeps the command, the exit status and the size of the output, never the output itself./etc/jarvis/policy.json (block actions, mode off), or stop all of it with pveum user token remove jarvis@pve actions plus removing the jarvis-exec line from authorized_keys.Jarvis can read and change your OpenProject (it needs the API token you create once; until then it says it is not connected).
| You say | What happens |
|---|---|
"what projects do I have?" · /projects |
the list with open/done counts and progress |
"how's the garden project going?" · /project garden |
status, overdue tasks, the open tasks with numbers and due dates |
"create a project called Garden" · /newproject Garden |
creates it and gives you the link |
"add a task buy mulch to the garden project" · /addtask garden: buy mulch |
adds the task; end the sentence with due friday, due tomorrow, by 2026-10-20 or due in 3 days to set a due date |
"check off buy mulch" · /done garden: buy mulch |
closes the task and tells you how many are left |
"mark the garden project as done" · /finish garden |
sets the project to finished |
"delete the garden project" · /rmproject garden |
asks first: it shows what would go (with the number of tasks) and waits for your yes; if the project was renamed in between, nothing is deleted |
What you are told about a change is built from what OpenProject answered, not from the AI's words. If a name could mean two things Jarvis lists them and asks. Deleting a project needs the Jarvis user in OpenProject to be an administrator; if it is not, OpenProject refuses and Jarvis says so.
Twenty-seven read-only commands run without asking in any running container (never the Proxmox hosts, never ntfy or Jarvis itself, never when you speak): uptime, date, hostname, timedatectl, cat /proc/loadavg, free -h, df -h, df -i, du -xh --max-depth=1 /, uname -a, cat /etc/os-release, ip -br addr, ip route, ss -tlnp, ps aux --sort=-%mem, ps aux --sort=-%cpu, top -bn1, apt list --upgradable, systemctl --failed --no-pager, systemctl status <service> --no-pager, systemctl is-active <service>, journalctl -u <service> -n <1-200> --no-pager, journalctl -p err -n <1-200> --no-pager, docker ps, docker ps -a, docker stats --no-stream, docker logs --tail <1-200> <container>. Ask in plain words ("how full is the disk in storj?") or type /run storj df -h, or use the Console's "Look inside a container" menu. The command must match one of these exactly; add a pipe, a second command or another argument and it becomes an ordinary request that waits for your yes. The answer appears as "Running #N now" and then the output. To switch this off, set actions.exec_allowlist.enabled to false in /etc/jarvis/policy.json.
Ask in your own words ("how is my storj node?", "how much money has it made?", "when will the drive fill up?", "when was I last paid?") or use the commands. Jarvis only looks; it cannot change anything on the node.
| Command | What you get |
|---|---|
/storj |
Is it healthy: online, version, how the four satellites rate it, how much it stores, how much of that you are paid for, how fast it grows |
/storj money |
What it earned each month, what is held back, what was paid out, the hold-back schedule by the node's age and what a month earns at today's size |
/storj forecast |
When the 16 TB allowance and the drive fill up, what a month pays at 5, 8, 12 and 16 TB with nothing held back, and where it will probably level off |
/storj payouts |
The payments that actually reached your wallet (from the public blockchain) and what the satellites say they paid |
/watch on, Jarvis also tells you if the node is disqualified or suspended, its scores fall, the software is outdated, the satellites stop contacting it, it is nearly full, or its dashboard stops answering. /mute storj silences that./watch, payment notices, reminders, the morning briefing and approval requests raised outside the page still arrive as notifications./mute) and proactive alerts (/watch)/mute <text> leaves anything matching that text out of /problems, /lab, the briefing and /watch alerts. It matches monitor names and problem sentences (case-insensitive). Two items are muted from the start because you turned the external domains off on purpose: n8n - domain and homepage - domain. /muted lists them, /unmute <text> removes one. Muted monitors that are down are still counted and named as "muted", never hidden.
/watch on makes Jarvis speak up by itself. Every 5 minutes it runs the same check as /problems, and tells you:
It never repeats a problem it has already told you about, never sends more than 6 alerts an hour (it then says how many it held back), and /watch on first reports what is already wrong and treats it as told. It is off by default; /watch off stops it.
Jarvis keeps long-term memory as plain markdown files. Anything you want to survive a /reset, a restart or next week should go there. Just ask in normal words: "remember…", "write down…", "note that…", "add … to my … note".
The rules (built into the code, not just requested politely):
/etc/passwd, no other folders).projects/… or personal/…. Names are lowercase with dashes (projects/garden-plan).Where the files are: on the Proxmox host at /mnt/pve/cephfs/jarvis-notes (inside Jarvis's container: /srv/notes). They're ordinary .md files with a small header, so you can open the folder in Obsidian or any editor.
To edit or delete a note yourself (Jarvis can't), work on the Proxmox host. Two host-specific gotchas are handled below: git refuses the folder ("dubious ownership") unless you allow it, and after you change files as root you must give them back to Jarvis' group, or it can no longer append to them.
cd /mnt/pve/cephfs/jarvis-notes
export GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=safe.directory GIT_CONFIG_VALUE_0='*'
git log --oneline # every change Jarvis has ever made
nano projects/garden-plan.md # edit by hand
git add -A && git commit -m "manual edit" # optional, keeps the history tidy
git revert --no-edit <commit> # undo one specific change
chgrp -R 100987 . && chmod -R g+rwX . # ALWAYS finish with this so Jarvis can keep reading and appending
(100987 is the host-side id of the container's jarvis-notes group.)
| Typical | |
|---|---|
| Simple questions and commands | 3–6 seconds |
Commands (/cluster, /ceph, /add, ...) |
1–3 seconds (no AI involved) |
| Proxmox, Home Assistant, wiki, weather, camera, math, reminders, notes questions | typically 2–7 seconds (median about 3) |
| Reminders, shopping-list adds, appends to a named note | about 3–5 seconds (Jarvis is made to use the tool first) |
| A reply that Jarvis has to correct or double-check | up to 25–50 seconds (rare) |
| The first message after a restart, or after a long quiet spell | about 15 seconds (it re-reads its instructions) |
| First message after the server was restarted | up to a minute or two (the model is loading and re-reading its long instructions; Jarvis says so) |
| Very long messages | slower; input is cut at 2,000 characters |
/watch alerts an hour.The first message of the day: it used to take 30-70 seconds, because Jarvis' instructions end with today's date and a new date forces the model to re-read them. Since v0.11 Jarvis does that re-read itself at 00:05 each night, so the first message of the day is as fast as any other (check /audit for a warmup row if it ever isn't).
The AI model behind Jarvis is small and runs on a CPU, and in testing it sometimes claimed to have done things it hadn't, or guessed instead of looking. So Jarvis is wrapped in safeguards:
Jarvis sorts every action into a tier. The first three exist today.
| Tier | Meaning | Today |
|---|---|---|
| T0 — Observe | Look, never change | Clock, its own health, weather, lab monitors, cameras, calculator, notes (list/search/read), reminders (list), Proxmox/Ceph/backups/storage/IPs, Home Assistant, the wiki, the shopping list (read). Always allowed. |
| T1 — Reversible | Small, undoable, logged | Create/append a note, set/cancel a reminder, add an item to the shopping list, /mute, /watch, create an OpenProject project or task, check a task or project off. Allowed automatically, with hourly limits, and listed by /audit. |
| T2 — Consequential | Needs your approval first | Start, shut down, force-stop or restart a container/VM; add or remove one in the backup job; run one command inside a container (except the read-only checks of section 5d, which run at once); delete an OpenProject project or task. Jarvis only proposes; you reply yes (section 5b). Switching Home Assistant devices is not available. |
| T3 — Never | No tool exists | Deleting data or backups, Ceph or cluster settings, credentials, firewall, a shell on the Proxmox hosts, anything inside the ntfy or Jarvis containers, anything on a smart plug that powers a server. |
The permission list is a plain file on the server (/etc/jarvis/policy.json); a tool that isn't listed there can't run. Slash commands that change something (/add, /remind) go through the same list and the same hourly limits as the AI's own tool calls.
Credentials: Jarvis has two Proxmox tokens on one dedicated user: a read-only one (PVEAuditor) and one that can only manage power (and has no access to the ntfy and Jarvis containers), plus an ssh key that every node restricts to one script. The Home Assistant token is your owner/admin token; you confirmed that is fine, and the code only ever reads states and adds shopping items. All of them are stored root-only and never appear in a message, log or the audit trail (checked automatically). They are in the container's backup archive, so protect backup-storage accordingly.
ntfy.sh) only gets a generic "New message" nudge plus an ID, never the text.| I want to… | Do this |
|---|---|
| Stop it answering, keep everything running | Send /pause (and /resume later). Reminders and the briefing keep working. |
| Switch the whole thing off | On SuperPC: pct stop 130. This frees about 15 GB of RAM and nothing else depends on Jarvis. Reminders pause with it. |
| Turn the Jarvis Console off (chat in ntfy keeps working) | pct exec 130 -- systemctl stop jarvis-web (and systemctl disable jarvis-web so it stays off after a reboot). Let another device in, or remove one: edit nodes in /etc/jarvis/web_access.json (no restart). |
| Switch it back on | pct start 130. The brain is ready in about 12 seconds if the model file is still cached, or up to 2 minutes if not. |
Jarvis does not start automatically after a host reboot (by design while it's being tested). Start it with pct start 130.
| Symptom | Check / fix |
|---|---|
| No reply at all | Send /status. Still nothing? On SuperPC run pct status 130; if it's stopped, pct start 130. Also check you're subscribed to topic jarvis. Did you send /pause? Send /resume. |
| "My brain isn't answering right now…" | The AI model is loading (after a restart) or stopped. Wait 1–2 minutes. Still down: pct exec 130 -- systemctl status jarvis-brain. |
| "Rate limit reached" | You sent more than 60 chats in an hour. It recovers on its own. |
| A reminder didn't arrive | /reminders shows what's pending. If it was due while the container was stopped it arrives late after pct start 130. Check the ntfy app's notification settings for the jarvis topic. |
| "Weather: unavailable" / "monitor data unavailable" | The outside weather service, Prometheus (LXC 119) or Frigate (LXC 115) didn't answer. Jarvis says so instead of guessing; try again in a minute. |
| "Proxmox is unreachable" / "pve_token is not configured" | Jarvis tries all three nodes. Check the API token: pveum user token list jarvis@pve on any node; store a new secret with /opt/jarvis/bin/set-secret pve_token. |
| "Home Assistant answered HTTP 401" / "ha_token is not configured" | The token was revoked or replaced. Create a new long-lived token and store it with /opt/jarvis/bin/set-secret ha_token, then restart jarvis-bridge. |
| A wiki answer looks wrong or stale | The index is rebuilt every 15 minutes; the wiki itself may be out of date (for IPs Jarvis prefers live Proxmox data). Fix the wiki page. |
/problems keeps listing something you know about |
/mute <part of the text>. /muted shows what is muted. |
| "... isn't waiting any more" after you said yes | The request expired (15 min; commands 10) or was already answered. Ask again. |
| Jarvis says it can't do an approved action: "couldn't ssh" / "HTTP 403" | See the Troubleshooting table on the service page; nothing was changed. |
/watch is silent |
By design it only speaks about new problems after two checks. /watch shows what it already told you. |
| A note wasn't saved | Ask again, naming the path. Check /notes. The audit log shows what actually ran. |
| Weird or confused answers | Send /reset to clear the conversation (notebook and reminders are kept). |
| It says it can't do something | Expected. See "What Jarvis cannot do yet" in section 2. |
| Replies are slow | Normal range is 3–15 seconds. Long messages, camera events and note searches are slower. |
In roughly this order: a voice satellite (microphone and speaker around the home) and a wake word; more read-only sources (Paperless, Immich, Jellyfin, Pi-hole, the calendar, n8n); controlling the lights once they exist; and a weekly "what changed" digest.
| Date | Change |
|---|---|
| 2026-10-14 | Night: Jarvis' voice is now a British butler (Kokoro bm_daniel, a little quicker than normal), and the storage answers say "used" clearly (they had read backwards). |
| 2026-10-14 | v0.12: ask about your Storj node (/storj, section 5e), Storj problems in /watch, and a message when a payout reaches your wallet. Web chat still stays off notifications. |
| 2026-10-13 | v0.11: the Jarvis Console (command menus, desktop layout, push-to-talk; section 1), read-only commands that run without asking (section 5d), a midnight warm-up, the web page no longer sends anything to ntfy. |
| 2026-10-13 | v0.10: no password (your Tailscale devices), voice through the Home Assistant app. |
| 2026-10-11 | v0.9: the Jarvis web page (type, see approvals, Approve/Deny buttons; section 1), OpenProject projects and tasks (section 5c, new commands /projects /project /newproject /addtask /done /finish /rmproject /rmtask), a voice endpoint for Home Assistant (nothing exposed yet). |
| 2026-10-09 | First version: chat over ntfy, notebook, commands, guards. |
| 2026-10-09 | v0.5: weather, lab (Uptime Kuma) and camera (Frigate) awareness, calculator, reminders, daily briefing; phone-typing help; privacy note for the weather lookup. |
| 2026-10-10 | v0.7: Jarvis can ask to start, shut down, force-stop and restart containers/VMs, add or remove them in the backup job and run a command inside a container; each only after your yes (section 5b). New commands /start /stop /kill /restart /addbackup /rmbackup /run /pending /jobs. The iPhone-typing advice is now definite: the iPhone app cannot send. |
| 2026-10-10 | v0.6: read-only Proxmox / Ceph / backups / storage / IP lookups, Home Assistant (presence, battery, plugs, shopping list; adding to the list is the only write), wiki search, host temperatures; /problems, /watch, /mute, /audit, /add, /remind, /ip and about a dozen more commands; richer briefing; retries empty model replies; LXC 130 added to the Sunday backup job. |