OpenHands Software Agent SDK快速上手:10分钟构建你的第一个AI Agent
【免费下载链接】software-agent-sdkA clean, modular SDK for building AI agents with OpenHands V1.项目地址https://gitcode.com/gh_mirrors/so/software-agent-sdk点击查看免费下载OpenHands Software Agent SDK是 OpenHands 推出的开源 Python SDK专为构建「能与代码打交道的 AI Agent」而设计。它提供 Python、TypeScript 和 REST 三层 API让你可以快速搭建可执行终端命令、编辑文件、追踪任务的智能体。无论你是想给仓库自动生成 README还是做依赖升级、代码重构这套 Agent SDK 都能帮你把任务交给 AI 自动完成。本文将带你 10 分钟内跑通第一个 AI Agent。为什么选择 OpenHands Software Agent SDK如果你正在寻找一个开源、模块化、可落地的 AI Agent 框架OpenHands SDK 有几个突出的优势模块化设计核心 SDK、内置工具、工作空间、Agent Server 分层清晰按需取用多语言支持Python SDK 为主附带浏览器兼容的 TypeScript 客户端即插即用的工具生态终端、文件编辑、任务追踪、浏览器操作等工具开箱即用☁️本地或远程运行Agent 可以直接在你的机器上工作也可以通过 Agent Server 跑在 Docker/Kubernetes 的临时沙箱里生产级验证它是 OpenHands CLI 和 OpenHands Cloud 的底层引擎SWE-bench 得分 77.6整个仓库是一个 monorepo结构如下详见 DEVELOPMENT.mdsoftware-agent-sdk/ ├── openhands-sdk/ # 核心 SDK 包Agent、Conversation、LLM ├── openhands-tools/ # 内置工具终端、文件编辑器等 ├── openhands-workspace/ # 工作空间管理Docker、Apptainer 等 ├── openhands-agent-server/ # Agent 服务器REST/WebSocket API ├── examples/ # 官方示例本次上手的最佳素材 └── tests/ # 测试套件环境准备一键安装 SDK 依赖安装步骤确保已安装 Python 3.12 和 uv 包管理器克隆仓库仅本地开发时需要如果只是调用 API通过 pip 安装即可git clone https://gitcode.com/gh_mirrors/so/software-agent-sdk cd software-agent-sdk一条命令配置开发环境会自动安装所有依赖并配置 pre-commit hooksmake buildmake build等价于执行uv sync --dev仓库根部的 pyproject.toml 通过uvworkspace 管理四个 Python 包的依赖。配置 LLM API KeySDK 通过环境变量读取大模型配置运行示例前请设置好export LLM_API_KEY你的API密钥 # 必需 export LLM_MODELgpt-5.5 # 可选默认 gpt-5.5 export LLM_BASE_URL # 可选自定义 API 端点10分钟跑通第一个 AI AgentHello World打开官方示例 01_hello_world.py完整代码如下import os from openhands.sdk import LLM, Agent, Conversation, Tool from openhands.tools.file_editor import FileEditorTool from openhands.tools.task_tracker import TaskTrackerTool from openhands.tools.terminal import TerminalTool llm LLM( modelos.getenv(LLM_MODEL, gpt-5.5), api_keyos.getenv(LLM_API_KEY), base_urlos.getenv(LLM_BASE_URL, None), ) agent Agent( llmllm, tools[ Tool(nameTerminalTool.name), Tool(nameFileEditorTool.name), Tool(nameTaskTrackerTool.name), ], ) conversation Conversation(agentagent, workspaceos.getcwd()) conversation.send_message(Write 3 facts about the current project into FACTS.txt.) conversation.run() print(All done!)运行它uv run python examples/01_standalone_sdk/01_hello_world.py几分钟后你会在目录里看到 Agent 自己创建的FACTS.txt—— 恭喜你的第一个 AI Agent 已经跑起来了看懂 SDK 四大核心概念LLM、Agent、Tool、Conversation上面的代码只有 30 行但恰好覆盖了 SDK 的四大核心组件1. LLM大模型配置LLM对象封装了模型、API Key、端点等配置基于 LiteLLM 实现因此兼容 OpenAI、Anthropic、Google 等主流提供商源码位于 openhands-sdk/openhands/sdk/llm/。它还内置了重试、超时、成本统计等能力运行后可以通过llm.metrics.accumulated_cost查看本次对话的累计花费。2. Agent智能体的「大脑」Agent是 LLM 与工具的桥梁负责决定何时调用哪个工具。它被设计为不可变frozen的 Pydantic 模型同一个 Agent 实例可以被多个 Conversation 安全共享见 openhands-sdk/openhands/sdk/agent/agent.py。3. ToolAgent 的「双手」工具赋予 Agent 实际操作的能力。内置工具都放在 openhands-tools/ 下常用的有工具导入路径能力TerminalToolterminal/执行 shell 命令FileEditorToolfile_editor/读写和编辑文件TaskTrackerTooltask_tracker/多步骤任务规划BrowserToolSetbrowser_use/浏览器自动化GrepTool/GlobToolgrep/ / glob/搜索代码内容/文件名TaskTooltask/委派子 Agent 处理子任务4. Conversation对话即工作流Conversation是任务执行的容器把 Agent、工作空间workspace参数指定目录绑定在一起send_message(...)—— 发送一条用户指令run()—— 驱动 Agent 循环执行直到任务完成可以反复send_messagerun实现多轮迭代进阶玩法从 Demo 到生产级 Agent跑通 Hello World 后推荐按下面顺序深入官方示例每个都是可直接运行的完整脚本️ 编写自定义工具参考 02_custom_tools.py学习如何定义Action/Observation、实现ToolExecutor并用register_tool()注册一个自己的 Grep 工具。自定义工具是扩展 Agent 能力的核心手段。✅ 开启确认模式安全护栏让 Agent 执行危险操作前先征得你同意参考 04_confirmation_mode_example.py通过conversation.set_confirmation_policy(AlwaysConfirm())开启Agent 每次执行动作前会暂停等待yes/no拒绝时调用reject_pending_actions()让 Agent 换思路。 用 Skills 定制 Agent 行为03_activate_skill.py 演示了AgentContext的 Skills 机制可以注入始终生效的指令、按关键词触发的技能甚至load_public_skillsTrue一键加载公共技能市场例如自动识别uv.lock项目并注入 uv 包管理指南。 远程 Agent Server把 Agent 关进沙箱本地运行适合小任务生产环境建议把 Agent 跑在隔离沙箱中。参考 01_convo_with_local_agent_server.py用RemoteConversation连接 Agent Server通过 WebSocket 实时接收事件流。Agent Server 源码位于 openhands-agent-server/支持 Docker、Apptainer、KubernetesAgent Sandbox等多种运行方式。 异步场景集成如果你的服务基于 FastAPI 等异步框架11_async.py 演示了如何用回调把同步的conversation.run()平滑嵌入asyncio事件循环。示例目录导航按需取用examples/目录按场景组织了 59 个可运行示例是最有价值的学习材料目录内容适合人群01_standalone_sdk/59 个本地 SDK 示例自定义工具、MCP、hooks、LLM 路由、持久化等新手首选02_remote_agent_server/客户端-服务器架构、Docker 沙箱、WebSocket有部署需求的团队03_github_workflows/CI/CD 集成自动分派 PR 评审、Todo 管理DevOps 用户05_skills_and_plugins/AgentSkills 与插件加载想定制 Agent 的开发者每个示例都能通过uv run pytest tests/examples/test_examples.py --run-examples统一验证跟着代码注释走一遍即可完成深度学习。常见问题速查QAgent 运行时花费如何控制ALLM 对象内置成本统计llm.metrics.accumulated_cost返回累计花费也可通过LLMProfileStore管理多套模型配置参考 37_llm_profile_store/。Q如何防止 Agent 执行危险命令A三管齐下——确认模式AlwaysConfirm、LLM 安全分析器LLMSecurityAnalyzer、可配置安全策略参考 32_configurable_security_policy.py 与 47_defense_in_depth_security.py。Q支持哪些模型A只要 LiteLLM 支持的模型都可以常见模型如gpt-5.5、claude-*、gemini-*等通过LLM(model...)传入即可多模型路由见 19_llm_routing.py。Q可以恢复中断的对话吗A可以。SDK 提供事件持久化机制参考 10_persistence.py 和 48_conversation_fork.py对话分叉。总结你的 Agent 开发路线回顾一下这篇文章的 10 分钟上手路径✅make build一键安装依赖✅ 配置LLM_API_KEY环境变量✅ 运行 01_hello_world.py 得到第一个 Agent 学习 LLM / Agent / Tool / Conversation 四大概念 深入examples/目录按业务场景选型OpenHands Software Agent SDK 把「让 AI 动手干活」这件事做到了工程化从本地脚本到云端沙箱从单 Agent 到多 Agent 委派都有一套清晰的抽象。现在就动手跑通你的第一个 AI Agent 吧赞分享【免费下载链接】software-agent-sdkA clean, modular SDK for building AI agents with OpenHands V1.项目地址https://gitcode.com/gh_mirrors/so/software-agent-sdk点击查看免费下载相关推荐Centaur 快速上手教程10分钟在 k3s 上部署你的第一个 Slack AI AgentCentaur 快速上手教程10分钟在 k3s 上部署你的第一个 Slack AI Agent Centaur 是一个开源、自托管的「团队共享 AI AgenRouta快速上手指南5分钟搭建你的第一个AI编码Agent团队Routa快速上手指南5分钟搭建你的第一个AI编码Agent团队 Routa 是一个「工作区优先Workspace first」的 AI 编码 AgentOpenHTMLtoPDF安全最佳实践如何避免常见安全风险OpenHTMLtoPDF安全最佳实践如何避免常见安全风险 OpenHTMLtoPDF是一款基于Flying Saucer和Apache PDFBox 2的J后端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

