AI Agent开发实战:基于MCP协议与DSH桌面端构建自定义插件
大家好我是专注于AI开发工具与生态的技术博主。最近AI Agent开发领域迎来了一波重要的基础设施更新特别是围绕插件、MCP协议、Skills市场以及DSH桌面端的整合让开发者构建智能体应用的门槛大大降低。如果你正在为如何让AI Agent连接外部工具、处理复杂任务而烦恼或者对Claude、Cursor等工具中提到的MCP感到好奇那么这篇文章正是为你准备的。本文将系统性地拆解这一技术组合从核心概念到实战部署手把手带你理解并上手。无论你是想为自己的项目添加AI能力还是希望深入理解下一代AI开发范式都能在这里找到清晰的路径和可运行的代码示例。1. 背景与核心概念为什么是插件、MCP与Skills市场在传统的AI应用开发中让大语言模型LLM与外部世界交互是一个复杂的过程。开发者需要为每个外部工具如数据库、API、文件系统编写特定的适配代码处理认证、数据格式转换、错误处理等一系列繁琐问题。这不仅开发效率低也使得AI Agent的能力被禁锢在预设的“围墙花园”里。插件Plugin、MCPModel Context Protocol和Skills市场这一组合正是为了解决上述痛点而生的新一代解决方案。它们共同构建了一个开放、标准化、可扩展的AI能力生态。插件Plugin可以理解为AI Agent的“手”和“眼睛”。一个插件就是一个封装好的功能模块让AI能够执行某个特定任务例如读取文件、执行SQL查询、调用天气API等。用户或开发者通过安装插件来扩展AI的能力。MCPModel Context Protocol这是一个由Anthropic提出的开放协议你可以把它想象成AI世界的“USB标准”。它定义了一套标准化的通信方式让任何符合MCP协议的服务器Server即工具提供方都能被任何支持MCP的客户端Client如Claude Desktop、Cursor、DSH等发现和使用。MCP的核心价值在于解耦和标准化工具开发者只需按照协议实现一次就能在所有兼容客户端上运行。Skills市场Skills Market这是一个集中展示和分发插件或称为Skill的平台。开发者可以将自己开发的、符合MCP协议的插件发布到市场上其他用户则可以像在手机应用商店一样轻松搜索、浏览和安装所需的技能极大地促进了生态的繁荣。DSHDeepSeek Harness桌面端这是一个集大成的AI Agent开发与运行环境。它不仅是一个支持MCP协议的强大客户端更提供了一个图形化的桌面应用界面方便开发者管理插件、编排任务流、调试AI行为。你可以把它看作是一个专为AI Agent设计的“集成开发环境IDE”或“操作系统”。它们之间的关系插件是具体的能力单元MCP协议是它们与AI客户端通信的“世界语”Skills市场是这些能力的“应用商店”而DSH桌面端则是最终运行和调度这一切的“舞台”和“控制台”。2. 环境准备与版本说明在开始实战之前我们需要准备好基础环境。本文将主要以DSH桌面端作为客户端示例因为它对MCP的支持较为完善且提供了图形化界面。核心环境要求操作系统Windows 10/11, macOS 10.15, 或主流Linux发行版如Ubuntu 20.04。本文示例将在Windows和macOS下进行。Node.js环境用于开发和运行MCP服务器建议安装Node.js 18.x LTS或更高版本。这是开发自定义MCP插件的推荐环境。Python环境可选部分插件可能需要建议安装Python 3.8。DSH桌面端我们需要下载并安装DeepSeek Harness的桌面客户端。请访问其官方GitHub仓库或发布页面获取最新版本。本文写作时版本号可能在v0.1.x左右请以实际下载为准。代码编辑器推荐使用VS Code它本身也对MCP有很好的支持通过Cursor或特定插件。版本兼容性说明MCP协议和各个客户端DSH、Claude Desktop、Cursor都处于快速迭代中。本文的示例和配置思路基于当前2024年中的通用实践核心概念不变。如果遇到接口差异请参考对应工具的最新官方文档进行调整。3. MCP协议核心原理与配置拆解理解MCP协议是玩转整个生态的关键。它主要基于JSON-RPC 2.0 over STDIO/SSE通信过程可以简化为以下几步客户端发现服务器客户端通过配置文件或环境变量知道MCP服务器的启动命令。初始化握手客户端启动服务器进程双方交换initialize和initialized消息协商能力。列出可用工具客户端请求tools/list服务器返回它提供的所有工具即插件功能列表。调用工具当用户需要时客户端发送tools/call请求附带参数服务器执行并返回结果。资源管理服务器还可以提供“资源”如文件内容、数据库表结构客户端可以读取(resources/read)或订阅(resources/subscribe)其更新。一个典型的MCP服务器配置用于DSH/Claude DesktopMCP客户端通常需要一个配置文件来声明它要连接的服务器。对于DSH桌面端配置可能集成在UI中但其底层原理一致。// 示例一个自定义的MCP服务器配置 (例如保存在 ~/.config/mcp/servers.json) { “mcpServers”: { “my-calculator”: { “command”: “node”, “args”: [“/path/to/your/mcp-server/calculator/index.js”], “env”: { “API_KEY”: “your_api_key_here” // 可传递环境变量 } }, “sqlite-db”: { “command”: “python”, “args”: [“-m”, “mcp_server_sqlite”], “env”: { “DB_PATH”: “/path/to/database.db” } } } }配置项解释command: 启动服务器所需的命令如node,python。args: 传递给命令的参数通常是服务器脚本的路径。env: 可选的环境变量用于向服务器传递配置信息如API密钥、数据库路径。关键点MCP服务器是一个独立的、常驻的进程。客户端负责管理其生命周期启动、停止、重启。这种设计使得工具开发与AI客户端完全独立。4. 完整实战案例开发一个自定义MCP插件天气查询现在我们从零开始创建一个最简单的MCP插件一个天气查询服务器。我们将使用Node.js来实现。4.1 创建项目结构首先创建一个新的项目目录并初始化。mkdir mcp-weather-server cd mcp-weather-server npm init -y安装必要的MCP开发包。这里我们使用modelcontextprotocol/sdk这是Anthropic官方提供的SDK简化了服务器开发。npm install modelcontextprotocol/sdk同时我们需要一个真实的天气API。这里用axios发起HTTP请求并用dotenv管理API密钥。npm install axios dotenv创建项目文件touch index.js .env .env.example最终目录结构如下mcp-weather-server/ ├── node_modules/ ├── index.js # MCP服务器主文件 ├── .env # 存储敏感配置如API密钥 ├── .env.example # 环境变量示例文件 ├── package.json └── package-lock.json4.2 编写核心MCP服务器代码打开index.js编写以下代码// index.js const { Server } require(‘modelcontextprotocol/sdk/server/index.js’); const { StdioServerTransport } require(‘modelcontextprotocol/sdk/server/stdio.js’); const axios require(‘axios’); require(‘dotenv’).config(); // 加载.env文件中的环境变量 // 1. 初始化MCP服务器 const server new Server( { name: “weather-mcp-server”, version: “0.1.0”, }, { capabilities: { tools: {}, // 声明本服务器提供工具 }, } ); // 2. 定义天气查询工具 // 这个工具将被AI客户端识别和调用 server.setRequestHandler(‘tools/list’, async () { return { tools: [ { name: ‘get_weather’, description: ‘Get the current weather for a given city.’, inputSchema: { type: ‘object’, properties: { city: { type: ‘string’, description: ‘The name of the city, e.g., “Beijing” or “New York”’, }, units: { type: ‘string’, enum: [‘metric’, ‘imperial’], description: ‘Temperature units. metric for Celsius, imperial for Fahrenheit.’, default: ‘metric’, }, }, required: [‘city’], }, }, ], }; }); // 3. 处理工具调用请求 server.setRequestHandler(‘tools/call’, async (request) { const { name, arguments: args } request.params; if (name ! ‘get_weather’) { throw new Error(Unknown tool: ${name}); } const { city, units ‘metric’ } args; const apiKey process.env.WEATHER_API_KEY; // 从环境变量读取密钥 if (!apiKey) { throw new Error(‘WEATHER_API_KEY is not set in environment variables.’); } try { // 调用外部天气API这里以OpenWeatherMap为例 const response await axios.get(‘https://api.openweathermap.org/data/2.5/weather’, { params: { q: city, appid: apiKey, units: units, }, }); const weather response.data; const temp weather.main.temp; const description weather.weather[0].description; const humidity weather.main.humidity; return { content: [ { type: ‘text’, text: The current weather in ${city} is ${description}. Temperature is ${temp}°${units ‘metric’ ? ‘C’ : ‘F’}, humidity is ${humidity}%., }, ], }; } catch (error) { console.error(‘Weather API error:’, error.message); return { content: [ { type: ‘text’, text: Failed to get weather for ${city}. Error: ${error.response?.data?.message || error.message}, }, ], isError: true, }; } }); // 4. 启动服务器使用标准输入输出进行通信 async function main() { const transport new StdioServerTransport(); await server.connect(transport); console.error(‘Weather MCP server running on stdio…’); } main().catch((error) { console.error(‘Server fatal error:’, error); process.exit(1); });4.3 配置环境变量在.env.example文件中说明需要的环境变量# .env.example # 请从 https://openweathermap.org/api 申请免费的API Key WEATHER_API_KEYyour_openweathermap_api_key_here然后将.env.example复制为.env并填入你真实的API密钥。cp .env.example .env # 然后用编辑器打开 .env 文件填入密钥重要安全提示.env文件包含敏感信息务必将其添加到.gitignore文件中避免提交到公开仓库。4.4 在DSH桌面端中配置并运行确保DSH桌面端已安装并运行。配置MCP服务器DSH桌面端通常会在设置或高级选项中有“MCP Servers”的配置界面。你需要添加一个新的服务器配置。名称weather(可自定义)命令node参数/绝对路径/to/your/mcp-weather-server/index.js某些版本DSH可能允许直接选择项目目录或通过图形化方式配置。保存并重启DSH为了使配置生效可能需要重启DSH客户端。验证连接重启后在DSH的聊天界面中你应该能通过提示词使用新功能。例如尝试输入“帮我看看北京的天气。”4.5 运行与验证结果当你在DSH中询问天气时后台会发生以下事件DSH客户端识别出你的意图需要调用外部工具。它查找已配置的MCP服务器发现weather服务器提供了get_weather工具。DSH通过MCP协议向你的Node.js服务器进程发送tools/call请求参数为{“city”: “Beijing”, “units”: “metric”}。你的index.js代码被触发调用OpenWeatherMap API。获取到天气数据后服务器将格式化的结果返回给DSH。DSH将结果呈现给你。预期输出“The current weather in Beijing is clear sky. Temperature is 22°C, humidity is 65%.”至此你已经成功创建并运行了一个自定义的MCP插件并通过DSH桌面端调用它。5. 常见问题与排查思路在开发和集成MCP插件的过程中你可能会遇到以下典型问题。问题现象常见原因解决思路DSH/Cursor中找不到插件工具1. MCP服务器配置错误命令或路径不对。2. 服务器进程启动失败。3. 服务器未正确声明工具tools/list响应错误。1. 检查DSH设置中的服务器配置确保命令和路径正确无误。2. 在终端手动运行服务器命令如node index.js看是否有报错。3. 检查服务器代码中tools/list处理程序是否正确返回了工具定义。调用工具时超时或无响应1. 服务器代码执行缓慢或阻塞如网络请求慢。2. 服务器进程崩溃。3. MCP协议通信错误。1. 在服务器代码中添加日志检查执行到哪一步。2. 确保异步操作如axios请求正确处理了Promise和错误。3. 查看客户端DSH的日志或错误输出。‘dsh’ 不是内部或外部命令系统环境变量PATH中未包含DSH桌面端的安装路径。1. 找到DSH可执行文件的具体位置如C:\Users\YourName\AppData\Local\Programs\dsh\。2. 将该路径添加到系统的PATH环境变量中。3. 或者始终通过桌面快捷方式或开始菜单启动DSH而不是命令行。codex桌面端闪退/DSH启动崩溃1. 软件与操作系统不兼容。2. 缺少运行时依赖如特定VC库。3. 配置文件损坏。1. 确认下载的版本与你的操作系统32/64位匹配。2. 尝试以管理员身份运行或查看应用日志通常在%APPDATA%或~/.config下。3. 尝试重置或删除配置文件先备份让软件重新生成。插件安装后Skills市场不显示1. 插件未正确打包或发布。2. 市场需要时间同步或缓存。3. 插件不符合市场发布规范。1. 参照官方文档检查插件的package.json或清单文件。2. 等待片刻或刷新市场页面。3. 确保插件遵循了正确的MCP协议版本和元数据格式。dify访问mcp返回5031. MCP服务器未启动或端口被占用。2. Dify配置中MCP服务器地址错误。3. 网络策略或防火墙阻止访问。1. 确保MCP服务器进程正在运行并监听在配置的地址和端口上。2. 检查Dify后台的MCP集成配置确保URL、端口正确。3. 使用curl或telnet工具测试是否能从Dify服务器访问到MCP服务器地址。6. 最佳实践与工程建议将MCP插件用于生产环境或团队协作时遵循以下最佳实践可以避免很多坑。1. 插件MCP服务器开发规范清晰的工具定义在tools/list中为每个工具提供准确、详细的name、description和inputSchema。好的描述能极大提升AI调用工具的准确率。健壮的错误处理在tools/call中务必用try...catch包裹核心逻辑并返回格式化的错误信息isError: true而不是让进程崩溃。资源管理与清理如果插件使用了数据库连接、文件句柄等资源要监听客户端的断开信号做好清理工作防止资源泄漏。配置外部化像API密钥、服务地址等配置必须通过环境变量或配置文件传入绝不要硬编码在代码中。添加日志在关键步骤如收到请求、调用API、返回结果添加日志输出到console.error或文件便于调试和监控。2. 安全性考量最小权限原则插件只应拥有完成其功能所需的最小权限。例如一个文件阅读插件不应拥有删除文件的权限。输入验证与消毒对客户端传入的所有参数进行严格的验证和消毒防止注入攻击如SQL注入、命令注入。敏感信息保护如前所述API密钥等必须通过安全的方式管理。考虑使用密钥管理服务KMS或容器秘钥注入。网络隔离对于生产环境的MCP服务器应考虑其网络访问边界避免其访问内部敏感网络。3. 性能与可维护性保持无状态尽可能将MCP服务器设计为无状态的这样便于水平扩展和重启。设置超时对依赖的外部服务调用如HTTP请求、数据库查询设置合理的超时时间避免长时间阻塞。版本化为你的MCP服务器定义版本号并在更新时注意向后兼容性。可以在initialize阶段声明版本。编写文档为你的插件编写清晰的README说明其功能、配置方法、工具参数和常见问题。4. 在DSH桌面端中的使用建议插件分组管理如果安装了多个插件可以在DSH中通过标签或项目进行分组管理保持工作区整洁。利用图形化优势DSH桌面端通常提供对话历史、提示词模板、变量管理等功能与MCP插件结合可以构建复杂的自动化工作流。关注更新MCP生态发展迅速定期更新DSH桌面端和你的自定义插件以获取新特性和安全修复。7. 总结与学习路线通过本文我们系统地探讨了AI Agent开发中的关键基础设施插件、MCP协议、Skills市场以及DSH桌面端。我们从为什么需要这套生态讲起深入理解了MCP作为标准化协议的核心价值并最终通过一个完整的天气查询插件开发案例将理论付诸实践。你现在应该能够清晰解释插件、MCP、Skills市场和DSH各自的作用与关系。在本地环境配置并运行DSH桌面端。使用Node.js和MCP SDK开发一个具备实际功能的自定义插件。在DSH中配置并使用自己开发的插件。排查插件集成过程中的常见问题。下一步可以探索的方向更复杂的插件尝试开发连接数据库SQLite/PostgreSQL、操作文件系统、调用企业内部API的插件。探索Skills市场去官方的Skills市场如腾讯Skills市场逛逛安装一些他人开发的优秀插件学习其设计和实现。集成其他客户端尝试将你开发的MCP插件配置到Claude Desktop、Cursor等其他支持MCP的客户端中体验“一次开发多处运行”。学习Server-Sent Events (SSE)了解MCP中用于资源订阅的SSE传输模式实现实时数据推送如监控日志、股票价格。参与社区关注MCP协议和DSH等项目的GitHub仓库了解最新动态甚至为开源项目贡献代码或插件。AI Agent的开发范式正在从封闭走向开放从定制走向标准化。掌握MCP这一核心协议意味着你掌握了连接AI与万千工具世界的钥匙。希望这篇教程能为你打开这扇门助你在构建智能应用的路上走得更远。如果在实践中遇到新的问题欢迎在社区交流探讨。

