自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3675)
  • 资源 (23)
  • 收藏
  • 关注

原创 Qmpare-开源:把对比做成基础设施,值不值得花一个下午?

在数据处理和工程实践中,对比是高频且易被重复造轮子的基础操作。其核心原理在于将输入适配、判等规则与差异输出分层解耦,通过统一中间表示和可配置的归一化策略,实现从行级、字段级到块级的灵活对比。这种抽象不仅提升了对比结果的可信度与可复现性,还能广泛应用于数据清洗、配置管理、模型评测和回归测试等场景。Qmpare-开源 正是将对比能力沉淀为可复用基础设施的实践,帮助工程师摆脱一次性脚本的困扰。

2026-11-07 16:53:28 83

原创 MFC 截图工具:GDI 抓屏、全屏遮罩与高 DPI 选区

屏幕截图是桌面软件中高频出现的交互能力,底层通常围绕 GDI 抓屏、虚拟屏幕坐标与 DPI 感知展开。其原理是通过 GetDC 与 BitBlt 将桌面像素拷贝到 DIB 段,再以全屏遮罩承载拖拽选区、八向控制点缩放和放大镜取色。工程价值在于统一物理像素坐标、复用双缓冲绘制并封装 GDI 资源,从而规避多显示器偏移、高 DPI 选区错位、界面闪烁和句柄泄漏。该能力常见于工单反馈、客服标注、教学录屏前置等场景。围绕 MFC 实现截图工具,需要把抓屏、遮罩、选区状态机、放大镜和导出串成完整闭环。

2026-11-07 16:34:28 156

原创 Qt QODBC查询Excel:WHERE嵌套与逻辑表达式实战避坑

在关系型数据查询中,SQL的WHERE条件通过逻辑运算符组合过滤记录,而ODBC可将Excel工作表映射为可查询的数据表。其原理是借助QODBC驱动把工作簿转为QSqlDatabase连接,再用SQL表达式完成多条件筛选;但Excel ISAM并非完整数据库,存在LIKE通配符、日期字面量、空值与三值逻辑、列类型推断等差异。掌握这些边界后,库存流水、报表组合筛选等场景可从多层if判断收敛为可维护的SQL条件,并在Qt工程中结合参数化、内存SQLite或代码层过滤提升稳定性。围绕Qt、QSqlDatabase

2026-11-07 15:48:34 67

原创 从随缘到体系化:代码评审流程设计、工具链与自动化落地指南

代码评审是软件工程质量保障的核心环节,其价值远不止发现缺陷,更在于知识传递与架构设计把关。然而,许多团队的评审流于形式,根源在于缺乏明确标准、责任机制缺失、反馈过慢以及改动规模过大。构建一套可落地的评审体系,需要从流程设计、工具链选型和自动化门禁三个层面协同推进:利用GitLab/GitHub原生能力管理评审流,通过SonarQube、ESLint等静态检查工具和CI流水线设立质量门槛,并结合评审指南、三轮走查法等规范化动作,将“机审+人审”结合,从而提升评审效率与质量问题检出率。这套方法适用于追求工程效率

2026-11-07 15:24:49 128

原创 从剪藏到调取:知识工作者的浏览器插件流水线搭建指南

在数字化办公与信息过载的今天,知识管理已成为个人效率的核心命题。传统收藏夹与单点剪藏工具只解决了信息采集,却忽视了处理、关联与输出,导致资料堆积而无法复用。基于浏览器插件构建一套信息流水线,通过正文提取、Markdown化、高亮批注与本地化存储等原理,将网页内容快速转化为可检索、可关联的知识资产。这类方案尤其适合行业调研、技术写作、资料整理等场景,能够显著降低信息检索成本。围绕插件选型、批注流转、自动化触发与检索策略,深入剖析知识工作插件组合的落地方法,帮助读者构建属于自己的高效知识管理系统。

2026-11-07 14:25:55 53

原创 Sketch插件安装指南:Node环境与sketch-data-faker配置

在前端开发与设计协作中,Node.js作为JavaScript运行时环境,为构建工具提供基础支持。其版本管理直接影响依赖安装与原生模块编译,是工程实践中的常见问题。合理选择LTS版本可避免构建失败,提升开发效率。在Sketch插件生态中,基于JavaScript API的插件依赖Node环境进行构建与打包,进而实现设计稿的智能内容填充。sketch-data-faker插件利用Faker.js生成占位数据,支持130多种类型,适用于原型演示与组件库示例等场景。本文围绕该插件的安装流程,详解环境准备、构建步骤

2026-11-07 14:15:36 57

原创 Open Code Review:从规则引擎到LLM,打造自动化代码评审的完整指南

代码评审是保障软件质量的关键环节,但传统人工评审在注意力带宽、评审者背景差异和隐性知识沉淀方面存在天然局限。随着CI/CD流水线和静态分析工具的发展,自动化代码评审成为提升团队研发效能的重要手段。Open Code Review提出了一套开放的、可配置的评审方案:基于规则引擎兜底、静态分析抓硬伤、大语言模型(LLM)做弱语义标注、人工决策兜底的四层架构。它将机器可判别的机械检查与需要人类判断的业务语义分离,支持接入GitHub/GitLab/Gitea等平台。通过diff解析、增量检查、意见聚类等技术,既压

2026-11-07 13:37:43 9

原创 从靠自觉到靠机制:open-code-review代码评审实践全解析

