agentomatic 0.8.0__tar.gz → 0.9.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.
- {agentomatic-0.8.0 → agentomatic-0.9.0}/PKG-INFO +1 -1
- {agentomatic-0.8.0 → agentomatic-0.9.0}/pyproject.toml +2 -1
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/_version.py +1 -1
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/cli/commands.py +65 -18
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/cli/templates.py +909 -1
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/platform.py +14 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/LICENSE +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/README.md +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/examples/full_agent/README.md +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/base.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/builder.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/decorators.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/graph.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/metrics.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/dataset.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/evaluation.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/graph_execution.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/observability.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/optimization.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/mixins/serialization.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/optimizers.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/agents/types.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/cli/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/config/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/config/defaults.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/config/settings.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/lifespan.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/manifest.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/memory_manager.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/registry.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/router_factory.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/schemas.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/core/state.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/delegation/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/delegation/handoff.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/delegation/swarm.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/demo/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/demo/agent.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/demo/server.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/middleware/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/middleware/auth.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/middleware/feedback.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/middleware/logging.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/middleware/metrics.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/middleware/rate_limit.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/observability/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/observability/concurrency.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/observability/metrics.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/observability/telemetry.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/config.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/context.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/dashboard.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/dataset.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/deployment.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/eval_contract.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/events.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/failure_analysis.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/fitter.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/fitter_optimizers.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/judges.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/llm_caller.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/loop.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/metrics.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/optimizer.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/progress.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/report.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/runner.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/search_space.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/strategies.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/optimize/synthesizer.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/builder.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/context.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/engine.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/flow.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/loader.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/models.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/router.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/pipelines/steps.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/plugins/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/plugins/ml.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/plugins/registry.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/plugins/router.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/prompts/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/prompts/manager.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/protocols/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/protocols/decorators.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/providers/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/providers/embeddings.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/providers/llm.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/py.typed +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/security/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/security/jwt_auth.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/security/policy.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/security/zero_trust.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/stacks/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/stacks/defaults.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/stacks/manager.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/storage/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/storage/base.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/storage/checkpointer.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/storage/memory.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/storage/models.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/storage/sqlalchemy.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/adapter.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/adapters/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/adapters/generic.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/adapters/graph_agent.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/adapters/langchain.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/adapters/langgraph.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/decorators.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/graph_inspector.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/models.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/router.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/run_tracker.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/serve.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/asset-manifest.json +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/imgs/graph_view.png +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/imgs/logo.png +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/imgs/main_screen.png +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/imgs/main_screen_ok.png +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/index.html +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/manifest.json +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/static/css/main.8b3c42dd.css +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/static/css/main.8b3c42dd.css.map +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/static/js/main.cbb2a8ee.js +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/static/js/main.cbb2a8ee.js.LICENSE.txt +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/studio/static/static/js/main.cbb2a8ee.js.map +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/ui/__init__.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/src/agentomatic/ui/chat.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_agent_dataset.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_agent_graph.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_agent_graph_stream.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_agent_metrics.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_agentomatic.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_base_graph_agent.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_bugfixes_041.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_cli.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_coverage_boost.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_deep_agent.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_delegation.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_fitter.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_flow.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_integration.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_optimize.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_optimizer_dashboard.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_optimizer_events.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_optimizer_progress.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_pipelines.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_platform_features.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_plugins.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_security.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_stacks.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_studio.py +0 -0
- {agentomatic-0.8.0 → agentomatic-0.9.0}/tests/test_v06_core.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentomatic
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.0
|
|
4
4
|
Summary: Drop agents, not code — zero-code multi-agent API platform framework
|
|
5
5
|
Project-URL: Homepage, https://github.com/UnicoLab/agentomatic
|
|
6
6
|
Project-URL: Documentation, https://unicolab.github.io/agentomatic
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "agentomatic"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.9.0"
|
|
4
4
|
description = "Drop agents, not code — zero-code multi-agent API platform framework"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = {text = "MIT"}
|
|
@@ -91,6 +91,7 @@ Changelog = "https://github.com/UnicoLab/agentomatic/blob/main/CHANGELOG.md"
|
|
|
91
91
|
|
|
92
92
|
|
|
93
93
|
|
|
94
|
+
|
|
94
95
|
[dependency-groups]
|
|
95
96
|
dev = [
|
|
96
97
|
"pytest>=8",
|
|
@@ -180,6 +180,8 @@ def cli(ctx: click.Context, version: bool) -> None:
|
|
|
180
180
|
[
|
|
181
181
|
"basic",
|
|
182
182
|
"full",
|
|
183
|
+
"coordinator",
|
|
184
|
+
"pipeline",
|
|
183
185
|
"rag",
|
|
184
186
|
"chatbot",
|
|
185
187
|
"deepagent",
|
|
@@ -261,33 +263,73 @@ def init(name: str, agents_dir: str, template: str | None, force: bool) -> None:
|
|
|
261
263
|
edit_file = "plugin.py"
|
|
262
264
|
elif template in ["legacy_dict", "custom"]:
|
|
263
265
|
edit_file = "nodes.py" if template == "legacy_dict" else "__init__.py"
|
|
266
|
+
elif template == "pipeline":
|
|
267
|
+
edit_file = "pipeline.yaml"
|
|
264
268
|
else:
|
|
265
269
|
edit_file = "agent.py"
|
|
266
270
|
|
|
267
|
-
# Build next-steps text
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
271
|
+
# Build default next-steps text for generic agents
|
|
272
|
+
if template == "pipeline":
|
|
273
|
+
steps = (
|
|
274
|
+
f"[bold]Next steps:[/bold]\n\n"
|
|
275
|
+
f" 1. Edit [yellow]{name}/pipeline.yaml[/yellow] — "
|
|
276
|
+
f"define steps and agents\n"
|
|
277
|
+
f" 2. Create the agents referenced in the pipeline:\n"
|
|
278
|
+
f" [cyan]agentomatic init classifier --template basic[/cyan]\n"
|
|
279
|
+
f" [cyan]agentomatic init processor --template basic[/cyan]\n"
|
|
280
|
+
f" 3. [cyan]agentomatic run[/cyan] — pipeline auto-discovered\n\n"
|
|
281
|
+
f" [bold]API:[/bold]\n"
|
|
282
|
+
f" [blue]POST /api/v1/pipelines/{name}/run[/blue] "
|
|
283
|
+
f"[dim]— Execute the pipeline[/dim]\n"
|
|
284
|
+
f" [blue]GET /api/v1/pipelines/{name}/validate[/blue] "
|
|
285
|
+
f"[dim]— Pre-flight check[/dim]\n"
|
|
286
|
+
f" [blue]GET /api/v1/pipelines[/blue] "
|
|
287
|
+
f"[dim]— List all pipelines[/dim]"
|
|
288
|
+
)
|
|
289
|
+
else:
|
|
290
|
+
steps = (
|
|
291
|
+
f"[bold]Next steps:[/bold]\n\n"
|
|
292
|
+
f" 1. [cyan]cd {agents_dir}[/cyan]\n"
|
|
293
|
+
f" 2. Edit [yellow]{name}/{edit_file}[/yellow] with your logic\n"
|
|
294
|
+
f" 3. [cyan]agentomatic run[/cyan] to start\n"
|
|
295
|
+
f" 4. [cyan]agentomatic test {name}[/cyan] to test\n"
|
|
296
|
+
f" 5. Open [blue]http://localhost:8000/docs[/blue] for API docs"
|
|
297
|
+
)
|
|
276
298
|
|
|
277
|
-
if template == "
|
|
299
|
+
if template == "coordinator":
|
|
278
300
|
steps += (
|
|
279
301
|
f"\n\n"
|
|
280
|
-
f"[bold]
|
|
281
|
-
f"
|
|
282
|
-
f"[
|
|
283
|
-
f"
|
|
302
|
+
f"[bold]Delegation Setup:[/bold]\n\n"
|
|
303
|
+
f" 1. Create specialist agents:\n"
|
|
304
|
+
f" [cyan]agentomatic init researcher --template basic[/cyan]\n"
|
|
305
|
+
f" [cyan]agentomatic init writer --template basic[/cyan]\n"
|
|
306
|
+
f" 2. Edit [yellow]{name}/delegation.py[/yellow] — "
|
|
307
|
+
f"add targets to DELEGATION_TARGETS\n"
|
|
308
|
+
f" 3. [cyan]agentomatic run[/cyan] — all agents auto-discovered\n\n"
|
|
309
|
+
f" [bold]API:[/bold] [blue]POST /api/v1/{name}/invoke[/blue]"
|
|
310
|
+
)
|
|
311
|
+
|
|
312
|
+
if template in ["full", "pipeline", "plugin"]:
|
|
313
|
+
prefix = (
|
|
314
|
+
"pipelines"
|
|
315
|
+
if template == "pipeline"
|
|
316
|
+
else ("plugins" if template == "plugin" else "agents")
|
|
317
|
+
)
|
|
318
|
+
steps += "\n\n[bold]ML Lifecycle:[/bold]\n\n"
|
|
319
|
+
if template in ["full", "plugin"]:
|
|
320
|
+
steps += (
|
|
321
|
+
f" [cyan]python -m {prefix}.{name}.train[/cyan] "
|
|
322
|
+
f"[dim]— Train & save model[/dim]\n"
|
|
323
|
+
)
|
|
324
|
+
steps += (
|
|
325
|
+
f" [cyan]python -m {prefix}.{name}.eval[/cyan] "
|
|
284
326
|
f"[dim]— Evaluate quality[/dim]\n"
|
|
285
|
-
f" [cyan]python -m
|
|
286
|
-
f"[dim]— Prompt optimization[/dim]\n"
|
|
287
|
-
f" [cyan]python -m
|
|
327
|
+
f" [cyan]python -m {prefix}.{name}.optimize[/cyan] "
|
|
328
|
+
f"[dim]— Prompt/Hyperparameter optimization[/dim]\n"
|
|
329
|
+
f" [cyan]python -m {prefix}.{name}.predict[/cyan] "
|
|
288
330
|
f"[dim]— Batch / interactive inference[/dim]\n"
|
|
289
331
|
f" [cyan]make all[/cyan] "
|
|
290
|
-
f"[dim]— Full
|
|
332
|
+
f"[dim]— Full ML lifecycle[/dim]"
|
|
291
333
|
)
|
|
292
334
|
|
|
293
335
|
if HAS_RICH:
|
|
@@ -301,6 +343,11 @@ def init(name: str, agents_dir: str, template: str | None, force: bool) -> None:
|
|
|
301
343
|
click.echo(f" 4. python -m agents.{name}.train")
|
|
302
344
|
click.echo(f" 5. python -m agents.{name}.eval")
|
|
303
345
|
click.echo(f" 6. python -m agents.{name}.optimize")
|
|
346
|
+
if template == "coordinator":
|
|
347
|
+
click.echo(f" 4. Edit {name}/delegation.py — add targets")
|
|
348
|
+
click.echo(f" 5. POST /api/v1/{name}/invoke")
|
|
349
|
+
if template == "pipeline":
|
|
350
|
+
click.echo(f" 4. POST /api/v1/pipelines/{name}/run")
|
|
304
351
|
|
|
305
352
|
|
|
306
353
|
# =====================================================================
|