원클릭으로
yaml-composer
Build orxhestra agent trees from declarative YAML orx files. Covers full schema, models, tools, agents, runner, and server.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Build orxhestra agent trees from declarative YAML orx files. Covers full schema, models, tools, agents, runner, and server.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Expose orxhestra agents as A2A protocol endpoints or connect to remote A2A agents.
Add callbacks to orxhestra agents for logging, monitoring, and error handling. Covers model and tool callbacks.
Add planners to orxhestra agents for structured reasoning. Covers BasePlanner, PlanReActPlanner, and TaskPlanner.
Add dynamic skills to orxhestra agents. Covers Skill, InMemorySkillStore, and skill discovery/loading tools.
Stream events from orxhestra agents including token-by-token output, sub-agent events via AgentTool, and Runner streaming.
Create and use tools with orxhestra agents. Covers function_tool, AgentTool, transfer tools, exit_loop, MCP tools, and CallContext.
| name | yaml-composer |
| description | Build orxhestra agent trees from declarative YAML orx files. Covers full schema, models, tools, agents, runner, and server. |
Build an entire multi-agent setup from a single YAML file.
pip install orxhestra[composer]
defaults:
model:
provider: openai
name: gpt-5.4
agents:
assistant:
type: llm
instructions: "You are a helpful assistant."
main_agent: assistant
from orxhestra.composer import Composer
agent = Composer.from_yaml("orx.yaml")
async for event in agent.astream("Hello"):
print(event.text)
models:
smart:
provider: anthropic
name: claude-opus-4-7
max_tokens: 8192
fast:
provider: openai
name: gpt-5.4-mini
agents:
researcher:
type: llm
model: smart
writer:
type: llm
model: fast
Extra keys on a model config are forwarded directly to the LangChain model constructor.
tools:
search:
function: "myapp.tools.search_web"
weather:
mcp:
url: "http://localhost:8001/mcp"
exit:
builtin: "exit_loop"
agents:
agent:
type: llm
tools:
- search
- weather
- function: "myapp.tools.inline_tool" # inline tool def
llm — LlmAgentreact — ReActAgentsequential — SequentialAgent (runs agents in order)parallel — ParallelAgent (runs agents concurrently)loop — LoopAgent (repeats until exit_loop or max_iterations)a2a — A2AAgent (remote agent via A2A protocol)agents:
triage:
type: llm
instructions: "Route to the right specialist."
tools:
- transfer:
targets: [sales, support]
sales:
type: llm
instructions: "Handle sales inquiries."
support:
type: llm
instructions: "Handle support tickets."
main_agent: triage
agents:
researcher:
type: llm
tools: [search]
writer:
type: llm
pipeline:
type: sequential
agents: [researcher, writer]
main_agent: pipeline
runner:
app_name: "my-app"
session_service: "memory"
server:
app_name: "my-app"
version: "1.0.0"
url: "http://localhost:8000"
skills:
- id: qa
name: Q&A
description: "Answers questions"
runner = Composer.runner_from_yaml("orx.yaml")
app = Composer.server_from_yaml("orx.yaml") # FastAPI app