mirror of
https://github.com/katanemo/plano.git
synced 2026-04-25 08:46:24 +02:00
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>
71 lines
2.3 KiB
Python
71 lines
2.3 KiB
Python
import rich_click as click
|
|
|
|
|
|
def configure_rich_click(plano_color: str) -> None:
|
|
click.rich_click.USE_RICH_MARKUP = True
|
|
click.rich_click.USE_MARKDOWN = False
|
|
click.rich_click.SHOW_ARGUMENTS = True
|
|
click.rich_click.GROUP_ARGUMENTS_OPTIONS = True
|
|
click.rich_click.STYLE_ERRORS_SUGGESTION = "dim italic"
|
|
click.rich_click.ERRORS_SUGGESTION = (
|
|
"Try running the '--help' flag for more information."
|
|
)
|
|
click.rich_click.ERRORS_EPILOGUE = ""
|
|
|
|
# Custom colors matching Plano brand.
|
|
click.rich_click.STYLE_OPTION = f"dim {plano_color}"
|
|
click.rich_click.STYLE_ARGUMENT = f"dim {plano_color}"
|
|
click.rich_click.STYLE_COMMAND = f"bold {plano_color}"
|
|
click.rich_click.STYLE_SWITCH = "bold green"
|
|
click.rich_click.STYLE_METAVAR = "bold yellow"
|
|
click.rich_click.STYLE_USAGE = "bold"
|
|
click.rich_click.STYLE_USAGE_COMMAND = f"bold dim {plano_color}"
|
|
click.rich_click.STYLE_HELPTEXT_FIRST_LINE = "white italic"
|
|
click.rich_click.STYLE_HELPTEXT = ""
|
|
click.rich_click.STYLE_HEADER_TEXT = "bold"
|
|
click.rich_click.STYLE_FOOTER_TEXT = "dim"
|
|
click.rich_click.STYLE_OPTIONS_PANEL_BORDER = "dim"
|
|
click.rich_click.ALIGN_OPTIONS_PANEL = "left"
|
|
click.rich_click.MAX_WIDTH = 100
|
|
|
|
# Option groups for better organization.
|
|
click.rich_click.OPTION_GROUPS = {
|
|
"planoai up": [
|
|
{
|
|
"name": "Configuration",
|
|
"options": ["--path", "file"],
|
|
},
|
|
{
|
|
"name": "Runtime Options",
|
|
"options": ["--foreground", "--with-tracing", "--tracing-port"],
|
|
},
|
|
],
|
|
"planoai logs": [
|
|
{
|
|
"name": "Log Options",
|
|
"options": ["--debug", "--follow"],
|
|
},
|
|
],
|
|
}
|
|
|
|
# Command groups for main help.
|
|
click.rich_click.COMMAND_GROUPS = {
|
|
"planoai": [
|
|
{
|
|
"name": "Gateway Commands",
|
|
"commands": ["up", "down", "build", "logs"],
|
|
},
|
|
{
|
|
"name": "Agent Commands",
|
|
"commands": ["cli-agent"],
|
|
},
|
|
{
|
|
"name": "Observability",
|
|
"commands": ["trace"],
|
|
},
|
|
{
|
|
"name": "Utilities",
|
|
"commands": ["generate-prompt-targets"],
|
|
},
|
|
],
|
|
}
|