Skip to content

Releases: DCom17/adam-releases

v0.9.39

Choose a tag to compare

@DCom17 DCom17 released this 06 Jul 01:13
ee32268

Adam looks like Adam (and updates can undo themselves)

The release where the last traces of the old name disappear and the update
system finishes its safety story. Also the first release with a Windows
installer alongside the ZIP.

Highlights

  • New icon. Adam's mark is now a bold cyan "A" — app window, browser tab,
    desktop shortcut, phone home screen. Android launchers get a properly padded
    icon so nothing is cropped. (On iPhone, remove and re-add the home-screen
    shortcut to see it.)
  • The home screen says ADAM. The header above the orb still read JARVIS —
    the very last visible piece of the old name. Gone.
  • Updates now verify themselves and undo on failure. After applying an
    update, Adam boot-checks the updated code; if anything is wrong it puts every
    file back exactly as it was and tells you — you stay on your current version.
  • Friendlier "out of AI" messages. Pay-as-you-go credit running out now
    says so plainly (with where to top up) instead of quoting a raw billing
    error — in every mode, including code chat.
  • You can't get trapped inside the ZIP anymore. Double-clicking SETUP,
    START, or UPDATE from Explorer's ZIP preview now explains how to Extract All
    first, instead of dying with a red error.
  • Windows installer (beta). adam-setup-v0.9.39.exe installs Adam like a
    normal app: Start Menu + desktop shortcuts, Add/Remove Programs entry, and a
    clean uninstall that keeps your notes, token, and data. It refuses to run
    while Adam is open and backs everything up when installing over an existing
    copy. Unsigned for now — SmartScreen will warn until code signing lands. The
    ZIP flow is unchanged and still the tester-recommended path.
  • Clear AI disclosure. Setup, docs, and the privacy page now say plainly:
    Adam is an AI assistant powered by Claude, processed under your own account.

Updating from 0.9.38 or earlier: click the in-app update bar, or
double-click UPDATE in your Adam folder. Your token, settings, files, and
chats are untouched. Restart Adam afterward (close the black window, reopen
from the desktop icon).

v0.9.38

Choose a tag to compare

@DCom17 DCom17 released this 05 Jul 16:05
ee32268

The pre-tester hardening release: the output of a full product audit, aimed at one thing — a stranger's machine.

Setup & first-run fixes

  • Setup no longer silently loses your AI-plan choice (or a pasted API key) on a brand-new PC — the one bug that broke exactly the machines this beta targets.
  • When the app can't reach Adam, it now tells you the likely cause — the black Adam window on the PC is closed — and how to fix it, instead of a generic "connection error". A mid-question server restart now says "Adam restarted mid-task — ask again."
  • Hitting your Claude plan's usage limit is said in plain words (with the reset time when known) instead of silence or a raw error string read aloud.

The updater can no longer brick an install

  • Atomic file writes (a crash mid-update leaves the old file, never a truncated one), a complete per-update backup folder (undo is real now), broken auto-merges held for review instead of written, files removed by a new version retired instead of left to shadow their replacements, a lock against double-applies, and a free-disk check before starting.

New

  • ROTATE-TOKEN.cmd — one double-click gets you a fresh access token if yours may have been exposed.
  • docs/PRIVACY.md — the complete, honest list of network calls Adam makes (short version: it collects nothing).
  • Uninstall, "where is my data", and factory-reset guides in SUPPORT.md.
  • The health check (doctor) now catches the two most likely tester problems: Claude installed-but-not-signed-in, and the Adam voice service being installed but down. The voice service finally writes its own log (data\logs\tts.log).
  • A proper tab icon (favicon), and assorted polish.

Under the hood

  • Long pasted messages no longer crash the turn (Windows command-line limit); background jobs can't be lost to garbage collection; slow add-on bridges no longer freeze the whole app; every built release ZIP is now boot-tested in isolation before it can publish; CI tests Python 3.12 (what setup actually installs) as well as 3.14.

Update from any 0.9.x: click Update now in the app (or double-click UPDATE.cmd), then restart Adam — close the black "Adam" window and reopen it from the desktop icon.

Full details in CHANGELOG.md.

v0.9.37

Choose a tag to compare