代码评审是软件工程质量保障的核心环节,但许多团队的PR评审流于形式,评论只有一句“LGTM”,逻辑改动无人问津。这并非工具匮乏,而是流程、标准与安全感共同缺失的结果。一套设计良好的代码评审机制,能通过分支策略、自动化检查、评审清单与数据度量,将“靠自觉”转变为“靠机制”。GitHub Actions等CI工具可先行拦截机械性问题,让人类评审者聚焦架构与逻辑;评审清单则能引导低水平评审者快速进入状态。这套方案适用于3至20人的Git协作团队,从PR拆解、CI配置到复盘机制,均有可落地的实践路径。本文以open

2026-11-07 12:46:19 60

原创 BrowserSkill 实战:为 AI Agent 封装浏览器自动化技能

浏览器自动化长期面临环境配置复杂、元素定位不稳定等痛点,而 AI Agent 虽能理解自然语言意图,却缺乏可靠执行网页操作的能力。BrowserSkill 通过技能接口层、操作执行层与会话管理层三层架构,将点击、输入、提取等动作封装为 Agent 可直接调用的能力单元,底层结合 Playwright 实现自动等待与多层容错定位。该方案适用于 Codex CLI、Claude CLI 等命令行工具接入浏览器能力,也可用于日常重复性网页操作自动化,帮助开发者以渐进方式构建稳定的 Agent 浏览器操作链路。

2026-11-07 12:05:32 59

原创 软件测试入门:理解软件生命周期与开发模型,提升测试策略

软件生命周期是测试介入的时间坐标系,开发模型决定测试节奏。理解需求、设计、编码、测试、维护各阶段的输入输出及其对测试的意义,能帮助测试人员提前介入、精准设计用例。在瀑布、敏捷、V模型等不同开发模型下,测试策略需相应调整,如敏捷强调左移和持续测试。软件质量涵盖功能性、可靠性等多个维度,缺陷管理贯穿始终。掌握这些基础概念和原理,能有效提升测试工作的价值,应用于需求评审、接口测试、回归测试等场景,最终实现测试左移和精准测试。

2026-11-07 11:54:12 92

原创 knowledge-work-plugins:插件化架构实现知识工作自动化

插件化架构是一种将功能解耦为可复用、可组合单元的设计模式,其原理是通过标准化接口和独立部署实现灵活扩展。在知识工作自动化领域,这种架构能显著提升文档处理、信息提取等任务的效率与可维护性。例如,通过组合文档摘要与信息提取插件,可快速构建从网页抓取到报告生成的自动化流水线。knowledge-work-plugins 项目正是这一理念的实践,它提供了一套可版本化的能力单元,帮助知识工作者以低代码方式编排复杂工作流,减少重复劳动。

2026-11-07 11:52:47 54

原创 用BrowserSkill+Playwright MCP,让Agent真正操作浏览器

浏览器自动化是人工智能体落地到真实业务场景时必须跨越的一道门槛。大模型擅长生成操作指令,却难以稳定感知动态页面中的真实状态。围绕MCP(模型上下文协议)构建的标准化工具层,将浏览器能力抽象为可调用的服务,使模型能够基于结构化上下文进行决策与反馈。Playwright MCP提供了原子化的浏览器操作接口,而BrowserSkill则在此基础上封装出面向任务的技能组合与错误恢复策略,三者协同,为Agent装配上“看得见、点得准”的双手。从简单的信息检索到复杂的表单填写与数据导出,这套链路在工程实践中展现出远高于

2026-11-07 11:24:50 50

原创 代码审查如何不走过场?open-code-review工程实践指南

代码审查(Code Review)是保障代码质量的关键实践,却常因流程冗长而流于形式。其本质并非找茬,而是控制正确性、可维护性和架构一致性三类风险。借助自动化工具链,比如提交前钩子、CI门禁、静态扫描和机器人辅助评审,团队能将重复检查交给机器,让人专注于设计决策与业务逻辑。该模式适用于分布式团队、微服务协作以及任何依赖持续集成的工程环境。本文以 open-code-review 项目为例,展示如何通过标准化 PR 模板、评审清单和流程状态机,让代码审查从走过场走向真正的工程实践。

2026-11-07 11:08:34 51

原创 代码评审工程化:open-code-review的规则引擎与上下文分析实践

代码评审作为保障软件质量的关键环节,往往依赖个人经验,效率与一致性难以保证。规则引擎与上下文分析技术的结合,为自动化代码评审提供了新思路。通过将评审经验固化为可执行的规则,利用AST节点匹配、调用链索引与跨文件关联,系统能够识别linter遗漏的设计与兼容性问题。风险打分模型将评审意见量化,辅助团队聚焦高优先级文件。结合CI/CD流程,借助Webhook触发增量分析,并在PR/MR页面生成聚合评论,形成反馈闭环。开源项目open-code-review正是基于这一设计理念,以规则引擎为核心,构建了从采集、分

2026-11-07 10:51:33 61

原创 VS2010精简版部署指南:环境核对、编译链配置与避坑排查

在嵌入式开发和遗留系统维护中,常需在低配置机器上搭建轻量级编译环境。VS2010精简版通过移除冗余组件,保留核心C++/C#编译调试能力,实现解压即用。其原理是提取完整版关键文件并依赖系统运行库,因此部署前需确认系统位数、.NET Framework版本及VC++运行库。正确配置环境变量和项目路径后,可显著提升老项目编译效率。该方案适用于工控机、隔离环境等资源受限场景,帮助开发者快速恢复老旧项目的编译调试能力。本文详细记录了VS2010精简版的部署流程与常见问题解决方案。

