Skip to content

Releases: NTBooks/Fanad

v0.5.3: local speed-dial accounts (family without Telegram)

Choose a tag to compare

@NTBooks NTBooks released this 23 Jul 19:54

Added

  • Local speed-dial accounts, for family without Telegram: a local account is a household name with no
    Telegram behind it, whose entire surface is its no-login /r/ remote-control link. It is never
    vouched, can't be claimed by any Telegram sender (even one with the same @username), and is
    permanently speed-dial-only. Because the link is the account, a local's share link can be minted
    never-expiring (Telegram guest links still always expire). The Access tab gains a Telegram/Local
    selector, local rows show a house badge with link-first copy, and the printable sheet gives
    open-your-link instructions. Name collisions with existing pads, vouches, and the allowlist are
    refused both ways.

v0.5.2: task /view card, speed-dial toggle slots

Choose a tag to compare

@NTBooks NTBooks released this 22 Jul 00:36

Added

  • Task detail view: /view N (or the per-row 👁 /view_N) opens a task's full detail (your verbatim
    text, a fuller read, and the steps checklist) and lets you edit its steps without starting it, on
    Telegram, Slack, and web. This brings the chat surfaces to parity with the web Kanban editor.
  • Speed-dial on/off toggle slots: give a pad slot a second (OFF) command and the number becomes a
    toggle that alternates the device, kept in sync across the Telegram digit, the web pad, and the
    no-login link. Each remote-page button now washes a color fill across itself on press, which also
    acts as a brief re-tap lock so a quick double-tap can't fire twice.

Changed

  • The speed-dial pad editor was decluttered, its Test button now fires the command typed in the row
    (not only the saved one), and the no-login handout page names the bot.
  • The remote-control page's "Powered by Fanad" footer links to fanad.org.

Fixed

  • Bare action verbs no longer hijack a task statement: "start the doc" or "done the dishes" files a
    task, while the slash form ("/done clean the garage") and a position ("start 3") still act on one.
  • Renamed the web remote/link panel's CSS class (sd-share to sd-remote) so ad blockers stop
    hiding it.
  • Cheat-sheet Speed Dial box no longer renders mushed together.

v0.5.1: shareable no-login remote-control links

Choose a tag to compare

@NTBooks NTBooks released this 20 Jul 23:02

Added

  • Shareable no-login "remote control" links: the host can mint a link (/r/<token>) that exposes just
    one guest's speed-dial pad (its 0-9 buttons) as a responsive page, hand it to someone with no Telegram
    account or login, and revoke it any time. Fail-closed by design: minting and use both require web login
    (auth mode simple), only the predefined pad slots fire, requests are per-token rate limited and
    noindex/no-store, and the share token authenticates nothing on the API. Manage them in Settings, Access:
    1 / 7 / 30-day expiry, an optional label, and an active-link list with revoke.

v0.5.0: HA notebook selector, speed-dial web, npx connect

Choose a tag to compare

@NTBooks NTBooks released this 20 Jul 05:27

Added

  • Home Assistant notebook selector: the read endpoints accept ?notebook=<id|main>, so a read-only
    token can pull a specific owned notebook's data without switching the account's current notebook.
    A Home Assistant dashboard can now offer a notebook picker. Reads only; unknown or foreign ids fall
    back safely to the account's own current space.
  • Speed dial in the web sidebar: a pad-holder's 0-9 pad now appears at the top of the wide-screen left
    hint bar, and each row sends "dial N". A bare "0" is the reserved "show my pad" key.

Changed

  • Zero-checkout CLI connect: the connect line handed back with a token is now
    npx github:NTBooks/Fanad <server> <token>, so the CLI client runs from a fresh terminal (Node 24+)
    with nothing pre-installed. npx fetches, caches, and builds it on first run.
  • A full-account pad-holder now sees their speed-dial pad alongside their normal first reply, rather
    than the pad replacing that first message.

Fixed

  • A locked-down (speed-dial-only) account is now denied vouch in the central access gate, so it
    cannot grow the whitelist beyond its own lockdown.

v0.4.0: Self-service access tokens

Choose a tag to compare

@NTBooks NTBooks released this 19 Jul 17:13

Added

  • Self-service access token: the chat token command (also create / new / mint / get token)
    mints a read-only, never-expiring claim token scoped to your own account, behind a yes/no confirm
    with a warning. It is the credential a Home Assistant dashboard needs to read your Fanad data, so
    any authorized user can now get one without the owner-only web panel. Shown once.
  • Web Settings, Security: an "Expires" dropdown (30 / 90 / 365 days / Never) when minting a token,
    exposing the never-expiring option the backend already supported.

v0.3.0: Medication and Speed Dial

Choose a tag to compare

@NTBooks NTBooks released this 19 Jul 04:05

Added

  • Medication module (opt-in): a calm adherence logger modeled on the Diet module. Log
    doses, keep per-medication metrics (hidden from the daily tally), set up templates and daily
    reminders, and review it all in a web view. A logger, not an advisor.
  • Speed dial (owner-curated Home Assistant pads): program another Telegram account's 0-9
    pad, mapping each slot to a Home Assistant command you authored. They send a bare digit (or
    tap a button) and it fires only that command. An optional "speed-dial only" lock restricts an
    account to its pad, with no tasks or chat.
  • First-run reaction demo in the web UI: a self-playing reel that teaches the "command pad, not
    a chatbot" model, with a replay button.
  • Browser (non-Telegram) demo signup: the signup link opens the create-account panel directly.
  • The docs site (brochure, manual, cheatsheet, how-tos) is now published to GitHub Pages.

Changed

  • The web shortcut legend nests sub-shortcuts under their parent for a cleaner map.

Fixed

  • The reaction-demo reel runs slower and pauses on hover or focus.
  • Stale quick-reply chips are cleared on a contentless acknowledgement.

v0.2.1 — HA add-on auto-pairing

Choose a tag to compare

@NTBooks NTBooks released this 18 Jul 23:38

Ringing the house works with no token paste when Fanad runs as a Home Assistant App — it reaches HA core through the Supervisor proxy. A URL/token set in Settings still overrides it. See CHANGELOG.md.

v0.2.0 — first public release

Choose a tag to compare

@NTBooks NTBooks released this 18 Jul 22:51

First public release of Fanad — a local-first, local-LLM personal scratchpad for tasks, notes, lists, timers, and light journaling. Capture by texting a bot (Telegram/Slack) or the web UI; a local model (LM Studio/Ollama) parses and ranks your own data, never inventing.

Highlights

  • Always-on web chat + rich web UI; Telegram (long-polling) and Slack (Socket Mode) bots at parity.
  • SQLite storage via native node:sqlite; secrets AES-256-GCM encrypted at rest; cloud LLMs hard-gated off by default; no telemetry.
  • Read-only GET /api/ha/summary endpoint + read-only tokens for Home Assistant dashboards.
  • Install with npx github:NTBooks/Fanad or the Windows installer. MIT licensed. 1,100+ tests, CI on every push.

See CHANGELOG.md for the full list.