- Published on
2026-第七周
- Authors

- Name
- AgedCoffee
- @__middle__child
该周报主要为各个地方内容的汇总整理
技术
为智能代理未来构建 Next.js | Next.js
Next.js 团队在过去一年中致力于提升框架的 AI 代理体验,通过实验和集成,最终认识到关键在于从代理的视角出发,使其能直接访问框架的内部状态和上下文,从而更有效地协助开发和调试。
- 🧠 认识到 AI 代理无法直接访问浏览器中的运行时错误和组件状态,促使团队从代理的视角重新设计 Next.js 的可视性
- 🛠️ 实验性开发了内置浏览器代理 Vector,虽因与通用编码工具重叠而停止,但其结构化可见性和框架特定知识的理念被保留
- 🔗 通过集成模型上下文协议(MCP),使代理能访问 Next.js 的内部状态(如错误、路由和渲染片段),并开发了 next-devtools-mcp 以促进代理与开发服务器的通信
- 📚 为代理提供压缩文档索引(agents.md)和结构化工作流(Next.js 技能),以弥补其在框架知识上的训练数据不足
- 🔄 将代理视为一等用户,推动实际改进:如记录服务器操作调用、转发浏览器错误日志,以创建代码、运行时和 AI 间的紧密调试反馈循环
- 🚀 未来计划包括通过 npx @next/codemod 简化文档索引生成,扩展评估套件以覆盖更多 API,并最终将代理上下文支持内置到 next dev 中,实现零配置自动适配
现代 CSS 代码片段 | modern.css
现代 CSS 已提供众多原生解决方案,替代了以往依赖 JavaScript 或复杂 hack 的旧方法,使开发更简洁高效。
- 🎯 居中元素:使用
display: grid; place-items: center;替代transform: translate(-50%, -50%)的绝对定位 hack - 🌈 颜色处理:采用
oklch()实现感知均匀的颜色,并支持color-mix()混合颜色,无需预处理器 - 🛠️ 功能检测:通过
@supports进行 CSS 功能检测,无需 JavaScript - 🧊 毛玻璃效果:使用
backdrop-filter: blur()替代复杂的filter和伪元素 hack - 📏 布局控制:利用
scrollbar-gutter: stable防止布局偏移,aspect-ratio设置宽高比,无需 padding hack - 🎚️ 响应式设计:使用
clamp()实现流体排版,@container查询替代媒体查询,实现组件级响应式 - 🖱️ 交互效果:通过
popover和anchor-name实现工具提示和模态框,无需 JavaScript 事件监听 - 📜 滚动行为:使用
scroll-snap-type实现滚动吸附,overscroll-behavior: contain防止滚动链 - ✨ 动画与过渡:采用
view-transition-name实现页面过渡,animation-timeline: view()创建滚动链接动画,无需 JavaScript 库 - 🏗️ 工作流优化:通过
@layer控制样式优先级,:where()降低选择器特异性,CSS 嵌套无需预处理器
完美代码审查:如何在提升质量的同时减轻认知负担——丹尼尔·巴斯特里奇
本文概述了构建高效代码审查流程的 PERFECT 原则,旨在降低认知负荷并提升代码质量。通过明确审查目的、处理边界情况、确保可靠性、遵循设计形式、验证测试证据、提升代码清晰度及管理主观偏好,使审查过程结构化、清晰且一致。
- 🎯 目的:代码必须解决既定任务,这是首要且不可妥协的要求。审查者需先理解任务目标,再验证代码实现是否符合预期。
- 🚧 边界情况:识别并处理业务与技术上的边界情况,如异常输入、边界值、空值等,能显著减少生产环境中的错误。
- 🔒 可靠性:确保代码无性能与安全问题,避免引入明显瓶颈或安全漏洞,这对商业或关键项目尤为重要。
- 🏗️ 形式:代码应符合设计原则(如高内聚低耦合),提升可读性与可维护性,减少长期维护成本。
- ✅ 证据:测试与持续集成流程必须通过,确保代码处于可部署状态,测试覆盖应遵循约定且避免仅为测试而写的特殊逻辑。
- 📖 清晰度:代码应清晰传达意图,通过命名、结构等约定提升可读性,便于他人理解与维护。
- 👅 品味:个人偏好不应阻碍变更,缺乏依据的主观意见可被忽略,但有价值的建议可转化为团队共识。
在 DevTools 中查找 JavaScript 中特定对象的分配位置
本文介绍了一种在 Chrome DevTools 内存分析器中追踪特定对象创建位置的方法,适用于调试时因对象被回收或难以筛选而无法定位来源的情况。
- 🐛 调试痛点:在调试网络请求或大型代码库时,常因调用栈被隐藏或对象被回收而难以定位特定对象的创建位置。
- 📊 内存分析器限制:Chrome DevTools 的“时间轴上的分配”功能可显示对象分配位置,但对象可能已被清理,且筛选条件(如分配时间、构造函数名)往往不够精确。
- 💡 核心技巧:通过故意泄露对象使其在内存分析中可见。具体步骤包括:开启分配堆栈跟踪、在调试器中暂停并将对象保存为全局变量、在控制台创建具有独特类名的新对象来引用目标值。
- 🔍 筛选定位:停止分析后,在内存分析器中按类名(如
AAAAAAAA)筛选,即可找到目标对象及其完整的创建堆栈跟踪。
工具
Dembrandt - 从网站提取设计令牌 | CSS 到设计系统转换器
Dembrandt 是一款开源 CLI 工具,能够一键从任何网站提取设计系统与设计令牌,并支持导出为 W3C 设计令牌格式。
- 🛠️ 工具功能:通过命令行快速提取网站的设计系统,将 CSS 转换为设计令牌
- 📦 安装方式:可通过 npm 全局安装,使用命令
npm i -g dembrandt - ⚡ 使用示例:运行
dembrandt stripe.com即可提取目标网站的设计元素 - 🎨 提取内容:包括颜色(如#635BFF)、字体样式、间距、阴影、圆角等设计属性
- 📁 输出格式:自动生成
design-system.json文件保存提取结果 - 🌐 标准支持:符合 W3C 设计令牌社区组(DTCG)规范
- 📈 项目状态:开源项目,提供 GitHub 仓库和实际演示
GitHub - hyparam/hightable: 一个用于 React 的动态窗口化滚动表格组件
HighTable 是一个用于 React 的虚拟化表格组件,旨在高效显示大型数据集,通过仅渲染当前视口所需行数实现流畅滚动,支持异步数据加载、列排序和行选择等功能。
- 🚀 高性能虚拟滚动:仅渲染可见行,优化大型数据集的显示性能。
- 🔄 异步数据加载:支持按需获取数据,可处理任意规模的数据集。
- 📊 列排序与调整:提供可选的列排序功能,并支持列宽调整和自动适应。
- ✅ 行选择与事件处理:支持通过 Shift+ 点击进行多行选择,并提供单元格双击等事件处理。
- 🛠️ 灵活的数据模型:使用 DataFrame 结构定义数据获取与组织方式,支持自定义数据获取逻辑。
- ⚙️ 丰富的配置选项:提供多种属性配置,如列可见性控制、错误处理、自定义单元格渲染等。
- 📦 便捷的安装与使用:可通过 npm 安装,并提供数组转 DataFrame 等辅助工具,简化集成过程。
- 🎨 基础样式与自定义:包含基础 CSS 样式,同时允许通过 CSS 进行外观定制。
react-doctor
React Doctor 是一个用于诊断和修复 React 代码的自动化工具,它通过扫描代码库来检测安全、性能、正确性和架构方面的问题,并生成可操作的诊断报告与评分。该工具支持 CLI 使用、Node.js API 集成,并可配置为 AI 编程助手的技能插件。
- 🩺 核心功能:通过一条命令扫描 React 代码库,输出 0-100 分的评分及具体问题诊断。
- ⚙️ 安装使用:可通过
npx -y react-doctor@latest快速运行,支持--verbose查看详细文件与行号。 - 🤖 AI 集成:可作为技能安装到 Cursor、Claude Code 等 AI 编程助手,提供 47+ 条 React 最佳实践规则。
- ⚡ 配置灵活:支持通过配置文件或
package.json自定义忽略规则、文件路径和扫描选项。 - 📊 开源评分:已为多个知名开源项目(如 tldraw、excalidraw 等)提供代码质量评分展示。
- 🔧 高级功能:支持差分扫描、自动修复问题、Node.js API 调用,并可导出诊断结果到剪贴板。
cc-wf-studio
CC Workflow Studio 是一款可视化 AI 工作流编辑器,支持通过拖拽或自然语言对话设计复杂的 AI 代理工作流。它可一键导出至多种 AI 代码工具(如 Claude Code、GitHub Copilot 等),并直接运行工作流,无需编写代码。
- 🎨 可视化编辑 – 通过直观的拖放画布设计 AI 工作流,无需编码
- 💬 AI 对话编辑 – 用自然语言与 AI 交互,迭代改进工作流逻辑与功能
- ⚡ 一键导出与运行 – 支持将工作流导出为 .claude、.github/prompts/ 等格式,并直接从编辑器运行
- 🤖 多平台集成 – 兼容 GitHub Copilot、OpenAI Codex、Roo Code 等 AI 开发工具(部分为实验性功能)
- 🔄 MCP 服务器支持 – 通过内置 MCP 服务器实现与 AI 代理的无缝通信,自动同步工作流更新
playwright-cli
本文介绍了 Playwright CLI 工具,它是一个专为现代编码智能体(如 Claude Code、GitHub Copilot 等)设计的命令行界面。该工具通过提供一系列简洁、高效的命令来实现浏览器自动化,其核心优势在于令牌使用效率高,避免了向大语言模型上下文加载大量工具架构和页面可访问性树,从而更适合处理大型代码库、测试和复杂推理任务。文章详细说明了其安装、核心功能、会话管理、监控以及丰富的配置选项。
- 🚀 核心定位:Playwright CLI 是一个为编码智能体优化的命令行工具,通过 SKILLs 提供令牌高效的浏览器自动化,相比 MCP 更适合高吞吐量的编码工作流。
- ⚙️ 安装与启动:通过 npm 全局安装,使用
playwright-cli --help查看命令,并可选择为智能体安装 SKILLs 或让其直接读取 CLI 帮助信息进行操作。 - 🖥️ 核心操作:提供打开页面、导航、点击、输入、截图等丰富的浏览器控制命令,支持有头和无头模式,并默认在内存中保持会话状态。
- 🔧 会话管理:支持创建和管理多个独立的浏览器会话,可通过
-s=参数指定会话,并支持将会话数据持久化到磁盘。 - 📊 监控与调试:提供
playwright-cli show命令打开可视化仪表板,实时查看和控制所有运行中的浏览器会话,便于观察和干预自动化过程。 - ⚡ 高效特性:设计上注重令牌效率,不强制将页面数据推入 LLM 上下文,通过简洁的命令和快照机制为智能体提供必要的页面状态信息。
- 📁 配置灵活:支持通过 JSON 配置文件或大量环境变量对浏览器类型、超时、网络拦截、控制台输出、视频录制等进行深度定制。
- 🛠️ 功能全面:涵盖网络请求模拟、存储状态管理(Cookie、LocalStorage)、标签页操作、DevTools 集成、代码片段执行以及测试生成和追踪录制等高级功能。
prek
prek 是一个用 Rust 重写的 pre-commit 替代工具,旨在提供更快的速度、零依赖的单二进制体验,并完全兼容原有的 pre-commit 配置。它通过并行化处理、共享工具链和集成 uv 等优化,显著提升了钩子运行效率,并支持单仓库多项目配置。目前已被 CPython、Apache Airflow 等知名项目采用。
- 🚀 性能优化 – 比 pre-commit 更快,占用磁盘空间更少,支持并行克隆仓库和运行钩子。
- 📦 零依赖便携 – 仅需单个二进制文件,无需安装 Python 或其他运行时环境。
- 🔧 完全兼容 – 支持原有 pre-commit 的配置文件与钩子,可无缝迁移。
- 🏗️ 内置增强功能 – 支持单仓库多项目工作区、自动管理 Python 版本与虚拟环境,并提供 Rust 原生内置钩子。
- ⚙️ 智能工具链 – 使用 uv 管理 Python 依赖,共享 Node.js、Go 等语言工具链,减少重复安装。
- 🌍 广泛采用 – 已被 FastAPI、Ruff、Home Assistant 等众多开源项目使用或推荐。
AI
LobsterAI
LobsterAI 是由网易有道开发的一款全场景个人助理智能体,能够 24/7 处理数据分析、文档生成、视频制作、网页搜索、邮件发送等日常任务。它支持本地与沙箱双模式执行,具备持久化记忆、计划任务、移动端 IM 远程控制等功能,并通过严格的权限控制保障安全。该工具基于 Electron 构建,跨平台支持 macOS、Windows、Linux 及主流即时通讯平台。
- 🦞 全能个人助理 – 支持数据分析、PPT 制作、视频生成、文档写作、网页搜索、邮件处理等日常办公全场景任务。
- 🛡️ 本地与沙箱双模式 – 可在本地直接运行任务,或在隔离的 Alpine Linux 沙箱中安全执行。
- 🧠 持久化记忆系统 – 自动从对话中提取用户偏好与个人信息,实现跨会话的个性化服务。
- 📅 计划任务功能 – 支持通过对话或 GUI 创建定时任务(如每日新闻摘要、定期报告生成)。
- 📱 移动端远程控制 – 可通过 Telegram、Discord、钉钉、飞书等 IM 平台远程触发桌面端 Agent 执行任务。
- ⚙️ 模块化技能系统 – 内置 16 项技能(如网页搜索、文档生成、自动化脚本),支持自定义技能热加载。
- 🔐 多层安全控制 – 所有工具调用需用户明确授权,支持进程隔离、沙箱执行与工作目录边界限制。
- 🗃️ 本地化数据存储 – 使用 SQLite 数据库存储聊天记录、配置与任务信息,保障数据隐私。
- 🌐 跨平台支持 – 兼容 macOS(Intel/Apple Silicon)、Windows、Linux 桌面端,并通过 IM 扩展至移动端。
其他
理念重于实施
不要执着于已构建的方案,而应专注于追求的目标。将重心放在目标而非具体实施方式上,才能在现实变化时灵活调整方向。早期决策往往信息不足,若将其视为不可更改,只会增加修正成本。沉没成本不可避免,但固执己见是可以避免的。
- 🎯 锚定目标而非方法:关注核心目的,为调整留出空间
- 🔄 保持灵活修正能力:早期决策不必神圣化,应随认知更新而优化
- 💡 轻握方案重持目标:避免对工具或架构过度执着,聚焦问题本质
- 🧠 在行动中深化理解:通过实践迭代完善方案,拒绝前期完美主义
三位糟糕的管理者
本文作者通过描述三位性格与管理风格迥异的前任上司——"艺术家型"、"独裁者型"和"刀子型"领导,反思了领导力与管理能力的区别。文章指出,即使这些领导在战略层面表现出色、能为公司创造价值,他们仍可能因忽视团队沟通、缺乏同理心或行为怪异而成为"糟糕的管理者"。作者分享了如何针对不同管理者调整应对策略,并强调职场中适应不同领导风格、主动调整工作方式的重要性。
🎨 "艺术家型"领导重视创作而忽视团队管理
他们专注于艺术创作与愿景,却被安排管理团队。虽然聪明且有创造力,但缺乏对下属的关心与管理技巧,常以机械化的方式履行管理职责。👑 "独裁者型"领导以强势主导讨论,忽视团队意见
他们深陷问题细节且固执己见,习惯用职权压制对话,导致会议效率低下甚至做出错误决策。但他们对问题抱有强烈热情,可通过深度准备与其建立有效沟通。🔪 "刀子型"领导行为古怪且难以捉摸
他们具备领导能力,却完全不适合管理工作。沟通经常偏离主题,应对方式令人困惑,最佳策略是保持距离,让其以自身方式工作而不强行干预。🧠 领导与管理的核心区别在于战略与运营的侧重
领导者指明方向(战略),管理者关注执行(运营)。现实中许多高层领导者擅长战略却疏于管理,员工需学会区分并适应这种差异。🔄 应对糟糕管理者的关键是调整自身而非改变对方
面对不同管理者,需灵活调整沟通方式(如书面准备、深度调研、保持距离),通过改变自身习惯来应对挑战,并从中学习关键职场技能。💡 每个人都是独特的,职场需要持续适应与角色调整
与上司、团队及同事互动时,需根据对方特点调整行为模式。这种适应不仅是技巧,更是培养新视角与习惯的过程,有助于个人职业成长。