AI Skill Hub 强烈推荐:智能工作流 是一款优质的Agent工作流。AI 综合评分 8.0 分,在同类工具中表现稳健。如果你正在寻找可靠的Agent工作流解决方案,这是一个值得深入了解的选择。
智能工作流 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
智能工作流 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
# 方式一:pip 安装(推荐)
pip install grasp-agents
# 方式二:虚拟环境安装(推荐生产环境)
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install grasp-agents
# 方式三:从源码安装(获取最新功能)
git clone https://github.com/grasp-technologies/grasp-agents
cd grasp-agents
pip install -e .
# 验证安装
python -c "import grasp_agents; print('安装成功')"
# 命令行使用
grasp-agents --help
# 基本用法
grasp-agents input_file -o output_file
# Python 代码中调用
import grasp_agents
# 示例
result = grasp_agents.process("input")
print(result)
# grasp-agents 配置文件示例(config.yml) app: name: "grasp-agents" debug: false log_level: "INFO" # 运行时指定配置文件 grasp-agents --config config.yml # 或通过环境变量配置 export GRASP_AGENTS_API_KEY="your-key" export GRASP_AGENTS_OUTPUT_DIR="./output"
<br/> <picture> <source srcset="https://raw.githubusercontent.com/grasp-technologies/grasp-agents/master/.assets/grasp-dark.svg" media="(prefers-color-scheme: dark)"> <img src="https://raw.githubusercontent.com/grasp-technologies/grasp-agents/master/.assets/grasp.svg" alt="Grasp Agents"/> </picture> <br/> <br/>
Grasp Agents is a lightweight, modular Python framework for building LLM agents and structured workflows. It focuses on clean and flexible architecture that allows for rapid experimentation, while maintaining resilience and durability necessary for production use. You build the agent and choose how to run it:
- Embedded in an application, as the orchestration layer behind its AI features; or - Standalone, as a personal agent with its own cross-session memory, skills, sandboxing. A simple multi-agent Terminal UI (using Textual) is included.
The core is small. Tools, sandboxing, memory, skills, durable persistence, MCP, and the terminal UI are additive layers you opt into.
- Strict static typing end to end. Agents and pipeline steps are Processor[InT, OutT, CtxT], generic in their input, output, and shared context types; tool inputs/outputs and agent outputs are Pydantic models. - Native providers, no lowest-common-denominator. OpenResponses as an internal LLM abstraction layer, with first-class adapters for OpenAI Chat Completions, Responses, Anthropic, Gemini, and LiteLLM. Each adapter exposes provider-specific settings directly (e.g. reasoning, caching, server-side Web search) using the exact same schemas shipped with the provider SDK. FallbackLLM cascades across any of them. First-class integrations. - Three composition patterns, one framework. A single agent driving tools; typed processor pipelines (sequential / looped / parallel fan-out); and dynamic multi-agent graphs (Runner with per-payload routing). Any of them can be wrapped as a tool for an agent via .as_tool(). - Opt-in runtime. File, shell, code-execution, and notebook tools; a two-plane sandbox; cross-session memory; skills; and an MCP client are all additive. Nothing touches the host filesystem or network unless you ask for it. - Durable by construction. Agents, workflows, and multi-agent runs checkpoint as they go and resume after a crash without re-running completed work. Checkpoints are produced at each level of nested composition: e.g. an interrupted subagent in a multi-agent setup resumes without being re-run by its parent. Long-running tool calls are backgrounded as tasks, and their intermediate results are persisted and reported to the parent when it is resumed. - Streaming-first. .run_stream() yields typed events (text deltas, thinking, tool calls, routing decisions); .run() is built on top.
Composition & orchestration
- LLMAgent — an LLM with tools and an agentic loop (PRE-ACT/ACT/JUDGE/OBSERVE phases, max_turns, per-run and per-tool timeouts, forced final answer). - SequentialWorkflow, LoopedWorkflow, ParallelProcessor — typed, composable processing chains and concurrent fan-out. - Runner — multi-agent orchestration over an in-process event bus, with fully dynamic per-payload routing (select_recipients_impl / add_recipient_selector). - .as_tool() — turn any agent or workflow into a tool used by another agent.
Models
- Agent-first OpenResponses abstraction layer. - FallbackLLM model cascade, RetryPolicy (per-error-type backoff + jitter), token/cost/capability metadata, and request rate limiting.
Tools
- @function_tool — turn an async function into a typed tool (schema inferred from the signature and docstring); or subclass BaseTool directly. - File tools (Read / ReadImage / Write / Edit / Delete / Glob / Grep) over a pluggable backend (local filesystem or MCP), with fuzzy-match edits and read-before-write mtime guards. - Terminal (Bash, persistent BashSession), REPL code execution (RunPython), and notebook tools (RunCell / NotebookRead / NotebookEdit). - MCP: tools, resources, and prompts.
Sandboxing
- An opt-in two-plane SandboxPolicy (filesystem roots + OS/network). Backends: local (no isolation), macOS Seatbelt with srt delegation, and remote E2B. The file, code, and notebook tools run under whichever backend you bind. Easily extendable to other file and execution backends.
Memory & skills
- Cross-session memory: a markdown memory directory with an always-loaded index, topic files with frontmatter, and per-turn relevance selection. Authored through the generic file tools — no dedicated memory tools (Claude Code inspired). - Skills: a SKILL.md catalog injected into the system prompt, loaded on demand, and slash-invocable with arguments.
Durability
- CheckpointStore (filesystem and in-memory, extendable) with append-only message logs. Agents, workflows, and runner teams resume after a crash without re-running completed steps. A background-task manager runs long work out of the loop and reports or resumes it on restart.
Output & observability
EventConsole (always available) and an opt-in Textual TUI (experimental but actively developed) with separate subagent views.Customization
- Decorator hooks for system/input prompt formatting, output parsing, context engineering (e.g. transcript pruning, compaction), and before/after LLM and tool call interventions. Subclassing as an alternative to hooks for more invasive changes.
The base install includes the OpenAI and LiteLLM providers, the file / shell / code tools, memory, skills, durability, and the Rich console. Native Anthropic and Gemini, MCP, the local notebook kernel, the E2B sandbox, the Textual UI, and tracing are optional extras.
uv add grasp_agents # or: pip install grasp_agents
| Install | Adds |
|---|---|
grasp_agents | Core: OpenAI + LiteLLM, file/shell/code tools, memory, skills, durability, console |
grasp_agents[anthropic] | Native Anthropic provider |
grasp_agents[gemini] | Native Gemini provider |
grasp_agents[all-llm-providers] | Anthropic + Gemini + Bedrock/Vertex auth deps |
grasp_agents[bedrock] | Claude on AWS Bedrock (adds boto3 for SigV4) |
grasp_agents[vertex] | Claude + Gemini on Google Vertex AI (adds google-auth) |
grasp_agents[mcp] | MCP client |
grasp_agents[notebook] | Local Jupyter kernel for RunPython / RunCell |
grasp_agents[notebook-edit] | NotebookRead / NotebookEdit (no kernel) |
grasp_agents[e2b] | Remote E2B sandbox backend |
grasp_agents[tui] | Textual terminal UI |
grasp_agents[phoenix] | Phoenix / OpenLLMetry tracing |
API keys are read from the environment. The same models are also reachable through AWS Bedrock, Google Vertex AI, and Azure OpenAI — see Cloud-hosted models.
azure = OpenAILLM( model_name="my-gpt-deployment", platform="azure", platform_config={ "azure_endpoint": "https://my-resource.openai.azure.com", "api_version": "2024-10-21", }, )
A typed single agent with one tool, streamed to the console:
```python import asyncio from dotenv import load_dotenv from grasp_agents import ( LLMAgent, ProcPacketOutEvent, function_tool, render_events, ) from grasp_agents.llm_providers.litellm import LiteLLM
load_dotenv()
@function_tool async def get_weather(city: str) -> str: """Return the current weather for a city.""" return f"It's 18°C and clear in {city}."
Runnable notebooks in src/grasp_agents/examples/notebooks/:
- basics.ipynb — agent basics: typed agents, validated/structured outputs, multimodal input, the tool loop, streaming, parallel runs, sequential workflows, agents-as-tools. - advanced_patterns.ipynb — provider-specific features (thinking, web search, grounding), the full hook system, and forced ReAct. - orchestration_durability.ipynb — composition, multi-agent Runner routing, and crash/resume durability. - code_interpreter.ipynb — RunPython in a persistent, srt-confined kernel. - memory_skills.ipynb — cross-session memory and skills end to end. - mcp_memory.ipynb — the same memory surface over an MCP file backend.
高质量的开源AI工作流框架,适合构建复杂智能系统
该工具使用 NOASSERTION 协议,商用场景请仔细阅读协议条款,必要时咨询法律意见。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
📄 NOASSERTION — 请查阅原始协议条款了解具体使用限制。
总体来看,智能工作流 是一款质量优秀的Agent工作流,在同类工具中具备一定竞争力。AI Skill Hub 将持续追踪其更新动态,建议收藏备用,结合自身场景选择合适时机引入使用。
| 原始名称 | grasp-agents |
| 原始描述 | 开源AI工作流:Modular framework for building LLM workflows and multi-agent systems。⭐13 · Python |
| Topics | AI工作流多智能体系统 |
| GitHub | https://github.com/grasp-technologies/grasp-agents |
| License | NOASSERTION |
| 语言 | Python |
收录时间:2026-07-12 · 更新时间:2026-07-12 · License:NOASSERTION · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端