diff --git a/docs/source/get_started/quickstart.rst b/docs/source/get_started/quickstart.rst index de68cbe3..ce026237 100644 --- a/docs/source/get_started/quickstart.rst +++ b/docs/source/get_started/quickstart.rst @@ -17,11 +17,17 @@ Follow this guide to learn how to quickly set up Plano and integrate it into you Prerequisites ------------- -Before you begin, ensure you have the following: +Plano runs **natively** by default — no Docker or Rust toolchain required. Pre-compiled binaries are downloaded automatically on first run. + +1. `Python `_ (v3.10+) +2. Supported platforms: Linux (x86_64, aarch64), macOS (Apple Silicon) + +**Docker mode** (optional): + +If you prefer to run inside Docker, add ``--docker`` to ``planoai up`` / ``planoai down``. This requires: 1. `Docker System `_ (v24) 2. `Docker Compose `_ (v2.29) -3. `Python `_ (v3.10+) Plano's CLI allows you to manage and interact with the Plano efficiently. To install the CLI, simply run the following command: @@ -84,17 +90,20 @@ Step 2. Start plano Once the config file is created, ensure that you have environment variables set up for ``ANTHROPIC_API_KEY`` and ``OPENAI_API_KEY`` (or these are defined in a ``.env`` file). -Start Plano: - .. code-block:: console $ planoai up plano_config.yaml - # Or if installed with uv tool: uvx planoai up plano_config.yaml - 2024-12-05 11:24:51,288 - planoai.main - INFO - Starting plano cli version: 0.4.9 - 2024-12-05 11:24:51,825 - planoai.utils - INFO - Schema validation successful! - 2024-12-05 11:24:51,825 - planoai.main - INFO - Starting plano - ... - 2024-12-05 11:25:16,131 - planoai.core - INFO - Container is healthy! + +On the first run, Plano automatically downloads Envoy, WASM plugins, and brightstaff and caches them at ``~/.plano/``. + +To stop Plano, run ``planoai down``. + +**Docker mode** (optional): + +.. code-block:: console + + $ planoai up plano_config.yaml --docker + $ planoai down --docker Step 3: Interact with LLM ~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/source/resources/deployment.rst b/docs/source/resources/deployment.rst index 7e72e578..13f30ede 100644 --- a/docs/source/resources/deployment.rst +++ b/docs/source/resources/deployment.rst @@ -3,7 +3,7 @@ Deployment ========== -This guide shows how to deploy Plano directly using Docker without the ``plano`` CLI, including basic runtime checks for routing and health monitoring. +Plano can be deployed in two ways: as a **Docker container** (default) or **natively** on the host without Docker. Docker Deployment ----------------- @@ -53,6 +53,48 @@ Check container health and logs: docker compose ps docker compose logs -f plano +Native Deployment +----------------- + +Run Plano directly on the host without Docker. This is useful for development, platforms without Docker, or environments where you want to avoid container overhead. + +Prerequisites +~~~~~~~~~~~~~ + +- `Rust `_ with the ``wasm32-wasip1`` target +- OpenSSL dev headers (``libssl-dev`` on Debian/Ubuntu, ``openssl`` on macOS) +- Supported platforms: Linux (x86_64, aarch64), macOS (Apple Silicon) + +Build from Source +~~~~~~~~~~~~~~~~~ + +Compile the WASM plugins and brightstaff binary: + +.. code-block:: bash + + planoai build --native + +Start Plano +~~~~~~~~~~~~ + +.. code-block:: bash + + planoai up plano_config.yaml --native + +Envoy is automatically downloaded on first run and cached at ``~/.plano/bin/``. Runtime files (rendered configs, logs, PID file) are stored in ``~/.plano/run/``. + +Options: + +- ``--foreground`` — stay attached and stream logs (Ctrl+C to stop) +- ``--with-tracing`` — start a local OTLP trace collector + +Stop Plano +~~~~~~~~~~ + +.. code-block:: bash + + planoai down --native + Runtime Tests -------------