plano/config
Musa 78dc4edad9
Add first-class ChatGPT subscription provider support (#881)
* Add first-class ChatGPT subscription provider support

* Address PR feedback: move uuid import to top, reuse parsed config in up()

* Add ChatGPT token watchdog for seamless long-lived sessions

* Address PR feedback: error on stream=false for ChatGPT, fix auth file permissions

* Replace ChatGPT watchdog/restart with passthrough_auth

---------

Co-authored-by: Musa Malik <musam@uw.edu>
2026-04-23 15:34:44 -07:00
..
grafana Add Prometheus metrics endpoint and Grafana dashboard for brightstaff (#904) 2026-04-22 11:19:10 -07:00
docker-compose.dev.yaml Overhaul demos directory: cleanup, restructure, and standardize configs (#760) 2026-02-17 03:09:28 -08:00
env.list restructure cli (#656) 2025-12-25 14:55:29 -08:00
envoy.template.yaml Add DigitalOcean as a first-class LLM provider (#889) 2026-04-17 12:25:34 -07:00
plano_config_schema.yaml Add first-class ChatGPT subscription provider support (#881) 2026-04-23 15:34:44 -07:00
README.md Adding support for wildcard models in the model_providers config (#696) 2026-01-28 17:47:33 -08:00
requirements.txt restructure cli (#656) 2025-12-25 14:55:29 -08:00
supervisord.conf separate config generation from process startup in supervisord (#838) 2026-03-19 22:37:56 -07:00
test_passthrough.yaml Run plano natively by default (#744) 2026-03-05 07:35:25 -08:00
validate_plano_config.sh model routing: cost/latency ranking with ranked fallback list (#849) 2026-03-30 13:46:52 -07:00

Envoy filter code for gateway

Add toolchain

$ rustup target add wasm32-wasip1

Building

$ cargo build --target wasm32-wasip1 --release

Testing

$ cargo test

Local development

  • Build docker image for Plano. Note this needs to be built once.

    $ sh build_filter_image.sh
    
  • Build filter binary,

    $ cargo build --target wasm32-wasip1 --release
    
  • Start envoy with config.yaml and test,

    $ docker compose -f docker-compose.dev.yaml up plano
    
  • dev version of docker-compose file uses following files that are mounted inside the container. That means no docker rebuild is needed if any of these files change. Just restart the container and chagne will be picked up,

    • envoy.template.yaml
    • intelligent_prompt_gateway.wasm