相关新闻

无人机航拍水边钓鱼检测数据集 无人机航拍钓鱼检测数据集 无人机溺水检测数据集

无人机航拍水边钓鱼检测数据集 无人机航拍钓鱼检测数据集 无人机溺水检测数据集

航拍水边钓鱼、溺水分割数据集,1533张,yolo,voc,coco标注方式 (标注难度太大,只标注了部分图像) 图像尺寸:1080*1920 类别数量: 4 类 训练集图像:1010; 验证集图像:397; 测试集图像:126 总图像数…

2026/8/21 1:32:20 阅读更多 →
Dify V1.16.1升级指南:智能体平台维护版本部署与验证

Dify V1.16.1升级指南:智能体平台维护版本部署与验证

这次我们来看 Dify 智能体平台,特别是其最新的 V1.16.1 版本更新。对于正在使用或考虑部署 AI 应用、智能体(Agent)和自动化工作流的开发者来说,版本迭代意味着新功能、性能优化和问题修复,直接关系到开发效率和系统稳…

2026/8/21 1:31:20 阅读更多 →
深岩银河存档编辑器入门:三次改坏存档后,我摸清的免费资源自由全流程

深岩银河存档编辑器入门:三次改坏存档后,我摸清的免费资源自由全流程

深岩银河存档编辑器入门:三次改坏存档后,我摸清的免费资源自由全流程 【免费下载链接】DRG-Save-Editor Rock and stone! 项目地址: https://gitcode.com/gh_mirrors/dr/DRG-Save-Editor 如果你玩过《深岩银河》,大概率经历过这样的时…

