fast-agent-mcp 0.3.3__tar.gz → 0.3.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of fast-agent-mcp might be problematic. Click here for more details.
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/.gitignore +1 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/PKG-INFO +2 -2
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/README.md +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/custom-agents/agent.py +2 -2
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/data-analysis/analysis-campaign.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/data-analysis/analysis.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/fastapi/fastapi-advanced.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/fastapi/fastapi-simple.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/forms_demo.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/game_character.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/tool_call.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/mcp-filtering/test_mcp_filtering.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/mcp/state-transfer/agent_one.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/mcp/state-transfer/agent_two.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/vision-examples/example1.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/vision-examples/example2.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/vision-examples/example3.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/otel/agent.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/otel/agent2.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/researcher/researcher-eval.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/researcher/researcher-imp.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/researcher/researcher.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4/examples}/setup/agent.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/setup/fastagent.config.yaml +1 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/agent.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/tensorzero/image_demo.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/simple_agent.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/workflows/chaining.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/workflows/evaluator.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/workflows/human_input.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/workflows/orchestrator.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/workflows/parallel.py +1 -1
- {fast_agent_mcp-0.3.3/src/fast_agent/resources → fast_agent_mcp-0.3.4}/examples/workflows/router.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/pyproject.toml +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/__init__.py +6 -3
- fast_agent_mcp-0.3.4/src/fast_agent/agents/__init__.py +85 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/commands/go.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/config.py +4 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/__init__.py +38 -37
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/direct_factory.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/ui_agent.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/data-analysis/analysis-campaign.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/data-analysis/analysis.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/forms_demo.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/mcp/elicitations/game_character.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/tool_call.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/mcp/state-transfer/agent_one.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/mcp/state-transfer/agent_two.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/researcher/researcher-eval.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/researcher/researcher-imp.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/researcher/researcher.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/agent.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/tensorzero/image_demo.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/simple_agent.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/workflows/chaining.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/workflows/evaluator.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/workflows/human_input.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/workflows/orchestrator.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/workflows/parallel.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4/src/fast_agent/resources}/examples/workflows/router.py +1 -1
- {fast_agent_mcp-0.3.3/examples → fast_agent_mcp-0.3.4/src/fast_agent/resources}/setup/agent.py +1 -1
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/setup/fastagent.config.yaml +1 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/mcp_ui_utils.py +12 -1
- fast_agent_mcp-0.3.3/src/fast_agent/agents/__init__.py +0 -36
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/LICENSE +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/azure-openai/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/bedrock/fast-agent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/custom-agents/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/data-analysis/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/data-analysis/mount-point/WA_Fn-UseC_-HR-Employee-Attrition.csv +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/fastapi/pyproject.toml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/fastapi/readme.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/elicitation_account_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/elicitation_forms_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/elicitation_game_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/elicitations/game_character_handler.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/mcp-filtering/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/mcp-filtering/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/mcp-filtering/mcp_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/state-transfer/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/state-transfer/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/vision-examples/cat.png +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/mcp/vision-examples/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/new-api/display_check.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/new-api/simple_llm.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/new-api/simple_llm_advanced.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/new-api/simple_mcp.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/otel/docker-compose.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/otel/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/researcher/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/setup/.gitignore +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/setup/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/setup/pyproject.toml.tmpl +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/.env.sample +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/Makefile +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/README.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/demo_images/clam.jpg +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/demo_images/crab.png +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/demo_images/shrimp.png +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/docker-compose.yml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/mcp_server/Dockerfile +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/mcp_server/entrypoint.sh +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/mcp_server/mcp_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/mcp_server/pyproject.toml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/tensorzero_config/system_schema.json +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/tensorzero_config/system_template.minijinja +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/tensorzero/tensorzero_config/tensorzero.toml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/workflows/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/workflows/graded_report.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/workflows/short_story.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/examples/workflows/short_story.txt +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/hatch_build.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/agent_types.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/llm_agent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/llm_decorator.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/mcp_agent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/tool_agent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/chain_agent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/evaluator_optimizer.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/iterative_planner.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/orchestrator_models.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/orchestrator_prompts.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/parallel_agent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/agents/workflow/router_agent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/__main__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/commands/check_config.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/commands/quickstart.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/commands/server_helpers.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/commands/setup.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/commands/url_parser.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/constants.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/main.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/cli/terminal.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/constants.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/context.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/context_dependent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/agent_app.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/core_app.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/direct_decorators.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/error_handling.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/exceptions.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/executor/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/executor/executor.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/executor/task_registry.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/executor/workflow_signal.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/fastagent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/logging/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/logging/events.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/logging/json_serializer.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/logging/listeners.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/logging/logger.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/logging/transport.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/prompt.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/core/validation.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/event_progress.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/history/history_exporter.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/human_input/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/human_input/elicitation_handler.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/human_input/elicitation_state.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/human_input/form_fields.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/human_input/simple_form.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/human_input/types.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/interfaces.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/fastagent_llm.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/internal/passthrough.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/internal/playback.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/internal/silent.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/internal/slow.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/memory.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/model_database.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/model_factory.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/model_info.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/prompt_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/anthropic/anthropic_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/anthropic/llm_anthropic.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/anthropic/multipart_converter_anthropic.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/bedrock/bedrock_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/bedrock/llm_bedrock.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/google/google_converter.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/google/llm_google_native.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_aliyun.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_azure.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_deepseek.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_generic.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_google_oai.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_groq.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_openai.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_openrouter.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_tensorzero_openai.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/llm_xai.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/multipart_converter_openai.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/openai_multipart.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider/openai/openai_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider_key_manager.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/provider_types.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/request_params.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/sampling_converter.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/llm/usage_tracking.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/common.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/elicitation_factory.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/elicitation_handlers.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/gen_client.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/helpers/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/helpers/content_helpers.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/helpers/server_config_helpers.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/hf_auth.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/interfaces.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/logger_textio.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/mcp_agent_client_session.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/mcp_aggregator.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/mcp_connection_manager.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/mcp_content.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/mime_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompt.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompt_message_extended.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompt_render.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompt_serialization.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/__main__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/prompt_constants.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/prompt_helpers.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/prompt_load.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/prompt_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/prompts/prompt_template.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/resource_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/sampling.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/server/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/server/agent_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp/ui_mixin.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/mcp_server_registry.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/py.typed +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/data-analysis/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/data-analysis/mount-point/WA_Fn-UseC_-HR-Employee-Attrition.csv +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/elicitation_account_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/elicitation_forms_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/elicitation_game_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/elicitations/game_character_handler.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/state-transfer/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/mcp/state-transfer/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/researcher/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/.env.sample +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/Makefile +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/README.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/demo_images/clam.jpg +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/demo_images/crab.png +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/demo_images/shrimp.png +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/docker-compose.yml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/mcp_server/.python-version +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/mcp_server/Dockerfile +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/mcp_server/entrypoint.sh +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/mcp_server/mcp_server.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/mcp_server/pyproject.toml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/tensorzero_config/system_schema.json +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/tensorzero_config/system_template.minijinja +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/tensorzero/tensorzero_config/tensorzero.toml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/workflows/fastagent.config.yaml +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/workflows/graded_report.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/workflows/short_story.md +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/examples/workflows/short_story.txt +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/setup/.gitignore +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/setup/fastagent.secrets.yaml.example +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/resources/setup/pyproject.toml.tmpl +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/tools/elicitation.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/types/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/types/llm_stop_reason.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/__init__.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/console.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/console_display.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/elicitation_form.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/elicitation_style.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/enhanced_prompt.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/interactive_prompt.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/mermaid_utils.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/progress_display.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/rich_progress.py +0 -0
- {fast_agent_mcp-0.3.3 → fast_agent_mcp-0.3.4}/src/fast_agent/ui/usage_display.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fast-agent-mcp
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.4
|
|
4
4
|
Summary: Define, Prompt and Test MCP enabled Agents and Workflows
|
|
5
5
|
Author-email: Shaun Smith <fastagent@llmindset.co.uk>
|
|
6
6
|
License: Apache License
|
|
@@ -321,7 +321,7 @@ Here is the complete `sizer.py` Agent application, with boilerplate code:
|
|
|
321
321
|
|
|
322
322
|
```python
|
|
323
323
|
import asyncio
|
|
324
|
-
from fast_agent
|
|
324
|
+
from fast_agent import FastAgent
|
|
325
325
|
|
|
326
326
|
# Create the application
|
|
327
327
|
fast = FastAgent("Agent Example")
|
|
@@ -83,7 +83,7 @@ Here is the complete `sizer.py` Agent application, with boilerplate code:
|
|
|
83
83
|
|
|
84
84
|
```python
|
|
85
85
|
import asyncio
|
|
86
|
-
from fast_agent
|
|
86
|
+
from fast_agent import FastAgent
|
|
87
87
|
|
|
88
88
|
# Create the application
|
|
89
89
|
fast = FastAgent("Agent Example")
|
|
@@ -2,8 +2,8 @@ from contextlib import asynccontextmanager
|
|
|
2
2
|
|
|
3
3
|
from fastapi import Body, FastAPI, HTTPException
|
|
4
4
|
|
|
5
|
+
from fast_agent.agents import McpAgent
|
|
5
6
|
from fast_agent.agents.agent_types import AgentConfig
|
|
6
|
-
from fast_agent.agents.mcp_agent import McpAgent
|
|
7
7
|
from fast_agent.core import Core
|
|
8
8
|
from fast_agent.core.direct_factory import get_model_factory
|
|
9
9
|
from fast_agent.mcp import PromptMessageExtended
|
|
@@ -3,7 +3,7 @@ from contextlib import asynccontextmanager
|
|
|
3
3
|
from fastapi import FastAPI, HTTPException
|
|
4
4
|
from pydantic import BaseModel
|
|
5
5
|
|
|
6
|
-
from fast_agent
|
|
6
|
+
from fast_agent import FastAgent
|
|
7
7
|
|
|
8
8
|
# Create FastAgent without parsing CLI args (plays nice with uvicorn)
|
|
9
9
|
fast = FastAgent("fast-agent demo", parse_cli_args=False, quiet=True)
|
|
@@ -13,7 +13,7 @@ import asyncio
|
|
|
13
13
|
from rich.console import Console
|
|
14
14
|
from rich.panel import Panel
|
|
15
15
|
|
|
16
|
-
from fast_agent
|
|
16
|
+
from fast_agent import FastAgent
|
|
17
17
|
from fast_agent.mcp.helpers.content_helpers import get_resource_text
|
|
18
18
|
|
|
19
19
|
fast = FastAgent("Elicitation Forms Demo", quiet=True)
|
|
@@ -14,7 +14,7 @@ from game_character_handler import game_character_elicitation_handler
|
|
|
14
14
|
from rich.console import Console
|
|
15
15
|
from rich.panel import Panel
|
|
16
16
|
|
|
17
|
-
from fast_agent
|
|
17
|
+
from fast_agent import FastAgent
|
|
18
18
|
from fast_agent.mcp.helpers.content_helpers import get_resource_text
|
|
19
19
|
|
|
20
20
|
fast = FastAgent("Game Character Creator", quiet=True)
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
default_model: haiku
|
|
14
14
|
# mcp-ui support: disabled, enabled or auto. "auto" opens the web browser on the asset automatically
|
|
15
|
+
# mcp_ui_output_dir: ".fast-agent/ui" # Where to write MCP-UI HTML files (relative to CWD if not absolute)
|
|
15
16
|
# mcp_ui_mode: enabled
|
|
16
17
|
|
|
17
18
|
# Logging and Console Configuration:
|
|
@@ -6,7 +6,7 @@ from typing import List, Union
|
|
|
6
6
|
|
|
7
7
|
from mcp.types import ImageContent, TextContent
|
|
8
8
|
|
|
9
|
-
from fast_agent
|
|
9
|
+
from fast_agent import FastAgent
|
|
10
10
|
from fast_agent.core.prompt import Prompt
|
|
11
11
|
from fast_agent.llm.request_params import RequestParams
|
|
12
12
|
|
|
@@ -5,7 +5,7 @@ Parallel Workflow showing Fan Out and Fan In agents, using different models
|
|
|
5
5
|
import asyncio
|
|
6
6
|
from pathlib import Path
|
|
7
7
|
|
|
8
|
-
from fast_agent
|
|
8
|
+
from fast_agent import FastAgent
|
|
9
9
|
from fast_agent.core.prompt import Prompt
|
|
10
10
|
|
|
11
11
|
# Create the application
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"""fast-agent - An MCP native agent application framework"""
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
from typing import TYPE_CHECKING
|
|
3
4
|
|
|
4
5
|
# Configuration and settings (safe - pure Pydantic models)
|
|
5
6
|
from fast_agent.config import (
|
|
@@ -73,10 +74,12 @@ def __getattr__(name: str):
|
|
|
73
74
|
|
|
74
75
|
return ToolAgent
|
|
75
76
|
elif name == "McpAgent":
|
|
77
|
+
# Import directly from submodule to avoid package re-import cycles
|
|
76
78
|
from fast_agent.agents.mcp_agent import McpAgent
|
|
77
79
|
|
|
78
80
|
return McpAgent
|
|
79
81
|
elif name == "FastAgent":
|
|
82
|
+
# Import from the canonical implementation to avoid recursive imports
|
|
80
83
|
from fast_agent.core.fastagent import FastAgent
|
|
81
84
|
|
|
82
85
|
return FastAgent
|
|
@@ -85,7 +88,8 @@ def __getattr__(name: str):
|
|
|
85
88
|
|
|
86
89
|
|
|
87
90
|
# Help static analyzers/IDEs resolve symbols and signatures without importing at runtime.
|
|
88
|
-
if
|
|
91
|
+
if TYPE_CHECKING: # pragma: no cover - typing aid only
|
|
92
|
+
# Provide a concrete import path for type checkers/IDEs
|
|
89
93
|
from fast_agent.core.fastagent import FastAgent as FastAgent # noqa: F401
|
|
90
94
|
|
|
91
95
|
|
|
@@ -124,7 +128,6 @@ __all__ = [
|
|
|
124
128
|
"LlmStopReason",
|
|
125
129
|
"RequestParams",
|
|
126
130
|
# Agents (lazy loaded)
|
|
127
|
-
"ToolAgentSynchronous",
|
|
128
131
|
"LlmAgent",
|
|
129
132
|
"LlmDecorator",
|
|
130
133
|
"ToolAgent",
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Fast Agent - Agent implementations and workflow patterns.
|
|
3
|
+
|
|
4
|
+
This module re-exports agent classes with lazy imports to avoid circular
|
|
5
|
+
dependencies during package initialization while preserving a clean API:
|
|
6
|
+
|
|
7
|
+
from fast_agent.agents import McpAgent, ToolAgent, LlmAgent
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
from typing import TYPE_CHECKING
|
|
11
|
+
|
|
12
|
+
from fast_agent.agents.agent_types import AgentConfig
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def __getattr__(name: str):
|
|
16
|
+
"""Lazily resolve agent classes to avoid import cycles."""
|
|
17
|
+
if name == "LlmAgent":
|
|
18
|
+
from .llm_agent import LlmAgent
|
|
19
|
+
|
|
20
|
+
return LlmAgent
|
|
21
|
+
elif name == "LlmDecorator":
|
|
22
|
+
from .llm_decorator import LlmDecorator
|
|
23
|
+
|
|
24
|
+
return LlmDecorator
|
|
25
|
+
elif name == "ToolAgent":
|
|
26
|
+
from .tool_agent import ToolAgent
|
|
27
|
+
|
|
28
|
+
return ToolAgent
|
|
29
|
+
elif name == "McpAgent":
|
|
30
|
+
from .mcp_agent import McpAgent
|
|
31
|
+
|
|
32
|
+
return McpAgent
|
|
33
|
+
elif name == "ChainAgent":
|
|
34
|
+
from .workflow.chain_agent import ChainAgent
|
|
35
|
+
|
|
36
|
+
return ChainAgent
|
|
37
|
+
elif name == "EvaluatorOptimizerAgent":
|
|
38
|
+
from .workflow.evaluator_optimizer import EvaluatorOptimizerAgent
|
|
39
|
+
|
|
40
|
+
return EvaluatorOptimizerAgent
|
|
41
|
+
elif name == "IterativePlanner":
|
|
42
|
+
from .workflow.iterative_planner import IterativePlanner
|
|
43
|
+
|
|
44
|
+
return IterativePlanner
|
|
45
|
+
elif name == "ParallelAgent":
|
|
46
|
+
from .workflow.parallel_agent import ParallelAgent
|
|
47
|
+
|
|
48
|
+
return ParallelAgent
|
|
49
|
+
elif name == "RouterAgent":
|
|
50
|
+
from .workflow.router_agent import RouterAgent
|
|
51
|
+
|
|
52
|
+
return RouterAgent
|
|
53
|
+
else:
|
|
54
|
+
raise AttributeError(f"module '{__name__}' has no attribute '{name}'")
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
if TYPE_CHECKING: # pragma: no cover - type checking only
|
|
58
|
+
from .llm_agent import LlmAgent as LlmAgent # noqa: F401
|
|
59
|
+
from .llm_decorator import LlmDecorator as LlmDecorator # noqa: F401
|
|
60
|
+
from .mcp_agent import McpAgent as McpAgent # noqa: F401
|
|
61
|
+
from .tool_agent import ToolAgent as ToolAgent # noqa: F401
|
|
62
|
+
from .workflow.chain_agent import ChainAgent as ChainAgent # noqa: F401
|
|
63
|
+
from .workflow.evaluator_optimizer import (
|
|
64
|
+
EvaluatorOptimizerAgent as EvaluatorOptimizerAgent,
|
|
65
|
+
) # noqa: F401
|
|
66
|
+
from .workflow.iterative_planner import IterativePlanner as IterativePlanner # noqa: F401
|
|
67
|
+
from .workflow.parallel_agent import ParallelAgent as ParallelAgent # noqa: F401
|
|
68
|
+
from .workflow.router_agent import RouterAgent as RouterAgent # noqa: F401
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
__all__ = [
|
|
72
|
+
# Core agents
|
|
73
|
+
"LlmAgent",
|
|
74
|
+
"LlmDecorator",
|
|
75
|
+
"ToolAgent",
|
|
76
|
+
"McpAgent",
|
|
77
|
+
# Workflow agents
|
|
78
|
+
"ChainAgent",
|
|
79
|
+
"EvaluatorOptimizerAgent",
|
|
80
|
+
"IterativePlanner",
|
|
81
|
+
"ParallelAgent",
|
|
82
|
+
"RouterAgent",
|
|
83
|
+
# Types
|
|
84
|
+
"AgentConfig",
|
|
85
|
+
]
|
|
@@ -7,10 +7,10 @@ from typing import Dict, List, Optional
|
|
|
7
7
|
|
|
8
8
|
import typer
|
|
9
9
|
|
|
10
|
+
from fast_agent import FastAgent
|
|
10
11
|
from fast_agent.agents.llm_agent import LlmAgent
|
|
11
12
|
from fast_agent.cli.commands.server_helpers import add_servers_to_config, generate_server_name
|
|
12
13
|
from fast_agent.cli.commands.url_parser import generate_server_configs, parse_server_urls
|
|
13
|
-
from fast_agent.core.fastagent import FastAgent
|
|
14
14
|
from fast_agent.ui.console_display import ConsoleDisplay
|
|
15
15
|
|
|
16
16
|
app = typer.Typer(
|
|
@@ -470,6 +470,10 @@ class Settings(BaseSettings):
|
|
|
470
470
|
- "auto": Extract and automatically open ui:// resources.
|
|
471
471
|
"""
|
|
472
472
|
|
|
473
|
+
# Output directory for MCP-UI generated HTML files (relative to CWD if not absolute)
|
|
474
|
+
mcp_ui_output_dir: str = ".fast-agent/ui"
|
|
475
|
+
"""Directory where MCP-UI HTML files are written. Relative paths are resolved from CWD."""
|
|
476
|
+
|
|
473
477
|
@classmethod
|
|
474
478
|
def find_config(cls) -> Path | None:
|
|
475
479
|
"""Find the config file in the current directory or parent directories."""
|
|
@@ -2,45 +2,32 @@
|
|
|
2
2
|
Core interfaces and decorators for fast-agent.
|
|
3
3
|
|
|
4
4
|
Public API:
|
|
5
|
-
- `Core`: The core application container
|
|
6
|
-
- `
|
|
5
|
+
- `Core`: The core application container
|
|
6
|
+
- `AgentApp`: Container for interacting with agents
|
|
7
|
+
- `FastAgent`: High-level, decorator-driven application class
|
|
7
8
|
- Decorators: `agent`, `custom`, `orchestrator`, `iterative_planner`,
|
|
8
|
-
`router`, `chain`, `parallel`, `evaluator_optimizer`
|
|
9
|
-
"""
|
|
10
|
-
|
|
11
|
-
from typing import TYPE_CHECKING as _TYPE_CHECKING
|
|
9
|
+
`router`, `chain`, `parallel`, `evaluator_optimizer`
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
Exports are resolved lazily to avoid circular imports during package init.
|
|
12
|
+
"""
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
"Core",
|
|
17
|
-
"AgentApp",
|
|
18
|
-
"FastAgent",
|
|
19
|
-
# Decorators
|
|
20
|
-
"agent",
|
|
21
|
-
"custom",
|
|
22
|
-
"orchestrator",
|
|
23
|
-
"iterative_planner",
|
|
24
|
-
"router",
|
|
25
|
-
"chain",
|
|
26
|
-
"parallel",
|
|
27
|
-
"evaluator_optimizer",
|
|
28
|
-
]
|
|
14
|
+
from typing import TYPE_CHECKING
|
|
29
15
|
|
|
30
16
|
|
|
31
17
|
def __getattr__(name: str):
|
|
32
|
-
# Lazy imports to avoid heavy dependencies and circular imports at init time
|
|
33
|
-
if name == "FastAgent":
|
|
34
|
-
from .fastagent import FastAgent
|
|
35
|
-
|
|
36
|
-
return FastAgent
|
|
37
18
|
if name == "AgentApp":
|
|
38
19
|
from .agent_app import AgentApp
|
|
39
20
|
|
|
40
21
|
return AgentApp
|
|
22
|
+
elif name == "Core":
|
|
23
|
+
from .core_app import Core
|
|
41
24
|
|
|
42
|
-
|
|
43
|
-
|
|
25
|
+
return Core
|
|
26
|
+
elif name == "FastAgent":
|
|
27
|
+
from .fastagent import FastAgent
|
|
28
|
+
|
|
29
|
+
return FastAgent
|
|
30
|
+
elif name in (
|
|
44
31
|
"agent",
|
|
45
32
|
"custom",
|
|
46
33
|
"orchestrator",
|
|
@@ -49,20 +36,22 @@ def __getattr__(name: str):
|
|
|
49
36
|
"chain",
|
|
50
37
|
"parallel",
|
|
51
38
|
"evaluator_optimizer",
|
|
52
|
-
|
|
39
|
+
):
|
|
53
40
|
from . import direct_decorators as _dd
|
|
54
41
|
|
|
55
|
-
return getattr(
|
|
56
|
-
|
|
42
|
+
return getattr(
|
|
43
|
+
_dd,
|
|
44
|
+
name,
|
|
45
|
+
)
|
|
57
46
|
raise AttributeError(f"module '{__name__}' has no attribute '{name}'")
|
|
58
47
|
|
|
59
48
|
|
|
60
|
-
#
|
|
61
|
-
if _TYPE_CHECKING: # pragma: no cover - typing aid only
|
|
49
|
+
if TYPE_CHECKING: # pragma: no cover - typing aid only
|
|
62
50
|
from .agent_app import AgentApp as AgentApp # noqa: F401
|
|
63
|
-
from .
|
|
51
|
+
from .core_app import Core as Core # noqa: F401
|
|
52
|
+
from .direct_decorators import ( # noqa: F401
|
|
64
53
|
agent as agent,
|
|
65
|
-
)
|
|
54
|
+
)
|
|
66
55
|
from .direct_decorators import (
|
|
67
56
|
chain as chain,
|
|
68
57
|
)
|
|
@@ -87,5 +76,17 @@ if _TYPE_CHECKING: # pragma: no cover - typing aid only
|
|
|
87
76
|
from .fastagent import FastAgent as FastAgent # noqa: F401
|
|
88
77
|
|
|
89
78
|
|
|
90
|
-
|
|
91
|
-
|
|
79
|
+
__all__ = [
|
|
80
|
+
"Core",
|
|
81
|
+
"AgentApp",
|
|
82
|
+
"FastAgent",
|
|
83
|
+
# Decorators
|
|
84
|
+
"agent",
|
|
85
|
+
"custom",
|
|
86
|
+
"orchestrator",
|
|
87
|
+
"iterative_planner",
|
|
88
|
+
"router",
|
|
89
|
+
"chain",
|
|
90
|
+
"parallel",
|
|
91
|
+
"evaluator_optimizer",
|
|
92
|
+
]
|
|
@@ -5,9 +5,9 @@ Implements type-safe factories with improved error handling.
|
|
|
5
5
|
|
|
6
6
|
from typing import Any, Dict, Optional, Protocol, TypeVar
|
|
7
7
|
|
|
8
|
+
from fast_agent.agents import McpAgent
|
|
8
9
|
from fast_agent.agents.agent_types import AgentConfig, AgentType
|
|
9
10
|
from fast_agent.agents.llm_agent import LlmAgent
|
|
10
|
-
from fast_agent.agents.mcp_agent import McpAgent
|
|
11
11
|
from fast_agent.agents.workflow.evaluator_optimizer import (
|
|
12
12
|
EvaluatorOptimizerAgent,
|
|
13
13
|
QualityRating,
|
|
@@ -13,7 +13,7 @@ import asyncio
|
|
|
13
13
|
from rich.console import Console
|
|
14
14
|
from rich.panel import Panel
|
|
15
15
|
|
|
16
|
-
from fast_agent
|
|
16
|
+
from fast_agent import FastAgent
|
|
17
17
|
from fast_agent.mcp.helpers.content_helpers import get_resource_text
|
|
18
18
|
|
|
19
19
|
fast = FastAgent("Elicitation Forms Demo", quiet=True)
|