2026-11-07 10:41:50 43

原创 BrowserSkill 实战:让 CLI 与 AI Agent 直接操控浏览器

浏览器自动化通常依赖 Playwright 或 Puppeteer 等底层框架,通过选择器与页面交互,但面对动态页面和 AI Agent 场景时维护成本较高。BrowserSkill 将浏览器操作抽象为标准化技能单元,经由 Chrome DevTools Protocol 与浏览器通信,无需安装 Chrome 插件即可实现打开页面、填表单、提取数据等动作。这种能力层让 codex cli、claude cli 等命令行 AI 工具具备上网能力,适用于数据采集、自动化测试和智能工作流编排,为 Agent 提供

2026-11-07 10:03:55 23

原创 SQL Developer 18.4闪退排查:JDK 8配置与Oracle连接避坑

Java桌面工具的运行依赖常被忽视:启动器需要匹配的JVM,class文件版本与模块可用性决定程序能否正常加载。以SQL Developer为例,x64压缩包若未内置运行时,JDK 11无法替代JDK 8,javax.xml.bind等模块移除会导致启动阶段静默退出;通过SetJavaHome写死JDK根目录、命令行启动捕获早期日志,可快速定位闪退。技术价值在于把版本兼容、路径权限与启动参数变成可验证项。应用在Oracle数据库开发、连接串配置、JDBC驱动管理与NLS_LANG字符集对齐场景中,能减少OR

2026-11-07 09:55:55 187

原创 BrowserSkill:将浏览器自动化封装为可复用技能,无缝集成AI Agent与CLI

浏览器自动化是AI Agent与CLI工具的关键能力,但传统方案复用性差、环境依赖强。BrowserSkill通过技能抽象层,将页面导航、点击、表单填写等操作封装为标准化技能接口,底层引擎可插拔(Playwright/CDP/Puppeteer),支持CLI调用与Agent技能发现。其技术价值在于提升自动化流程的复用性与灵活性,适用于数据采集、自动化测试及AI Agent浏览器操作等场景。本文深入解析BrowserSkill的架构设计、CLI接入、Agent集成及性能优化实践,帮助开发者快速掌握这一轻量级浏

2026-11-07 09:29:53 68

原创 knowledge-work-plugins 插件体系解析:Claude Code 知识工作流实战

提示词工程正在从一次性对话技巧演变为可版本管理、可复用的工程资产。knowledge-work-plugins 通过 slash commands 与 skills 的分层设计,将文档解析、结构化提取、格式转换等重复性知识工作固化为可插拔的执行单元,解决了传统提示词模板输出格式不稳定、无法回滚、难以团队共享的痛点。这种配置驱动的插件化方案,让非结构化文本处理、会议纪要整理、竞品调研等场景实现了流水线自动化,同时支持团队成员拉取同一套流程,统一输出格式,降低沟通成本。

2026-11-06 15:56:56 224

原创 BrowserSkill 实战:AI agent 浏览器自动化技能封装与 Playwright MCP 选型对比

浏览器自动化是 AI agent 落地的重要环节,其核心原理是通过结构化指令驱动浏览器完成页面操作。在工程实践中,任务导向的自动化比精细控制更易维护,能显著降低 agent 使用门槛。BrowserSkill 以 CLI 形式封装浏览器操作技能,内置选择器策略、等待重试与结构化输出,让 agent 通过意图描述即可完成打开页面、点击、填表、抓取等高频任务。相比 Playwright MCP 的 API 级映射,它更适合任务边界清晰、步骤固定的场景,如定时报表导出、页面可用性检查与信息检索汇总。

2026-11-06 15:39:09 246

原创 BrowserSkill 实战:如何让 AI Agent 稳定操作浏览器

浏览器自动化是 AI Agent 落地的重要能力,但直接让模型生成 Playwright 脚本往往面临选择器失效、状态丢失、Token 消耗过高等问题。BrowserSkill 通过将浏览器操作抽象为可复用的原子动作与语义技能,在 Agent 与浏览器之间建立稳定抽象层,实现会话管理、多级元素定位与失败重试。在 CLI 形态下,它可被 Codex CLI、Claude CLI 等工具集成,适用于报表拉取、数据同步等固定流程场景,兼顾稳定性与灵活性。

2026-11-06 15:33:45 264

原创 Ghidra 9.0.2实战指南:ARM64固件/Java字节码/Windows驱动三端逆向

逆向分析是安全研究与底层系统理解的核心能力,其本质是将二进制程序还原为可读、可推理的高层语义。Ghidra作为开源逆向平台,依托统一中间表示(PCode)和跨架构分析引擎,突破传统工具对x86或单一语言的依赖,真正支持ARM64固件、Java字节码、Windows驱动等异构目标的语义贯通分析。其技术价值在于可追溯的反编译过程、可扩展的SLEIGH指令定义能力,以及面向工程落地的类型管理与脚本自动化体系。广泛应用于IoT固件安全审计、老旧Java系统逻辑还原、工控驱动行为分析等场景。本文聚焦Ghidra 9.

2026-11-06 15:25:15 203

原创 PMD规则文件详解:Java代码质量的可执行宪法

