Skip to main content

AbstractNote

One endpoint for everything you want to remember. Send a sentence, a document, a photo, a recording, a log. AbstractNote files it with its time, place and provenance, links it to what you already know, and grows a temporal semantic knowledge graph of your ideas, projects, people and decisions. You search it by effort (quick, standard, deep) and revisit it through time: what you knew, when you learned it, and how your view changed.

AbstractNote is part of the AbstractFramework. It runs on AbstractGateway (sign-in, one runtime and one notebook per user, app hosting), AbstractRuntime and AbstractFlow (the capture and understanding workflows), AbstractMemory (temporal facts) and AbstractCore (models, structured output, embeddings).

Status: version 0.3.0, alpha. The Python package is abstractnote on PyPI and the web app is @abstractframework/note on npm (see Install).

What's new in 0.3.0: the web app follows runs through the gateway's replay view and says when a run waits for an answer, the top bar carries the shared Docs assistant and one account widget, and Capture uses the shared composer. See CHANGELOG.md.

What you get

  • Capture anywhere: the web app, the Apple Watch app, the abstractnote command line, and agents. Attachments are de-duplicated by content; a retried send never saves a note twice.
  • Automatic filing: a small fast model gives each note a title, a kind, topics, an urgency and its language, next to the time and place it was made.
  • Self-organising knowledge: a model resolves people, projects and ideas against candidates that exact lookups, full-text and vectors produce. Every change is a revision you can replay, and every claim keeps the note it came from.
  • Remember by cue and effort: quick (no model, under a second), standard (one synthesis with citations), deep (a background dossier). Then-versus-now for any person, project, idea or link.
  • Reflection: open loops, contradictions, things that went quiet and connections you may have missed, surfaced as insights.
  • Imports: Claude Code sessions, an agora hub database, Markdown trees and plain files, with their original dates and provenance.

Install

AbstractNote needs Python 3.10 or later. Install it with the gateway integration:

pip install "abstractnote[gateway]"
abstractnote --help

This brings AbstractMemory 0.4.0 or later, AbstractRuntime 0.15.0 or later and AbstractGateway 0.17.0 or later. The gateway carries the AbstractNote integration (abstractgateway.abstractnote_seam) since 0.15.11: with abstractnote installed in the gateway's environment, every user gets the note tools, the note read API under /api/gateway/note and the note workflows. pip install abstractnote alone is enough for a headless notebook on one machine. To run models locally on Apple silicon, add pip install "abstractcore[apple]" (MLX).

The web app is the npm package @abstractframework/note, which the gateway's app catalog installs and serves as the Note app. To work on AbstractNote itself, install it from a source checkout; see CONTRIBUTING.md and docs/getting-started.md.

Quick start

A headless notebook on this machine, no gateway and no model:

abstractnote capture "Met Dana about the LUT budget; she wants the Pareto by Friday." --notebook ~/notes
abstractnote search "LUT budget" --notebook ~/notes
abstractnote status --notebook ~/notes

Let a model understand the queued notes (entities, claims, tasks), then ask a question:

abstractnote process --local --notebook ~/notes --provider mlx --model mlx-community/Qwen3.6-35B-A3B-4bit
abstractnote search "What does Dana want?" --effort standard --notebook ~/notes \
    --provider mlx --model mlx-community/Qwen3.6-35B-A3B-4bit

A notebook is pinned to the embedding model that created it. Choose it on the first command (--embed-base-url and --embed-model, for example a local LM Studio embedding model) and give the same flags every time, or start with the built-in offline embedder and change later with abstractnote rebuild --reembed. See docs/getting-started.md.

Through a gateway, clients start the note-capture and note-recall flows with the gateway's runs API, and POST /api/gateway/note/processor/ensure creates the per-user processor that understands notes in the background. The getting-started guide walks through a private scratch gateway, the web app and the watch app.

Clients

Client Where What it does
Web app web/ (@abstractframework/note) Capture (a chat with attachments), Remember (since you last looked, cue cards, ask by effort, then and now), Explore (entities and links through time), Processing (what the notebook is doing with your notes, live: the queue and its pace, the notes being understood, failures, and the scheduled consolidation), and a Settings panel
Apple Watch app watch/apple/ Note, Ask, Today, Settings; watch-only, watchOS 26 or later
Command line abstractnote Headless capture, search, processing, imports, rebuild, JSON output for scripts and agents

An iPhone app is planned (phone/iphone/). Agents use the same note tools and flows, with the effort level as a parameter.

Documentation

License

MIT. See LICENSE.

Metadata

Release files for abstractnote 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for abstractnote 0.3.0
File Size Uploaded Provenance Actions
abstractnote-0.3.0.tar.gz 644.5 kB With provenance Details for abstractnote-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for abstractnote 0.3.0
File Interpreter ABI Platform Actions
abstractnote-0.3.0-py3-none-any.whl Python 3 none any Details for abstractnote-0.3.0-py3-none-any.whl

Total release size: 1.1 MB

Release files / abstractnote-0.3.0.tar.gz

Download URL abstractnote-0.3.0.tar.gz
Size 644.5 kB
Tags Source
SHA-256 checksum
How to use checksums
0afd7eecb354efa99294d510d4e756aad0211d28219521ba6f1b0027e98ad167
BLAKE2b-256 checksum
How to use checksums
b995278f022895e048feffa5f83ea98cf4ce2ac9824534552a678547b4530333
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

Release files / abstractnote-0.3.0-py3-none-any.whl

Download URL abstractnote-0.3.0-py3-none-any.whl
Size 500.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
208e095ba022d482c1143a882ccb10a3ae4150bff579e15969385e7eeb62fda9
BLAKE2b-256 checksum
How to use checksums
4d96dc5e605be570219ccc5eddbc422b313cc130b5a59354c7b19089ab0a54c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

Security for abstractnote 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for abstractnote-0.3.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page