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.2.0, alpha. The Python package is abstractnote on PyPI and the web app is
@abstractframework/note on npm (see Install).
What you get
- Capture anywhere: the web app, the Apple Watch app, the
abstractnotecommand 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
- docs/README.md: the documentation index
- Getting started: a headless notebook in five minutes, then the gateway path
- Architecture: components, data plane, request lifecycles
- API: runs API usage, note read API, note tools, Python API, CLI
- Data model, Cognition, Remembering, Clients, Importers
- FAQ and Troubleshooting
- Contributing, Security, Changelog, Acknowledgements
License
MIT. See LICENSE.
Metadata
Release files for abstractnote 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| abstractnote-0.2.0.tar.gz | 644.0 kB | With provenance | Details for abstractnote-0.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| abstractnote-0.2.0-py3-none-any.whl | Python 3 | none | any | Details for abstractnote-0.2.0-py3-none-any.whl |
Total release size: 1.1 MB
Release files / abstractnote-0.2.0.tar.gz
| Download URL | abstractnote-0.2.0.tar.gz |
|---|---|
| Size | 644.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c466b7d542700a2a133b7ac78f8a65a1c81873adfcb5975c9abe2ab0844c2015
|
|
BLAKE2b-256 checksum How to use checksums |
b41cf8b600f30d3e724f070183f7ef8f7053effc7bb6aa8d16b369667d828ea3
|
| 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 Oct 28, 2026.
Transparency logRelease files / abstractnote-0.2.0-py3-none-any.whl
| Download URL | abstractnote-0.2.0-py3-none-any.whl |
|---|---|
| Size | 500.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c2e8efcfd9a04f8193ee06c5692ae1aa769a889c8c84eae2e5254d76b0f1a07e
|
|
BLAKE2b-256 checksum How to use checksums |
1860274b1e22a3c14e968b2e5a9b64ce8efd8d20fb8e17e219997be45e97f4bb
|
| 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 Oct 28, 2026.
Transparency logSecurity for abstractnote 0.2.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.
Attestation for abstractnote-0.2.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 Oct 28, 2026.
Transparency logA 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.