- 博客(76)
- 问答 (1)
- 收藏
- 关注
原创 Ergalics Studio:把科学实验室装进浏览器
Ergalics Studio 是一个开源的浏览器端科研工作站,将科学计算、仿真与可视化整合于网页中,无需安装。它提供四种模式(标准、流程、积木、代码)支持多层级用户,通过共享中间表示实现无缝互转;内置60个学科插件,覆盖物理、生物、地理等,均附带可验证的元数据;依托WebGPU实现并行计算,如N体引力、流体模拟、本征求解等高负载任务均可实时运行,真正实现“把实验室装进浏览器”。
2026-10-06 18:33:58
340
原创 NodeVerdict | 从 TracingChannel 到 CI 门禁,Node.js 可观测性的完整实践
本篇是系列收官,讲解分布式追踪的三大结构。Span Tree 用 parentSpanId 将扁平跨度还原为调用树;Root Cause 沿耗时占比回溯(若某子节点占总耗时>70%则下钻),定位到 self time 大的首个节点作为根因(最慢叶子不一定是根因);Service Topology 将树压平为服务间调用网络,高亮慢路径。最后结合AI给出修复建议。全文用“网关→订单→支付→数据库”示例完整走通,完成从追踪捕获到AI诊断的全链路闭环。
2026-08-07 07:44:25
12
原创 NodeVerdict | 自有平台之外:浏览器端 AI 根因分析
本篇讲解浏览器端AI根因分析(RCA)的纯前端链路。引擎先将追踪数据摘要化(限errors/bottlenecks条数),组合系统提示(强制指定输出JSON schema)和用户上下文喂给LLM。调用时用AbortController实现超时与用户取消。解析环节重点处理模型输出的现实小毛病:先试直接JSON.parse,失败则剥离Markdown围栏、或截取首对{}做容错降级。LLM的API Key存在浏览器localStorage,不外传后端,兼顾隐私与轻量化部署。
2026-08-07 07:42:14
108
原创 NodeVerdict | 微分调试:给执行轨迹做 git diff
本篇深度讲解微分调试的四个算法阶段。对齐用“操作名+时间窗口”匹配两张追踪的同一节点;指纹化用滑动窗口将操作序列转为哈希签名序列,压缩比较粒度;发散用双指针扫描指纹序列,找到首个不匹配位置作为分歧点;报告聚合变化统计(新增/删除/变更)并生成可读摘要。本质是对比“改动前”与“改动后”两份追踪,自动定位性能回归在哪个操作步骤开始分道扬镳,输出差异清单和定位信息。
2026-08-07 07:40:29
12
原创 NodeVerdict | 性能门禁:把追踪数据变成 CI 规则
本篇讲解性能门禁如何将同一分析引擎复用到CI场景。规则用YAML描述(metric/valueFrom/op/threshold/points),构建成有向无环图做拓扑排序,按依赖顺序评估。引擎从追踪统计中取值并与阈值比较,达标加分、不达标零分并标记失败。总分低于阈值(默认80)时process.exitCode=1,使CI流水线标红失败。支持safeDivide防除零和算术表达式,规则可写(p95+avg)/2<150。真正实现“Rules as Code”,将性能质量前移到发布前。
2026-08-06 05:16:36
308
原创 NodeVerdict | 把 GC 日志变成泄漏报告
本篇讲解从非结构化数据中提炼内存诊断信息。GC日志用正则解析 --trace-gc 输出,提取时间、类型(Scavenge/Mark-sweep)、堆大小和暂停耗时,区分minor快回收与major全堆回收,堆增长超50MB触发告警。内存时间线则对 process.memoryUsage() 采样数组做线性回归,用最小二乘法计算RSS、堆、外部内存的增长率(MB/s),通过趋势斜率而非单点判断泄漏,阈值设为外部>1MB/s或RSS>2MB/s触发异常告警,并可视化为折线图。
2026-08-06 05:14:44
354
原创 NodeVerdict | .ndv 二进制格式:为 WASM 解码器设计的紧凑布局
本篇讲 .ndv 二进制追踪格式:通过字符串驻留(重复字符串只存一份,事件用整数索引引用)使体积降至 JSON 的约45%;用 flags 位掩码控制可选字段按需追加,进一步省空间。文件含魔数 NDV、版本号和字符串表,解码带校验。统一加载器自动嗅探 NodeVerdict JSON、OTel JSON 和 .ndv 三种来源,OTel span 被适配为 start + end/error 双事件。
2026-08-06 05:12:19
322
原创 NodeVerdict | 火焰图、内存时间线:D3 的坑与取舍
本篇讲解CPU火焰图与堆快照的解析原理。CPU画像通过采样统计函数调用占比,用节点计数/总采样数×总时长计算宽度,核心区分self time(函数自身耗时)与total time(含子调用),定位热点。堆快照采用扁平化存储(节点+边+字符串池),通过动态字段索引适配V8版本;重点计算retained size(删除后可回收的总内存),并沿incoming边回溯GC根路径定位泄漏根源。内置三条泄漏检测规则:无界缓存、闭包捕获大对象、事件监听器累积。
2026-08-06 05:10:04
312
原创 NodeVerdict | 浏览器里跑 40 万条事件:Web Worker 与大文件流式导入
本篇解决浏览器处理64MB/42万条大追踪文件时主线程卡死的问题。采用 Web Worker 将解析流水线挪到后台线程,并通过类型安全的工厂封装通信协议,主线程只接收轻量分析结果。配合 增量JSON解析器(状态机分词,可续传),边读边拆事件,配合缓冲压缩防止内存线性增长。大小文件分流:小文件直接主线程解析,≥10MB自动走Worker+流式。实测支持200MB文件,导入时页面保持流畅可交互。
2026-08-06 05:05:27
349
原创 NodeVerdict | 瀑布图背后:异步操作链是怎么重建的
本篇解决瀑布图的父子嵌套关系重建问题。核心是时间包含规则:若父的开始≤子的开始且父的结束≥子的结束,则父包含子。算法采用最近包含扫描:从当前操作往前倒查,第一个能包住它的就是最近父节点,立即 break,精准还原层级。同时用扫描线栈一趟 O(n) 找父子依赖,用相邻间隙≤5ms判顺序依赖。最后用 P95 做相对瓶颈标注。这些算法共同将松散事件缝成带层级关系的瀑布图数据结构。
2026-08-05 16:11:32
270
原创 NodeVerdict | 一条数据跑通全程:事件解析的流水线设计
本篇详解 NodeVerdict 的解析流水线,四个纯函数工位串行处理:① 标准化:过滤脏数据并按时间排序;② 配对:用 operationId 将 start/end/error 事件缝合为完整“操作”,算出耗时,标定 success/error/incomplete 三种状态;③ 统计:为每频道计算 P50/P95/P99 分位数(比平均值抗长尾干扰);④ 索引:按频道和操作 ID 预建 Map,实现 O(1) 快速查询。这套设计一处实现,在瀑布图、CI 门禁、AI 引擎等多处复用。
2026-08-05 16:08:02
334
原创 NodeVerdict | 订阅 diagnostics_channel:一个 TracingEvent 是怎么诞生的
本篇手把手实现了 diagnostics_channel 订阅者。先区分了底层频道(大喇叭)与高级 TracingChannel(对讲机),并演示了五种事件(start/asyncStart/asyncEnd/end/error)的广播与订阅。重点攻克序列化四大坑:循环引用、BigInt、Buffer 和 Error,需用安全函数做“安检”替换。最后组装成 live-agent,通过 WebSocket 实时推送事件,并支持堆快照/CPU 采样等按需诊断命令,完成从“程序动静”到“真实数据”的闭环。
2026-08-05 16:05:34
530
原创 NodeVerdict | 为什么我们不再给 Node.js 打猴子补丁
过去,Node.js诊断靠“猴子补丁”偷偷篡改库的内部函数,存在ESM不兼容、顺序敏感、堆栈污染和版本碎片化四大硬伤。现在,用内置的TracingChannel构建了“广播电台”:库原生广播start/end/error等事件,工具被动订阅,两者零侵入、松耦合。核心是观察稳定的“对外协议”而非易变的“内部实现”,配合operationId关联事件链,实现干净、可靠的可观测性。
2026-08-05 16:01:39
349
原创 NodeVerdict:Node.js 原生诊断数据可视化工具
NodeVerdict 是一款基于浏览器的 Node.js 诊断数据查看工具,消费 diagnostics_channel.TracingChannel 原生事件,提供事件列表、瀑布图、CPU 火焰图、堆快照分析、GC 日志解析、性能对比及报告生成等功能。所有数据在浏览器本地处理,不上传任何服务器。项目还提供 WebSocket 实时监控 Agent 和性能门禁 CLI,适用于开发调试、性能分析和 CI 集成场景。
2026-08-05 15:10:26
809
原创 我思故我在:开源自主智能体 CogitoAgent 全解析——本地执行、持续思考、200+ 工具,让你的电脑里住进一个会自主行动的 AI
文章摘要(149字) CogitoAgent是一款开源AI智能体框架,采用"云端驱动+本地执行"架构,保障用户数据隐私。核心特性包括:3秒自动触发思考循环、200+跨领域工具集成、多智能体协作机制、Electron可视化界面及微信集成。其技术架构基于TypeScript,通过思考循环、状态机和工具注册表实现自主决策,支持沙箱安全执行与插件扩展。项目以Apache 2.0协议开源,为开发者提供可定制、隐私优先的AI助手解决方案。
2026-08-01 18:43:36
418
原创 CogitoAgent — 云端驱动本地执行的自主AI智能体
摘要: CogitoAgent是一款本地运行的自主AI智能体,具备持续思考、文件管理、代码执行等能力,所有数据处理均在本地完成,保障隐私安全。核心特性包括隐私优先设计、19个内置工具模块、安全沙箱执行环境及多会话管理。支持桌面模式、Dashboard模式和CLI模式,满足不同使用场景。项目开源并兼容OpenAI API,用户可通过GitHub或Gitee获取。安装需Node.js环境,提供详细的配置向导和交互方式,适合作为本地智能助手使用。
2026-06-27 12:04:15
536
原创 CogitoAgent 技术演进之路:从终端到桌面,从工具到生态 ——CogitoAgent开发实战(最终篇)
本文是专栏收官之作,回顾CogitoAgent从v1.0到v2.3的演进历程:从终端工具到Electron桌面应用,从switch-case硬编码到注册表架构,从单一会话到多会话管理。复盘了“完全本地”表述修正、路径安全、沙箱选型等关键教训。项目现已开源,19个工具模块、103+测试用例,欢迎共建——一个人能起头,一群人能推远。
2026-06-27 11:51:03
402
原创 桌面应用与多会话管理:让AI真正“住”进你的电脑 ——CogitoAgent开发实战(第十一篇)
CogitoAgent v2.3从终端走进桌面,采用Electron + 独立Agent进程 + WebSocket桥接架构,实现界面与推理分离。提供双模式:轻量悬浮窗(桌面模式)和全功能工作台(仪表盘模式),支持自由切换。多会话系统让对话可独立组织、持久化存储、自动压缩归档。工具调用可视化——彩色卡片展示执行状态,流式渲染流畅无闪烁。配置向导引导首次设置,共享组件库避免代码重复。
2026-06-27 11:40:57
400
原创 动态工具注册与插件化架构 ——CogitoAgent开发实战(十)
把工具的所有“元信息”集中在一起,用声明式配置代替命令式逻辑。// 文件操作// Git// 任务管理// ...既然注册表是“声明式配置”,为什么不能自动生成?// tools/index.js - 新增// ...
2026-06-20 09:06:57
352
原创 浏览器自动化:让AI替你上网 ——CogitoAgent开发实战(九)
浏览器自动化让AI能操作网页——点击、填表、截图、搜索。用Playwright实现,采用延迟加载策略,首次调用时才安装依赖。智能元素查找:按CSS选择器→XPath→文本匹配逐级尝试,AI只需描述“登录按钮”即可找到元素,无需记忆选择器语法。状态对比:操作前后捕获页面快照,对比URL、标题、表单值的变化,让用户清楚看到操作效果。一句话:给AI装上“眼睛”和“手”,让它能看网页、点按钮。
2026-06-19 03:42:18
197
原创 Git 集成:让AI帮你管理版本 ——CogitoAgent开发实战(八)
Git集成让AI帮你提交代码、查看日志、创建分支。核心挑战是安全——防止命令注入和危险操作。三层防御:第一层用execFile替代exec,参数数组传递,绕过shell;第二层白名单验证,只允许安全的子命令和选项,过滤危险字符;第三层危险操作确认,gitPush、gitReset等操作需用户输入y确认。一句话:给AI操作Git的能力,但不给破坏力。
2026-06-19 03:38:32
167
原创 代码执行与沙箱:让AI安全地“写代码、跑代码” ——CogitoAgent开发实战(七)
核心矛盾:AI能写代码,但不能让它破坏系统。JavaScript用vm沙箱——Object.create(null)切断原型链,冻结内置对象,移除process/require。Python用临时文件+execFile执行,限制环境变量和目录。两者共享30秒超时和10万字符输出限制。一句话:给AI能力,不给破坏力。
2026-06-19 03:36:03
232
原创 记忆系统:让AI拥有长期记忆 ——CogitoAgent开发实战(六)
没有记忆的AI,每次对话都是“初次见面”。记忆系统解决三个问题:怎么存、怎么找、怎么用。存储结构:每条记忆包含内容、标签、分类、时间戳和访问计数,存放在data/memory.json。保存失败会抛出错误,让调用方处理。搜索机制:内容匹配+10分、标签匹配+5分、分类匹配+3分,按总分排序返回最相关结果。搜索命中后自动更新访问计数。AI集成:通过系统提示词中列出的记忆工具(添加、搜索、更新、删除),AI能主动记忆和回忆信息。一句话:给AI装上“大脑皮层”,让它能记住、能回忆、能关联。
2026-06-19 03:31:27
435
原创 终端UI:让AI说话有颜色 ——CogitoAgent开发实战(五)
终端UI的核心挑战:如何让用户一眼分清“AI在想”“AI在说”“AI在做”?CogitoAgent用ANSI转义码实现分区展示——思考过程用深绿色边框包裹,正式回复用青色分隔线突出,工具调用用灰色缩进低调处理。流式输出配合分区标签的“门头”机制,实现了清晰的内容分区。状态标签突出关键信息,危险操作确认框防止误触。终端虽简陋,但设计得当同样能传递丰富的交互反馈。
2026-06-19 03:27:00
382
原创 联网能力:让AI看见更广阔的世界 ——CogitoAgent开发实战(四)
联网能力让AI突破本地限制,看到外部世界。本篇实现三种能力:搜索:调用搜索API获取结果,关键是格式化——把复杂的JSON转成易读文本,节省token,让AI直接使用而非解析结构。搜索有开关,可关闭。浏览:用系统命令(Windows用start)在默认浏览器打开链接,简单直接。抓取:用fetch下载HTML,Cheerio解析,核心是正文提取——移除导航/广告/评论,优先取article或main标签,再提取段落和链接。只支持静态网页,动态页面需用Puppeteer(太重大材小用,暂不引入)。
2026-06-08 03:39:10
361
原创 文件管理:让AI安全操作你的电脑 ——CogitoAgent开发实战(三)
文件操作的核心矛盾:给AI能力的同时,如何限制活动范围?解决方案是“工作区隔离”——所有操作必须在指定根目录内。路径解析用 path.resolve 归一化后检查是否以工作区开头,防止 .. 逃逸;符号链接需用 fs.realpath 检查真实路径。五个工具:ls 区分文件/目录,限制返回数量;read 通过扩展名+null字节检测二进制文件,超过5万字符截断;copy/mkdir/create 涉及写操作,需确保父目录存在。删除操作刻意排除,安全优先。一句话:给AI画个院子,告诉它只能在这里活动
2026-06-08 03:31:33
333
原创 工具系统:让AI真正“动手”做事 ——CogitoAgent开发实战(二)
AI只会输出文字,怎么让它操作文件、打开软件?本篇讲工具系统的设计思路。核心是设计一套AI能学会、程序能读懂的“暗号”——[TOOL]标记协议。AI输出[TOOL] ls(“src”) [/TOOL],程序用正则解析出工具名和参数,通过switch分发到对应函数执行,最后把结果写回对话历史,让AI“看到”自己做了什么。所有工具函数遵守统一契约:返回{success, data/error}。添加新工具只需五步:写函数→导出→注册→加提示词。
2026-06-08 03:25:06
357
原创 状态机与思考循环 ——CogitoAgent开发实战(一)
本篇讲解 CogitoAgent 如何既让 AI 主动思考,又能随时响应用户。核心是双状态机:THINKING 模式 AI 自主探索,AWAITING_INPUT 模式等待用户指令。通过递归 setTimeout 实现3秒循环,用户按 Enter 即可打断。AI 可用 [WAIT] 标签主动让出话语权。
2026-06-08 03:17:03
399
原创 让大模型真正“活”在你电脑里 ——CogitoAgent开发实战(前言)
CogitoAgent 是一个运行于本地的自主 AI 智能体,核心特点是持续思考与主动探索。与传统聊天机器人不同,它会在你指定的工作目录下自主活动——发现文件、读取内容、执行操作,并能随时响应你的打断指令。本文从技术路线、架构设计、所需技术栈、目标人群四个维度系统阐释项目全貌。核心技术包括:双状态机驱动的思考循环、[TOOL]标记的工具调用协议、流式响应的分区展示、150轮触发的智能记忆压缩。技术栈:Node.js + OpenAI 兼容 API + 原生文件系统
2026-06-08 02:59:19
978
原创 青创赛终评手记:最后的成功
4月26日,终评最后一天。我的展位被选为市领导巡展点。人大常委会的领导问我做这件事的念头从哪来,我说“踩坑踩多了,想让自己和别人少踩”。他说:“好好做。”下午闭幕式,一等奖奖牌挂在脖子上。被人理解,被人期待——这比奖牌本身更重。
2026-04-26 17:06:26
398
原创 青创赛终评手记:从布展到答辩,一个方法论选手的72小时(下)
4月25日,素养考察。抽小球定教室,五人只来了四个。候场时我们聊了几句,彼此有了底。命题关于Citywalk。队友从职场、情绪、体验切入,我把话题拉到健康中国和美丽城市。推代表时他们选了我。自由辩论双方都很克制,没有为难谁。下午公众开放,教授、医生、投资人、大学生……一个接一个来。聊了很久。被人认真对待,有时比获奖更难得。
2026-04-26 16:59:30
386
原创 青创赛终评手记:从布展到答辩,一个方法论选手的72小时(中)
4月24日,终评答辩。上午评委问“怎么用”,我说了很久,他们好像没完全听懂。下午一个评委走过来:“我看过你的材料了,直接演示。”我在Trae里调出skill,现场跑了一遍。他看的不只是屏幕,他看懂了。“挺好。”就两个字。专项奖时,我的项目理解成本太高,没有拉到评委。但被人理解这件事,一次就够了。
2026-04-26 16:45:57
610
原创 青创赛终评手记:从布展到答辩,一个方法论选手的72小时(上)
4月23日,我带着KT板和笔记本去巴蜀中学布展。展位只有一米宽,左边是南开,右边是永川。我贴着展板、调试着网站,等待明天的答辩。没有电路板,没有电机,只有一个方法论选手的48小时。地下运动场的灯光很白,风从操场吹下来。
2026-04-25 01:16:02
433
原创 赛前随笔:重庆市青创赛,一个方法论选手的碎碎念
四月十九日,离出发还有四天。桌上摊着论文、展板草稿,一杯茶早已凉透。我没有电路板,没有电机,没有能摸能看的实物。我只有四十二篇文章、五个项目、一篇六十三页的论文。核心是三个词:以边界为锚、从结果倒推、在取舍间平衡。这些东西,把我送进了青创赛决赛。到现在我还有点懵。不知道评委是怎么从一堆实物里把这个方法论捞出来的。但我知道,有人看懂了。我写的那些字,有人读完了。
2026-04-19 14:52:26
389
原创 技术判断力的形成:从“听专家的”到“信自己的”
技术判断力不是知识,而是“在约束下做选择”的能力。面对海量信息,大多数人陷入“判断外包”——借别人的结论用在自己的场景里。本文提出技术判断力的三块基石:信息筛选机制(区分事实与观点、建立信息源分级、三源互证);实战验证闭环(测试边界而非跑通Demo、设计证伪实验、建立体验档案);经验沉淀模型(提炼判断维度、记录上下文而非孤立结论、定期复盘)。判断力无法速成,但可通过“筛选→验证→沉淀”的循环持续积累,最终从“听专家的”走向“信自己的”。
2026-03-03 11:07:41
693
3
原创 BounceChat全攻略(后记):代码是写出来的,项目是磨出来的
从“桌面上要是有个会弹跳的小球就好了”这个念头,到 Gitee 上有陌生人点下第一个 star,再到 CSDN 原力值冲进重庆市月榜第 28 名——BounceChat 走了十八个月。这十八个月教会我:复杂的东西都是简单东西堆起来的,“不会”只是还没拆开看,参数调优不是数学是手感,状态机是管理复杂逻辑的神器。而最重要的那条是:被看见是坚持的自然结果。没人看的时候继续写,写着写着就有人 star 了。这不是什么励志故事,只是一个写着玩但写着写着就认真了的项目,和一个写着写着就停不下来的普通人。
2026-03-03 10:36:15
872
原创 代码之外的成长:工程思维的形成过程
工程思维不是天生的,也不是看书学来的,而是在一次次“被坑”之后慢慢长出来的。这篇文章还原了一个普通开发者的思维进化路径——从被自己的代码坑过、被线上故障教育过、和人协作摩擦过,到看着项目长大。你会发现,真正的成长往往不在代码本身,而在代码之外的那些教训里。
2026-03-03 02:08:19
1142
2
原创 重构:当你面对那堆“能跑但很烂”的代码
本文是一份面向真实场景的代码重构指南,帮助开发者面对“能跑但很烂”的代码时知道从哪下手。文章按照动手顺序展开:重构前,教你怎么判断代码值不值得改、没有测试时怎么安全起步、怎么克服不敢动手的恐惧;重构中,按意图分类给出近40种手法(拆、搬、改、替),每个都配有具体情景和思考过程;重构后,教你如何把价值翻译给不懂技术的人听。此外还讨论了节奏控制、常见场景的决策路径,以及什么时候该停下。贯穿始终的两个问题:这一步改完,代码更容易理解了?下次改这里更容易了?
2026-02-28 02:30:43
554
原创 当技术具有了情怀:认识 LingFrame——一个为老系统“续命”的 JVM 治理框架
LingFrame(灵珑)是一个面向长期运行系统的 JVM 运行时治理框架,旨在为“不敢动、停不下”的老旧单体应用提供第二条生命。它不拆微服务,而是在同一进程内通过三层架构实现单元化治理:Core负责权限仲裁与审计,Infrastructure代理拦截基础设施调用,Business单元独立运行。每个单元拥有独立的类加载器和Spring上下文,支持不停机热重载、蓝绿部署、灰度发布,内置熔断、限流、重试等弹性能力。核心设计理念是“零信任”——所有跨单元调用必须经过Core鉴权,每一次操作都有迹可循。这不是一个追
2026-02-28 01:54:59
1190
原创 AI智能体对话平台开发实战(后记):致每一个AI时代的创造者
本文是系列收官之作,写给每一位AI时代的创造者。在“什么都可以拿来”的今天,作者追问:为什么还要亲手造东西?答案藏在创造者的快感里——用是消费,造才是参与。文章回顾了从“凌云”诞生的过程,证明AI应用的门槛从未如此之低:不需要训练模型、不需要海量数据,只需要一个想法和一点动手能力。作者指出,AI时代最稀缺的不是算力而是想象力,技术越强大,人的独特性越珍贵。最后向读者发出邀请:动手做一个属于自己的智能体,哪怕只有一个。因为“一个人的创造是孤独的,一群人的创造是浪潮”。
2026-02-27 01:39:30
952
MultiMind开源项目 - AI智能体平台 - 模力方舟 - 快速搭建智能体
2026-02-27
FileVibe开源项目 - 加密算法 - AI智能图片解读 - Node.js - 文件加密工具 - 完整源码
2026-02-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