Agently documentation for building AI applications with stable outputs, observable actions, and durable workflows.
Languages: English · 中文
Actions are Agently’s request-time capability layer: the model can choose a registered function, MCP tool, sandbox executor, or other backend while answering one request.
This is not the orchestration layer. If you need branches, fan-out, approval, wait/resume, or durable execution, put TriggerFlow above the request and call the agent from a chunk.
| Topic | Owns | Does not own |
|---|---|---|
| Action Runtime | Planning, action-call normalization, dispatch, action logs | Long-running workflow lifecycle |
| Agent Component helpers | Business-facing shortcuts such as enable_python, enable_shell, and exposing the current Workspace file area through enable_workspace_file_actions |
Provider lifecycle internals |
| Tools compatibility | tool_func, use_tool, use_tools, extra.tool_logs aliases |
New extension design |
| MCP | Loading remote or local MCP tools into the action surface | A separate workflow engine |
| Sandbox actions | Running code through an ActionExecutor backend |
General container orchestration |
| TriggerFlow | Stages, branches, fan-out, pause/resume, persistence | Tool schema registration |
Default plugin wiring lives in agently/_default_init.py:
ActionRuntime: AgentlyActionRuntimeActionFlow: TriggerFlowActionFlowActionExecutor: local function, MCP, Search/Browse, Python/Bash sandbox, Node.js, SQLite, DockerExecutionEnvironmentProvider: MCP, Python, Bash, Node.js, Docker, Browser, SQLiteThe public facade is agently/core/Action/. Agent-level mounting lives in agently/builtins/agent_extensions/ActionExtension.py. The runnable examples are grouped under examples/action_runtime/README.md, with model-backed cookbook patterns under examples/cookbook/.
| You need | Read |
|---|---|
| New function actions | Action Runtime |
| Give an app agent Python, shell, or workspace access | Action Runtime |
| Build a backend that needs managed resources | Execution Environment |
Existing code still uses tool_func |
Tools Compatibility |
| Use a local or HTTP MCP server | MCP |
| Route many actions across steps | TriggerFlow Patterns |
| Expose the action-using agent over HTTP | FastAPI Service Exposure |
The ToolManager plugin type still exists for legacy use, but new examples use the Action Runtime path. The examples in examples/action_runtime/ inspect agent.get_action_result() first, then call agent.get_response() and read extra.action_logs.