Agent Tools Reference#
The SYMFLUENCE agent provides 30+ tools organized into categories. Each tool can be invoked via natural language or explicitly by name.
Workflow Step Tools#
These tools execute individual workflow steps. Each requires a config_path
parameter pointing to a valid SYMFLUENCE YAML configuration file.
setup_project#
Initialize project directory structure for a new domain.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
acquire_attributes#
Download geospatial attribute data (soil, land cover, topography, etc.).
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
acquire_forcings#
Download meteorological forcing data for the domain.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
define_domain#
Define hydrological domain boundaries using configured method.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
discretize_domain#
Discretize domain into modeling units (HRUs, GRUs).
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
model_agnostic_preprocessing#
Perform model-agnostic data preprocessing.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
model_specific_preprocessing#
Set up model-specific input files and configurations.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
run_model#
Execute the configured hydrological model.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
postprocess_results#
Analyze and visualize model results.
Parameters:
config_path(required): Path to configuration filedebug: Enable debug output (default: false)
Binary Management Tools#
Tools for managing external model binaries and dependencies.
install_executables#
Install external modeling tools (SUMMA, mizuRoute, FUSE, etc.).
Parameters:
tools: List of tools to install. Options: summa, mizuroute, fuse, taudem, gistool, datatool, ngen, ngiab, sundials, troute. Omit to install all.force_install: Force reinstall even if already present (default: false)
Example:
Install SUMMA and mizuRoute for me
validate_binaries#
Validate that required model binaries exist and are functional.
Parameters: None
run_doctor#
Run comprehensive system diagnostics.
Parameters: None
show_tools_info#
Display information about installed tools including versions and paths.
Parameters: None
Configuration Tools#
Tools for managing SYMFLUENCE configuration files.
list_config_templates#
List all available configuration templates.
Parameters: None
update_config#
Update an existing configuration file with new settings.
Parameters:
config_file(required): Path to configuration file
validate_environment#
Validate system environment and dependencies.
Parameters: None
validate_config_file#
Validate a configuration file for correctness.
Parameters:
config_file(required): Path to configuration file
Workflow Management Tools#
Tools for managing and monitoring workflow execution.
show_workflow_status#
Show current status of a workflow including completed and pending steps.
Parameters:
config_path(required): Path to configuration file
list_workflow_steps#
List all available workflow steps with descriptions.
Parameters: None
resume_from_step#
Resume a workflow from a specific step onwards.
Parameters:
config_path(required): Path to configuration filestep_name(required): Name of step to resume from
clean_workflow_files#
Clean intermediate or output files from a workflow.
Parameters:
config_path(required): Path to configuration fileclean_level: Level of cleaning - intermediate, outputs, or alldry_run: Preview what would be cleaned (default: false)
Domain Setup Tools#
Tools for setting up new modeling domains.
setup_pour_point_workflow#
Set up a complete workflow for a watershed based on a pour point location.
Parameters:
latitude(required): Latitude in decimal degreeslongitude(required): Longitude in decimal degreesdomain_name(required): Name for the domaindomain_definition_method(required): Method - point, lumped, semidistributed, or distributedbounding_box: Optional bounding box coordinates
Example:
Set up a watershed project for coordinates 51.17, -115.57
named BowAtBanff using delineation
Code Operations Tools#
Tools for code analysis and modification (agent self-improvement).
read_file#
Read a source code file with line numbers.
Parameters:
file_path(required): Path relative to repository rootstart_line: Start line for partial readend_line: End line for partial read
list_directory#
Browse repository directory structure.
Parameters:
directory: Directory path (default: .)recursive: Show full tree (default: false)pattern: File pattern filter (e.g., *.py)
analyze_codebase#
Analyze the SYMFLUENCE codebase structure.
Parameters:
depth: Analysis depth - quick, detailed, or deep
propose_code_change#
Propose a code modification (validates syntax, shows diff).
Uses fuzzy matching to find code even with minor whitespace differences. Validates Python syntax before staging and shows a preview diff.
Parameters:
file_path(required): Path to file to modifyold_code(required): Exact code to replace (fuzzy matched)new_code(required): Replacement codedescription(required): Why this change is neededreason: Type - bugfix, improvement, or featurefuzzy_threshold: Match similarity (0.0-1.0, default 0.85)
Example:
Propose changing the timeout from 30 to 60 seconds in config.py
show_staged_changes#
Display all staged changes with statistics and file summary.
Shows diff statistics (lines added/removed), list of modified files, and the full diff. Provides guidance on next steps (run tests, commit, etc.).
Parameters: None
Output includes:
Summary statistics (files changed, insertions, deletions)
List of modified files
Full diff output
Next step guidance
run_tests#
Run tests using pytest.
Parameters:
test_pattern: pytest patternfiles: Specific test filesverbose: Verbose output (default: false)
create_pr_proposal#
Create a PR proposal from staged changes.
Auto-detects modified files and generates a comprehensive PR description
with testing checklist. Provides step-by-step instructions for completing
the PR manually or via gh CLI.
Parameters:
title(required): PR titledescription(required): PR body/descriptionreason: Type - bugfix, improvement, or feature
Generated PR includes:
Summary section with your description
Context-specific problem/feature/improvement section
Auto-detected list of modified files
Testing checklist
Agent attribution footer
Meta Tools#
Tools for information and guidance.
show_help#
Show help information about agent commands.
Parameters: None
list_available_tools#
List all available tools with descriptions.
Parameters: None
explain_workflow#
Explain the SYMFLUENCE workflow process and step sequence.
Parameters: None
Tool Categories Summary#
Category |
Count |
Purpose |
|---|---|---|
Workflow Steps |
9 |
Execute individual workflow steps |
Binary Management |
4 |
Install and validate model binaries |
Configuration |
4 |
Manage configuration files |
Workflow Management |
4 |
Monitor and control workflows |
Domain Setup |
1 |
Create new modeling domains |
Code Operations |
7 |
Code analysis and modification |
Meta Tools |
3 |
Help and information |
See Also#
AI Agent Guide - Agent usage guide
Configuration - Configuration file reference