Files
passepartout/docs/USER_MANUAL.org
Amr Gharbeia 95d1ea3fed feat: add DeepSeek and NVIDIA NIM providers
- 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
2026-05-02 22:25:24 -04:00

124 lines
3.9 KiB
Org Mode

#+TITLE: Passepartout User Manual
#+AUTHOR: Passepartout Contributors
#+STARTUP: content
#+FILETAGS: :docs:manual:
* 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)
#+begin_src bash
curl -fsSL https://raw.githubusercontent.com/amrgharbeia/passepartout/main/passepartout.sh | bash -s configure
#+end_src
** From a clone
#+begin_src bash
git clone https://github.com/amrgharbeia/passepartout.git ~/projects/passepartout
~/projects/passepartout/passepartout.sh configure
#+end_src
Both methods will:
1. Install system dependencies (SBCL, Emacs, git, curl, socat — detected for Debian or Fedora)
2. Install Quicklisp (Common Lisp package manager)
3. Tangle literate Org sources into runnable Lisp
4. 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:
#+begin_src bash
./passepartout.sh --boot &
#+end_src
** Terminal User Interface (TUI)
For a rich, split-pane terminal experience:
#+begin_src bash
./passepartout.sh tui
#+end_src
** Command Line Interface (CLI)
For raw, pipe-friendly interaction:
#+begin_src bash
./passepartout.sh cli
#+end_src
** Emacs Integration
Passepartout functions as your "foveal vision" inside Emacs.
1. Ensure `org-agent.el` is loaded.
2. Run `M-x passepartout-connect`.
3. 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.
#+begin_src bash
./passepartout.sh configure # interactive
./passepartout.sh configure --non-interactive # headless
./passepartout.sh configure --with-firewall # also open port 9105
#+end_src
After configuration, you can re-run ~configure~ any time to add providers or link gateways.
** systemd service (auto-start on boot)
#+begin_src bash
./passepartout.sh install service
#+end_src
Installs a user-level systemd unit that starts the daemon on login. Logs are available via ~journalctl --user -u passepartout.service -f~.
To remove:
#+begin_src bash
./passepartout.sh uninstall service
#+end_src
** Docker
A Debian-based Docker image is provided for containerized deployment.
#+begin_src bash
cd infrastructure/docker
docker-compose up -d
#+end_src
This builds an image from ~debian:trixie-slim~ with all dependencies pre-installed. The memex directory is mounted from the host.
** Backup
#+begin_src bash
./passepartout.sh backup ~/my-backup.tar.gz
#+end_src
Backs up the config, data, and memex directories.
** Restore
#+begin_src bash
./passepartout.sh restore ~/my-backup.tar.gz
#+end_src
Restores from a backup file. Run ~passepartout doctor~ afterward to verify integrity.