置顶
未读
【公告】再见,旧时光;你好,新旅程 —— 博客全新升级搬家啦!
这篇文章是作者告别旧博客并宣布新博客上线的告别信,表达了对读者陪伴与支持的感谢。由于旧博客系统逐渐无法满足技术需求,作者决定停止更新旧站,并全新打造了一个极客化、现代化的博客平台——LuyBlog,新地址为 [https://blog.lyuy.top](https://blog.lyuy.top)。
新博客采用了 Serverless 全栈架构(React + Vite + Hono + Cloudflare),具有极速响应、全新视觉、沉浸阅读等功能,并新增了“瞬间”和“项目展示”等丰富板块,方便记录多元化内容。同时,作者写下了新博客从零开发的完整历程文章,欢迎读者前往阅读交流。
文章最后,作者表示对记录与分享的初心不变,并邀请读者继续关注新博客,共同延续这段旅程与记忆。
Nekro Agent 架构深度解析:面向多人互动的跨平台 Agent 框架设计之道
本文详细介绍了 Nekro Agent 的架构设计及其技术优势。作为一款跨平台 AI Agent 框架,Nekro Agent从输入/输出流的架构设计入手,实现了适配器层与核心引擎的解耦,使得新增聊天平台的接入更加灵活、便捷。其核心引擎通过插件调度、长期记忆管理和安全的沙盒调用,为多人互动场景提供了强大的技术支持。框架采用 Docker 容器化沙盒来隔离代码执行环境,同时支持 AI生成代码的动态依赖管理和资源挂载功能,确保安全性与灵活性并存。
Nekro Agent的插件系统极具扩展性,可实现提示词注入、沙盒方法注册、持久化存储、向量搜索等灵活功能,并支持插件市场功能,形成共享生态。同时,它原生支持多模态交互和复杂场景适配,覆盖多个聊天平台,包括QQ、Discord、Telegram等,其异步架构保证高并发性能。作为生产级 AI解决方案,Nekro Agent特别适合社群运营、游戏辅助、直播互动等场景,并展示出高度解耦、安全可靠、和扩展性强等显著优势。
“问三句再动笔”——一份让工程师少加班的AI设计模板
这篇文章探讨了一种通过AI辅助生成设计文档的方法,以减少返工率和缩短评审时间。作者提出在开始任何新功能设计之前,先利用AI进行三轮提问以澄清设计假设,然后再撰写设计文档。这一流程帮助团队将返工率从30%降到5%,将评审时长减半。AI提问策略包括复述用户需求并提出关键问题,逐步收窄设计方案,最终在用户确认设计假设后生成完整的设计文档。这种方法避免了传统流程中文档中堆积的“待定”内容,提高了设计文档的执行性。实现流程简单,通过创建专用文件夹和引入AI对话可轻松融入项目。文章还提供了完整模板下载,强调设计阶段应专注于设计问题而非代码实现或需求文档。这种方法提示:“问得少,返工少,下班早”,有效减少了因沟通不畅导致的加班。
当“加固”变成“炸点”:Cloudflare 11·18 事故随想
这篇文章讲述了一次由错误的 SQL 语句导致的全球性宕机事件,并从中提出三点警示。首先,任何内部配置都需谨慎处理,视为用户输入;权限变更需谨慎审核,避免不必要的全链路影响。其次,对回滚和可观测性功能进行优化,使其快速有效。事件的具体过程包括数据库权限补丁上线后引发的一系列问题,表面上看是超大规模DDoS,其实是特征文件生成错误导致服务崩溃。文章指出了三个潜在问题:配置即代码问题、权限与性能变更的回归测试缺失和观测数据过于繁杂而导致误判。针对这些问题,文中提出了一系列解决方案,如平台化回滚能力、CI中的权限变更检测以及高耗观测的一键关闭功能。最后,作者总结指出,小问题连锁反应可能导致大问题,需在日常工作中提前识别并避免。
今天闲着,把吃灰的 ESP32-CAM 拉出来遛遛
本文指导读者如何在30分钟内通过ESP32-CAM在浏览器中实现30fps的小型监控。步骤明确,首先需下载并安装CH340驱动,以确保设备正常连接。然后,配置Arduino IDE环境,下载ESP32开发板支持包。接下来,通过修改官方提供的CameraWebServer示例代码中WiFi名称和密码,使摄像头能够连接网络。通过正确的接线和上传步骤,启用摄像头传输视频流。
一旦成功连接,用户可在浏览器中观看实时视频。若发现帧率不够流畅,可调整配置参数,如降低画质、修改帧抓取模式等,以提升帧率。文章还提醒了一些易出错的环节,如供电不足或连接不良,并提出解决方案。
最后,该项目花费低廉且实现简单,适合希望快速搭建监控系统的技术爱好者。读者可进一步扩展功能,如集成到Node-RED或Home Assistant中,或加入人脸识别功能。
ESP32学习笔记
本文介绍了一系列利用Python编程实现的电子实训项目。这些项目涵盖了不同的硬件操作和编程技巧,如点亮LED灯、控制RGB灯带、显示OLED字符、进行电压测量、温湿度传感器读取、控制电机以及超声波测距等。
每个实训都详细列出了实施步骤和代码示例,包括导入模块、设置引脚和操作电平等基本操作。此外,还介绍了如何使用循环语句控制灯光闪烁,如何通过for和while循环实现持续或顺序的LED闪烁效果。
OLED显示部分介绍了字符和图形显示方法,包括显示字符的居中算法和中文显示步骤。测量电压和控制电机的部分则展示了如何实时读取并显示传感器数据,以及利用电压或距离数据控制电机或灯光的联动操作。
这些实训项目不仅为电子爱好者提供了丰富的学习材料,也为实用开发提供了具体的实施案例。每个步骤都配有相应的代码示例,使得实践过程更加直观和易于操作。
用 6 位数字动态密码,悄悄保护你的小破站
本文概述了 RFC 6238 定义的 TOTP(基于时间的一次性密码)的工作原理,并通过通俗易懂的方式剖析其运作机制,同时附带 Python 实现代码和基于 PyQt5 的离线管理器开发参考。TOTP 是一种安全的两步验证方式,其核心流程包括四步:1) 使用共享密钥;2) 根据当前 Unix 时间戳计算时间片;3) 使用 HMAC 哈希生成动态数据;4) 截断生成一个 6 位数字验证码。验证码每 30 秒刷新一次,客户端与服务器通过时间片同步计算,从而无需网络传输,提高安全性。此外,文章回答了一些常见问题,例如适配 SHA-256、时钟同步问题,以及如何实现离线管理器。整体内容技术性与实操性兼备,适合开发者学习或实际应用。
pygame scene更新日志
版本 1.1.0 更新于 2025年9月22日,主要新增功能包括 SceneManager 支持设置全局默认过渡效果,通过 `register_default_transition()` 方法统一管理场景切换效果,减少重复代码。此外,新版本新增了三种过渡预设:淡入淡出的 `FadeTransition`,侧滑进入的 `SlideTransition`,以及圆形展开切换的 `CircleWipeTransition`。提升了场景切换的灵活性和美观性。
改进方面,代码结构经过优化,所有过渡效果类(`FadeTransition`、`SlideTransition` 和 `CircleWipeTransition`)已移至 `transition.py` 模块,更便于项目中的复用。同时,`main.py` 演示文件已更新,展示了新功能的具体用法。这些更新显著提升了代码的易用性和可维护性。
Pygame通用场景管理器设计与实现
文章详细探讨了Pygame场景管理器的核心架构及其实现方式,旨在提高游戏开发中的模块化、可维护性和扩展性。场景管理器采用面向对象设计,通过抽象基类定义场景接口,以高内聚、低耦合方式管理游戏状态,支持清晰的生命周期管理与场景间切换。主要组件包括场景基类(负责逻辑更新、事件处理与画面渲染)、场景管理器(维护场景字典、协调切换和封装游戏主循环)以及过渡效果系统(实现视觉上的平滑场景过渡,比如淡入淡出动画)。文章还阐述了场景堆栈管理(适用于暂停菜单或对话框)与事件传递机制优化。此外,针对性能优化提出解决方案,如延迟加载场景和资源管理器构建。示例代码全面覆盖从场景定义到过渡实现,并详细描述了场景切换逻辑和主循环操作,是构建模块化游戏框架的参考典范。
从零开始:Pygame游戏开发完全指南
### 摘要
本文全面介绍了使用Pygame进行2D游戏开发的流程和核心概念。首先简述了Pygame作为基于SDL的跨平台游戏开发库,能方便地处理图形渲染、声音播放以及用户输入。文章详细讲解了环境搭建、窗口创建、事件处理、游戏循环等基础内容,并重点分析了精灵系统及碰撞检测机制,包括矩形、圆形和像素级碰撞及其适用场景。此外,讲解了如何设计和实现一个完整的打砖块小游戏,涵盖游戏窗口、挡板、球、砖块的精灵定义,事件处理、游戏主循环、碰撞检测、得分与生命系统等,同时提供了代码分步实现及优化建议。最后,文章探讨了Pygame的适用场景及学习资源,包括官方文档、开源项目以及进阶学习方向,如物理引擎、网络开发和设计模式等,适合初学者和独立开发者快速入门游戏开发。