静态代码分析是保障Java工程健壮性的基础能力,其核心在于将模糊的编码规范转化为机器可识别、可执行的检查逻辑。PMD作为主流AST级分析工具,依赖结构化规则文件实现语义层缺陷检测,如空catch块、资源未关闭、硬编码敏感信息等。相比Checkstyle侧重格式、SonarQube依赖云端上下文,PMD规则文件以XML声明式语法+XPath精准匹配,具备高可读性、易版本化、跨环境一致等工程优势。它深度嵌入IDE实时提示、Git提交钩子、CI构建阻断与扫描平台报告全链路,成为团队技术共识落地的关键载体。本文聚焦

2026-11-06 15:19:34 285

原创 OpenSpec规格驱动开发:从接口契约到自动化工作流实践

在API开发与微服务架构中,接口契约与数据模型的一致性直接影响协作效率。规格驱动开发通过结构化、机器可读的规格文件(如OpenAPI、JSON Schema)定义接口与数据结构,实现单一事实来源,从而自动生成类型定义、Mock数据与接口文档。其技术价值在于减少跨角色沟通成本、支持契约先行与并行开发,广泛应用于前后端协作、测试用例生成及存量项目改造。OpenSpec作为规格驱动开发的实践框架,帮助团队将口头约定收敛为可校验的规格,显著降低联调返工。

2026-11-06 13:54:37 216

原创 BrowserSkill 浏览器自动化:AI Agent 如何像人一样操作网页

浏览器自动化正从 DOM 选择器驱动转向 AI Agent 意图驱动。其核心原理是将页面可访问性树与视觉截图结合,让大模型理解页面语义结构,再通过 Playwright 等底层引擎执行点击、填表、提取等操作。这种技能封装方式显著降低了自动化门槛,使 Agent 能处理动态渲染、懒加载等复杂页面。典型应用覆盖自动登录、数据采集、表单提交与自动化测试。BrowserSkill 正是这一思路的落地实践,配合 codex cli、claude cli 等工具,开发者可用自然语言快速构建可靠的浏览器操作流程。

2026-11-06 13:51:21 207

原创 BrowserSkill 实战:用 CLI 为 AI Agent 构建浏览器自动化能力

浏览器自动化技术已从 Playwright、Puppeteer 等脚本库演进到面向 AI Agent 的语义化工具层。其核心原理是将页面可交互元素提取为结构化快照,并通过语义定位替代脆弱选择器,从而降低 Agent 决策噪声。CLI 形态凭借进程隔离、接口稳定和易组合等特性,成为连接 AI Agent 与浏览器操作的关键桥梁。在需要定制化、可调试和与现有 Agent 框架集成的场景中,BrowserSkill 类工具展现出独特价值。本文围绕 bsk 命令行入口,系统讲解从环境搭建、快照获取到 Agent 循

2026-11-06 13:41:16 210

原创 BrowserSkill 深度解析:给 AI Agent 装一双手的浏览器自动化实践

浏览器自动化是让程序模拟人在网页上点击、输入、提取信息的技术,其核心原理是通过驱动浏览器内核执行 DOM 操作与事件模拟。在 AI Agent 场景下,传统 Playwright 等框架需要模型理解选择器与页面结构,而 BrowserSkill 将操作封装为语义化技能,让 Agent 以自然语言指令完成感知与行动。这种分层设计显著降低了 Agent 操作网页的门槛,适用于信息采集、表单提交、多步导航等任务。本文围绕 BrowserSkill 与 agent browser、Playwright MCP 的选

2026-11-06 13:31:51 218

原创 BrowserSkill实战:让AI代理真正操控浏览器的技能封装与MCP集成

浏览器自动化正从固定脚本走向AI驱动的智能操作。大模型虽然能理解网页内容,却缺乏执行点击、输入等操作的能力,这促使开发者将浏览器能力封装为可供AI调用的工具。MCP协议作为模型与外部系统间的标准化桥梁,让AI可以统一调用底层自动化框架,如Playwright。而BrowserSkill正是在这一基础上构建的技能包,它将原子操作编排为任务级技能,使AI代理能够自主完成搜索、填表、数据提取等复杂流程。这种“模型决策+技能执行”的架构,兼顾了灵活性与稳定性,在RPA、端到端测试、数据监控等场景中展现出实用价值。A

2026-11-06 13:18:11 180

原创 BrowserSkill实战:用MCP与Playwright让AI Agent真正操控浏览器

AI Agent 的发展让大模型不再局限于文本生成,但如何让模型“动手”操作真实网页,仍是工程落地的关键瓶颈。浏览器自动化通常依赖固定的RPA脚本或传统插件,难以应对动态页面与复杂决策场景。MCP(模型上下文协议)的出现,为AI与外部工具之间建立了标准化通信管道,而Playwright则提供了跨浏览器的底层操控能力。两者结合,催生了BrowserSkill这样的技能库——它将浏览器操作封装为AI可调用的结构化工具,使大模型能够按意图执行导航、点击、填表、数据提取等任务。这种模式不仅降低了自动化开发门槛,也在

2026-11-06 13:09:52 176

原创 OpenSpec:让OpenAPI规范真正可执行的契约协议

OpenAPI规范是现代API协作的基础标准,但传统工具仅将其用作文档生成或静态校验,难以贯穿开发、测试与运行全生命周期。OpenSpec作为一套可执行的接口契约协议,将YAML/JSON格式的OpenAPI定义转化为具备限流、鉴权、重试、Mock等能力的运行时逻辑,实现‘规范即代码’。它通过解析x-*扩展字段动态注入HTTP行为,支持TypeScript类型生成、运行时请求验证与轻量API代理,显著提升前后端契约一致性与AI编码助手的推理精度。适用于微服务治理、SaaS集成、银行风控等强契约场景。

