Skip to content

Releases: flight505/NotebookAI

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 09 May 23:05
v0.3.1 — release.yml fix: install desktop deps so tauri-action finds …

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 09 May 21:26
v0.3.0 — hardening pass: launch flow, runtime internals, SSE resilien…

v0.2.0 — production polish

Choose a tag to compare

@flight505 flight505 released this 07 May 02:07

v0.2.0 — production polish

Six features that take NotebookAI from "build complete" to "feels like a product."

Highlights

  • GitHub Actions CI — pytest + ruff + Next.js build + cargo check + Playwright e2e on every PR. Sidecar binary build matrix for macOS arm64/x86_64, Linux x64/arm64, Windows x64 — artifacts attach to GitHub Releases on tag push.
  • Wiki-only mode (graceful degradation) — when Claude credentials are missing, NotebookAI no longer errors out. Ingest still saves raw markdown (compile skipped), Ask returns retrieval-only answers from the local sqlite-vec index, Lint runs the passive watcher only. Surfaced via top-nav badge + amber banner on the Ask page + new agent.unavailable SSE event. See docs/wiki-only-mode.md.
  • PyInstaller-bundled sidecar — Tauri desktop now ships a single-file backend binary; end-users no longer need uv installed. The Rust shell falls back to uv run for the dev loop when the bundled binary isn't present.
  • Playwright e2e suite — 16 browser tests across Read, Ask, Curate, Library modes, ~19s wall-time, deterministic via per-test API mocking (no real backend). 13 components got data-testid attributes for selector stability.
  • Real app icons + brand mark — bold cream N on an ink-blue squircle with a single amber AI-node accent. One Python script generates every Tauri size, ICNS, ICO, and the web favicon. See docs/branding.md.
  • Scheduled lint cron — per-notebook hourly Haiku lint with idle detection (max-mtime over wiki/ + raw/ via os.scandir) and token-budget gating. UI shows a "Next: in 23m" countdown with a "Run now" button.
  • First-run welcome flow — empty library + flag absent → 3-step welcome with a pre-seeded demo notebook (3 wiki articles + 1 chat) so a fresh install gives the user something to navigate immediately.

Stats

  • 7 PRs merged (#1–#6 plus initial CI commit)
  • ~25k LOC (up from ~14k in v0.1)
  • 131 backend tests + 21 Playwright e2e tests, all green
  • macOS, Linux, Windows backend + Linux Playwright now CI-verified per PR

Acknowledgements

Every PR went through isolated subagents with strict input/output contracts and a verification gate, per BUILD.md discipline. Pull requests are tagged with the contract section they amended.

Migration from v0.1.0

No breaking changes. New endpoints are additive:

  • POST /api/library/demo — create the demo notebook
  • GET /api/notebooks/{id}/lint/schedule + POST to update + POST .../run-now
  • GET /api/notebooks/{id} response gained agent_status: {available, reason}
  • New SSE events: agent.unavailable, lint.scheduled, lint.skipped, lint.run_complete

notebook.json schema additions are optional (lint_schedule_enabled, lint_schedule_interval_minutes); existing notebooks keep working with defaults.

Followups bumped from this milestone

  • macOS codesigning + notarization for the bundled sidecar — out of scope until an Apple Developer ID is wired up
  • Wider Tauri test coverage — cargo check runs but no functional tests yet
  • Hugging Face model pre-baking into the sidecar — would add ~33MB to bundle in exchange for instant first-launch

v0.1.0 — initial release

Choose a tag to compare

@flight505 flight505 released this 07 May 00:29

Local-first, agent-native knowledge workspace. 15-phase orchestrated build.

Highlights

  • Notebooks are folders of plain markdown — raw/, wiki/, chats/ — owned by the user, agent-portable across Claude Code / Codex / Cursor / Antigravity.
  • Compounding knowledge: every ingest sharpens wiki pages instead of inflating a chunk store; answers cite durable wiki pages.
  • Local-first: bge-small embeddings + sqlite-vec on-device; Claude Agent SDK against your Max OAuth or ANTHROPIC_API_KEY.
  • Tauri 2 desktop shell (native macOS vibrancy + transparent titlebar).

Quick start

git clone https://github.com/flight505/NotebookAI.git && cd NotebookAI
cd backend && uv sync && uv run notebookai new my-research && uv run notebookai serve &
cd ../frontend && pnpm install && pnpm dev

Stats: 21 commits, 14k LOC, 114 backend tests, all gates green.

See VISION.md for the product thesis, docs/CONTRACTS.md for symbol-level contracts, and BUILD.md for the 15-phase build provenance.

Known followups (v0.2 milestone): CI/CD, agent-unavailable degradation mode, real app icons, Playwright e2e, Tauri sidecar binary.