从零实现 GeekAgent —— Day16 插件框架
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 16 把能力封装成独立插件:plugins/ 目录里放一个子目录加 plugin.ts,主程序启动时自动加载,命令、工具、HTTP 服务都能即插即用。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 16 把能力封装成独立插件:plugins/ 目录里放一个子目录加 plugin.ts,主程序启动时自动加载,命令、工具、HTTP 服务都能即插即用。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 15 接入 MCP:配置文件里声明 server,启动时在 stdio 上跑 JSON-RPC,外部进程提供的工具直接进入模型的工具清单。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 14 复用 Day 13 的切块和 BM25 搜索,实现一个能采集网页与文件、按问题返回相关段落的轻量知识库。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 13 把长期记忆切成小块,用 BM25 找出相关内容,并在每轮对话前自动放进上下文。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 12 新增 `search` 和 `fetch`:一个按内容搜索仓库,一个读取网页并转成纯文本。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 11 把任务指令和工具打包成技能,支持按需加载、卸载,并控制模型当前能看到哪些工具。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 10 补上两种跨会话信息:AGENTS.md 保存项目规则,memory 保存运行中积累的经验,让新建会话后的模型既知道项目规则,也想得起以前确认过的偏好。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 9 让 Agent 先列清单再动手:加一张由模型维护的 TODO 表,再提供一个隔离上下文的子 Agent。主 Agent 安排顺序,子 Agent 处理边界清楚的小任务,当前进度始终显示在右侧分栏。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 8 给工具划边界,也给写入留后路:用 .geekagent/GeekAgent.json 划清权限与目录边界,再给每次文件写入保存最近状态——不该做的操作提前拦住,写错还能用 /undo 恢复。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 7 给终端换一张桌:程序暂时接管整个终端,左侧放消息流,右侧常驻一块用量面板——本轮/累计 tokens 与上下文占用比例一边聊一边看得见,退出后原终端内容恢复。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 6 做两件事:让一个进程内可以同时维护多条互相独立的会话(/new、/sessions、/open),再把整个会话集合连同当前 ID 一次性落成 JSON(/save、/load,退出自动保存)——「聊得长」升级成「分得开、留得住」。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 5 解决「聊得长、不淡忘」:当 history 数组只增不减、对话越来越长,通过压缩历史来控制上下文规模,让长对话不超出模型上下文窗口。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 4 把读写都从 shell 里拆出来:读走免确认的专用工具(ls/read/glob),写走展示 diff 再落盘的专用通道(write/patch),并把攒下的工具统一进一个注册表,让模型第一次走通「读→改→验证」的闭环。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 3 给模型接上第一个能碰真实机器的工具:在本地执行 shell 命令,并加上超时、输出截断、执行前确认三道护栏,让 Agent 真正「动手」。
7天从零实现Agent教程,用 TypeScript 动手写一个最简单的 Agent/Harness。Day 2 搭建工具调用循环:模型可以请求 get_current_time,程序执行后把真实时间交回模型,为后续命令与文件工具打下基础。
7天从零实现Agent教程(days implement agent from scratch tutorial),用 TypeScript/Node.js 动手写一个最简单的 Agent/Harness,从零实现 REPL 循环与流式多轮对话。本文介绍 REPL 是什么、为什么 Agent 的地基要选它,以及如何用 readline + OpenAI 兼容接口在不到 160 行代码里跑通「能聊」的第一步。