2026/8/21 1:31:20 阅读更多 →

最新新闻

MA-VLCM:多模态融合如何革新多智能体策略价值评估

MA-VLCM:多模态融合如何革新多智能体策略价值评估

1. 从单智能体到多智能体:价值评估的范式转变在强化学习领域,评估一个策略的好坏,或者说预测一个状态或状态-动作对的长期回报,是核心任务之一。传统的价值函数,无论是状态价值函数V(s)还是动作价值函数Q(s, a)&#x…

2026/8/21 9:03:49 阅读更多 →
网络安全实战:漏洞扫描器对比——Nessus、OpenVAS、Nuclei 实战评测

网络安全实战:漏洞扫描器对比——Nessus、OpenVAS、Nuclei 实战评测

前言:在自动化的浪潮中寻找那把“尺子” 在渗透测试的项目周期里,有一个环节既让人爱,又让人恨,那就是“漏洞扫描”。爱它,是因为它确实能像收割机一样,快速收割掉那些低垂的果实——那些未打补丁的系统、弱…

2026/8/21 9:03:49 阅读更多 →
冒泡排序算法深度解析:从基础实现到优化策略与面试实战

冒泡排序算法深度解析:从基础实现到优化策略与面试实战

1. 项目概述:为什么我们还在聊冒泡排序?在算法面试和日常的编程基础讨论里,冒泡排序(Bubble Sort)大概是那个最常被提起,也最容易被“轻视”的算法。很多刚入门的朋友会觉得:“这不就是个两层循…