@DCom17 DCom17 released this 05 Jul 07:25
ee32268

Adam v0.9.37 — the real Adam voice heals itself (and works on your phone)

The voice keeps itself alive now

If you've installed the real Adam voice (INSTALL-VOICE.cmd), Adam now makes
sure it stays running. Before this release, if the voice service crashed — or
Adam was started some way other than the launcher — every reply quietly fell
back to the robotic browser voice until you restarted things by hand. Now the
server notices and restarts the voice service itself: it checks at startup and
again whenever a spoken reply fails. The first reply or two after a crash may
still use the fallback voice while the voice model reloads; after that you're
back to the real voice with no action needed.

The self-heal is careful by design: it only manages a voice service configured
on this same PC, refuses to start a partial download, and is rate-limited so a
broken install can never spawn-loop.

Your phone speaks with the real Adam voice too

This was always true, but our own phone guide said otherwise — it claimed
spoken replies on the phone were always your phone's built-in robotic voice.
Wrong: the voice is generated on your PC and delivered over the same private
HTTPS (Tailscale) connection the app already uses. If INSTALL-VOICE.cmd has
been run on the PC, your phone speaks with the same natural Adam voice as the
desktop. The guide now says so, and gained a troubleshooting entry for
"replies sound robotic."

Under the hood

  • New tts_supervisor.py module (ships in the ZIP) with its own test file;
    full suite green including the release-packaging guards.

Install: download adam-local-v0.9.37.zip, extract, run SETUP.cmd.
Update: existing installs will show the in-app "Update available" bar, or
run UPDATE.cmd.

v0.9.36

Choose a tag to compare

@DCom17 DCom17 released this 05 Jul 06:39
ee32268

Critical packaging fix — v0.9.35 could not start; take this instead

The v0.9.35 ZIP was missing five internal code files (routers/, security.py,
models.py, rate_limit.py, usage_store.py) — the release builder's file list was
never updated when the server code was reorganized, so a fresh install of 0.9.35
failed at startup
with a module-not-found error, and updating an existing install
from that ZIP broke it the same way. v0.9.36 is the identical product with a complete
ZIP, verified by a clean-machine install-and-boot test.

If you installed or updated to 0.9.35 and Adam won't start: double-click
UPDATE.cmd in your Adam folder — it works even when the server can't boot and
brings you straight to 0.9.36 without touching your token, settings, or data.

The release builder now refuses to build a ZIP whose code imports a file that isn't
in it, so this class of bug can't ship again.


Jarvis Voice Local is now Adam (carried over from v0.9.35)

Same app, new name. Existing installs update seamlessly — nothing to reconfigure:

  • Your .env keeps working (JARVIS_TOKEN is still honored; new installs get ADAM_TOKEN), so your phone stays signed in.
  • Your job history carries over: data/state/jarvis.db is renamed to adam.db automatically on first start.
  • Old desktop shortcuts keep working (start-jarvis.ps1 forwards to the new launcher).

Also carried over — a security pass: /health no longer reveals config details to
anonymous callers, all responses carry baseline hardening headers, and the documented
one-tap sign-in now uses the #token= fragment form (never reaches server logs).

Also new since v0.9.33: two ways to pay for AI (from the unpublished 0.9.34)

  • Sign in with Claude — your Claude Pro/Max plan covers usage at its flat rate, as before.
  • Pay as you go — paste an Anthropic API key instead. Prepaid-credit style: it can never spend past what you loaded ($5 is roughly 200–300 conversations).
  • A monthly budget the app will not cross (default $10) with a live cost meter in Settings → AI plan.
  • Your API key can never be billed by accident: it's only handed to the AI process when you chose pay-as-you-go, and it's actively stripped on subscription installs.
  • Model changes apply live — no restart needed.

v0.9.33

Choose a tag to compare

@DCom17 DCom17 released this 03 Jul 16:39
ee32268

