MemoryBot CLI — your personal knowledge graph from the command line
Project description
MemoryBot CLI
Your personal knowledge graph from the command line.
Install
pipx install memorybot
(or pip install memorybot inside a venv).
Quick start
mb login # opens browser, OAuth flow
mb memo search "..." # full-text + semantic search
mb memo get <SID> # fetch a memo by sid
mb run <SID> # execute a Python script memo
--json on the read commands emits machine-readable output for piping into jq.
Running script memos
mb run <sid> fetches the memo, extracts the first ```python fenced
block, mints a fresh short-TTL session token (read-only by default), and
runs the code via uv run --python $(which python3) <tmpfile> with
MEMORYBOT_TOKEN and MEMORYBOT_URL set in the env. Stdout and stderr
stream live; the script's exit code propagates.
mb run eaQ5a4Hgxl # default: read-only token, 5min TTL
mb run eaQ5a4Hgxl --write # mint a write-capable token
mb run eaQ5a4Hgxl --ttl 600 # 10-minute TTL
mb run eaQ5a4Hgxl --no-log # skip writing the run-audit memo
Inside the script, from memorybot.client import Client picks up the env
vars set by the runner. Requires uv on PATH.
Audit trail
The minted token carries the script's sid as audit metadata, so server logs
attribute every API call back to the originating script. After the script
exits, mb run posts a script_run memo with rc, scope, duration, and a
captured stdout excerpt, plus an instance_of ref pointing to the script.
Pass --no-log to skip the memo (the server-side attribution still happens).
Configuration
MEMORYBOT_URL— server URL (defaulthttps://www.memorybot.com).--base-url— per-command override.
Credentials are stored at ~/.config/memorybot/config.json (mode 0600).
Auth
mb login runs the OAuth 2.0 authorization-code flow with PKCE: it registers a
client via Dynamic Client Registration (RFC 7591), opens your browser to the
authorize endpoint, and captures the callback on a one-shot loopback server.
Tokens auto-refresh on 401.
mb logout clears stored credentials.
License
MIT
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 memorybot-0.5.0.tar.gz.
File metadata
- Download URL: memorybot-0.5.0.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a8c5daf27da4b64725a8da41acb39760cb50fac0dfd25f4100b1486a682e7a3
|
|
| MD5 |
fdc239c151d358040013e441cd5eb355
|
|
| BLAKE2b-256 |
f3a1581811ae21cb564c0b4e6318f9d87cd8d9532d17387607ce79511d091454
|
Provenance
The following attestation bundles were made for memorybot-0.5.0.tar.gz:
Publisher:
publish.yml on nolanlove/memorybot-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
memorybot-0.5.0.tar.gz -
Subject digest:
5a8c5daf27da4b64725a8da41acb39760cb50fac0dfd25f4100b1486a682e7a3 - Sigstore transparency entry: 1454432018
- Sigstore integration time:
-
Permalink:
nolanlove/memorybot-cli@0bf7fa3ebb86eb30376453623350f855652567ec -
Branch / Tag:
refs/tags/v0.5.0 - Owner: https://github.com/nolanlove
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0bf7fa3ebb86eb30376453623350f855652567ec -
Trigger Event:
release
-
Statement type:
File details
Details for the file memorybot-0.5.0-py3-none-any.whl.
File metadata
- Download URL: memorybot-0.5.0-py3-none-any.whl
- Upload date:
- Size: 13.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2b8edab5e9fae55e749c6ee08069dabea4f7e19410e25c2c14097ebae74a48c4
|
|
| MD5 |
951f2be2dca5f60241d8e2107a97004e
|
|
| BLAKE2b-256 |
c6d2132056cf7fcc62b93f998094abb860d0674085d7e31cb8a89b8589a42873
|
Provenance
The following attestation bundles were made for memorybot-0.5.0-py3-none-any.whl:
Publisher:
publish.yml on nolanlove/memorybot-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
memorybot-0.5.0-py3-none-any.whl -
Subject digest:
2b8edab5e9fae55e749c6ee08069dabea4f7e19410e25c2c14097ebae74a48c4 - Sigstore transparency entry: 1454432090
- Sigstore integration time:
-
Permalink:
nolanlove/memorybot-cli@0bf7fa3ebb86eb30376453623350f855652567ec -
Branch / Tag:
refs/tags/v0.5.0 - Owner: https://github.com/nolanlove
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0bf7fa3ebb86eb30376453623350f855652567ec -
Trigger Event:
release
-
Statement type: