agentbyte 0.53.0__tar.gz → 0.54.0__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.
- {agentbyte-0.53.0 → agentbyte-0.54.0}/CHANGELOG.md +25 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/PKG-INFO +2 -2
- {agentbyte-0.53.0 → agentbyte-0.54.0}/README.md +1 -1
- agentbyte-0.54.0/src/agentbyte/__about__.py +2 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/anthropic/_conversion.py +18 -2
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/pricing.py +7 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_anthropic_bedrock_client.py +32 -1
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_anthropic_client.py +87 -1
- agentbyte-0.53.0/src/agentbyte/__about__.py +0 -2
- {agentbyte-0.53.0 → agentbyte-0.54.0}/.gitignore +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/LICENSE +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/pyproject.toml +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/_optional.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/a2a/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/a2a/app.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/a2a/distributed_context.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/a2a/executor.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/a2a/tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/agents/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/agents/agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/agents/agent_as_tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/agents/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/agents/types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cancellation_token.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/catalog.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/__main__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/eval_commands.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/history_args.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/loading.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/main.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/optim_commands.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/report_output.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/cli/serve_commands.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/compaction/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/compaction/counters.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/compaction/errors.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/compaction/grouping.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/compaction/strategies.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/component.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/context.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/context_providers/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/context_providers/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/context_providers/skill_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/context_providers/skills.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/_aiosqlite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/importer.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/json.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/loader.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/publish.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/publish_config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/publishers.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/s3.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/sources.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/sqlite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/sqlite_db.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/write_config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/dataset/writers.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/entity.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/decorator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/keyword.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/local.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/process.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/checks/types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/comparison.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/eval_dataset.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/_writer_lock.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/conformance.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/errors.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/models.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/recorder.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/sql.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/sqlite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/store.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/history/transitions.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/composite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/llm.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/pairwise.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/reference.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/trajectory.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/judges/validation.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/pairwise.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/report.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/runner.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/splitting.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/model.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/multi_turn.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/orchestrator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/runtime.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/targets/workflow.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/benchmark.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/compare.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/coordinator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/jobs.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/smoke.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/smoke_tasks.json +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/suite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/eval/workbench/verdict.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/execution_trace/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/execution_trace/collector.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/execution_trace/models.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/_retry_observability.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/anthropic/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/anthropic/chat.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/anthropic/settings.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/auth.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure/auth.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure/chat.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure/embedding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure/settings.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure_openai.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/azure_openai_embedding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/bedrock/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/bedrock/_client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/bedrock/anthropic_chat.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/bedrock/cohere_embedding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/bedrock/settings.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/embedding_batcher.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/embeddings_base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/openai/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/openai/chat.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/openai/embedding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/openai/settings.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/openai_embedding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/retry_policy.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/settings.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/llm/types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/logger.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/memory/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/memory/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/messages.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/middleware/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/middleware/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/middleware/otel.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/middleware/retry.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/middleware/sql_usage.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/middleware/usage_logger.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/notebook.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/binding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/gepa.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/job.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/mipro.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/pareto.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/reflective.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/report.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/spec.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/optim/trace.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/ai.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/handoff.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/plan.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/policies.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/orchestration/round_robin.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/agents.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/benchmark.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/capitals.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/clients.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/instruction_registry.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/instructions/orchestrator.yaml +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/instructions/query_rewriter.yaml +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/instructions/researcher.yaml +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/instructions/reviewer.yaml +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/instructions/writer.yaml +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/orchestration.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/skills/capitals-format/SKILL.md +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/skills/contracts-analyst/SKILL.md +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/skills/hr-analyst/SKILL.md +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/skills/hr-analyst/resources/departments.md +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/skills/hr-analyst/resources/employees.md +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/skills/hr-analyst/resources/payroll.md +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/streaming.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/presets/workflow.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/session_store.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/skills/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/skills/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/skills/resources.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/skills/scripts.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/skills/sources.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/skills/validation.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/cancellation.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/composite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/consecutive_agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/external.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/function_call.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/handoff.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/max_message.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/predicate.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/source.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/text_mention.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/timeout.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/termination/token_usage.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/coding_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/core_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/decorator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/mcp/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/mcp/client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/mcp/config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/mcp/errors.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/mcp/tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/mcp/transports.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/memory_tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/tools/research_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/discovery.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/eval_routes.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/execution.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/servers/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/servers/apps_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/servers/auth_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/servers/basic_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/servers/mrtr_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp/servers/notify_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp_playground.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/mcp_routes.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/models.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/registry.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/session_store.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/sessions.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/ui/assets/index-BreogZut.js +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/ui/assets/index-ptxe7GHs.css +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/ui/index.html +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/webui/ui/vite.svg +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/core/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/core/_structure_hash.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/core/checkpoint.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/core/models.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/core/runner.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/core/workflow.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/defaults.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/errors.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/loader.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/schema.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/schema_utils.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/sqlite_checkpoint.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/echo.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/function.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/http.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/step.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/subworkflow.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/steps/transform.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/src/agentbyte/workflow/visualizer.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/a2a/a2a_helpers.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/a2a/test_a2a_adapters.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/a2a/test_distributed_context.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_as_tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_basic.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_client_middleware_overlap.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_context_providers.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_error_response.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_event_types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_memory_integration.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_middleware_integration.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_response_accessors.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_retry_middleware.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_stop_at_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_agent_stream_events.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_tool_approval.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_tool_batch_resolution.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/agents/test_tool_metadata.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/cli/test_eval_benchmark_commands.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/cli/test_loading.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/cli/test_registry_check.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/cli/test_report_output.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/cli/test_serve_command.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/compaction/test_compaction.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/conftest.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/context_providers/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/context_providers/test_skill_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/context_providers/test_skills_provider.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/dataset/fake_s3.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/dataset/test_dataset_exit.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/dataset/test_loader.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/dataset/test_multi_table.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/dataset/test_publish.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/dataset/test_sqlite_db.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_dimension_scores.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_eval_benchmarks.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_eval_dataset.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_eval_history.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_eval_history_backends.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_eval_jobs.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_eval_workbench.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_execution_trajectories.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_history_config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_multi_turn.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_pairwise.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_phase1_runner_and_targets.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_phase2_checks_and_reports.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_run_comparison.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_score_integrity.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_splitting.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/eval/test_types_and_judges.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_azure_client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_azure_embedding_client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_client_middleware.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_cohere_bedrock_embedding_client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_embedding_batcher.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_llm_types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_openai_client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_openai_embedding_client.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_pricing.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_retry_observability.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_retry_policy_api.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/llm/test_retryable_error_substrings.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/memory/test_memory.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_context_compaction.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_deduplicate_tool_result.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_middleware_chain.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_otel.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_retry_middleware.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_sql_usage.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/middleware/test_usage_logger.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/fakes.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_base_integration.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_binding.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_config.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_description_tunable.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_gepa.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_mipro.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_orchestrator_optim.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_pareto.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_reflective.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_report.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_score_integrity.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_spec.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/optim/test_trace.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_ai_orchestrator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_base_orchestrator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_handoff_orchestrator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_history_tool_call_pairing.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_orchestration_usage_breakdown.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_orchestrator_agent_contract.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_orchestrator_finalization.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_orchestrator_member_events.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_orchestrator_otel.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_orchestrator_synthesis.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_plan_orchestrator.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/orchestration/test_round_robin.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_agents.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_benchmark.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_capitals.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_clients.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_instruction_registry.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_orchestration.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_streaming.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/presets/test_workflow.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/skills/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/skills/test_base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/skills/test_resources.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/skills/test_scripts.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/skills/test_sources.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_base.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_cancellation.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_composite.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_consecutive_agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_external.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_function_call.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_handoff.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_max_message.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_predicate.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_source.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_text_mention.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_timeout.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/termination/test_token_usage.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_cancellation_token.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_context.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_logger.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_messages.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_option_enums.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_optional_extras.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_package_api.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_session_store.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/test_types.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/tools/fixtures/mcp_stdio_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/tools/test_coding_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/tools/test_mcp_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/tools/test_memory_tool.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/tools/test_research_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/tools/test_tools.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/__init__.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/helpers.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_eval_routes.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_execution.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_mcp_routes.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_package_api.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_registry.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_server.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_sessions.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/webui/test_workflow_streaming.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/recovery_worker.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_agent_step_imports.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_checkpoint.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_subworkflow_step.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_agent.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_class.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_models.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_reliability.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_runner.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_schema.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_steps.py +0 -0
- {agentbyte-0.53.0 → agentbyte-0.54.0}/tests/workflow/test_workflow_visualizer.py +0 -0
|
@@ -6,6 +6,31 @@ The format follows Keep a Changelog principles and semantic versioning.
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.54.0] - 2026-10-12
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- Anthropic/Bedrock prompt caching: `AnthropicConversionMixin` now tags the `system` block
|
|
14
|
+
with a `cache_control: {"type": "ephemeral"}` breakpoint whenever a `SystemMessage` is
|
|
15
|
+
present, so both `AnthropicChatCompletionClient` and `AnthropicBedrockChatCompletionClient`
|
|
16
|
+
get cache-read discounting through the same shared request-building code — no config flag,
|
|
17
|
+
no-op below the per-model minimum cacheable size. Added a matching
|
|
18
|
+
`examples/llm/anthropic_bedrock_prompt_caching_cost_smoke_test.py` alongside the existing
|
|
19
|
+
OpenAI/Azure smoke test.
|
|
20
|
+
- `examples/agents/anthropic_agent_example.py`: Bedrock Claude injected via
|
|
21
|
+
`AnthropicBedrockChatCompletionClient.from_region()` driven through `Agent.run()`/
|
|
22
|
+
`Agent.run_stream()`. `examples/agents/cohere_bedrock_embedding_example.py`: raw
|
|
23
|
+
`CohereBedrockEmbeddingClient` calls, then the same client wrapped in `EmbeddingBatcher`,
|
|
24
|
+
then with `LoggingMiddleware` added — both live-verified end to end against real Bedrock.
|
|
25
|
+
|
|
26
|
+
### Fixed
|
|
27
|
+
|
|
28
|
+
- `PricingRegistry.ANTHROPIC_CHAT_PRICING` had no exact entry for `claude-sonnet-4-5` or
|
|
29
|
+
`claude-sonnet-4-6`; both resolved only through the generic `claude-sonnet-4` prefix
|
|
30
|
+
fallback, which happened to match current pricing ($3/$15 per MTok) but offered no
|
|
31
|
+
protection against a future divergent repricing (the same reasoning that already justified
|
|
32
|
+
separate `claude-opus-4-5`..`claude-opus-4-8` entries). Added explicit entries for both.
|
|
33
|
+
|
|
9
34
|
## [0.53.0] - 2026-10-10
|
|
10
35
|
|
|
11
36
|
### Added
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: agentbyte
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.54.0
|
|
4
4
|
Summary: A toolkit for designing multiagent systems
|
|
5
5
|
Author-email: MrDataPsycho <mr.data.psycho@gmail.com>
|
|
6
6
|
License-Expression: LicenseRef-Proprietary
|
|
@@ -90,7 +90,7 @@ Description-Content-Type: text/markdown
|
|
|
90
90
|
|
|
91
91
|
Agentbyte is an observability-first agentic AI framework for building and studying multiagent systems with a learning-first, implementation-oriented workflow.
|
|
92
92
|
|
|
93
|
-
Current release: **0.
|
|
93
|
+
Current release: **0.54.0**
|
|
94
94
|
|
|
95
95
|
## Building an Agent
|
|
96
96
|
|
|
@@ -94,7 +94,15 @@ class AnthropicConversionMixin:
|
|
|
94
94
|
|
|
95
95
|
system = self._extract_system(messages)
|
|
96
96
|
if system is not None:
|
|
97
|
-
|
|
97
|
+
# A single `cache_control` breakpoint on the system block marks it
|
|
98
|
+
# as a cache candidate for Anthropic's Messages API (no beta header
|
|
99
|
+
# needed as of anthropic==1.13.0's non-beta `TextBlockParam`). This
|
|
100
|
+
# is a no-op below the per-model minimum cacheable size and strictly
|
|
101
|
+
# beneficial above it, so there's no config flag for it -- shared
|
|
102
|
+
# here means both direct Anthropic and Bedrock transports get it.
|
|
103
|
+
api_kwargs["system"] = [
|
|
104
|
+
{"type": "text", "text": system, "cache_control": {"type": "ephemeral"}}
|
|
105
|
+
]
|
|
98
106
|
|
|
99
107
|
api_messages = self._convert_messages_to_api_format(messages)
|
|
100
108
|
api_tools = self._convert_tools(tools)
|
|
@@ -182,7 +190,15 @@ class AnthropicConversionMixin:
|
|
|
182
190
|
|
|
183
191
|
system = self._extract_system(messages)
|
|
184
192
|
if system is not None:
|
|
185
|
-
|
|
193
|
+
# A single `cache_control` breakpoint on the system block marks it
|
|
194
|
+
# as a cache candidate for Anthropic's Messages API (no beta header
|
|
195
|
+
# needed as of anthropic==1.13.0's non-beta `TextBlockParam`). This
|
|
196
|
+
# is a no-op below the per-model minimum cacheable size and strictly
|
|
197
|
+
# beneficial above it, so there's no config flag for it -- shared
|
|
198
|
+
# here means both direct Anthropic and Bedrock transports get it.
|
|
199
|
+
api_kwargs["system"] = [
|
|
200
|
+
{"type": "text", "text": system, "cache_control": {"type": "ephemeral"}}
|
|
201
|
+
]
|
|
186
202
|
|
|
187
203
|
api_messages = self._convert_messages_to_api_format(messages)
|
|
188
204
|
api_tools = self._convert_tools(tools)
|
|
@@ -456,6 +456,13 @@ class PricingRegistry:
|
|
|
456
456
|
"claude-opus-4-5": ModelPricing(input_per_1m=5.0, output_per_1m=25.0),
|
|
457
457
|
"claude-opus-4": ModelPricing(input_per_1m=15.0, output_per_1m=75.0),
|
|
458
458
|
"claude-sonnet-5": ModelPricing(input_per_1m=2.0, output_per_1m=10.0),
|
|
459
|
+
# claude-sonnet-4-6/-4-5 currently price identically to claude-sonnet-4 ($3/$15,
|
|
460
|
+
# verified against platform.claude.com/docs/en/about-claude/pricing), so the
|
|
461
|
+
# prefix fallback already resolved them correctly -- listed explicitly anyway so a
|
|
462
|
+
# future divergent repricing (as happened for claude-opus-4-5 vs. claude-opus-4)
|
|
463
|
+
# doesn't silently fall through to the wrong rate.
|
|
464
|
+
"claude-sonnet-4-6": ModelPricing(input_per_1m=3.0, output_per_1m=15.0),
|
|
465
|
+
"claude-sonnet-4-5": ModelPricing(input_per_1m=3.0, output_per_1m=15.0),
|
|
459
466
|
"claude-sonnet-4": ModelPricing(input_per_1m=3.0, output_per_1m=15.0),
|
|
460
467
|
"claude-haiku-5-5": ModelPricing(
|
|
461
468
|
input_per_1m=0.10,
|
|
@@ -13,7 +13,7 @@ import pytest
|
|
|
13
13
|
|
|
14
14
|
from agentbyte.llm import AnthropicBedrockChatCompletionClient
|
|
15
15
|
from agentbyte.llm.types import ModelPricing
|
|
16
|
-
from agentbyte.messages import UserMessage
|
|
16
|
+
from agentbyte.messages import SystemMessage, UserMessage
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
def _block(block_type, **fields):
|
|
@@ -73,6 +73,37 @@ async def test_bedrock_create_parses_tool_calls_and_usage():
|
|
|
73
73
|
assert result.usage.cost_estimate is not None
|
|
74
74
|
|
|
75
75
|
|
|
76
|
+
@pytest.mark.asyncio
|
|
77
|
+
async def test_bedrock_create_marks_system_block_as_cache_breakpoint():
|
|
78
|
+
"""The `cache_control` breakpoint is set in the shared AnthropicConversionMixin,
|
|
79
|
+
so the Bedrock transport gets prompt caching for free -- same as the direct
|
|
80
|
+
client's test_anthropic_create_splits_system_message_to_top_level_param."""
|
|
81
|
+
fake_response = _FakeResponse(
|
|
82
|
+
model="anthropic.claude-haiku-4-5-20251001-v1:0",
|
|
83
|
+
content=[_block("text", text="ok")],
|
|
84
|
+
usage=_usage(input_tokens=1, output_tokens=1),
|
|
85
|
+
)
|
|
86
|
+
fake_client = _FakeBedrockClient(response=fake_response)
|
|
87
|
+
client = AnthropicBedrockChatCompletionClient(
|
|
88
|
+
model="anthropic.claude-haiku-4-5-20251001-v1:0", client=fake_client
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
await client.create(
|
|
92
|
+
messages=[
|
|
93
|
+
SystemMessage(content="You are helpful.", source="system"),
|
|
94
|
+
UserMessage(content="hi", source="user"),
|
|
95
|
+
]
|
|
96
|
+
)
|
|
97
|
+
|
|
98
|
+
assert fake_client.last_kwargs["system"] == [
|
|
99
|
+
{
|
|
100
|
+
"type": "text",
|
|
101
|
+
"text": "You are helpful.",
|
|
102
|
+
"cache_control": {"type": "ephemeral"},
|
|
103
|
+
}
|
|
104
|
+
]
|
|
105
|
+
|
|
106
|
+
|
|
76
107
|
def test_bedrock_estimate_cost_normalizes_anthropic_prefix_and_version_suffix():
|
|
77
108
|
"""The Bedrock-specific ID normalizer is the whole reason this client needs
|
|
78
109
|
its own _estimate_cost: strip "anthropic." and "-vN:0" before resolving
|
|
@@ -108,12 +108,98 @@ async def test_anthropic_create_splits_system_message_to_top_level_param():
|
|
|
108
108
|
]
|
|
109
109
|
)
|
|
110
110
|
|
|
111
|
-
assert fake_client.last_kwargs["system"] ==
|
|
111
|
+
assert fake_client.last_kwargs["system"] == [
|
|
112
|
+
{
|
|
113
|
+
"type": "text",
|
|
114
|
+
"text": "You are helpful.",
|
|
115
|
+
"cache_control": {"type": "ephemeral"},
|
|
116
|
+
}
|
|
117
|
+
]
|
|
112
118
|
sent_messages = fake_client.last_kwargs["messages"]
|
|
113
119
|
assert all(m["role"] != "system" for m in sent_messages)
|
|
114
120
|
assert len(sent_messages) == 1
|
|
115
121
|
|
|
116
122
|
|
|
123
|
+
@pytest.mark.asyncio
|
|
124
|
+
async def test_anthropic_create_omits_system_kwarg_when_no_system_message():
|
|
125
|
+
fake_response = _FakeResponse(
|
|
126
|
+
model="claude-sonnet-4-5",
|
|
127
|
+
content=[_block("text", text="ok")],
|
|
128
|
+
usage=_usage(input_tokens=1, output_tokens=1),
|
|
129
|
+
)
|
|
130
|
+
fake_client = _FakeAnthropicClient(response=fake_response)
|
|
131
|
+
client = AnthropicChatCompletionClient(model="claude-sonnet-4-5", client=fake_client)
|
|
132
|
+
|
|
133
|
+
await client.create(messages=[UserMessage(content="hi", source="user")])
|
|
134
|
+
|
|
135
|
+
assert "system" not in fake_client.last_kwargs
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
@pytest.mark.asyncio
|
|
139
|
+
async def test_anthropic_create_stream_marks_system_block_as_cache_breakpoint():
|
|
140
|
+
events = [
|
|
141
|
+
types.SimpleNamespace(
|
|
142
|
+
type="message_start",
|
|
143
|
+
message=types.SimpleNamespace(model="claude-sonnet-4-5"),
|
|
144
|
+
),
|
|
145
|
+
types.SimpleNamespace(
|
|
146
|
+
type="content_block_delta",
|
|
147
|
+
index=0,
|
|
148
|
+
delta=_block("text_delta", text="Hello"),
|
|
149
|
+
),
|
|
150
|
+
types.SimpleNamespace(
|
|
151
|
+
type="message_delta",
|
|
152
|
+
delta=types.SimpleNamespace(stop_reason="end_turn"),
|
|
153
|
+
usage=_usage(input_tokens=4, output_tokens=2),
|
|
154
|
+
),
|
|
155
|
+
]
|
|
156
|
+
fake_client = _FakeAnthropicClient(stream=_FakeStream(events))
|
|
157
|
+
client = AnthropicChatCompletionClient(model="claude-sonnet-4-5", client=fake_client)
|
|
158
|
+
|
|
159
|
+
async for _ in client.create_stream(
|
|
160
|
+
messages=[
|
|
161
|
+
SystemMessage(content="You are helpful.", source="system"),
|
|
162
|
+
UserMessage(content="hi", source="user"),
|
|
163
|
+
]
|
|
164
|
+
):
|
|
165
|
+
pass
|
|
166
|
+
|
|
167
|
+
assert fake_client.last_kwargs["system"] == [
|
|
168
|
+
{
|
|
169
|
+
"type": "text",
|
|
170
|
+
"text": "You are helpful.",
|
|
171
|
+
"cache_control": {"type": "ephemeral"},
|
|
172
|
+
}
|
|
173
|
+
]
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
@pytest.mark.asyncio
|
|
177
|
+
async def test_anthropic_create_stream_omits_system_kwarg_when_no_system_message():
|
|
178
|
+
events = [
|
|
179
|
+
types.SimpleNamespace(
|
|
180
|
+
type="message_start",
|
|
181
|
+
message=types.SimpleNamespace(model="claude-sonnet-4-5"),
|
|
182
|
+
),
|
|
183
|
+
types.SimpleNamespace(
|
|
184
|
+
type="content_block_delta",
|
|
185
|
+
index=0,
|
|
186
|
+
delta=_block("text_delta", text="Hello"),
|
|
187
|
+
),
|
|
188
|
+
types.SimpleNamespace(
|
|
189
|
+
type="message_delta",
|
|
190
|
+
delta=types.SimpleNamespace(stop_reason="end_turn"),
|
|
191
|
+
usage=_usage(input_tokens=4, output_tokens=2),
|
|
192
|
+
),
|
|
193
|
+
]
|
|
194
|
+
fake_client = _FakeAnthropicClient(stream=_FakeStream(events))
|
|
195
|
+
client = AnthropicChatCompletionClient(model="claude-sonnet-4-5", client=fake_client)
|
|
196
|
+
|
|
197
|
+
async for _ in client.create_stream(messages=[UserMessage(content="hi", source="user")]):
|
|
198
|
+
pass
|
|
199
|
+
|
|
200
|
+
assert "system" not in fake_client.last_kwargs
|
|
201
|
+
|
|
202
|
+
|
|
117
203
|
@pytest.mark.asyncio
|
|
118
204
|
async def test_anthropic_create_converts_openai_shaped_tools_to_anthropic_shape():
|
|
119
205
|
fake_response = _FakeResponse(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|