2026-11-06 12:50:49 286

原创 Octop:轻量级进程管理工具,依赖感知启动与日志聚合实践

进程管理是后端开发和运维中的基础需求,涉及进程生命周期、依赖顺序、日志聚合等核心概念。传统方案如 systemd 或 supervisord 往往配置复杂,而轻量级工具通过声明式配置和状态检测实现依赖感知启动,提升开发效率。在本地开发、边缘计算和容器化场景中,这类工具能显著降低复杂度。Octop 作为单二进制进程管家,支持端口、文件、命令三种依赖条件,并内置健康检查与指数退避重启策略,适合管理有启动顺序要求的多个进程。

2026-11-06 12:39:10 283

原创 VS2017预编译GDAL包实战:从配置到避坑的完整指南

GDAL是GIS开发中处理栅格与矢量数据的核心库,其原理是通过统一抽象层读写多种地理数据格式。在Windows上从源码编译GDAL常因依赖复杂而失败,预编译二进制包能显著降低集成门槛。技术价值在于快速获得数据读写、坐标转换与格式互操作能力,应用场景包括GIS桌面端、空间数据服务与遥感处理。本文围绕VS2017预编译GDAL包,详解运行库匹配、ABI兼容与工程配置,并分享链接错误、坐标转换偏移等常见问题的排查经验,帮助开发者高效集成GDAL。

2026-11-06 12:22:13 243

原创 OpenSpec:Spec-driven 开发范式与契约驱动工作流

API 契约(Spec)是现代前后端协作的核心基础设施,其本质是定义接口行为、数据结构与约束条件的可执行协议。基于 OpenAPI 等标准,Spec-driven 开发通过将文档升格为可验证、可生成、可测试的活契约,从根本上解决文档失真、Mock 脱节、测试滞后等工程顽疾。OpenSpec 作为该范式的代表性实现,提供零配置 CLI、增量热重载、语义化错误提示与插件化扩展能力,使契约真正成为类型生成、Mock 服务、自动化测试与 CI 门禁的统一源头。它不替代开发,而是为整个前端工程化注入确定性——尤其在多

2026-11-06 12:05:24 245

原创 拆解 MFC DataGrid:COM 数据绑定、VARIANT 与显示格式化

表格控件数据绑定,是把数据源记录集映射为可视化表格的通用机制。其原理建立在 COM 自动化接口之上:包装类通过接口代理调用属性与方法,VARIANT 承担多类型参数传递,OLE DB/ADO 行集元数据决定列头、列类型与默认对齐,连接点则负责把表头点击等事件回传。技术价值在于把数据源、列定义与显示格式化分离,降低跨数据源复用和界面解耦成本。典型场景包括 MFC 对话框中的 ADO 记录集展示、列宽与数字格式设置、表头排序及查询后重新绑定。围绕 MFC DataGrid 的 SetRefDataSource

2026-11-06 11:54:37 271

原创 杀戮尖塔Mod开发入门:从环境搭建到事件监听实战

Maven作为Java项目构建工具,通过依赖管理和生命周期插件实现自动化构建。在游戏Mod开发中,常需引入本地jar包并配置打包复制流程。Mod加载器机制允许通过订阅接口监听游戏事件,实现功能扩展。这种模式在《杀戮尖塔》Mod开发中尤为典型,需配置ModTheSpire、BaseMod等依赖,并实现PostDrawSubscriber等监听接口。本文以实战角度,详解从Maven环境配置、pom.xml编写到事件监听函数实现的完整链路,帮助开发者快速构建可运行的Mod骨架。

2026-11-06 11:54:05 169

原创 OpenSpec 规格驱动开发实战:从契约到代码的工程化落地

在多人协作的软件项目中,接口定义与数据模型常散落在文档、代码和口头约定中,导致联调时频繁出现字段类型不匹配、命名冲突和版本兼容性问题。规格驱动开发通过将需求与接口约定收敛为可版本化、可校验的结构化契约,实现单一事实来源,让代码、测试和文档围绕同一份规格自动生成与验证。这种工程化方法能显著减少沟通成本与返工,尤其适用于微服务架构下的前后端分离开发、接口 Mock 服务以及持续集成流程。OpenSpec 正是围绕这一理念构建的工具链与方法论,帮助团队把模糊约定升级为机器可读的契约,从而提升协作效率与交付质量。

2026-11-06 11:48:50 194

原创 从代码评审到自动审查:构建可自托管的规则引擎辅助系统

代码审查是保障软件质量的核心环节,但面对日益庞大的代码库和频繁的Pull Request,人工评审常陷入机械性检查的泥沼。如何让机器先完成那些重复、明确的规范性审查,将技术评审者的精力释放到架构设计与逻辑判断上,成为工程效能提升的关键。基于规则引擎与语义分析技术,我们可以构建一套自动化代码审查辅助系统。它通过解析Git历史变更,结合可编程的自定义审查规则,在Webhook与机器人的协作下,将审查意见精准回写到代码托管平台。这种设计不仅实现了GitLab等平台上的闭环反馈,也提供了自托管方案以保障数据主权。其

2026-11-06 11:08:45 315

