- Add deepseek and nvidia entries to gateway-provider config - Add DEEPSEEK_API_KEY and NVIDIA_API_KEY to .env.example - Add deepseek and nvidia to doctor's LLM provider check - Fix remaining harness-log → log-message reference
3.9 KiB
Passepartout User Manual
- Introduction
- Installation
- Configuration
- Interacting with Passepartout
- The Memex Structure
- Deployment
Introduction
Welcome to Passepartout v0.1.0 (The Autonomous Foundation). Passepartout is a neurosymbolic AI agent and a Lisp Machine operating system designed to autonomously maintain your Memex (knowledge base) and interact with you via multiple, equal-citizen interfaces.
Installation
Passepartout is bootstrapped via a single shell script.
Quick start (curl)
curl -fsSL https://raw.githubusercontent.com/amrgharbeia/passepartout/main/passepartout.sh | bash -s configure
From a clone
git clone https://github.com/amrgharbeia/passepartout.git ~/projects/passepartout
~/projects/passepartout/passepartout.sh configure
Both methods will:
- Install system dependencies (SBCL, Emacs, git, curl, socat — detected for Debian or Fedora)
- Install Quicklisp (Common Lisp package manager)
- Tangle literate Org sources into runnable Lisp
- Launch the interactive setup wizard (LLM providers, gateways)
If you already have Emacs installed, the installer skips it and uses your existing installation.
Configuration
The system is configured via a `.env` file in the project root. Essential variables include:
- `OPENROUTER_API_KEY`: Your LLM provider key.
- `PROVIDER_CASCADE`: The fallback order for LLM providers (e.g., `openrouter,ollama,anthropic`).
- `MEMEX_DIR`: The absolute path to your knowledge base (defaults to `~/memex`).
Interacting with Passepartout
Because of the Unified Envelope Architecture, the kernel treats all clients as interchangeable. You must first boot the background daemon:
./passepartout.sh --boot &
Terminal User Interface (TUI)
For a rich, split-pane terminal experience:
./passepartout.sh tui
Command Line Interface (CLI)
For raw, pipe-friendly interaction:
./passepartout.sh cli
Emacs Integration
Passepartout functions as your "foveal vision" inside Emacs.
- Ensure `org-agent.el` is loaded.
- Run `M-x passepartout-connect`.
- Interact via the `*passepartout-chat*` buffer.
The Memex Structure
Passepartout assumes a local folder structure representing your "Memex".
- Core memories and identities are mapped to Org-mode files.
- The `Scribe` background worker distills chronological logs into structured Zettelkasten notes.
- The `Gardener` continuously repairs broken links and flags orphaned nodes.
Deployment
Bare metal (Debian / Fedora)
The configure command supports both Debian-based (Ubuntu, Pop, Mint) and Fedora-based (RHEL, Rocky) distributions. It detects your distro automatically and installs the correct packages.
./passepartout.sh configure # interactive
./passepartout.sh configure --non-interactive # headless
./passepartout.sh configure --with-firewall # also open port 9105
After configuration, you can re-run configure any time to add providers or link gateways.
systemd service (auto-start on boot)
./passepartout.sh install service
Installs a user-level systemd unit that starts the daemon on login. Logs are available via journalctl --user -u passepartout.service -f.
To remove:
./passepartout.sh uninstall service
Docker
A Debian-based Docker image is provided for containerized deployment.
cd infrastructure/docker
docker-compose up -d
This builds an image from debian:trixie-slim with all dependencies pre-installed. The memex directory is mounted from the host.
Backup
./passepartout.sh backup ~/my-backup.tar.gz
Backs up the config, data, and memex directories.
Restore
./passepartout.sh restore ~/my-backup.tar.gz
Restores from a backup file. Run passepartout doctor afterward to verify integrity.