Skip to content

Releases: Avijit-Kumar-GIT/fella

Fella v0.1.3

Choose a tag to compare

@github-actions github-actions released this 06 Sep 01:35
0b79a9b

A patch on top of v0.1.2: the Windows /update command now actually
installs the update it downloads.

Fixed

  • Windows: /update never applied the download. Since /update landed
    in v0.1.1 it would find the new version, download it, verify it against
    SHA256SUMS, close Fella — and then nothing installed and the app never
    came back. Two things were wrong. The detached hand-off that runs the
    installer was created with no console at all, so powershell.exe
    exited during startup before running a single line — no install, no
    relaunch, no trace. It was also built as a cmd string whose quoting
    arrived mangled, and it waited a fixed two seconds that often wasn't long
    enough for Fella to release the lock on its own binary, so a silent
    installer couldn't overwrite it and simply gave up. The hand-off is now a
    powershell -File script with its own hidden console that waits for the
    lock to actually release
    , runs the installer to completion, relaunches,
    and writes each step to %TEMP%\fella-update\update.log. Verified end to
    end on a real Windows build (0.1.2-style install → /update → installs
    and relaunches). The download-and-checksum half was always fine, and
    nothing is touched on disk until the checksum passes, so a failed apply
    still can't produce a broken install — the verified installer is left in
    %TEMP%\fella-update\ to run by hand.

Install

macOS / Linux

curl -fsSL https://lilfella.app/install.sh | sh

Windows (PowerShell)

irm https://lilfella.app/install.ps1 | iex

Already on an earlier build? Open Fella and type /update — and on Windows,
this is the release where that finally works.

Or grab the build for your OS directly from this release: .dmg (macOS),
-setup.exe / .msi (Windows), .AppImage / .deb (Linux).

Verify your download

Builds are unsigned. Check against SHA256SUMS, attached to this release:

sha256sum -c SHA256SUMS          # macOS / Linux
Get-FileHash <file> -Algorithm SHA256   # Windows — compare by hand

Known limitations

  • /update on macOS and Linux is still best-effort, not yet verified
    against a real install on those platforms — Windows is now tested end to
    end. Nothing is touched on disk until the checksum passes, so a failure
    there means "didn't update", never a broken install — fall back to the
    install command above.
  • run_python is not a hostile-code sandbox — see v0.1.0's notes,
    unchanged in this release.
  • Unsigned, no signed auto-updater. /update covers the common case;
    code signing and notarisation are still unplanned for now.

Fella v0.1.2

Choose a tag to compare

@github-actions github-actions released this 05 Sep 22:19
73d218d

A patch on top of v0.1.1: reopen past conversations, correct totals on
messy number/text columns, a real app icon, a tighter default window, and a
Windows folder-picker fix.

Added

  • /history <n> reopens a past conversation. /history now lists your
    saved conversations — a preview of the first question, the message count,
    the date, and which folder it was about — instead of only a count and a
    file path. /history <n> loads that conversation back into a new tab. If it
    was about a different folder than the one currently open, a note explains
    that a new question will answer from the current folder.
  • parse_num() for messy numeric columns. A helper (usable from /sql
    and by the model) that reads a number a person wrote — a currency sign,
    thousands separators, a trailing %, accounting-style negatives (1,234)
    and returns nothing for what it can't parse, so SUM/AVG over a
    partly-messy text column skip the unreadable rows instead of a bare CAST
    silently returning a wrong total. When a column is kept as text because it's
    only mostly numeric, its schema note now points at parse_num and a way to
    count what didn't parse.

Changed

  • Custom app icon — the default Tauri template icon is replaced with a
    real Fella mark, a soft dome character in the brand teal, across every
    platform's icon set.
  • Default window is 760×720 (was 1080×760), sized to the reading column so
    the welcome screen and conversations don't sit in a narrow strip with wide
    empty margins on first launch. Still resizable; the OS remembers a size you
    set.
  • README brought back in line with the shipped app: five commands that
    weren't listed (/tab, /focus, /history, /retry, /help), the tab
    keyboard shortcuts, per-tab model, the full set of verification checks, all
    three pack kinds, and follow-up/session memory.