2026/8/21 9:03:49 阅读更多 →
开源Winapp2.ini规则库:打造精准免费的Windows系统清理方案

开源Winapp2.ini规则库:打造精准免费的Windows系统清理方案

在 Windows 系统长期使用后,系统盘空间被各种临时文件、缓存和软件残留占用是开发者和管理员经常遇到的痛点。手动清理不仅效率低下,而且容易误删重要文件。虽然市面上有 CCleaner 等知名工具,但其商业版本需要付费,且部分高级功能…

2026/8/21 9:03:49 阅读更多 →
ORB-SLAM3 MLPnPsolver::Refine()

ORB-SLAM3 MLPnPsolver::Refine()

下面是 MLPnPsolver::Refine() 函数的逐行注释,以及背后数学原理与公式说明。 首先理解函数的作用:在RANSAC过程中,当找到一个比较好的模型(内点数超过历史最佳),会用所有内点重新估计一次位姿,以得到更精确的解。这个过程通常叫做“局部优化”或“Refine”。这里用的是…

2026/8/21 9:03:49 阅读更多 →
独立游戏开发中AI工具合规应用与风险规避指南

独立游戏开发中AI工具合规应用与风险规避指南

最近和几个做独立游戏的朋友聊天,发现一个挺有意思的现象:大家聊起AI工具时,态度变得比以前复杂多了。以前是“哪个AI画图强?”“哪个AI写代码快?”,现在更多是“这个AI生成的内容,平台审核能过…

2026/8/21 9:02:49 阅读更多 →

日新闻

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

前言随着国家数字基础设施信创替代、关键技术自主可控战略持续深化,口岸智慧安防、边检智能管控领域正全面进入国产化、自主化、安全可控升级周期。当前国内机场边检旅客识别与定位体系长期依赖国外商用视觉算法、进口成像硬件、闭源通用计算平台,存在核…

2026/8/21 0:00:42 阅读更多 →
别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱当下数字化建设浪潮中,很多项目将三维可视化、视频贴图叠加的数字孪生等同于空间智能。传统数字孪生更多停留在三维场景复刻,擅长把物理世界“画出来、展示出来”,…

2026/8/21 0:00:42 阅读更多 →
105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40C到85C的影像质量一致性——ISP参数温漂补偿与产线标定策略 去年冬天在北方某车厂做A样评审,凌晨四点的黑河试验场,零下三十三度。客户拿了一台冷启动的车,中控屏上倒车影像全是雪花噪点,暗部细节直接糊成一片。我第一反应是sensor温度没上来,暗电流…

2026/8/21 0:00:42 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/21 0:02:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/20 6:11:08 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/20 21:46:49 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/21 0:14:22 阅读更多 →