Files
memwalk/pyproject.toml
T
emilandClaude Opus 4.7 b873144b69 Initial v0.1: memwalk CLI on top of memba
- Config in ~/.memwalk/config.toml (typer init writes it)
- Sources: git log walker + bash history parser with secret/noise filters
- Ingest orchestrator feeds events into a memba Session and saves
  ~/.memwalk/current.memb via the rewritten Session.chat() that preserves
  loaded state (raw eval+sample, no KV-cache reset)
- Daily snapshot rotation under ~/.memwalk/snapshots/
- CLI commands: init, update, ask, standup, status, prune

Validated on Nemotron-3-Nano-4B Q4_K_M end-to-end: ingest 304 events
(303 commits + 1 shell session) in 2.8s on GPU, recall in fresh process
returns accurate per-project summaries.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 13:40:46 +03:00

53 lines
1.3 KiB
TOML

[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "memwalk"
version = "0.1.0"
description = "Walk through your work memory — semantic recall of git, shell and notes via local SSM models"
readme = "README.md"
license = { text = "MIT" }
requires-python = ">=3.10"
keywords = ["llm", "memory", "ssm", "mamba", "nemotron", "memba", "personal-ai", "cli"]
classifiers = [
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Utilities",
]
dependencies = [
"memba>=0.1.0",
"typer>=0.9.0",
"rich>=13.0.0",
"tomli>=2.0;python_version<'3.11'",
]
[project.optional-dependencies]
dev = ["pytest>=7.0", "ruff", "mypy"]
[project.scripts]
memwalk = "memwalk.cli:main"
[project.urls]
Homepage = "https://github.com/emil28092005/memwalk"
Repository = "https://github.com/emil28092005/memwalk"
[tool.setuptools.packages.find]
include = ["memwalk*"]
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.ruff.lint]
select = ["E", "F", "W", "I"]
ignore = ["E501"]