跳转至

2026-04-27 学习日志

今日主题

  • ls 按时间排序
  • Jina MCP Server 配置与工具过滤
  • Claude Code MEMORY.md 原理与架构

新增认知

ls 按时间排序

  • ls -lt 按修改时间降序排列,-l 显示详情,-t 按时间排序;加 -r 反转为升序(最旧在前)。

Jina MCP Server 配置与工具过滤

  • Jina MCP 是部署在 Cloudflare Workers 上的远程 MCP Server,主端点 /v1,/sse 仅为向后兼容别名,两者都使用 Streamable HTTP transport
  • 工具过滤通过 URL query 参数在服务端实现(include_tools / exclude_tools / include_tags / exclude_tags),被过滤的工具不会注册到客户端,节省 context window
  • 过滤优先级:exclude_tools > exclude_tags > include_tools > include_tags,5 个标签分类:search / parallel / read / utility / rerank
  • 验证过滤生效不能看 / 路径(返回静态工具列表),需要 MCP 客户端连接后才能看到实际效果
  • 客户端也可通过 mcp-remote 的 --ignore-tool 参数逐个排除,但服务端过滤更高效

Claude Code MEMORY.md 原理与架构

  • MEMORY.md 承担双重角色:一是 AI 管理记忆的操作手册(行为指南),通过 loadMemoryPrompt() 注入系统提示词,包含四种记忆类型定义、保存流程、何时访问、推荐前验证等指令;二是跨会话索引文件,存储指向主题文件的短链接行(- Title — one-line hook)。两者共同构成记忆系统的入口点。
  • 索引与内容分离设计:MEMORY.md 只存简短的索引行,实际记忆内容存在各自独立的主题文件中(如 user_role.md、feedback_testing.md)。每次会话只加载薄索引 + 行为指南,避免单文件膨胀挤占有效上下文。
  • 记忆写入有两条路径:主 agent 在线写入 + 后台 extractMemories 子 agent 兜底(查询循环结束时启用独立 fork 分析最近消息、补写遗漏)。同时 MEMORY.md 有 200 行 / 25KB 硬性截断保护,超出则截断并追加 WARNING。
  • 四种记忆类型(user/feedback/project/reference)是强类型约束,配套明确的'不保存规则':代码模式/约定/架构(可从项目状态直接读)、git 历史(git log 更权威)、调试方案(修复在代码里)、CLAUDE.md 已有内容、临时任务状态——全部明确排除,防止记忆系统被滥用为万能存储。
  • 推荐前验证原则(Before recommending from memory):记忆是写入时刻的时间点快照,可能已过时。AI 在基于记忆做出推荐前,必须验证记忆所指的文件/函数/标志是否仍然存在。'The memory says X exists' ≠ 'X exists now'。
  • KAIROS/助理模式:长寿命会话切换到追加日志模式,AI 把新记忆追加到 logs/YYYY/MM/YYYY-MM-DD.md,夜间通过 /dream 技能提炼为主题文件 + 重新生成 MEMORY.md 索引。这避免了频繁更新 MEMORY.md 导致的 prompt 缓存失效。