Fixed

  • Windows: the mouse cursor went invisible while navigating the /open
    folder picker
    when /open was run by typing it and pressing Enter.
    Windows hides the pointer while you type and normally restores it on the
    next mouse move, but the modal picker takes the message loop before that
    happens. Fella now restores the pointer before opening the picker, matching
    the welcome-screen "Choose a folder" button.

Install

macOS / Linux

curl -fsSL https://lilfella.app/install.sh | sh

Windows (PowerShell)

irm https://lilfella.app/install.ps1 | iex

Already on an earlier build? Open Fella and type /update.

Or grab the build for your OS directly from this release: .dmg (macOS),
-setup.exe / .msi (Windows), .AppImage / .deb (Linux).

Verify your download

Builds are unsigned. Check against SHA256SUMS, attached to this release:

sha256sum -c SHA256SUMS          # macOS / Linux
Get-FileHash <file> -Algorithm SHA256   # Windows — compare by hand

Known limitations

  • run_python is not a hostile-code sandbox — see v0.1.0's notes,
    unchanged in this release.
  • Unsigned, no signed auto-updater. /update covers the common case;
    code signing and notarisation are still unplanned for now.
  • /update's per-OS apply step is best-effort. Nothing is touched on disk
    until after the checksum passes, so a failure means "didn't update", never a
    broken install — fall back to the install command above.

Fella v0.1.1

Choose a tag to compare

@github-actions github-actions released this 05 Sep 03:29
103f64f

A small update on top of v0.1.0: one new command, two real bugs fixed.

Added

  • /update — check for a newer release and install it, without a full
    manual reinstall. Downloads the right installer for your OS, verifies it
    against SHA256SUMS (the same check the install scripts already do), then
    closes Fella and hands off to the installer. Manual only — it never checks
    automatically or in the background.

Fixed

  • /reindex broke every already-loaded table. A workspace that opened
    fine could report the exact same, unchanged file as unreadable the moment
    /reindex ran later in that session. Affected any tabular file (CSV, TSV,
    JSON, NDJSON, XLSX), not a single file type.
  • install.ps1's checksum check always failed on Windows PowerShell 5.1,
    regardless of what the release's SHA256SUMS actually contained. This was
    already fixed live before this release — the install scripts aren't
    versioned release artifacts — noted here for completeness.

Install

macOS / Linux

curl -fsSL https://lilfella.app/install.sh | sh

Windows (PowerShell)

irm https://lilfella.app/install.ps1 | iex

Already on v0.1.0? Open Fella and type /update.

Or grab the build for your OS directly from this release: .dmg (macOS),
-setup.exe / .msi (Windows), .AppImage / .deb (Linux).

Verify your download

Builds are still unsigned. Check against SHA256SUMS, attached to this
release:

sha256sum -c SHA256SUMS          # macOS / Linux
Get-FileHash <file> -Algorithm SHA256   # Windows — compare by hand

Known limitations

  • /update's per-OS apply step is best-effort, not live-verified on
    every platform yet. Nothing is touched on disk until after the checksum
    passes, so a failure here means "didn't update", never a broken install —
    fall back to the install command above if it doesn't work for you.
  • run_python is not a hostile-code sandbox — see v0.1.0's notes,
    unchanged in this release.
  • Unsigned, no signed auto-updater. /update covers the common case;
    code signing and notarisation are still unplanned for now.

Fella v0.1.0

Choose a tag to compare

@github-actions github-actions released this 04 Sep 18:19
cfca646

Fella is a small local-first desktop app for personal analytics. Point it at a
folder of your own files — bank statements, health exports, workout logs,
notes, receipts — and ask questions in plain language. Every answer is
produced by deterministic computation (SQL, or Python when SQL can't express
it) never by the model guessing, and every answer shows its working.