原创 BrowserSkill:让AI Agent真正掌控浏览器的技能引擎

浏览器自动化技术正从脚本驱动迈向AI驱动,传统工具与框架难以应对复杂页面下的自主决策需求。BrowserSkill是一套面向AI Agent的浏览器操作技能封装,它通过结构化信息提取与视觉感知让大模型理解网页,将原子操作、智能等待与状态反馈闭环封装为可复用、可编排的技能模块,解决了大模型“看得到却操作不了”的痛点。这一方案可广泛应用于AI Agent产品开发、跨站数据采集、复杂表单处理及UI自动化新范式探索,并为开发者提供了一套可靠、可扩展的浏览器控制底座。与Playwright MCP、Agent Bro

2026-11-06 10:15:27 218

原创 BrowserSkill 深度解析:让 AI Agent 像人一样用浏览器

浏览器自动化技术通过脚本驱动浏览器完成确定性任务,但面对动态页面和分支流程时,传统方案往往失效。其核心原理是将底层操作封装为语义化技能,降低 AI Agent 的推理负担,提升任务成功率。这种技能级抽象在自动填表、信息采集、流程测试等场景中价值显著,尤其适合需要临场判断的重复性流程。BrowserSkill 正是这一思路的实践,它通过 CLI 暴露技能,让 Agent 以自然语言驱动浏览器,并与 Playwright MCP、Agent Browser 形成定位差异。

2026-11-06 10:03:54 245

原创 knowledge-work-plugins 插件化实战:用 slash commands 和 skills 沉淀知识工作能力

在 Claude Code 等 AI 编程助手中,提示词工程正从零散编写走向工程化复用。其核心原理是将高频任务封装为可参数化、可版本管理的技能单元,通过确定性入口触发,从而降低认知负荷、提升输出稳定性。这种插件化思路的技术价值在于把最佳实践固化下来,让知识工作从依赖个人临场发挥转向可复用的能力资产。典型应用场景包括会议纪要整理、文档结构化、周报生成等重复性任务。knowledge-work-plugins 正是这一思路的参考实现,通过 slash commands 和 skills 的分层设计,为团队搭建私

2026-11-06 09:57:00 226

React+ES6完整入门基础与项目实战+赠送仿京东电商网站

课程概述:React是目前最火的前端框架之一,就业薪资很高,本课程教您如何快速学会React并应用到实战,教你如何解决内存泄漏,常用UI库的使用,自己封装组件,正式上线白屏问题,性能优化等。对正在工作当中或打算学习React高薪就业的你来说,那么这门课程便是你手中的葵花宝典。学习技巧:学习当中不要只看,一定要多敲代码,如果碰到某一个知识点不是很明白,不要钻牛角尖,千万不要因为一个点,放弃整个森林,接着往下学,硬着头皮开发项目只要能亲自开发一个完整的项目,你会发现不明白的地方自然而然就明白了,项目做出来就真正的学会了。此react课程以面试和实战为基础进行讲解,每个知识点都会让你知道在实际项目开发中如何使用,学习后,可以开发大型项目,增强逻辑思维,至少让你拥有3年以上开发经验的实力!免费提供《完整实战项目接口文档》,绝对可用!

2021-06-16

ASP.NET毕业设计实战之资产管理系统

本题且课程将一步步帮你完成基于ASP.NET固定资产管理系统设计开发实战的全过程。 本课程完整记录基于ASP.NET固定资产管理毕业设计的制作过程,帮助大学生学习毕业设计系统的实现过程。本课程为ASP.NET毕业设计的设计全过程录像辅导,固定资产管理系统毕业设计基于ASP.NET,开发环境为Visual Studio 2015和SQL Server 2014设计完成,系统主能够实现用户权限的动态分配,系统主要包括部门管理、用户管理、固定资产管理、固定资产折旧管理、固定资产借出管理、固定资产报修管理、固定资产统计管理和固定资产报废管理八个模块ASP.NET固定资产管理系统源码在课程的最后章节中 如没有或需要最新源码请联系讲师 该课程为成品讲解,不提供免费讲解、答疑和功能完善等,需要可付费。基于ASP.NET固定资产管理系统毕业设计的主要优势有以下几个方面:1、学习难度低,满足大多数应届毕业生和对编程了解程度较低人群的学习要求。2、界面友好性强,使用最新前端模板进行后台管理员界面设计。3、系统功能和工作量大,满足大多数院校的毕业设计要求4、实现固定资产业务和流程的管理5、实现多图表统计。6

2021-06-17

微信小程序获取用户手机号码(后台asp版)

前端微信小程序获取code,后台使用asp获取session_key和openid;然后结合iv和encryptedData解密出微信用户手机号码【操作步骤】第1步:wx.login获取code第2步:传递code到服务器,获取session_key和openid第3步:参考官方文档getPhoneNumber,获取iv和encryptedData第4步:解密返回数据,获取手机号码

2021-06-17

二十天精通Matlab神经网络和优化算法

建议按照课程顺序学习,帮助大家更好的掌握该领域的应用和知识,并在实战编程中深入学习和开展研究。相信经过努力学习和反复实践,可以取得收获。

2021-06-14

Springboot+MyBatis企业级RESTful API开发项目实战/java视频教程

