<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>C on Text Matrix</title><link>https://txtmix.com/tags/c/</link><description>Recent content in C on Text Matrix</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Tue, 21 Jul 2026 20:06:14 +0800</lastBuildDate><atom:link href="https://txtmix.com/tags/c/index.xml" rel="self" type="application/rss+xml"/><item><title>codebase-memory-mcp 架构拆解：用 C + tree-sitter 把 AI 编程助手变成知识图谱查询器</title><link>https://txtmix.com/posts/tech/deusdata-codebase-memory-mcp-code-intelligence-guide/</link><pubDate>Thu, 18 Jun 2026 15:05:00 +0800</pubDate><guid>https://txtmix.com/posts/tech/deusdata-codebase-memory-mcp-code-intelligence-guide/</guid><description>&lt;h2 id="学习目标">学习目标&lt;/h2>
&lt;p>读完本文应能：&lt;/p>
&lt;ol>
&lt;li>解释 codebase-memory-mcp 的核心价值：明白为什么需要代码情报引擎，以及它与传统 grep、RAG、LSP 方案的边界差异&lt;/li>
&lt;li>理解四层架构：掌握 L1 解析层（tree-sitter + Hybrid LSP）、L2 索引管道（RAM-first + LZ4 + Aho-Corasick）、L3 查询层（知识图谱 + Cypher 子集）、L4 Agent 层（14 个 MCP 工具）各自解决的工程问题&lt;/li>
&lt;li>在本地环境中完成一次完整部署：从安装二进制文件到配置 Claude Code / Codex / Cursor 等 AI 编程助手&lt;/li>
&lt;li>使用 14 个 MCP 工具完成一次&amp;quot;索引 → 查询 → 影响分析&amp;quot;的完整任务流&lt;/li>
&lt;li>评价 codebase-memory-mcp 的适用边界：它能做、它承认做不到的，以及在什么场景下应该选用它而不是其他方案&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="目录">目录&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="#%e5%ad%a6%e4%b9%a0%e7%9b%ae%e6%a0%87" rel="">学习目标&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%b8%80%e6%a0%b8%e5%bf%83%e5%88%a4%e6%96%ad%e8%bf%99%e4%b8%8d%e5%8f%aa%e6%98%af%e6%9b%b4%e5%bf%ab%e7%9a%84-grep%e8%80%8c%e6%98%af%e4%bb%93%e5%ba%93%e7%ba%a7%e7%bb%93%e6%9e%84%e5%8c%96%e8%ae%b0%e5%bf%86" rel="">一、核心判断：这不只是&amp;quot;更快的 grep&amp;quot;，而是仓库级结构化记忆&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%ba%8c%e7%b3%bb%e7%bb%9f%e5%9c%b0%e5%9b%be%e4%bb%8e%e6%ba%90%e4%bb%a3%e7%a0%81%e5%88%b0-mcp-%e5%b7%a5%e5%85%b7%e7%9a%84%e5%9b%9b%e5%b1%82%e7%bb%93%e6%9e%84" rel="">二、系统地图：从源代码到 MCP 工具的四层结构&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%b8%89l1-%e8%a7%a3%e6%9e%90%e5%b1%82158-%e7%a7%8d%e8%af%ad%e8%a8%80%e7%9a%84-grammar-%e5%b7%b2%e7%bb%8f%e8%b6%b3%e5%a4%9f%e8%a6%86%e7%9b%96%e5%a4%a7%e5%a4%9a%e6%95%b0%e5%9c%ba%e6%99%af" rel="">三、L1 解析层：158 种语言的 grammar 已经足够覆盖大多数场景&lt;/a>
&lt;ul>
&lt;li>&lt;a href="#31-vendored-tree-sitter-%e7%9a%84%e9%80%89%e6%8b%a9" rel="">3.1 vendored tree-sitter 的选择&lt;/a>&lt;/li>
&lt;li>&lt;a href="#32-hybrid-lsp9-%e7%a7%8d%e8%af%ad%e8%a8%80%e7%9a%84%e8%af%ad%e4%b9%89%e7%b1%bb%e5%9e%8b%e8%a7%a3%e6%9e%90" rel="">3.2 Hybrid LSP：9 种语言的语义类型解析&lt;/a>&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;a href="#%e5%9b%9bl2-%e7%b4%a2%e5%bc%95%e7%ae%a1%e9%81%93ram-first--lz4--%e8%9e%8d%e5%90%88-aho-corasick" rel="">四、L2 索引管道：RAM-first + LZ4 + 融合 Aho-Corasick&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%ba%94l3-%e6%9f%a5%e8%af%a2%e5%b1%82%e7%9f%a5%e8%af%86%e5%9b%be%e8%b0%b1--cypher-%e5%ad%90%e9%9b%86--14-%e4%b8%aa-mcp-%e5%b7%a5%e5%85%b7" rel="">五、L3 查询层：知识图谱 + Cypher 子集 + 14 个 MCP 工具&lt;/a>
&lt;ul>
&lt;li>&lt;a href="#51-%e8%8a%82%e7%82%b9%e7%b1%bb%e5%9e%8b%e4%b8%8e%e5%85%b3%e7%b3%bb" rel="">5.1 节点类型与关系&lt;/a>&lt;/li>
&lt;li>&lt;a href="#52-cypher-%e5%ad%90%e9%9b%86" rel="">5.2 Cypher 子集&lt;/a>&lt;/li>
&lt;li>&lt;a href="#53-14-%e4%b8%aa-mcp-%e5%b7%a5%e5%85%b7" rel="">5.3 14 个 MCP 工具&lt;/a>&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;a href="#%e5%85%ad%e4%bb%bb%e5%8a%a1%e6%b5%81%e6%a1%88%e4%be%8b%e4%bb%8e-%e9%87%8d%e6%9e%84-userserviceauthenticate-%e5%88%b0%e5%ae%89%e5%85%a8%e5%86%b3%e7%ad%96" rel="">六、任务流案例：从 &amp;ldquo;重构 UserService.authenticate&amp;rdquo; 到安全决策&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%b8%83%e5%9f%ba%e5%87%86%e8%a7%a3%e8%af%bb83--10--21-%e4%b8%89%e4%b8%aa%e6%95%b0%e5%ad%97%e7%9a%84%e8%be%b9%e7%95%8c" rel="">七、基准解读：83% / 10× / 2.1× 三个数字的边界&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%85%ab%e5%ae%89%e5%85%a8%e4%b8%8e%e5%8f%af%e5%ae%a1%e8%ae%a1%e6%80%a7%e5%8d%95%e4%b8%80%e4%ba%8c%e8%bf%9b%e5%88%b6--slsa-3--%e5%85%a8%e6%9c%ac%e5%9c%b0%e5%a4%84%e7%90%86" rel="">八、安全与可审计性：单一二进制 + SLSA 3 + 全本地处理&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%b9%9d%e9%87%87%e7%94%a8%e9%a1%ba%e5%ba%8f%e4%b8%8e%e9%80%82%e7%94%a8%e8%be%b9%e7%95%8c" rel="">九、采用顺序与适用边界&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%8d%81%e6%80%bb%e7%bb%93%e8%ae%a9-ai-%e7%bc%96%e7%a8%8b%e5%8a%a9%e6%89%8b%e4%bb%8e%e8%af%bb%e4%bb%a3%e7%a0%81%e5%8d%87%e7%ba%a7%e5%88%b0%e6%87%82%e4%bb%a3%e7%a0%81" rel="">十、总结：让 AI 编程助手从&amp;quot;读代码&amp;quot;升级到&amp;quot;懂代码&amp;quot;&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%87%aa%e6%b5%8b%e9%a2%98" rel="">自测题&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e7%bb%83%e4%b9%a0" rel="">练习&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%bf%9b%e9%98%b6%e8%b7%af%e5%be%84" rel="">进阶路径&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%bc%98%e5%8c%96%e8%af%b4%e6%98%8e" rel="">优化说明&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h1 id="codebase-memory-mcp-架构拆解用-c--tree-sitter-把-ai-编程助手变成知识图谱查询器">codebase-memory-mcp 架构拆解：用 C + tree-sitter 把 AI 编程助手变成知识图谱查询器&lt;/h1>
&lt;p>&lt;code>DeusData/codebase-memory-mcp&lt;/code> 想解决的问题不是&amp;quot;AI 怎么写代码&amp;quot;，而是&amp;quot;AI 怎么&lt;strong>理解&lt;/strong>代码&amp;quot;。在 AI 编程助手普遍依赖 &lt;code>grep&lt;/code> + &lt;code>read&lt;/code> 的今天，它把整个仓库索引成一张可查询的知识图谱，让 Claude Code / Codex / Gemini CLI 通过 14 个 MCP 工具直接拿到&amp;quot;谁调用谁、HTTP 路由在哪里、修改一个函数会影响哪些文件&amp;quot;的结构化答案。截至 2026 年 6 月中旬，这个 5,965 Stars、MIT 许可的项目在 arXiv 上同步发表了技术报告（arXiv:2603.27277），基准显示 83% 回答质量、10× 减少 token、2.1× 减少工具调用。&lt;/p></description></item><item><title>stb：C/C++ 单文件公共领域库全集</title><link>https://txtmix.com/posts/tech/stb-c-single-file-public-domain-libraries/</link><pubDate>Mon, 13 Apr 2026 23:51:22 +0800</pubDate><guid>https://txtmix.com/posts/tech/stb-c-single-file-public-domain-libraries/</guid><description>&lt;h2 id="-学习目标">📋 学习目标&lt;/h2>
&lt;p>通过本文，您将掌握：&lt;/p>
&lt;ol>
&lt;li>&lt;strong>理解 stb 的核心价值&lt;/strong> — 了解单文件公共领域库的优势和使用场景&lt;/li>
&lt;li>&lt;strong>掌握 stb 的安装与基本使用&lt;/strong> — 学会如何在项目中集成 stb 库&lt;/li>
&lt;li>&lt;strong>学会选择适合的 stb 库&lt;/strong> — 根据需求选择图像、音频、3D 图形、游戏开发或实用工具库&lt;/li>
&lt;li>&lt;strong>了解 stb 的许可证优势&lt;/strong> — 明确公共领域许可证的使用自由度&lt;/li>
&lt;li>&lt;strong>掌握 stb 的实际应用场景&lt;/strong> — 独立游戏开发、嵌入式系统、跨平台项目&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="-目录">📑 目录&lt;/h2>
&lt;ol>
&lt;li>&lt;a href="#%e4%b8%ba%e4%bb%80%e4%b9%88%e9%80%89%e6%8b%a9-stb" rel="">为什么选择 stb？&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%9b%be%e5%bd%a2%e5%9b%be%e5%83%8f7-%e4%b8%aa%e5%ba%93" rel="">图形图像（7 个库）&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e9%9f%b3%e9%a2%912-%e4%b8%aa%e5%ba%93" rel="">音频（2 个库）&lt;/a>&lt;/li>
&lt;li>&lt;a href="#3d-%e5%9b%be%e5%bd%a23-%e4%b8%aa%e5%ba%93" rel="">3D 图形（3 个库）&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e6%b8%b8%e6%88%8f%e5%bc%80%e5%8f%912-%e4%b8%aa%e5%ba%93" rel="">游戏开发（2 个库）&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%ae%9e%e7%94%a8%e5%b7%a5%e5%85%b72-%e4%b8%aa%e5%ba%93" rel="">实用工具（2 个库）&lt;/a>&lt;/li>
&lt;li>&lt;a href="#ui1-%e4%b8%aa%e5%ba%93" rel="">UI（1 个库）&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%85%b6%e4%bb%96%e5%ba%93" rel="">其他库&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e9%a1%b9%e7%9b%ae%e7%bb%93%e6%9e%84" rel="">项目结构&lt;/a>&lt;/li>
&lt;li>&lt;a href="#faq" rel="">FAQ&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%87%aa%e6%b5%8b%e9%a2%98" rel="">自测题&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e7%bb%83%e4%b9%a0" rel="">练习&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%bf%9b%e9%98%b6%e8%b7%af%e5%be%84" rel="">进阶路径&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%b5%84%e6%96%99%e5%8f%a3%e5%be%84%e8%af%b4%e6%98%8e" rel="">资料口径说明&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e6%80%bb%e7%bb%93" rel="">总结&lt;/a>&lt;/li>
&lt;/ol>
&lt;hr>
&lt;p>&lt;strong>stb&lt;/strong> 是由 Sean T. Barrett（网名 nothings）发起的单文件公共领域库项目，包含 21 个精选 C/C++ 库，共 51,166 行代码。所有库均采用公共领域（Public Domain）或 MIT 双许可证，无任何归属要求，可任意使用再分发。&lt;/p></description></item><item><title>llama.cpp：104k Stars 纯C/C++实现的高效LLM推理框架</title><link>https://txtmix.com/posts/tech/llama-cpp-gogu-gpu-llm-inference-guide/</link><pubDate>Mon, 06 Apr 2026 22:45:00 +0800</pubDate><guid>https://txtmix.com/posts/tech/llama-cpp-gogu-gpu-llm-inference-guide/</guid><description>&lt;h2 id="学习目标">学习目标&lt;/h2>
&lt;p>通过本文，你将全面掌握以下核心能力：&lt;/p>
&lt;ul>
&lt;li>深入理解 llama.cpp 的项目定位和技术架构&lt;/li>
&lt;li>学会在各种硬件上运行 LLM（CPU、GPU、Apple Silicon）&lt;/li>
&lt;li>掌握 GGUF 格式模型的下载和使用&lt;/li>
&lt;li>理解量化技术原理和不同量化级别的选择&lt;/li>
&lt;li>学会构建 llama.cpp Server 并通过 API 调用&lt;/li>
&lt;li>掌握性能优化技巧和内存管理&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="目录">目录&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="#%e5%ad%a6%e4%b9%a0%e7%9b%ae%e6%a0%87" rel="">学习目标&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e9%a1%b9%e7%9b%ae%e6%a6%82%e8%bf%b0" rel="">项目概述&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e6%8a%80%e6%9c%af%e6%9e%b6%e6%9e%84" rel="">技术架构&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%bf%ab%e9%80%9f%e5%bc%80%e5%a7%8b" rel="">快速开始&lt;/a>&lt;/li>
&lt;li>&lt;a href="#api-%e6%9c%8d%e5%8a%a1%e5%99%a8" rel="">API 服务器&lt;/a>&lt;/li>
&lt;li>&lt;a href="#docker-%e9%83%a8%e7%bd%b2" rel="">Docker 部署&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e4%b8%8e-langchain-%e9%9b%86%e6%88%90" rel="">与 LangChain 集成&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e6%80%a7%e8%83%bd%e4%bc%98%e5%8c%96" rel="">性能优化&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e6%a8%a1%e5%9e%8b%e8%bd%ac%e6%8d%a2" rel="">模型转换&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e5%b8%b8%e8%a7%81%e9%97%ae%e9%a2%98" rel="">常见问题&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e6%95%85%e9%9a%9c%e6%8e%92%e6%9f%a5" rel="">故障排查&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%87%aa%e6%b5%8b" rel="">自测&lt;/a>&lt;/li>
&lt;li>&lt;a href="#%e8%bf%9b%e9%98%b6%e8%b7%af%e5%be%84" rel="">进阶路径&lt;/a>&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="1-项目概述">1. 项目概述&lt;/h2>
&lt;h3 id="11-是什么">1.1 是什么&lt;/h3>
&lt;p>&lt;strong>llama.cpp&lt;/strong> 是 Facebook LLaMA 架构的纯 C/C++ 移植版本，专门用于在 CPU 和 GPU 上高效推理 GGUF 格式的大语言模型（LLM）。它的核心特点是&lt;strong>无需 GPU 即可运行 LLM&lt;/strong>，支持多种硬件架构。&lt;/p></description></item></channel></rss>