This is the first public build.

Core

  • Plain-language questions over a folder of your own files — no schema, no
    setup. Point Fella at a folder and start asking.
  • Deterministic answers. Every figure in a reply comes from a tool result —
    run_sql against an in-memory SQLite table, or run_python (a restricted
    subprocess) when SQL can't express the computation — never from the model
    directly.
  • Verification pass. After answering, Fella re-runs the queries the answer
    cites and confirms every number it stated actually appears in a real
    result; a mismatch is surfaced, not hidden.
  • The working. A fold under every answer (▸ working · N steps · …) shows
    every tool call, the exact SQL/Python, sample rows, timings, and the
    self-check results.
  • Read-only. Fella reads the folder you point it at; it never writes,
    moves, or deletes anything there.

Supported files

  • Tabular.csv .tsv .json .ndjson. Column types are inferred,
    including currency written as text ($1,200.00, thousands separators,
    accounting-style negatives), and loaded as SQL tables.
  • Spreadsheets.xlsx, one table per sheet.
  • Documents.pdf .txt .md .log, searched with grep_files and
    read whole with read_file. No index; works on every model provider.
  • .parquet needs a source build with --features duckdb (not in the
    default binary, kept small).

Models

  • Local, private, default — a local Ollama install;
    nothing leaves the machine.
  • Hosted, free/loginOllama Cloud, a free tier with starter
    models, no local install needed.
  • Hosted, other providers — Vercel AI Gateway, OpenAI, xAI, OpenRouter, or
    any OpenAI-compatible endpoint via /login, at your discretion (typically
    paid per token).
  • API keys live in a 0600 auth.json, never in the settings database,
    localStorage, or the transcript.

Extensibility (opt-in, none bundled)

  • Packstheme (colour tokens), skill (vocabulary/rules fed to the
    model), and mcp (connect a remote data source over the Model Context
    Protocol). Install from a local folder (/packs add <path>) or by id from
    a small seed catalog (/packs install <id>, hash-checked downloads).
  • fella.md — drop one in your folder to tell Fella how your files are
    organised and what your terms mean. No pack required.

Interface

  • One window: pick a folder, ask questions. Slash commands (/open,
    /files, /schema, /sql, /login, /model, /reindex, /packs,
    /connect, /clear) are a power-user shortcut — you never need them.
  • Conversation tabs, Ctrl+K command palette, mid-run stop (Esc, or the
    pulsing dot next to the composer), Markdown-rendered answers.
  • Configurable via environment variables: FELLA_MAX_STEPS (agent step
    budget), FELLA_QUERY_TIMEOUT_SECS (SQL timeout).

Install

macOS / Linux

curl -fsSL https://lilfella.app/install.sh | sh

Windows (PowerShell)

irm https://lilfella.app/install.ps1 | iex

Or grab the build for your OS directly from this release: .dmg (macOS —
drag Fella to Applications, then right-click it → Open the first time),
-setup.exe / .msi (Windows — More info → Run anyway if
SmartScreen warns), or .AppImage / .deb (Linux).

Verify your download

Builds are unsigned — there's no code signing or notarisation yet. Check
your download against SHA256SUMS, attached to this release:

sha256sum -c SHA256SUMS          # macOS / Linux
Get-FileHash <file> -Algorithm SHA256   # Windows — compare by hand

Known limitations

  • Unsigned, no auto-updater. Re-run the install command (or re-download)
    to update.
  • run_python is not a hostile-code sandbox. It runs in a restricted
    subprocess (python3 -I, a fresh temp working directory, a stripped
    environment, CPU/memory/file-size limits, a wall-clock timeout) — best-effort
    isolation for analysing your own data, not a security boundary. It does not
    confine filesystem reads to the workspace or block network access. Treat a
    snippet as code you chose to run on your own machine.
  • The hosted pack marketplace isn't live yet. /packs install <id> pulls
    from a small seed catalog; /packs add <path> works fully offline.
  • .parquet requires building from source with --features duckdb.