估计目标框架落地指南:从ICH E9(R1)到敏感性分析实践

估计目标框架落地指南:从ICH E9(R1)到敏感性分析实践

简介:在临床试验统计中,估计目标(Estimand)并非一种新的统计方法,而是对治疗效应定义与分析逻辑的重构。ICH E9(R1)增补指导原则要求研究者先明确“估计什么样的治疗效应”,再选择模型与缺失数据处理策略&a…

2026/10/14 17:52:15 阅读更多 →
C语言读写STL文件:从格式解析到实战避坑指南

C语言读写STL文件:从格式解析到实战避坑指南

去年接手一个模拟项目X的时候,客户甩过来一批STL格式的三维模型文件,要求统计每个模型的三角面片数量、体积和包围盒。我一开始以为是C标准模板库,差点用错工具链,搞清楚之后才发现这里的STL是3D打印和CAD领域最常见的网格文件格式…

2026/10/14 17:52:15 阅读更多 →
内网环境Jenkins离线搭建与自动化部署实践指南

内网环境Jenkins离线搭建与自动化部署实践指南

1. 内网环境的“家底盘点”:先搞清你手上到底有什么 前几天某团队找我帮忙搭一套内网CI/CD环境,一上来就说“我们有一个Jenkins,但是不会用,也没法下插件,你帮整一下”。我一问细节,发现那台所谓“Jenkins服务器”上面连JDK都没装,只有个裸奔的CentOS,外加一个没人知道密码的共…