Jarvis Voice Local v0.9.33

  • Rename the current chat by voice. Ask JARVIS to name the conversation —
    "call this Daily Planning July 3" — and it renames the chat you're in on the spot,
    no menu, no typing. JARVIS will also offer a name when a chat clearly has a topic.
    The rename syncs to your other devices like any other chat change.
  • Open a new chat by voice — with your say-so. JARVIS can start a fresh chat when
    you want a clean slate, but never on its own: it asks first ("Want me to start a new
    chat?") and only opens one after you say yes. The chat you were in is preserved in
    full — its last reply still lands there — and you're dropped into the new blank chat,
    ready to talk.
  • JARVIS still cannot delete chats — deleting stays a manual action, by design.
  • Heads-up before escalating to Claude Code mode. Holding the mode button into
    Claude Code now asks first — it warns that code mode starts a fresh conversation and
    the current chat's context won't carry over (code mode runs in its own workspace). Back
    out and you stay put; your existing chat is always preserved either way. Exiting code
    mode is unaffected.
  • Switch modes by voice. Ask JARVIS to change its own mode — "go into operator
    mode", "switch to Claude Code", "back to voice" — and it flips the chat's mode for you,
    no reaching for the button. Operator and voice switch instantly; a switch into Claude
    Code goes through the very same "starts fresh" confirmation as the hold gesture, so you
    always get the heads-up before context is left behind. Code switching is only offered
    when Claude Code mode is enabled in settings.
  • Under the hood: the directives JARVIS can emit in a reply (<<RENAME_CHAT: ...>>,
    <<NEW_CHAT>>, <<SET_MODE: ...>>) are extracted server-side and relayed to the app,
    which owns the chat list and mode toggle — the markers are always stripped so they
    never appear on screen or get read aloud. Works in every mode (voice, work, Claude
    Code). The job store carries the directive through the async/poll path (schema v2,
    migrated in place).

v0.9.32

Choose a tag to compare

@DCom17 DCom17 released this 03 Jul 01:57
ee32268
Update README.md

v0.9.31

Choose a tag to compare

@DCom17 DCom17 released this 03 Jul 01:39
ee32268
Update README.md

v0.9.30

Choose a tag to compare

@DCom17 DCom17 released this 02 Jul 18:34
ee32268

Claude Code mode chats (opt-in) + quest XP bounty fix

Rolls up v0.9.29 + v0.9.30 (v0.9.28 was the last published build).

Claude Code mode chats (v0.9.30) — opt-in, off by default

  • Hold the Operator Mode button until the amber bar fills to escalate that one chat to raw Claude Code: direct file edits, shell, every tool, no approval gate. Every other chat keeps your normal capability tier. Voice loop still works — long replies render on screen, only the spoken summary is read aloud.
  • Requires opting in: set "allow_code_mode": true inside the agent_safety block of your settings.json, then restart. Without it, nothing changes — the gesture doesn't exist and the server refuses code-mode requests (403).
  • Watch it work: a live activity line shows each tool call as it happens ("Thinking… 84s · #12 Bash: python test_x.py").
  • â–  STOP button: kill a running turn mid-flight (any mode). The chat keeps its context — just speak again to redirect. Stops are audited.
  • Room to code: code turns get code_claude_timeout_seconds (default 60 min) instead of the 10-minute cap, and agent_safety.code_mode_dirs grants file-tool access to repos beyond the vault.
  • Deliberate by design: a tap never enters or exits code mode, new chats never inherit it, the button + sidebar badge turn amber, and every code turn lands in the audit log.
  • This is owner-grade power. In a code chat there is no proposal gate, no backup-before-write, no allow-list. Leave it off unless it's your machine and you want exactly that.

Quests always carry their XP bounty (v0.9.29)

  • Staged quests now always carry their planned XP bounty (xp_value is never 0 — whether it's awarded is decided at shutdown review against evidence), and quest type uses the real vocabulary (micro / routine / boss_step / milestone).

Tests: 78-check code-mode suite + full regression green. The zip is built by the allow-list packager and verified secret-free.

v0.9.28

Choose a tag to compare

@DCom17 DCom17 released this 02 Jul 03:52
ee32268

Jarvis Voice Local v0.9.28 - Auto-sync dashboard: new gear toggle runs hunter.sync board pushes immediately (no approval tap), agent now stages dashboard syncs as action blocks. See RELEASE_NOTES_v0.9.28.md.

v0.9.27

Choose a tag to compare

@DCom17 DCom17 released this 02 Jul 01:49
ee32268
Update README.md