REM (Resources-Entities-Moments) memory system for Percolate - privacy-first personal AI infrastructure
Project description
Percolate Python Package
Python implementation of Percolate - the API server, agent runtime, and orchestration layer.
Structure
percolate/
├── src/percolate/ # Main package
│ ├── api/ # FastAPI server
│ ├── auth/ # OAuth 2.1 authentication
│ ├── agents/ # Agent-let runtime
│ ├── memory/ # REM database interface (wraps Rust)
│ ├── parsers/ # Document parsing orchestration
│ ├── mcp/ # Model Context Protocol server
│ ├── cli/ # Command-line interface
│ ├── otel/ # OpenTelemetry instrumentation
│ └── settings.py # Configuration
├── tests/ # Test suite
│ ├── unit/ # Unit tests
│ └── integration/ # Integration tests
└── pyproject.toml # Project configuration
Development
Setup
# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Create virtual environment and install dependencies
cd percolate
uv venv
source .venv/bin/activate # or `.venv\Scripts\activate` on Windows
uv pip install -e ".[dev]"
Running
# Start API server
uv run percolate serve
# CLI commands
uv run percolate --help
Testing
# Run all tests
uv run pytest
# Run with coverage
uv run pytest --cov=percolate --cov-report=html
# Run specific test
uv run pytest tests/unit/agents/test_factory.py -v
Code Quality
# Format code
uv run black src tests
# Lint
uv run ruff check src tests
# Type check
uv run mypy src
Dependencies
This package depends on percolate-core (Rust) for:
- REM memory engine
- Vector embeddings
- Document parsing (fast path)
- Cryptographic operations
See ../percolate-core/ for Rust implementation.
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 percolate_rem-0.1.0.tar.gz.
File metadata
- Download URL: percolate_rem-0.1.0.tar.gz
- Upload date:
- Size: 212.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd6a3b235dee10347933f2adec90206c360865666d979315b773063c4dcc0e42
|
|
| MD5 |
7445c4117ea073c2510549e6c0831bef
|
|
| BLAKE2b-256 |
d3a7efbd111ec6016033ff18999e03b02bebbaa301480787c39db46f1c905039
|
File details
Details for the file percolate_rem-0.1.0-py3-none-any.whl.
File metadata
- Download URL: percolate_rem-0.1.0-py3-none-any.whl
- Upload date:
- Size: 25.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b6b8666d066e0a6ce244e99332b711cc4cb27a338f2d043de8fb18b9f72c9e9
|
|
| MD5 |
ffb81160427a24fcc47379aa041bbdf6
|
|
| BLAKE2b-256 |
16f752f12064c024b3232d260942fb69c2928616d6816e041ed0592af61d8460
|