
The list of model choices is hardcoded here, duplicating the APPROVED_MODELS dictionary defined in src/agentic_fleet/agentic_skills_system/workflow/optimize.py. This creates a maintenance issue, as any changes to APPROVED_MODELS would need to be manually synchronized here to avoid discrepancies between the CLI and the application logic.
To make this more maintainable and ensure the CLI argument choices are always in sync with the supported models, you can dynamically populate the choices by importing APPROVED_MODELS within the build_parser function.
Here's a suggested implementation:
- Add the import before defining the
optimize subparser:
# ... existing parser setup for 'generate-xml'
# Workflow optimization with MIPROv2/GEPA
from .workflow.optimize import APPROVED_MODELS
optimize = subparsers.add_parser(
# ...
- Then, update the
--model argument to use the imported list:
optimize.add_argument(
"--model",
choices=list(APPROVED_MODELS.keys()),
default="gemini-3-flash-preview",
help="LLM model to use (default: gemini-3-flash-preview)",
)
Originally posted by @gemini-code-assist[bot] in #1 (comment)