Archives
All the articles I've archived.
-
工具指南19-在线CSS渐变生成器
CSS渐变是现代Web设计的基础能力,但手写渐变代码效率低且难以调试。本文介绍如何用在线CSS渐变生成器快速创建线性渐变、径向渐变和锥形渐变,并深入讲解渐变的技术原理和实战技巧。
-
Flash-MoE:在 MacBook 上跑 397B 参数大模型,4.4 token/s
一个开发者用 24 小时写出了 Flash-MoE,在 48GB MacBook Pro 上以 4.4 token/s 运行 397B 参数的 Qwen3.5 模型。只用约 6GB 内存,不需要云端 GPU。拆解它的技术原理:SSD 流式加载、Metal 着色器优化、MoE 稀疏激活。
-
工具指南18-在线OCR文字识别工具
深入解析浏览器端 OCR 文字识别的实现原理,对比主流方案,并介绍一款完全本地运行、无需上传图片的在线 OCR 工具。
-
工具指南17-AI Token计数器
详解 AI Token 计数器的使用方法和技术原理,帮助开发者精确估算 GPT、Claude 等大模型的 Token 消耗,优化 API 调用成本。
-
工具指南16-在线JSON对比工具
详解在线 JSON Diff 工具的使用场景和技术原理,帮助开发者高效对比 API 响应、配置文件和数据变更,快速定位差异。
-
Apifox 供应链投毒事件复盘:你的 SSH Key 可能已经泄露了
2026 年 3 月,Apifox 桌面客户端遭遇供应链投毒攻击,官方 CDN 上的 JS 文件被替换为恶意版本,窃取用户 SSH Key、Git 凭证等敏感信息。从攻击原理、影响范围到自查方法,拆解这次事件的技术细节。
-
工具指南15-在线Markdown实时预览工具
深入介绍在线Markdown实时预览工具的核心功能与使用技巧,涵盖GFM扩展语法、代码高亮、导出功能等,帮助开发者和技术写作者提升写作效率。
-
工具指南14-在线SQL格式化工具
详解 SQL 格式化的核心规则与常见场景,介绍一款支持多方言的在线 SQL 格式化工具,帮助开发者写出可读性更强的 SQL 语句。
-
工具指南13-在线颜色转换工具
深入解析 HEX、RGB、HSL 等颜色格式的原理与转换方法,介绍一款在线颜色转换工具的实际使用场景,帮助前端开发者高效处理颜色相关需求。
-
GitHub Squad:把 AI 开发团队直接塞进你的仓库
开源项目 Squad 让你用两条命令在仓库里初始化一支 AI 开发团队——架构师、前端、后端、测试各司其职,基于 Copilot 协作开发。聊聊它的架构设计、实际体验和背后的多 Agent 协作模式。
-
工具指南12-Cron表达式在线解析工具
深入讲解Cron表达式的语法规则和常见用法,介绍一款在线Cron解析工具,帮你快速验证和理解定时任务配置。
-
工具指南11-JSON转TypeScript类型生成器
从手写 TypeScript 类型的痛苦出发,讲解 JSON 转 TypeScript 的实现原理、类型推断策略,以及如何在实际项目中用自动生成替代手动定义,减少重复劳动。
-
Computer-Use:当 AI Agent 不再需要 API
AI Agent 正在学会像人一样操作电脑——看屏幕、点鼠标、敲键盘。从 Anthropic Claude Computer Use 到 Microsoft CUA 再到 OpenAI Operator,Computer-Use 正在重新定义"软件集成"的含义。
-
工具指南10-在线哈希生成器
详解哈希函数的工作原理、MD5/SHA-1/SHA-256的区别与适用场景,以及开发中密码存储、数据校验、缓存策略等实际应用。
-
工具指南9-URL编解码工具
深入讲解URL编码的工作原理、百分号编码规则、encodeURI与encodeURIComponent的区别,以及日常开发中的常见坑点和调试技巧。
-
工具指南8-在线密码生成器
深入解析强密码的构成原理、密码熵的计算方法、常见攻击手段与防御策略,帮你理解为什么"随机"才是密码安全的核心,以及如何快速生成高强度密码。
-
工具指南7-Unix时间戳转换工具
全面解析 Unix 时间戳的原理、常见坑点与实际应用场景,涵盖时区处理、2038 问题、多语言转换方法,帮助开发者高效处理时间相关问题。
-
Google Stitch 大更新:用自然语言做 UI 设计,Figma 该紧张了?
Google Stitch 迎来重大更新,从简单的 prompt-to-mockup 工具进化为 AI 原生设计画布。无限画布、语音交互、DESIGN.md 设计系统、MCP 集成——一次性发了五个大功能。免费、基于 Gemini,直接对标 Figma Make。
-
工具指南6-JWT在线解码工具
深入解析 JWT 的结构、编码方式和安全机制,覆盖 token 调试、过期检测、签名验证等常见场景,帮助开发者快速定位认证问题。
-
Karpathy 的 AutoResearch:让 AI Agent 自主跑完 700 个 ML 实验
解读 Karpathy 开源的 AutoResearch 项目:一个 630 行的 Python 脚本如何让 AI agent 在单 GPU 上自主进行 ML 实验,两天累计完成 700 个实验并找到 20 个有效优化。从架构设计到实际应用,分析这个"Karpathy Loop"模式为什么值得每个开发者关注。
-
工具指南5-Base64编解码工具
深入解析 Base64 编解码的原理与实际应用场景,涵盖文本编码、文件转换、Data URL、JWT 解析等常见用法,帮助开发者高效处理编码问题。
-
MCP 2026 路线图解读:从本地工具到生产级 Agent 基础设施
MCP(Model Context Protocol)发布 2026 路线图,四大优先方向:传输层演进、Agent 通信、治理成熟化、企业就绪。从技术角度解读每个方向的具体问题和解决思路。
-
工具指南4-二维码生成工具
从二维码编码原理到前端生成方案,详解 QR Code 的技术细节和实际应用场景,附带 qrcode.js 实战代码和常见踩坑记录。
-
MiroFish:一个大四学生用 Vibe Coding 10天做出的群体智能预测引擎
深度解析 MiroFish 群体智能预测引擎的技术架构与设计思路。一个大四学生用 Vibe Coding 10天开发,登顶 GitHub Trending,获盛大3000万投资。从技术角度看它做对了什么。
-
工具指南3-在线正则表达式测试
详解在线正则表达式测试工具的使用技巧,从基础匹配到复杂模式调试,配合常用正则速查表,帮助开发者告别"写正则靠猜"的困境。
-
工具指南2-在线JSON格式化工具
深入介绍在线 JSON 格式化工具的使用技巧,涵盖语法校验、Tree View、JSONPath 查询等实用功能,帮助开发者高效处理 JSON 数据。
-
工具指南1-在线图片压缩
详解纯前端在线图片压缩工具的使用方法,支持 PNG/JPEG/WebP 格式,图片不离开本地浏览器,附带图片压缩的技术原理和实际应用场景。
-
当 AI Agent 学会付钱:x402 协议与 Agent 支付基础设施全解析
深入解析 Coinbase x402 协议如何复活 HTTP 402 状态码,让 AI Agent 用稳定币自动支付 API 调用。从协议设计到代码实战,从 Stripe/Mastercard 竞争格局到 $28K 日交易量的现实挑战,全面拆解 Agent 支付赛道。
-
浏览器原生 AI 能力实战:Chrome Built-in AI API 完全指南
深入探讨 Chrome 内置 Gemini Nano 模型和浏览器原生 AI API(Prompt、Translation、Summarization),从技术架构到生产实战,展示如何构建隐私优先的本地 AI 应用,附完整代码示例和性能分析。
-
OpenClaw 自动化工作流实战:Cron + Heartbeat 构建 24/7 智能助手
深度解析 OpenClaw 的 Cron Job 和 Heartbeat 机制,从选型策略到工程实践,结合真实案例展示如何构建可靠的自动化工作流,涵盖错误处理、状态管理、成本优化等关键环节。
-
2026 AI 大模型全景对比:国内外 12 款主流模型实测
实测 12 款 AI 大模型(GPT-4o、Claude 3.5、Gemini 2.0、Qwen 2.5、GLM-4、Kimi 等),覆盖代码生成、中文写作、推理 6 大场景。附性能跑分、月费对比和选型决策树,帮你选出最适合的模型。
-
构建具有长期记忆的 AI Agent:从设计模式到生产实践
深入探讨如何为 AI Agent 构建情景记忆、语义记忆、过程记忆三种长期记忆系统,包含完整技术架构设计、代码实现和生产优化方案。
-
AI Agent 驱动开发:从工具到工作流的范式转变
探索 AI Agent 如何从"辅助工具"进化为"协作伙伴",重塑现代开发者的工作流程。基于真实项目经验,深入解析上下文感知、主动执行、工具编排三大核心能力,附完整代码示例。
-
AI Agent Skills 标准化之争:架构、安全与生态演化
深度解析 MCP、Agent Skills、Skills.sh 三大标准的技术架构、安全模型与治理机制,揭示真实安全事件背后的设计哲学冲突,并提供企业和开发者的选型指南。
-
AI Agent 多任务协作实战:从单体到分布式工作流
探讨如何设计和实现 AI Agent 的多任务协作系统,包括任务分解、状态管理、错误恢复等核心问题。通过博客发布工作流实战案例,深入理解 Agent 协作架构。
-
为什么 AI Agent 会忽略你的"铁律"?两次真实事故的深度复盘
通过两个真实生产事故的深度复盘,分析为什么 AI Agent 会系统性地忽略明确的规则,以及如何设计可靠的约束机制。包含技术原理、共性问题和可落地的解决方案。
-
AI Agent 记忆系统实战:OpenClaw Memory 最佳实践
深入解析 OpenClaw 的记忆系统架构,从文件结构到检索优化,提供可落地的 AI Agent 记忆管理最佳实践
-
从命令行到对话式编程:用 AI Agent 构建个人开发助手
深入探索如何从零搭建一个具备记忆、工具调用和任务规划能力的 AI 开发助手,展示 AI 原生开发的实践模式
-
AI Agent Skills 完全指南:让你的 AI 助手拥有超能力
Skills 是什么?如何在 Claude Code、Codex、OpenClaw 等 AI 工具中安装使用?探索 skills.sh 和 awesome-openclaw-skills,掌握 3000+ 社区 Skills,让你的 AI Agent 从通用助手变身领域专家。
-
Electron 的轻量级替代品:electrobun 深度解析
12MB vs 150MB,14KB 增量更新,TypeScript 全栈开发。electrobun 如何用 Bun + Zig 重新定义桌面应用开发?技术架构、性能对比、实战指南全解析。
-
2026年 AI Agent 开发工具生态全景
从 Claude Code CLI 到 OpenClaw,从 everything-claude-code 35.6k⭐ 项目看 AI Agent 配置体系演进。Skill 机制、Hooks、Rules 全解析,附跨工具借鉴指南。
-
AI Agent 前端工作流(四):未来展望与开源工具全景
系列完结篇。从 Copilot 到 Autonomous Agent,从闭源到开源,本文梳理 AI Agent 发展趋势,对比主流工具,探讨开发者角色转变。附完整学习路线。
-
AI Agent 前端工作流(三):成本优化与团队协作最佳实践
如何控制 AI Agent 的 Token 成本?如何处理模型幻觉?如何在团队中推广?本文分享实战优化策略和协作最佳实践,附真实成本数据。
-
多 Agent 协作的血泪教训:一次 config.patch 差点弄崩全系统
运行多 agent 系统一周后的真实踩坑记录:配置管理事故、TypeScript 导入错误、发布日期写错、成本优化实战,以及团队协作的最佳实践。
-
AI Agent 前端工作流(二):智能代码审查与自动化测试
用 AI Agent 实现智能代码审查和自动化测试用例生成。从 Git Hook 集成到 E2E 测试,本文分享完整实战方案和真实项目效果数据。
-
本地 AI 助手如何安全暴露到公网?SSH 反向隧道实战
通过 SSH 反向隧道 + Nginx 反向代理,将本地运行的 OpenClaw Gateway 安全暴露到公网,实现域名访问。数据完全本地化,多层安全防护,成本为零。
-
AI Agent 前端工作流(一):理解 Agent 与组件自动生成实战
AI Agent 不是简单的聊天机器人,而是能自主调用工具、管理上下文的智能助手。本文深入剖析 Agent 工作原理,并通过 React 组件自动生成实战,展示如何用 AI 重构前端开发流程。
-
OpenClaw 多 Agent 配置实战:踩坑指南与最佳实践
配置 OpenClaw 多 Agent 和 Telegram 多账号有不少坑。本文基于实战经验,总结所有常见问题和解决方案,让你少走弯路。
-
OpenClaw 入门实战:5分钟搭建你的自托管 AI 助手
OpenClaw 是个强大的自托管 AI 代理网关,让你用 Telegram 等 App 随时随地调用 Claude。本文带你从零开始,5分钟搭建第一个 AI bot。
-
AI Agent 开发工具对比 2026:Claude Code vs OpenClaw vs Cursor 怎么选
Claude Code、OpenClaw、Cursor 三大 AI 编程工具实测对比。从运行方式、记忆系统、模型支持到 Skill 机制,一文讲清 2026 年 AI Agent 开发工具该怎么选。附配置体系详解和跨工具迁移指南。
-
博客部署流程优化:从服务器构建到本地构建的进化
记录博客部署流程从服务器端构建到本地构建+GitHub传输的优化历程,解决服务器资源不足的问题。
-
博客上线两款实用在线工具:二维码生成器 & CSV 转 JSON
介绍博客新上线的两款纯前端在线工具——二维码生成/解析和 CSV 转 JSON 转换器。
-
告别 JSON.parse(JSON.stringify()) — 原生深拷贝 structuredClone
JavaScript 终于有了原生深拷贝方法 structuredClone,来看看它解决了哪些痛点。
-
Hello World - 博客新生
博客从 React 迁移到 Astro,记录这次重生之旅。
-
Symbol.toPrimitive 与 JS 加法运算
深入理解 Symbol.toPrimitive、对象到原始值的转换,以及 [] + {} 的奥秘。
-
拓扑排序
用 Go 语言深度优先搜索实现拓扑排序。
-
HTTP 缓存机制详解
深入理解 HTTP 强缓存与协商缓存的工作原理。
-
Polyfill 学习:Object.is
Object.is 解决了 0 === -0 和 NaN !== NaN 的问题。
-
函数作用域和块作用域
最小暴露原则、IIFE、块作用域(let/const/try-catch)详解。
-
Go 学习笔记
Go 语言基础:变量定义、array、slice、map 等核心概念。
-
AWS 服务器搭建笔记
AWS EC2 实例创建、SSH 配置与基础环境搭建。
-
前端概念汇总
常见前端概念速查:HTTP/HTTPS、JS 技巧、浏览器机制、CSS 技巧等。
-
JS 模块规范:CommonJS、AMD、CMD、ES Module
浅析 CommonJS、AMD、CMD、ES6 Module 的区别。
-
Webpack 4 升级指南
Webpack 3 升级到 Webpack 4 的关键改动整理。
-
ES6 Iterator 遍历器详解
Iterator 接口原理,for...of 循环,以及让普通对象可迭代的四种方式。
-
如何在 git commit 时添加 ESLint 校验
使用 pre-commit 和 lint-staged 在提交时自动运行 ESLint。
-
npm 高效但非常用命令整理
npm list、npm outdated、npm prune、npm-check 等实用命令。
-
Polyfill 学习:Number.isNaN
利用 NaN 不等于自身的特性实现 Number.isNaN。
-
PWA 入门与实践
Progressive Web App 核心技术介绍与实践踩坑记录。
-
React Router 4 升级指南
react-router 升级到 4.x 的具体步骤与踩坑记录。
-
ES7 Rest/Spread 运算符在对象中的应用
对象的 Rest 解构赋值和扩展运算符的妙用。
-
Harp.js 静态网站生成器
Harp.js 简介及使用注意事项。
-
我们在使用 Promises 时常犯的错误
四种 Promise then 写法的区别。
-
MySQL 更换 SQLite 记录
博客从 MySQL 迁移到 SQLite 的全过程,省了 48 元/月。
-
JS with 关键字的坑
with 创建新的词法作用域,可能导致变量泄漏到全局。
-
JS 具名函数与匿名函数的差异
具名函数表达式与函数声明在作用域中的不同行为。
-
背包问题 JS 实现
0/1 背包问题的 JavaScript 动态规划实现。
-
深入理解函数声明提升与变量声明提升
通过两个例子深入理解 JS 的声明提升机制。
-
Underscore pluck 方法
Underscore.js 的 pluck 方法快速提取对象数组中的某个属性。
-
Array forEach 在 IE 低版本的兼容
forEach polyfill 实现与 jQuery each 方法对比。
-
function arguments 参数同步机制
arguments 与输入参数的同步关系。
-
罗马数字解析
JS 实现罗马数字与阿拉伯数字互转。
-
实现链式函数 add
利用 valueOf 实现 add(1)(2)(3) == 6 的链式调用。
-
null 与 undefined 的区别
详解 null 和 undefined 的定义、转义、判定和用法差异。
-
ES6 Generator 与 co 模块
理解 ES6 Generator 的基本特性以及 tj 大神的 co 模块原理。
-
JS 判断浏览器是否支持严格模式
利用严格模式下 this 为 undefined 的特性来判断。
-
JS 类型转换:对象转原始值
深入理解 JS 中对象转换成原始值的过程。
-
String.concat 与 apply 的妙用
使用 apply 将数组中的字符串一次性拼接。
-
用按位非 ~ 简化 indexOf 判断
利用按位非操作符简化 indexOf 的判断写法。
-
Checkbox 模糊状态(indeterminate)
checkbox 的 indeterminate 属性实现半选状态。
-
正则表达式的复制与 lastIndex
复制正则表达式时需要注意 lastIndex 属性。
-
正则表达式:代码风格互转
驼峰、连字符、下划线三种代码风格的正则互转。
-
一个有趣的 for 循环用法
Object.keys polyfill 中的 for 循环妙用。
-
JS 性能优化:记忆(memoization)
函数记忆化技术,避免重复运算提升性能。
-
JS 函数返回值与 new 操作符
构造函数返回值对 new 操作符创建实例的影响。
-
正则表达式:元字符 \b 与注意事项
正则表达式元字符 \b 的使用注意事项。
-
JS Array 方法大全
详解 JS 数组的所有方法,哪些会改变原数组,哪些不会。
-
Node 中使用 Feedly 与 RSS
在 Node.js 博客中添加 RSS 订阅功能,接入 Feedly。
-
JS 字符串去重的三种方法
使用正则、hash、数组三种方式去除字符串中的重复单词。
-
JS 运算符 == 与 ===
深入理解 JS 中 == 和 === 的区别与类型转换规则。
-
JS 解析 XML 兼容 IE 与其他浏览器
IE 使用 ActiveXObject,其他浏览器使用 DOMParser 解析 XML 的兼容方案。
-
Node 中使用 Markdown 与 highlight.js
在 Node.js 中使用 marked 解析 Markdown,配合 highlight.js 实现代码高亮。
-
文本复制换行问题
文本复制到 txt 丢失换行格式的解决方法。
-
window.showModalDialog 与 window.open 跨域方案
Chrome 不支持 showModalDialog,使用 postMessage 解决跨域通信。
-
实现 once 函数
用闭包实现只能调用一次的函数。
-
Git Shell Error in Windows 修复
Git command could not be found 的修复方法。
-
Node forever 进程管理
使用 forever 管理 Node.js 进程,包括 koa 的和谐模式启动。
-
JS repeat 方法的演变历史
字符串重复方法的多种实现,从 join 到二分法递归。
-
JS 实现排列组合数组
使用 reduce 实现数组的排列组合(幂集)