-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
90 lines (80 loc) · 2.84 KB
/
Copy pathpyproject.toml
File metadata and controls
90 lines (80 loc) · 2.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
[build-system]
requires = ["setuptools>=68"]
build-backend = "setuptools.build_meta"
[project]
name = "agent-memory"
version = "0.1.0"
description = "Persistent long-term memory and memory lifecycle services for AI assistants"
readme = "README.md"
requires-python = ">=3.11"
authors = [
{ name = "Sacred Brain" }
]
license = { text = "MIT" }
dependencies = [
"fastapi>=0.110",
"uvicorn>=0.23",
"pydantic>=2.5",
"python-multipart>=0.0.6",
"httpx>=0.25",
"mem0ai>=1.0.1",
"agno>=2.3.0",
# Lower bound is load-bearing: services/agent_memory_mcp/stdio.py uses the 2.x API
# (MCPServer), which replaced the FastMCP class that mcp 2.0.0 deleted along
# with the whole `mcp.server.fastmcp` module. On a 1.x the import fails and
# the client reports only "-32000: Connection closed", which reads like auth.
"mcp>=2",
# Used by the packaged CLIs (digest, file-sync, prune). It was only ever
# present transitively before these became entry points.
"requests>=2.31",
]
[project.scripts]
hippocampus = "brain.hippocampus.__main__:main"
memory-governor = "memory_governor.app:run"
# Everything the systemd units invoke is a console script, so a deployed host
# needs the venv only — no source checkout.
agent-memory-dream = "agent_memory.cli.dream_sweep:main"
agent-memory-digest = "agent_memory.cli.governor_digest:main"
agent-memory-file-sync = "agent_memory.cli.memory_sync:main"
agent-memory-prune = "agent_memory.cli.prune_auto_memories:run"
agent-memory-tune = "agent_memory.cli.auto_memory_tuner:main"
agent-memory-notes = "agent_memory.cli.mem0_org_sync:main"
agent-memory-matrix-bot = "bots.matrix.mention_bot:run"
agent-memory-matrix-autojoin = "bots.matrix.autojoin_bot:run"
[tool.setuptools.packages.find]
include = ["brain*", "memory_governor*", "agent_memory*", "bots*"]
namespaces = true
[tool.setuptools.package-data]
"agent_memory.prompts" = ["*.txt"]
[project.optional-dependencies]
# The Matrix bot entry points (agent-memory-matrix-bot / -matrix-autojoin)
# need matrix-nio. Kept optional so a plain memory install stays light:
# pipx install '.[matrix]'
matrix = [
"matrix-nio>=0.24",
]
# NB: kerykeion (Swiss Ephemeris / pyswisseph C build) is intentionally NOT a
# dependency here. Astrology/natal computation belongs to the *astrotunes*
# project, which owns kerykeion; sacred-brain's astrology code (memory_governor
# oracle, scripts/natal_to_agent_memory) should delegate there. The hippocampus
# core needs none of it (the sqlite backend is lexical — no embeddings/LLM).
dev = [
"pytest>=7.4",
"ruff>=0.3.0",
"mypy>=1.9.0",
"types-requests",
"types-ujson",
]
[tool.pytest.ini_options]
addopts = "-q"
testpaths = ["tests"]
[tool.ruff]
line-length = 120
target-version = "py311"
[tool.ruff.lint]
select = ["E", "F", "I", "W", "B", "UP", "PL"]
ignore = []
[tool.mypy]
python_version = "3.11"
strict = true
ignore_missing_imports = true