diff --git a/agent-os/studio/agents.mdx b/agent-os/studio/agents.mdx index 5bc1246f1..20804d972 100644 --- a/agent-os/studio/agents.mdx +++ b/agent-os/studio/agents.mdx @@ -3,21 +3,28 @@ title: "Agents" description: "Build and configure agents visually in AgentOS Studio." --- -Build production-grade agents via AgentOS Studio’s visual canvas. Wire up models, tools, -and structured I/O into complex agentic workflows. Deploy instantly. No-code required. +Build production-grade agents via AgentOS Studio’s. Wire up models, tools, +instructions, knowledge, memory, and more. Deploy instantly. No-code required. ## Creating Agents Create a new agent by selecting components from your [Registry](/agent-os/studio/registry) and configuring them in the properties panel: -| Setting | Description | -|---------|-------------| -| **Model** | Select from registered models | -| **Tools** | Attach registered tools and toolkits | -| **Instructions** | System-level instructions for the agent | -| **Input/Output Schema** | Structured I/O using registered Pydantic schemas | -| **Memory** | Enable memory for multi-turn conversations | -| **Knowledge** | Attach knowledge bases for RAG | +- **Model**: select from registered models. +- **Tools**: attach registered tools and toolkits. +- **Instructions**: system-level instructions for the agent. +- **Input/Output Schema**: structured I/O using registered Pydantic schemas. +- **Database**: attach a database for the agent to use. +- **Context Management**: configure session summary manager, enable session summaries, number of history runs, add history to context, and add session summary to context. +- **Memory**: configure memory manager, enable agentic memory, update memory on run, and add memories to context. +- **Knowledge**: configure knowledge, search knowledge, and add knowledge to context. +- **Session State**: configure session state, add session state to context, and enable agentic state. + +Create an agent in AgentOS Studio Switch to the advanced JSON config editor for fine-grained control over agent settings. @@ -31,14 +38,6 @@ Use Studio-built Agents in multiple ways: - **Add to Teams** for multi-agent collaboration - **Use in Workflows** as step executors for automation pipelines -## Save and Run - -Once your agent is configured: - -1. **Save** your agent to persist it to the registry -2. Navigate to the **Chat page** to interact with your agent -3. Send messages and receive responses in real-time -4. View tool calls, reasoning, and outputs as the agent works ## Code Equivalent diff --git a/agent-os/studio/introduction.mdx b/agent-os/studio/introduction.mdx index 77ac14284..c2950d9b4 100644 --- a/agent-os/studio/introduction.mdx +++ b/agent-os/studio/introduction.mdx @@ -3,25 +3,36 @@ title: "Overview" description: "A visual editor in AgentOS to build Agents, Teams, and Workflows." --- -Drag, drop, and orchestrate Agents, Teams, and Workflows on a live canvas to deploy production-ready agentic systems with AgentOS Studio. +Build and orchestrate Agents, Teams, and Workflows on a live canvas to deploy production-ready agentic systems with AgentOS Studio. ## Concepts -| Concept | Description | -| --------------------------------------- | ----------------------------------------------------------------------------------- | -| [Agents](/agent-os/studio/agents) | Build and configure agents with models, tools, and instructions | -| [Teams](/agent-os/studio/teams) | Compose multi-agent teams with coordination modes | -| [Workflows](/agent-os/studio/workflows) | Design step-based workflows with conditions, loops, routers, and parallel execution | -| [Registry](/agent-os/studio/registry) | Browse and manage registered tools, models, databases, and schemas | +**[Agents](/agent-os/studio/agents)** +Build agent by giving it a model, tools, and instructions. Add knowledge and memory to ground its responses and remember context. + +**[Teams](/agent-os/studio/teams)** +Build multi-agents team that works toward a shared goal. Choose how the leader coordinates with members using `coordinate`, `route`, `broadcast`, or `tasks` mode. + +**[Workflows](/agent-os/studio/workflows)** +Orchestrate agents and teams into step-based pipelines. Control the flow with loops, conditions, routers, and parallel execution. + +use functions or cel expressions to evaluate conditions and selectors. + +**[Registry](/agent-os/studio/registry)** +Add tools, models, databases, and schemas that Studio can use to build agents, teams, and workflows. + +Register agents and teams in the `Registry` to reuse them as members in Studio teams and as steps in Studio workflows. + +Register `knowledge`, `memory_managers`, and `session_summary_managers` for agents and teams to use. ## How It Works Studio connects to your running AgentOS instance and uses a Registry to populate available components. Build visually, test interactively, and publish when ready. -1. Register your components in a `Registry` +1. Register your tools, models, databases, and schemas in a `Registry` 2. Pass the registry **and a database** to `AgentOS` -3. Open Studio in the control plane to start building +3. Open Studio in the [AgentOS Control Plane](https://os.agno.com/studio/agents) to start building ```python from agno.os import AgentOS @@ -54,38 +65,70 @@ Studio manages the full development lifecycle from building to deploying complex ### 1. Build -Create your agent, team, or workflow using the visual builder. Drag components from the Registry, configure properties, and wire everything together. +Create your agent, team, or workflow using the visual builder. use tools, models, and knowledge bases from the Registry, add instructions and configure the settings. + + + Create an agent in Studio -### 2. Save Draft -Save your work as a draft version. Drafts are not accessible via the API but can be tested, restored, and published later. You can save multiple draft versions to checkpoint your progress. + +### 2. Save Draft or publish directly + +- Save your work as a draft or publish directly. Drafts can be edited and updated. Drafts helps you test your component before publishing it. +- Publish or Draft multiple versions to checkpoint your progress. + Save draft or publish directly in Studio ### 3. Test -Once saved, test your draft in the AgentOS Control Plane: +Once saved, test your draft or published version in the AgentOS: + +- **Chat Page**: + - Interact with your agent, team, or workflow in real-time + - run specific version of the component by selecting it in the dropdown. + + Run specific version of the component in the chat page -- **Chat Page**: Interact with your agent, team, or workflow in real-time - **View Traces**: Inspect tool calls, model responses, and reasoning for each run - **Debug Mode**: Enable verbose logging to troubleshoot issues + Before publishing, test and make sure your agent handles edge cases and unexpected inputs gracefully. -### 4. Publish +### 4. Delete -Move from draft to production with one click. Publish the visual blueprint of your agentic system after verification. -Manage multiple versions of your system blueprint. Every published version is immediately -accessible via a unique API endpoint. Set any version as _Current_ to make it the default for your production API. +- Delete the component from the Studio. ### 5. Manage Versions Access the full version history for any agent, team, or workflow: -- **Restore**: Load any previous version into the editor +Versions page in Studio +- **Restore**: edit and update the draft version. - **Set Current**: Choose which published version is used by default when running via the API -- **Delete**: Remove old versions you no longer need + +- only draft versions can be updated and edited in the Studio. +- published versions are immutable and can only be updated by publishing a new version. +- draft version cannot be set as current. +- only draft versions can be deleted from versions page , published versions and current config cannot be deleted. + Use descriptive version labels like `v1.2-improved-instructions` or diff --git a/agent-os/studio/registry.mdx b/agent-os/studio/registry.mdx index efc41f7d7..2bb8529e6 100644 --- a/agent-os/studio/registry.mdx +++ b/agent-os/studio/registry.mdx @@ -4,7 +4,33 @@ sidebarTitle: "Registry" description: "Register tools, models, databases, and schemas for use in AgentOS Studio." --- -**The Registry manages non-serializable components (tools, models, databases, schemas, functions) that Studio depends on.** +**The Registry manages non-serializable components (tools, models, databases, schemas, functions, etc.) that Studio depends on.** + + +## Component Types + +- **Tools** : `Toolkit` instances, `Function` objects, or plain callables. +- **Models** : model provider instances (OpenAI, Anthropic, etc.). +- **Databases** : `BaseDb` instances for storage. +- **Vector DBs** : `VectorDb` instances for knowledge bases. +- **Schemas** : Pydantic `BaseModel` subclasses for structured I/O. +- **Functions** : Python callables used as workflow evaluators, selectors, or executors. +- **Knowledge** : `Knowledge` instances for RAG. +- **Memory Managers** : `MemoryManager` instances for memory management. +- **Session Summary Managers** : `SessionSummaryManager` instances for session summary management. +- **Teams** : `Team` instances to reuse as members in teams and workflows. +- **Agents** : `Agent` instances to reuse as members in teams and workflows. + + +Open Studio Registry from the Studio navigation + + + +example of registry configuration: ```python from agno.db.postgres import PostgresDb @@ -25,6 +51,27 @@ def custom_evaluator(input: str) -> bool: return "urgent" in input.lower() db = PostgresDb(db_url="postgresql+psycopg://ai:ai@localhost:5532/ai", id="postgres_db") +user_memory_manager = MemoryManager( + model=Claude(id="claude-opus-4-7"), + db=db, + additional_instructions=""" + IMPORTANT: Don't store any memories about the user's name. Just say "The User" instead of referencing the user's name. + """, +) +concise_summary_manager = SessionSummaryManager( + model=OpenAIResponses(id="gpt-5-mini"), + session_summary_prompt=( + "Summarize the conversation in 3-5 bullet points focused on decisions, " + "open questions, and any follow-ups required." + ), + last_n_runs=10, +) +agent_knowledge = Knowledge( + name="Agent Knowledge", + description="Example knowledge base for agents", + vector_db=PgVector(table_name="agent_knowledge_documents", db_url=DB_URL), + contents_db=db, +) registry = Registry( name="My Registry", @@ -34,23 +81,14 @@ registry = Registry( vector_dbs=[PgVector(db_url="postgresql+psycopg://ai:ai@localhost:5532/ai", table_name="embeddings")], schemas=[InputSchema], functions=[custom_evaluator], + memory_managers=[user_memory_manager], + session_summary_managers=[concise_summary_manager], + knowledge=[agent_knowledge], ) agent_os = AgentOS(id="my-app", registry=registry, db=db) app = agent_os.get_app() ``` - -## Component Types - -| Type | Field | Description | -|------|-------|-------------| -| Tools | `tools` | `Toolkit` instances, `Function` objects, or plain callables | -| Models | `models` | Model provider instances (OpenAI, Anthropic, etc.) | -| Databases | `dbs` | `BaseDb` instances for storage | -| Vector DBs | `vector_dbs` | `VectorDb` instances for knowledge bases | -| Schemas | `schemas` | Pydantic `BaseModel` subclasses for structured I/O | -| Functions | `functions` | Python callables used as workflow evaluators, selectors, or executors | - ## Registry API The registry exposes a `GET /registry` endpoint through AgentOS with filtering and pagination. @@ -76,6 +114,11 @@ Each component in the response includes type-specific metadata: | Vector DB | `collection`, `table_name` | | Schema | JSON schema definition | | Function | `signature`, `parameters` | +| Knowledge | `name`, `description`, `vector_db`, `contents_db` | +| Memory Manager | `model`, `additional_instructions`, `db` | +| Session Summary Manager | `model`, `session_summary_prompt`, `last_n_runs` | +| Team | `name`, `type`, `id`, `metadata` | +| Agent | `name`, `type`, `id`, `metadata` | ## Developer Resources diff --git a/agent-os/studio/teams.mdx b/agent-os/studio/teams.mdx index a21d611ce..fc46978be 100644 --- a/agent-os/studio/teams.mdx +++ b/agent-os/studio/teams.mdx @@ -9,14 +9,33 @@ No code required. Drag agents onto the canvas, configure coordination, and run t ## Creating Teams -Create a new team by dragging agents from your [Registry](/agent-os/studio/registry) and configuring the team settings: - -| Setting | Description | -|---------|-------------| -| **Members** | Drag and drop agents to include in the team | -| **Mode** | Coordination mode: `coordinate`, `route`, or `collaborate` | -| **Instructions** | Team-level instructions for the leader agent | -| **Success Criteria** | Define when the team's task is complete | +Create a new team by using existing agents and teams from your Registry or built in Studio, and configuring the team settings: + +- **Team Members and Execution**: select agents or teams to include as members, and set the team mode and delegation behavior. read more about [team members and execution](/agent-os/studio/teams#team-members-and-execution) here. +- **Instructions**: team-level instructions for the leader agent. +- **Success Criteria**: define when the team's task is complete. +- **Context Management**: configure session summary manager, enable session summaries, number of history runs, add history to context, and add session summary to context. +- **Memory**: configure memory manager, enable agentic memory, update memory on run, and add memories to context. +- **Knowledge**: configure knowledge, search knowledge, and add knowledge to context. +- **Session State**: configure session state, add session state to context, and enable agentic state. + +Create a team in AgentOS Studio + +### Team Members and Execution + +- **Members**: select the agents or teams to include as members. +- **Team Mode** _(optional)_: controls how the team leader coordinates work with member agents: + - **None** + - **Coordinate** (default) + - **Route** + - **Broadcast** + - **Tasks** +- **Respond Directly**: let the team leader respond on its own instead of delegating. +- **Delegate to All Members**: send the task to every member at once. Agents can be created directly in Studio or registered via code—both are available for team composition. @@ -29,15 +48,6 @@ Teams built in Studio can be used in multiple ways: - **Chat directly** with the team via the Chat page - **Use in Workflows** as step executors for complex automation -## Save and Run - -Once your team is configured: - -1. **Save** your team to persist it to the registry -2. Navigate to the **Chat page** to interact with your team -3. Send tasks and watch agents collaborate in real-time -4. View individual agent contributions and coordination flow - ## Code Equivalent A team instance created in Studio directly maps to the SDK `Team` class: diff --git a/agent-os/studio/workflows.mdx b/agent-os/studio/workflows.mdx index 4a6a17a42..ac6ee92b0 100644 --- a/agent-os/studio/workflows.mdx +++ b/agent-os/studio/workflows.mdx @@ -13,7 +13,7 @@ Drag a step onto the canvas and configure its executor type in the properties pa |---------------|-------------| | **Agent** | Execute the step using a registered agent from your OS | | **Team** | Delegate the step to a multi-agent team for collaborative execution | -| **Custom Executor** | Use a custom function or script for specialized logic | +| **Custom Executor** | Use a custom function | ## Step Types @@ -28,6 +28,12 @@ Beyond basic steps, you can build complex workflows using these step types: | `Router` | Select a step based on a selector function or CEL expression | | `Parallel` | Execute multiple steps concurrently | +Create a workflow in AgentOS Studio + These step types can be nested and composed together to build sophisticated automation pipelines while maintaining visual clarity. ### Configuring Complex Steps @@ -55,6 +61,13 @@ condition = Condition( evaluator=is_apple, ) ``` +Configure a CEL expression in AgentOS Studio + ## CEL Expressions @@ -62,14 +75,7 @@ Workflow steps support [CEL (Common Expression Language)](https://github.com/goo See [CEL Expressions](/agent-os/studio/cel-expressions) for full usage, context variables, and examples. -## Save and Run - -Once your workflow is designed: -1. **Save** your workflow to persist it to the registry -2. Navigate to the **Chat page** to run your workflow interactively -3. Provide input and watch the workflow execute step-by-step -4. View results and logs for each step in real-time ## Developer Resources diff --git a/images/agent-os-studio-chat-page-versioning.png b/images/agent-os-studio-chat-page-versioning.png new file mode 100644 index 000000000..d77cb0f7d Binary files /dev/null and b/images/agent-os-studio-chat-page-versioning.png differ diff --git a/images/agent-os-studio-create-agent.png b/images/agent-os-studio-create-agent.png new file mode 100644 index 000000000..9a16b6953 Binary files /dev/null and b/images/agent-os-studio-create-agent.png differ diff --git a/images/agent-os-studio-create-team.png b/images/agent-os-studio-create-team.png new file mode 100644 index 000000000..d589f3bca Binary files /dev/null and b/images/agent-os-studio-create-team.png differ diff --git a/images/agent-os-studio-create.png b/images/agent-os-studio-create.png new file mode 100644 index 000000000..a12a0adfd Binary files /dev/null and b/images/agent-os-studio-create.png differ diff --git a/images/agent-os-studio-draft-publish-btn.png b/images/agent-os-studio-draft-publish-btn.png new file mode 100644 index 000000000..6b953558d Binary files /dev/null and b/images/agent-os-studio-draft-publish-btn.png differ diff --git a/images/agent-os-studio-registry.png b/images/agent-os-studio-registry.png new file mode 100644 index 000000000..74df45332 Binary files /dev/null and b/images/agent-os-studio-registry.png differ diff --git a/images/agent-os-studio-versions-page.png b/images/agent-os-studio-versions-page.png new file mode 100644 index 000000000..4c189e206 Binary files /dev/null and b/images/agent-os-studio-versions-page.png differ diff --git a/images/agent-os-studio-workflow-cel.png b/images/agent-os-studio-workflow-cel.png new file mode 100644 index 000000000..fd913a505 Binary files /dev/null and b/images/agent-os-studio-workflow-cel.png differ diff --git a/images/agent-os-studio-workflow-create.png b/images/agent-os-studio-workflow-create.png new file mode 100644 index 000000000..2714b461e Binary files /dev/null and b/images/agent-os-studio-workflow-create.png differ