Commit graph

142 commits

Author SHA1 Message Date
Adil Hafeez
edfd237111
Make native mode default, auto-download pre-compiled binaries
- Flip --native to --docker on up/down commands (native is now default)
- Add ensure_wasm_plugins() and ensure_brightstaff_binary() to auto-download from GitHub releases
- Add _find_config_dir() to support pip-installed usage without repo checkout
- Bundle config templates in wheel via pyproject.toml force-include
- Add publish-binaries.yml CI workflow for release binary uploads
- Update docs to reflect native-first experience
2026-03-03 14:50:28 -08:00
Adil Hafeez
39a5c21209
Add native mode docs to quickstart and deployment pages 2026-03-03 14:49:29 -08:00
Musa
15c6c62df0
fix: strip trailing 'Copy code' from clipboard when copying code blocks (#788)
Co-authored-by: Claude <noreply@anthropic.com>
2026-02-27 13:11:26 -08:00
Adil Hafeez
d9404afa4d
release 0.4.9 (#785) 2026-02-26 16:18:02 -08:00
Musa
2bde21ff57
add Custom Trace Attributes to extend observability (#708)
* add custom trace attributes

* refactor: prefix custom trace attributes and update schema handlers tests configs

* refactor: rename custom_attribute_prefixes to span_attribute_header_prefixes in configuration and related handlers

* docs: add section on custom span attributes

* refactor: update tracing configuration to use span attributes and adjust related handlers

* docs: custom span attributes section to include static attributes and clarify configuration

* add custom trace attributes

* refactor: prefix custom trace attributes and update schema handlers tests configs

* refactor: rename custom_attribute_prefixes to span_attribute_header_prefixes in configuration and related handlers

* docs: add section on custom span attributes

* refactor: update tracing configuration to use span attributes and adjust related handlers

* docs: custom span attributes section to include static attributes and clarify configuration

* refactor: remove TraceCollector usage and enhance logging with structured attributes

* refactor: custom trace attribute extraction to improve clarity

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-25 16:27:20 -08:00
Adil Hafeez
70ad56a258
remove exposed example passwords from documentation (#779)
* remove exposed example passwords from documentation

Replace hardcoded example password (MyPass#123/MyPass%23123) and
project-specific Supabase references (postgres.myproject) with
generic placeholders in docs.

https://claude.ai/code/session_01H5wj3VH1Jh28kzepEwdDCx

* remove hardcoded FlightAware AeroAPI key from flights.py

https://claude.ai/code/session_01H5wj3VH1Jh28kzepEwdDCx

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-02-25 13:14:36 -08:00
Musa
ed64230833
add support for background trace collection and tracing output (#749)
* feat: add trace listener process management and foreground mode

* docs: add CLI reference documentation and update index

* fix: test coverage failing

* refactor: simplify trace listener initialization and remove debug mode handling

* docs: add CLI command screenshots to reference documentation

* fix: update trace listener PID file path

* refactor: integrate trace listener management into runtime module and streamline PID handling

* adjusting trace command for feedback on PR
2026-02-24 19:17:33 -08:00
Salman Paracha
69d650a4e5
updating architecture diagram (#774)
Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2026-02-21 16:00:02 -08:00
Adil Hafeez
7b5f1549a5
release 0.4.8 (#767)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 01:52:55 -08:00
Adil Hafeez
bfbf838b19
release 0.4.7 (#752) 2026-02-17 05:45:44 -08:00
Adil Hafeez
473996d35d
Overhaul demos directory: cleanup, restructure, and standardize configs (#760) 2026-02-17 03:09:28 -08:00
Adil Hafeez
ba651aaf71
Rename all arch references to plano (#745)
* Rename all arch references to plano across the codebase

Complete rebrand from "Arch"/"archgw" to "Plano" including:
- Config files: arch_config_schema.yaml, workflow, demo configs
- Environment variables: ARCH_CONFIG_* → PLANO_CONFIG_*
- Python CLI: variables, functions, file paths, docker mounts
- Rust crates: config paths, log messages, metadata keys
- Docker/build: Dockerfile, supervisord, .dockerignore, .gitignore
- Docker Compose: volume mounts and env vars across all demos/tests
- GitHub workflows: job/step names
- Shell scripts: log messages
- Demos: Python code, READMEs, VS Code configs, Grafana dashboard
- Docs: RST includes, code comments, config references
- Package metadata: package.json, pyproject.toml, uv.lock

External URLs (docs.archgw.com, github.com/katanemo/archgw) left as-is.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Update remaining arch references in docs

- Rename RST cross-reference labels: arch_access_logging, arch_overview_tracing, arch_overview_threading → plano_*
- Update label references in request_lifecycle.rst
- Rename arch_config_state_storage_example.yaml → plano_config_state_storage_example.yaml
- Update config YAML comments: "Arch creates/uses" → "Plano creates/uses"
- Update "the Arch gateway" → "the Plano gateway" in configuration_reference.rst
- Update arch_config_schema.yaml reference in provider_models.py
- Rename arch_agent_router → plano_agent_router in config example

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix remaining arch references found in second pass

- config/docker-compose.dev.yaml: ARCH_CONFIG_FILE → PLANO_CONFIG_FILE,
  arch_config.yaml → plano_config.yaml, archgw_logs → plano_logs
- config/test_passthrough.yaml: container mount path
- tests/e2e/docker-compose.yaml: source file path (was still arch_config.yaml)
- cli/planoai/core.py: comment and log message
- crates/brightstaff/src/tracing/constants.rs: doc comment
- tests/{e2e,archgw}/common.py: get_arch_messages → get_plano_messages,
  arch_state/arch_messages variables renamed
- tests/{e2e,archgw}/test_prompt_gateway.py: updated imports and usages
- demos/shared/test_runner/{common,test_demos}.py: same renames
- tests/e2e/test_model_alias_routing.py: docstring
- .dockerignore: archgw_modelserver → plano_modelserver
- demos/use_cases/claude_code_router/pretty_model_resolution.sh: container name

Note: x-arch-* HTTP header values and Rust constant names intentionally
preserved for backwards compatibility with existing deployments.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 15:16:56 -08:00
Adil Hafeez
b9b91ddc74
release 0.4.6 (#740) 2026-02-10 21:00:29 -08:00
Adil Hafeez
25693c36ee
release 0.4.5 (#737) 2026-02-10 13:37:04 -08:00
Musa
e3bf2b7f71
Introduce brand new CLI experience with tracing and quickstart (#724)
Release hardens tracing and routing: clearer CLI, modular internals, updated demos/docs/tests, and improved multi-agent reliability.

Co-authored-by: Adil Hafeez <adil.hafeez@gmail.com>
2026-02-10 13:17:43 -08:00
Adil Hafeez
46de89590b
use standard tracing and logging in brightstaff (#721) 2026-02-09 13:33:27 -08:00
Adil Hafeez
99077d83fb
fix build break (#730)
docs build was breaking because requirements file was getting ignored from .dockerignore
2026-02-09 10:08:20 -08:00
Adil Hafeez
d8b4c800e6
release 0.4.4 (#713) 2026-01-28 20:45:10 -08:00
Adil Hafeez
062825f26e
add envoy retries (#712)
* add envoy retries

* add missing file

* fix tests

---------

Co-authored-by: Adil Hafeez <adil.hafeez10@t-mobile.com>
2026-01-28 20:31:01 -08:00
Salman Paracha
2a36dd7376
fixing the build scripts for documentation (#711)
Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2026-01-28 18:55:35 -08:00
Salman Paracha
2941392ed1
Adding support for wildcard models in the model_providers config (#696)
* cleaning up plano cli commands

* adding support for wildcard model providers

* fixing compile errors

* fixing bugs related to default model provider, provider hint and duplicates in the model provider list

* fixed cargo fmt issues

* updating tests to always include the model id

* using default for the prompt_gateway path

* fixed the model name, as gpt-5-mini-2025-08-07 wasn't in the config

* making sure that all aliases and models match the config

* fixed the config generator to allow for base_url providers LLMs to include wildcard models

* re-ran the models list utility and added a shell script to run it

* updating docs to mention wildcard model providers

* updated provider_models.json to yaml, added that file to our docs for reference

* updating the build docs to use the new root-based build

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2026-01-28 17:47:33 -08:00
Adil Hafeez
da5cbc29b7
release 0.4.3 (#701) 2026-01-18 00:07:46 -08:00
Tang Quoc Thai
4d53297c17
feat: add passthrough_auth option for forwarding client Authorization header (#687)
* feat: add passthrough_auth option for forwarding client Authorization header

* fix tests

* Update comment to reflect upstream forwarding

* Apply suggestions from code review

---------

Co-authored-by: Adil Hafeez <adil.hafeez@gmail.com>
Co-authored-by: Adil Hafeez <adil@katanemo.com>
2026-01-14 15:06:28 -08:00
Adil Hafeez
ab391f96c7
don't include internal models in /v1/models endpoint (#685) 2026-01-09 16:57:41 -08:00
Salman Paracha
40b9780774
tweaks to web and docs to align to 0.4.2 (#680)
* tweaks to web and docs to align to 0.4.2

* made our release banner clickable

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2026-01-07 13:51:40 -08:00
Adil Hafeez
b7fba7a97f
release 0.4.2 (#679) 2026-01-07 13:02:06 -08:00
Salman Paracha
b4543ba56c
Introduce signals change (#655)
* adding support for signals

* reducing false positives for signals like positive interaction

* adding docs. Still need to fix the messages list, but waiting on PR #621

* Improve frustration detection: normalize contractions and refine punctuation

* Further refine test cases with longer messages

* minor doc changes

* fixing echo statement for build

* fixing the messages construction and using the trait for signals

* update signals docs

* fixed some minor doc changes

* added more tests and fixed docuemtnation. PR 100% ready

* made fixes based on PR comments

* Optimize latency

1. replace sliding window approach with trigram containment check
2. add code to pre-compute ngrams for patterns

* removed some debug statements to make tests easier to read

* PR comments to make ObservableStreamProcessor accept optonal Vec<Messagges>

* fixed PR comments

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
Co-authored-by: MeiyuZhong <mariazhong9612@gmail.com>
Co-authored-by: nehcgs <54548843+nehcgs@users.noreply.github.com>
2026-01-07 11:20:44 -08:00
Salman Paracha
a764cac869
updated readme with a snippet of code to go along with the descriptio… (#674)
* updated readme with a snippet of code to go along with the description of the proejct

* updated readme

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2026-01-03 23:22:04 -08:00
Adil Hafeez
f054dbdbe9
update quick start to elevate gateway/proxy example (#671) 2026-01-02 10:21:38 -08:00
Adil Hafeez
41aa4abaeb
release 0.4.1 (#670) 2026-01-01 23:39:18 -08:00
Adil Hafeez
77cdc7f6ef
Revert "release 0.4.1 (#666)" (#669)
This reverts commit 77df5160d8.
2025-12-30 15:28:30 -08:00
Adil Hafeez
77df5160d8
release 0.4.1 (#666) 2025-12-28 14:29:19 -08:00
Adil Hafeez
053e2b3a74
use uv instead of poetry (#663) 2025-12-26 11:21:42 -08:00
Adil Hafeez
88d14a205b
restructure cli (#656) 2025-12-25 14:55:29 -08:00
Adil Hafeez
f6fe7b84dc
use new config format for llm routing quick start guide 2025-12-23 19:42:19 -08:00
Adil Hafeez
e8170f76ca
rename to planoai (#650) 2025-12-23 19:26:51 -08:00
Adil Hafeez
e7ce00b5a7
rename cli to plano (#647) 2025-12-23 18:37:58 -08:00
Salman Paracha
e224cba3e3
Update docs to Plano (#639) 2025-12-23 17:14:50 -08:00
Adil Hafeez
15fbb6c3af
plano orchestration using plano orchestration 4b model (#637) 2025-12-22 18:05:49 -08:00
Salman Paracha
d5a273f740
enable state management for v1/responses (#631)
* first commit with tests to enable state mamangement via memory

* fixed logs to follow the conversational flow a bit better

* added support for supabase

* added the state_storage_v1_responses flag, and use that to store state appropriately

* cleaned up logs and fixed issue with connectivity for llm gateway in weather forecast demo

* fixed mixed inputs from openai v1/responses api (#632)

* fixed mixed inputs from openai v1/responses api

* removing tracing from model-alias-rouing

* handling additional input types from openairs

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>

* resolving PR comments

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2025-12-17 12:18:38 -08:00
Adil Hafeez
8adb9795d8
release 0.3.22 (#629) 2025-12-11 11:20:19 -08:00
Adil Hafeez
09c0b999b2
release 0.3.21 (#626) 2025-12-03 17:12:34 -08:00
Adil Hafeez
b01a81927d
release 0.3.20 (#620) 2025-11-22 19:29:04 -08:00
Salman Paracha
d37af7605c
removing model_server. buh bye (#619) 2025-11-22 15:04:41 -08:00
Salman Paracha
88c2bd1851
removing model_server python module to brightstaff (function calling) (#615)
* adding function_calling functionality via rust

* fixed rendered YAML file

* removed model_server from envoy.template and forwarding traffic to bright_staff

* fixed bugs in function_calling.rs that were breaking tests. All good now

* updating e2e test to clean up disk usage

* removing Arch* models to be used as a default model if one is not specified

* if the user sets arch-function base_url we should honor it

* fixing demos as we needed to pin to a particular version of huggingface_hub else the chatbot ui wouldn't build

* adding a constant for Arch-Function model name

* fixing some edge cases with calls made to Arch-Function

* fixed JSON parsing issues in function_calling.rs

* fixed bug where the raw response from Arch-Function was re-encoded

* removed debug from supervisord.conf

* commenting out disk cleanup

* adding back disk space

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-288.local>
Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-342.local>
2025-11-22 12:55:00 -08:00
Adil Hafeez
126b029345
release 0.3.18 (#611) 2025-10-31 12:24:49 -07:00
Salman Paracha
cdfcfb9169
support base_url path for model providers (#608)
* adding support for base_url

* updated docs

* fixed tests for config generator

* making fixes based on PR comments

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-288.local>
2025-10-29 17:08:07 -07:00
Adil Hafeez
f26bb05d35
release 0.3.17 (#604) 2025-10-24 17:52:15 -07:00
Adil Hafeez
6d70545459
release 0.3.16 (#596) 2025-10-22 14:43:33 -07:00
Salman Paracha
7a6f87de3e
fixed test and docs for deployment (#595)
* fixed test and docs for deployment

* updating the main logo image

---------

Co-authored-by: Salman Paracha <salmanparacha@MacBook-Pro-288.local>
2025-10-22 14:13:16 -07:00