2026/10/14 17:52:15 阅读更多 →

最新新闻

Semantic Router 与 vLLM AIBrix 集成部署实战:在 Kubernetes 上搭建可扩展的语义路由推理网关

Semantic Router 与 vLLM AIBrix 集成部署实战:在 Kubernetes 上搭建可扩展的语义路由推理网关

后端API网关模型推理服务AI Agent 【免费下载链接】semantic-router An open, programmable decision layer for models and compute. 项目地址: https://gitcode.com/gh_mirrors/sem/semantic-router 点击查看 免费下载 本指南以 Semantic Router 官方文档中「使用…

2026/10/14 18:48:03 阅读更多 →
Activiti HistoryService实战:历史数据查询、清理与归档指南

Activiti HistoryService实战:历史数据查询、清理与归档指南

1. 为什么流程明明跑完了,还得单独维护一套历史数据学习Activiti的时候,大多数人会把精力放在流程定义部署、RuntimeService启动流程、TaskService处理任务这些"正在发生"的事情上。我一开始也是这样,直到某个项目上线大半年后&…

2026/10/14 18:48:03 阅读更多 →
JavaSE初学者课堂作业

JavaSE初学者课堂作业

摘要:本文是计算机大一新生对 JavaSE 学习内容的课堂总结。文章首先介绍了数据类型与程序逻辑控制两大基础知识点,随后规划了后续学习路线,包括面向对象、集合框架、异常处理、IO 流四个核心模块,并逐一说明它们与 AI 应用开发岗位…

2026/10/14 18:48:03 阅读更多 →
AntDesignPro of Vue权限管理实战:路由与按钮级权限设计

AntDesignPro of Vue权限管理实战:路由与按钮级权限设计

1. 权限管理在后台系统里到底管什么后台管理系统做久了,你会发现一个规律:功能越堆越多,最先扛不住的往往不是性能,而是权限。谁能看到哪个菜单、谁只能看不能改、谁连按钮都不该看见,这些问题如果一开始没设计好&…

2026/10/14 18:48:03 阅读更多 →
ponytail:当代职场的情绪标点与轻量协作语言

ponytail:当代职场的情绪标点与轻量协作语言

1. 项目概述:从“ponytail”这个词开始,我们到底在聊什么?“ponytail”这个词最近频繁出现在社交平台的评论区、弹幕和短视频标题里,但它早已不是字典里那个“马尾辫”的简单释义。我做内容运营和用户行为分析十多年,见…

2026/10/14 18:48:03 阅读更多 →
React Native应用难以破解?morphe-patches的Hermes字节码十六进制补丁与哈希修复技巧

React Native应用难以破解?morphe-patches的Hermes字节码十六进制补丁与哈希修复技巧

【免费下载链接】morphe-patches 🍃 Human-made patches for Morphe 项目地址: https://gitcode.com/gh_mirrors/mor/morphe-patches 点击查看 免费下载 morphe-patches 是一个为 Android 补丁工具 Morphe 提供社区补丁的开源仓库,其中最硬核…

2026/10/14 18:47:02 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →