eno-service — FastAPI face on eno's read endpoints
Project description
eno-service
A FastAPI face on eno's read endpoints — the HTTP surface other tools talk to.
eno-service is the shared, long-running face on an eno
vault index. Run it once on a host and every tool that speaks HTTP — the
Obsidian plugin, the eno-mcp server, sibling projects — queries the same
index instead of each opening its own sqlite handle. Single-host work doesn't
need it; a multi-tool or multi-agent setup does.
Install
pip install eno-service
Requires Python 3.12+. Pulls in the enowiki core (which imports as eno).
Run it
export ENO_VAULT_DIR=~/vault # index must already exist — run `eno index` first
eno-serve # serves on 127.0.0.1:7891
Host and port come from $ENO_SERVICE_HOST / $ENO_SERVICE_PORT (defaults
127.0.0.1 and 7891). Point a client at it with $ENO_SERVICE_URL, e.g.
export ENO_SERVICE_URL=http://localhost:7891.
Endpoints
Read (GET):
/health— liveness + configured vault path/search— notes by title substring or tag/note— frontmatter + headings + excerpt for one note/neighbors— backlinks + outbound for one note/orphans— notes with no inbound links/stubs— short notes with no outbound links/stale— notes past a recency threshold/broken-links— raw broken wikilinks/classify-broken-links— split into drift (real bugs) vs concepts (groundwork)/frontier— pages actively reaching outward/hot— session-start "what's hot" bundle/hygiene— frontmatter contract audit
Write / compute (POST):
/index— (re)build the index/tiling— body-content semantic dedup (needs theenowiki[llm]extra)/garden— structural gardener report/hygiene/propose,/hygiene/apply— audit proposals and applies/note/create,/note/append— write notes back with provenance
The service is read-first: POST /index and the note-write endpoints are the
mutating exceptions, and every write is human-initiated. Interactive API docs
are served at /docs once it's running.
License
MIT — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eno_service-0.2.0.tar.gz.
File metadata
- Download URL: eno_service-0.2.0.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f34271d4bf8d55eff41dda834c6c3a39667686dae3bc94ca4333ee668aa8f85
|
|
| MD5 |
ed2b1735a6c957134d29f5af24941be8
|
|
| BLAKE2b-256 |
1efafd957a3f09c85fcfad6cd118822464c026698b1d2157330b4d5f5fcfe37a
|
Provenance
The following attestation bundles were made for eno_service-0.2.0.tar.gz:
Publisher:
publish.yml on lavallee/eno
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eno_service-0.2.0.tar.gz -
Subject digest:
0f34271d4bf8d55eff41dda834c6c3a39667686dae3bc94ca4333ee668aa8f85 - Sigstore transparency entry: 2188252585
- Sigstore integration time:
-
Permalink:
lavallee/eno@420b6c01ec988fd1874e6a3155ac4467a138b2f7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/lavallee
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@420b6c01ec988fd1874e6a3155ac4467a138b2f7 -
Trigger Event:
release
-
Statement type:
File details
Details for the file eno_service-0.2.0-py3-none-any.whl.
File metadata
- Download URL: eno_service-0.2.0-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17a03084a24b39597c766378344dda275d9138cd0253e704ee9b19eae90ba7fc
|
|
| MD5 |
7e6a8911e0bc1a39fe4b52076a5ef8db
|
|
| BLAKE2b-256 |
1b13829ee2eb2f1383fb53ace4a8e404a6fb6ea72419819ae0711a007fc7c048
|
Provenance
The following attestation bundles were made for eno_service-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on lavallee/eno
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eno_service-0.2.0-py3-none-any.whl -
Subject digest:
17a03084a24b39597c766378344dda275d9138cd0253e704ee9b19eae90ba7fc - Sigstore transparency entry: 2188252592
- Sigstore integration time:
-
Permalink:
lavallee/eno@420b6c01ec988fd1874e6a3155ac4467a138b2f7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/lavallee
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@420b6c01ec988fd1874e6a3155ac4467a138b2f7 -
Trigger Event:
release
-
Statement type: