- 博客(12)
- 收藏
- 关注
原创 用 tmux 解决 Happy/Codex 关窗后掉线的问题
摘要: 使用 tmux 解决 Happy/Codex 终端关闭后掉线问题。当直接关闭终端窗口时,Happy/Codex 会话会随终端终止,导致前端显示在线但实际无法响应。通过 tmux 托管会话(tmux -CC new -s happy),先启动守护进程和 Codex,再按 esc 安全分离会话,可确保关闭终端后服务持续运行。后续可通过 tmux -CC attach -t happy 重新连接。相比直接后台运行,tmux 提供了更稳定的会话管理方式,避免因终端关闭导致的意外中断。
2026-04-02 12:15:03
304
原创 用 Codex 接管当前 Chrome 调试会话:Chrome DevTools MCP 实战指南
本文介绍了如何通过Chrome DevTools MCP实现Codex与Chrome浏览器的无缝对接,让AI助手能直接访问页面运行时信息。方案采用官方工具链,无需安装插件,通过--autoConnect模式复用现有浏览器会话。配置步骤包括启用Chrome远程调试、添加MCP服务器、重启Codex验证连接。该方案可让Codex直接读取Console日志、Network请求、页面DOM和截图,显著提升前端调试效率。文章还提供了典型使用场景、故障排查方法和最小工作流建议,特别适合需要结合代码和运行时信息进行问题定
2026-03-25 20:01:09
628
原创 Git Commit 的撤回与修改
摘要:Git 提供了多种方式修改提交历史,主要分为 reset 和 --amend 两类操作。reset 有三种模式:--soft 保留改动在暂存区,--mixed(默认)保留改动在工作区,--hard 彻底丢弃改动。--amend 则直接修改最新提交。未推送时可安全使用这些操作,已推送后应改用 revert 避免影响协作。选择方案取决于需求:修改最新提交用 --amend,重新组织提交用 reset --soft/mixed,彻底丢弃用 reset --hard(慎用)。
2026-03-23 19:18:20
345
原创 权限设计模式【前端 RBAC】
本文基于一个真实的中后台项目落地经验,总结一套“企业级可演进”的前端权限设计模式:在后端暂时无法改造的前提下,用把“能不能进模块 / 菜单显示 / 按钮能不能点 / 弹窗能不能提交”统一收敛到一套可配置、可扩展、可测试的体系里。本文既是设计思路讲解,也给出可直接复制的实现范式(本仓库的实现为 React 版本;后续将补充 Vue/React 的可运行示例代码目录)。
2026-03-20 18:13:05
404
原创 OpenClaw(Mac版)安装与飞书对接完整教程
本文提供Mac系统下OpenClaw安装与飞书对接的完整教程。首先需通过Homebrew安装Python 3.11(避免升级系统Python),然后安装OpenClaw核心程序并完成首次配置。重点包括:对接阿里云/Kimi的LLM模型、配置飞书插件与凭证、设置群聊策略等。最后通过终端启动机器人并完成飞书授权。教程包含详细命令行操作和配置选项说明,适配国内飞书环境,适合新手快速部署。
2026-03-17 16:45:15
390
原创 SEO 配置指南
HTML Meta SEO 配置指南摘要 核心SEO标签配置 Canonical标签:解决重复内容问题,集中权重到规范URL Title标签:50-60字符,包含品牌词+关键词,每个页面唯一 Meta Description:150-160字符,自然吸引人的描述,含CTA Keywords标签:虽权重降低,仍建议包含1-3个核心关键词 社交媒体优化 Open Graph标签:设置分享时的标题、描述和图片 Twitter Card标签:优化Twitter平台的分享展示 基础设置 字符编码、视口设置和语言声明
2026-01-08 11:18:10
1019
原创 作用域和作用域链
本文介绍了JavaScript中的作用域概念及其类型。作用域决定了变量和函数的可访问性,主要分为全局作用域、函数作用域和ES6新增的块级作用域。全局作用域中的变量在任何地方都可访问,而函数作用域和块级作用域则限制了变量的访问范围。文章还解释了作用域链的形成机制,即当在当前作用域找不到变量时,会逐层向上查找。此外,重点说明了let和const带来的块级作用域特性,包括变量不提升、禁止重复声明等特点,并通过循环绑定示例展示了块级作用域的实际应用价值。最后,文章阐述了自由变量在作用域链中的查找规则。
2025-11-25 17:23:26
861
原创 JS 事件循环
摘要: JavaScript执行机制基于事件循环模型,主要由执行栈和事件队列组成。JS引擎执行同步代码时使用执行栈,异步函数由宿主环境(如浏览器)管理,其回调被放入事件队列。浏览器线程包括JS引擎线程、GUI渲染线程等协作完成工作。事件队列分为宏任务(如setTimeout)和微任务(如Promise.then),JS引擎优先处理微任务队列。Promise的执行特点是立即执行构造函数代码,then/catch回调进入微任务队列。理解事件循环机制对掌握JS异步编程至关重要,通过分析执行顺序和任务队列可准确预测
2025-11-14 16:20:29
808
原创 原型和原型链
中最原始的创建对象的方式,一个对象是通过克隆另外一个对象所得到的。就像克隆羊多莉一样,通过克隆可以创造一个一模一样的对象,被克隆的对象是新对象的原型对象。中的原型以及原型链成为了这门语言最大的一个特点,在面试的时候,面试官也经常会围绕原型和原型链展开提问。中,每一个对象,都有一个原型对象。通过上面的代码,我们发现所有的构造函数,无论是自定义的还是内置的,它们的原型对象都是同一个对象。的函数,我们称之为构造函数,为了区分普通函数和构造函数,一般构造函数的函数名。一次,就会生成一个新的对象,而在构造函数中的。
2025-11-13 16:01:27
923
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