Remove the Upgrading page and the troubleshooting pointers to it
Nobody but the owner has an install from before the rename or the plugins, so
the upgrade steps have no reader.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Remove the worked-example pages
They walked through the plugins' own code. What a user needs from them is now
in the plugins section of docs/tools.md, and writing a tool of your own is on
Custom Tools.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Home: say what the name Keryx means, and that Lyra is the default
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Home and footer: point readers at SECURITY.md and docs/, not CLAUDE.md
CLAUDE.md is instructions for coding agents. Home no longer says the README
has a guide to writing tools (that is docs/tools.md and Custom Tools),
shrinks the "Before you begin" list, and links the Upgrading page.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drop the leading H1 from every page; GitHub already shows the page name
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keryx the service, Lyra the assistant: the wiki follows the rename
Every page says Keryx for the service and the assistant (Lyra by default) for the voice;
links point at wak31415/keryx and src/keryx; Restarting-Jarvis is Restarting-Keryx.
The wake word is still "hey jarvis", the pretrained model's name. Troubleshooting
covers serve refusing until `keryx migrate` has run.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
docs: plugins, custom tools, and what landed on main since the last edit
New pages: Custom Tools (writing and checking your own voice tools) and Sharing Custom
Tools (a suggested convention for publishing them; there is no registry). The two worked
examples are rewritten as plugins. Every other page is checked against main: plugins in
place of the retired settings, jarvis plugins / jarvis tools, CLAUDE_CONFIG_DIR, a failed
restart that rings, TRANSCRIPTION_LANGUAGE and CLOCK_FORMAT.
docs: drop the upgrade-from-~/.jarvis notes; nobody outside has an old install
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
docs: rulings live in CLAUDE.md and SECURITY.md, not a design spec
The spec left the repository; every page that cited it now names the section
of CLAUDE.md or SECURITY.md that holds the same ruling.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
docs: a Setup page, moved from the README
What jarvis setup asks, the phone, the PIN, Google, settings, where Jarvis keeps
its files, upgrading from ~/.jarvis, and costs. Linked from Home and the sidebar.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
docs: point the remaining paths at the XDG directories
Home, Assumptions, Google, Restarting and the Approval Bridge now name
~/.config/jarvis, JARVIS_HOME for the Google client file, and STATE_DIR
for logs, running-version and the approval socket.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
docs: Home and sidebar point at jarvis setup, and the phone is the channel on main
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
docs: jarvis init and OWNER_NAME, and what every call carries
The command line reference gains jarvis init: its flags, the document it
shows and writes to DATA_DIR/memory.md (owner-only), when it refuses (a memory
with something in it, without --force; more than a call reads), that it never
edits .env and prints the OWNER_NAME line instead, and the report it ends
with. Blank OWNER_NAME is "the owner".
Data and Retention says the memory and the project briefs ride in the system
prompt re-sent to the realtime provider on every call, with their caps (6,000
characters of briefs in all). Home and the reference point at the README's
"Teaching Jarvis about you", and Assumptions lists the one OWNER_NAME.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
docs: the bridge and a restart speak only into a call past the PIN
An approval that arrives during a call that has not given the PIN rings
instead of being announced, and the restart page says the watchdog is a new
session under launchd rather than a systemd-run unit. Home names what a
caller gets before the PIN among the Security Model's subjects.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
docs: cluster_stats is a worked example you configure
The page described one deployment's clusters as if they were the tool. It is
now a generic worked example that matches the code: nothing is built in,
CLUSTERS and CLUSTER_SSH_GUARD are empty by default and the tool is only
registered once both are set and the guard is on disk. It gives the guard's
contract for anyone writing one, says why a guard is the only way in without
leaning on an incident, and says the test fixtures are synthetic.
Data and Retention says what leaves the machine in the same terms: the
clusters you named, through your guard; Slack through the MCP server named in
SLACK_MCP_SERVER; texts only with SMS_ENABLED.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
docs: wiki links that resolve from the bare /wiki URL, and corrections by issue
Five links were relative markdown, which GitHub resolves against the current
URL and so 404s from /wiki itself. They are [[Title|Page-Name]] links now.
The wiki is restricted to collaborators, so Home asks for corrections as an
issue rather than a wiki edit.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
docs: the manual, moved out of the README
The README was 967 lines. The content was good, which was the problem: a front
door that takes twenty minutes to read is not a front door. It keeps what a
reader needs before they decide to install anything — what it is, the
architecture, setup, and how to write your own tools — and everything longer than
that lives here, in full rather than in summary.
Fourteen pages in three groups, which is also how the sidebar reads, grouped by
when you need them rather than by what subsystem they belong to: install and
operate it, decide whether to deploy it, understand one thing deeply.
Two things this wiki deliberately is not. It is not the rulings of record — the
design spec in the repository is, because a wiki is a separate git repository and
none of it arrives with a `git clone`, and the decisions that look like bugs until
you know them have to travel with the code. And it is not a settings reference:
`.env.example` and spec §3.4 already hold that, and a third copy is a third thing
to drift.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgnEwxB2L2ZqzTgq476MAt