课程简介 这是一门使用Java语言,SpringBoot框架,从0开发一个RESTful API应用,接近企业级的项目(我的云音乐),课程包含了基础内容,高级内容,项目封装,项目重构等知识,99%代码为手写;因为这是项目课程;所以不会深入到源码讲解某个知识点,以及原理,但会粗略的讲解下基础原理;主要是讲解如何使用系统功能,流行的第三方框架,第三方服务,完成接近企业级项目,目的是让大家,学到真正的企业级项目开发技术。 适用人群 刚刚毕业的学生 想提高职场竞争力 想学从零开发SpringBoot项目 想提升SpringBoot项目开发技术 想学习SpringBoot项目架构技术 想学习企业级项目开发技术 就是想学习SpringBoot开发 能学到什么 从0开发一个类似企业级项目 学会能做出市面上90%通用API 快速增加1到2年实际开发经验 刚毕业学完后能找到满意的工作 已经工作学完后最高涨薪30% 课程信息 全课程目前是82章,155小时,每节视频都经过精心剪辑。 在线学习分辨率最高1080P 课程知识点 1~11章:学习方法,项目架构,编码规范,Postman使用方法,Git和Gith

2021-06-18

Java多线程精讲上

本课程是《零基础学Java》系列课程中的"多线程"相关课程.授课形式延续了之前课程的授课风格。内容细腻、详尽,由浅入深!通过本门课程的学习你可以深刻理解Java多线程的原理及实现运行机制,深刻学习多线程的生命周期、调度、控制等内容。 本门课程(多线程精讲上)涵盖内容如下:线程概述l  多线程的实现方案(2种)l  线程的生命周期l  线程的调度l  线程的控制l  多线程的相关练习(卖票)

2021-06-22

uni-app实战课:公司移动站界面设计实战 uniapp在线视频课程

讲解如何在uni-app中制作一个完整的公司移动界面。主要用到了uni-app常用的空间,普通的css语法,flex的布局。

2021-06-20

Java进阶高手课-Spring精讲精练

课程聚焦Java性能调优的核心知识点,以真实场景项目实战为导向,循序渐进,深入浅出的了解Java网络编程,讲解Java这门使用广泛的编程语言,助你能够游刃有余地游走在这些技术之中。 

2021-06-20

JQuery实战讲解课程

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互

2021-06-13

简单粗暴学习数据结构与算法——JS版(一)

用最轻捷的Javascript脚本 最朴素直白的程序用语 直接了当的企业面试题 抽丝剥茧 系统学习数据结构与算法 解决编程最基本的问题

2021-06-13

Java学习指南(Swing高级篇)

☆ Java程序员居家旅行必备课程 ☆Java学习指南系列的第4篇,介绍基于Java Swing的的高级应用技术。本篇的前一篇是Swing入门篇。Swing系列教程分为两篇:(1) Swing入门篇 (2) Swing高级篇。本篇内容至少包含:- 高级绘制技术,包含线型、渐变色、文本的精确绘制- 不规则形状及图表的绘制- 工作线程与界面线程的原理- 短任务、长任务、定时任务的应用举例- 弹出式窗口 Popup的使用方法- 短消息提示 Toaster 的设计与使用- 事件处理机制,鼠标键盘事件处理,以及一个基于键盘操作的“推箱子”游戏 - 多行文本的显示- 图片操作:缩放、剪裁、旋转、镜像,以及一个屏幕截图程序的实例- 管理型应用界面的框架- 向导型应用界面的框架- 文档型应用界面的框架- 拖放支持 Drag & Drop,一个可拖拽排序的列表,以及一个拼图游戏的实现* 课程特色 *轻快 - 采用小章节教学,学起来轻松实用 - 以实际工程需要出发来设计课程有趣 - 穿插大量特效实例,增加趣味性和学员的成就感专业 - 课程中采用的代码库,就是经过良好封装的成熟的库本篇穿插多个实例,通过实例

2021-06-13

从技术到管理,你必须迈过的9道坎

从技术转管理总会有许多困惑,本次分享从常见的9个“坑”作为切入点,讲解技术管理的“心法”和“招式”,帮助听众快速建立技术管理的全局视图。

2021-06-15

sharding-jdbc架构介绍与源码分析

快速掌握使用shardingjdbc框架,shardingjdbc是目前国内最热门的分库分表框架,更是大型高并发网络公司的技术架构?

2021-06-13

springdata jpa

详细讲解SpringData JPA的应用。本套课程是基于SpringBoot讲解,因此需要具备基本的SpringBoot使用。

2021-06-16

通俗易懂的Java9新特性教程(含配套资料)

本教程为授权出品教程 本套《Java9新特性》视频涵盖oracle公司2017年9月公布的java 9 新特性的核心内容。 主要包含:模块化系统,REPL工具:jshell命令,多版本兼容jar包,语法的新变化:接口私有方法、异常处理、钻石操作符、String存储结构变化等,新增API:Stream、List、Set、图像处理等。可以说java 9 的更新是一个大的工程。

2021-06-14

Spring boot权限管理系统/零基础/Layui

本套课程采用maven+idea开发 技术选型 spring boot mybatis layui  使用 layui table tree 和树形表格搭建漂亮的后台权限管理系统 易上手可以快速学习 适合找个项目练手的同学

2021-06-14

集成学习

讲解个体与集成、Boosting、Bagging、随机森林等知识

2021-06-12

Excel数据管理系列课程Execl排序与分类汇总

要使制作或设计的工作表更加具有可读和容易分析,可以通过一些常用的管理来实现,包括排序、分类汇总和筛选等。本课程将介绍相关的知识和技巧。

