mirror of
https://github.com/HKUDS/CLI-Anything.git
synced 2026-08-28 23:27:04 +08:00
4cef98473b
core/parameterize.py (new):
- interactive_parameterize(): CLI prompt loop, validates snake_case names,
skips on Enter, detects duplicate names
- parameterize_yaml_file(): post-hoc parameterization of existing YAML files
- gemini_suggest_parameters(): sends type_text values to Gemini with strict
prompt, returns {step_index: param_name} suggestions
- _valid_param_name(): enforces [a-z][a-z0-9_]* format
core/recorder.py:
- to_yaml(parameters=None): accept pre-built parameters block
- save(parameters=None): pass through to to_yaml
- get_type_steps(): list (index, step) for all non-empty type_text steps
- apply_parameterization(assignments): replace text values with ${param}
in-place, auto-infer type (string/integer/float), return parameters block
macrocli_cli.py:
- macro record --parameterize: interactive loop after recording
- macro record --auto-parameterize [--api-key]: Gemini suggestions + confirm
- macro parameterize <yaml_file>: post-hoc parameterization of any YAML
- macro parameterize --auto [--api-key]: Gemini-assisted post-hoc