2021-06-12

devops之k8s持续部署

本课程需要有一定的kubernet及docker基础,主要讲解了基于 kubernetes 集群架构,Jenkins如何在其集群上,通过管道实现构建 –> 功能测试 -> 发布版本 -> 生成部署 -> 产品测试 -> 清理管道垃圾 。整个过程穿插使用 docker仓库(Harbor)和 Helm 仓库(ChartMuseum),让环境更加贴近企业环境使用。

2021-06-11

ARM裸机1期加强版(linux)

1、 现场编写调试 2、假设学员0基础: 只会简单C语言 3、ARM裸板为主线,硬件知识,c语言为辅线,4、Linux命令,ARM硬件、汇编,重定位,链接脚本,gcc、Makefile 5、全新软件以及ubuntu系统

2021-06-09

中文编程完整软件实例编程解析之工程设计流水管理系统

通过对完整软件实例(工程设计流水管理系统)编程讲解,让学员熟悉完整软件布局架构及开发思路。比如从界面布局、登录验证、软件注册程序、到软件发布等知识点,贯穿知识点间联系,提升编程整合能力。

2021-06-10

C++语言基础到进阶

《从c语言入门到c++使用高手》套餐地址链接:https://edu.youkuaiyun.com/combo/detail/1046 《从C语言入门到c++网络通讯架构师》套餐地址链接:https://edu.youkuaiyun.com/combo/detail/1165

2021-06-10

CentOS7系统管理

此课程通过CentOS 7 64系统,讲解了CentOS 7的简介与安装,初步使用,基本命令,vi编辑器,磁盘与文件系统,多用户多任务,软件安装,系统备份,shell讲解,网络基础,常用网络服务器架设。

2021-06-09

Unipush1.0开通后设备收不到推送,常见原因有哪些?

2026-11-08

uniapp中page.json如何配置页面导航栏颜色和文字?

2026-11-08

mysqld --initialize --console 报错:找不到 data 目录或权限不足

2026-11-08

Ubuntu下用unzip解压带密码的ZIP文件为何提示“invalid password”?

2026-11-08

Map 删除元素时为何会出现 ConcurrentModificationException?

2026-11-08

Tomstone日志中“signal 11 (SIGSEGV)”如何定位崩溃的JNI代码行?

2026-11-08

TeXstudio中如何设置文档全局字体及字号?

2026-11-08

Kafka中log.retention.hours配置失效,数据为何仍被自动删除?

2026-11-08

Java连接Redis启用SSL和认证时,如何正确配置Jedis/Lettuce的SSL参数与身份验证?

2026-11-08

Java读取Excel时如何高效实现多条件动态查询?

2026-11-08

IDEA启动后卡在项目选择界面,无法加载最近项目列表

2026-11-08

SolidWorks装配体中零件显示“固定”状态,如何解除固定?

2026-11-08

shell中`if [ $a -ge $b ]`为何报错“integer expression expected”?

2026-11-08

SAP中查看公司描述(如公司名称、地址)应查哪个透明表?

2026-11-08

Fiji中ImageJ宏无法正确加载多通道TIFF图像?

2026-11-08

refpropm.m调用时提示“未找到REFPROP DLL”如何解决?

2026-11-08

useEffect 和 useMemo 的核心区别是什么?

2026-11-08

Docker版OnlyOffice文档服务器默认文件存储路径是哪里?

2026-11-08

Python环境搭建到底需要装几个核心软件?

2026-11-08

CentOS Linux安装JDK 1.8后java -version仍显示OpenJDK,如何彻底替换?

2026-11-08

CAD2024替换补丁安装后命令失效或界面异常如何解决?

2026-11-08

Avalonia中如何安全读取并热更新JSON配置文件?

2026-11-08

Ant Design Progress 组件如何自定义颜色和轨道样式?

2026-11-08

PADS专业版打不开标准版PCB文件?如何正确导入兼容?

2026-11-08

如何用命令行强制终止占用特定端口的Windows进程?

2026-11-08

OpenCV 4.12 CUDA加速模块在CUDA 12.6 + cuDNN环境下编译失败?

2026-11-08

Office Online打开文档提示“文件已损坏”如何解决?

2026-11-08

Shaka播放器如何实现纯音频DASH/HLS流的自适应播放?

2026-11-08

SAP InfoRecord中如何查看创建日期和时间?

2026-11-08

OBS Studio无法识别或启用摄像头怎么办?

2026-11-08

MSVC 14.0(VS2015)对C++11/14标准支持不完整,常见哪些特性不可用?

2026-11-08

如何提升小样本场景下ML模型的泛化能力?

2026-11-08

IMS会话建立时主叫SIP INVITE为何被P-CSCF拒绝?

2026-11-08

GC.MarkDependencies 在 Unity 中为何导致主线程卡顿?

2026-11-08

ESP32-4G模块无法注册到蜂窝网络,常见原因有哪些?

2026-11-08

Linux烧录时SD卡识别失败,如何排查udev规则与设备节点问题?

2026-11-08

Claude登录时浏览器未自动打开,如何手动使用URL登录?

2026-11-08

KVStore全量持久化时如何保证数据一致性与性能平衡?

2026-11-07

KEPServerEX配置OPC UA服务器后无法添加标签,常见原因有哪些?

2026-11-07

鸿蒙用户首选项数据跨设备同步失败如何排查?

2026-11-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除