法学硕士背景
LLM Context 是一款工具,可帮助开发人员快速将代码/文本项目中的相关内容注入大型语言模型 (LLM) 聊天界面。它利用.gitignore
模式进行智能文件选择,并通过命令行提供简化的剪贴板工作流程,并通过模型上下文协议 (MCP) 提供直接的 LLM 集成。
注:本项目与多位 Claude Sonnets 合作开发,包括 3.5、3.6 和 3.7 版本(以及最近的 Grok-3),开发过程中使用 LLM Context 本身进行代码共享。代码库中的所有代码均由我(😇,@restlessronin)人工整理。
v0.3.0 中的重大变更
我们已切换到基于 Markdown(+ YAML 前置内容)的规则系统,取代了之前基于 TOML/YAML 的配置文件。这是一项重大变更,会影响配置。有关新规则格式及其使用方法的详细信息,请参阅用户指南。
为什么选择 LLM Context?
要深入了解 LLM Context 背后的原因及其 AI 辅助开发方法,请参阅我们的文章: LLM Context:利用 Vanilla AI 聊天进行开发
要了解 LLM Context 在实际案例和工作流程中的实际应用,请阅读: 《完整的 Context 魔法——当 AI 最终理解你的整个项目时》
当前使用模式
- 直接 LLM 集成:通过 MCP 协议与 Claude Desktop 进行本机集成
- 聊天界面支持:通过 CLI/剪贴板与任何 LLM 聊天界面配合使用
- 针对具有持久上下文的界面(如 Claude Projects 和 Custom GPT)进行了优化
- 与标准聊天界面同样适用
- 项目类型:适用于代码存储库和文本/markdown/html 文档集合
- 项目规模:针对符合法学硕士(LLM)项目范围的项目进行了优化。大型项目支持正在开发中。
安装
使用uv安装 LLM Context:
要升级到最新版本:
警告:LLM Context 正在积极开发中。更新可能会覆盖以
lc-
为前缀的配置文件。因此,我们建议对所有配置文件进行版本控制。
快速入门
MCP 与 Claude Desktop
添加到‘claude_desktop_config.json’:
配置完成后,您可以通过两种简单的方式开始处理您的项目:
- 说:“我想处理我的项目”克劳德会询问你项目根路径。
- 或者直接指定:“我想使用我的项目/path/to/your/project”Claude 将自动加载项目上下文。
首选工作流程:将项目 UI 与 MCP 相结合
为了获得最佳效果,请将 Claude 的项目知识界面 (Project Knowledge UI) 中的初始上下文与 MCP 中的动态代码访问相结合。这样既能全面了解内容,又能访问最新的变更。有关详细信息和示例,请参阅完整的 Context Magic 。
CLI 快速入门和典型工作流程
- 导航到项目的根目录
- 初始化存储库:
lc-init
(只需一次) - 选择文件:
lc-sel-files
- (可选)检查
.llm-context/curr_ctx.yaml
中选定的文件 - 生成上下文:
lc-context
(带有可选标志-p
表示提示,-u
表示用户注释) - 与您喜欢的界面一起使用:
- 项目知识(Claude Pro):粘贴到知识部分
- GPT 知识(自定义 GPT):粘贴到知识部分
- 常规聊天:使用
lc-context -p
来添加说明
- 当法学硕士 (LLM) 要求提供其他文件时:
- 从 LLM 复制文件列表
- 运行
lc-clip-files
- 将内容粘贴回 LLM
核心命令
lc-init
:初始化项目配置lc-set-rule <n>
:切换规则(系统规则以“lc-”为前缀)lc-sel-files
:选择要包含的文件lc-sel-outlines
:选择用于生成大纲的文件lc-context [-p] [-u] [-f FILE]
:生成并复制上下文-p
:包含提示说明-u
:包含用户注释-f FILE
:写入输出文件
lc-prompt
:为 LLM 生成项目说明lc-clip-files
:处理 LLM 文件请求lc-changed
:列出自上次上下文生成以来修改的文件lc-outlines
:生成代码文件的大纲lc-clip-implementations
:提取 LLM 请求的代码实现(不支持 C/C++)
功能和高级用法
LLM Context 提供了用于自定义如何捕获和呈现项目内容的高级功能:
- 使用
.gitignore
模式进行智能文件选择 - 针对不同用例的多个基于规则的配置文件
- 系统规则(以“lc-”为前缀)提供默认功能
- 用户定义的规则可以独立创建或扩展现有规则
- 代码导航功能:
- 智能代码大纲:允许 LLM 查看代码库的高级结构,并使用自动生成的大纲突出显示重要的定义
- 定义实现提取:使用
lc-clip-implementations
命令,粘贴 LLM 在审查代码大纲后要求的特定定义的完整实现
- 可定制的模板和提示
请参阅我们的用户指南以获取这些功能的详细文档。
类似工具
查看我们全面的替代方案列表- 解决此问题的工具数量之多证明了其对开发者社区的重要性。
致谢
LLM Context 源自一系列 AI 辅助开发工具:
- 该项目继承了LLM Code Highlighter ,这是我为 IDE 集成而开发的 TypeScript 库。
- 这个概念起源于我在RubberDuck上的工作,后来通过对Continue的贡献得以延续。
- LLM Code Highlighter 的灵感很大程度上来源于Aider Chat 。我与 GPT-4 合作,将 Aider Chat 的几个 Python 模块翻译成了 TypeScript,在重构代码的同时保留了原有的功能。
- 该项目使用来自 Aider Chat 的 tree-sitter标签查询文件。
- LLM Context 体现了 AI 辅助开发的强大功能,在 GPT-4 和 Claude-3.5-Sonnet 的帮助下从 Python 过渡到 TypeScript,再过渡回 Python。
我感谢开源社区的创新和人工智能的帮助,它们推动了这个项目的发展。
我很感谢Claude-3.5-Sonnet在这个项目开发中提供的帮助。
执照
本项目遵循 Apache 许可证 2.0 版。详情请参阅许可证文件。
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
通过 MCP 或剪贴板与 LLM 共享代码上下文
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that provides LLMs access to other LLMsLast updated 4 months ago455957JavaScriptMIT License
- -securityAlicense-qualityA VS Code extension provides a MCP server that exposes Roslyn language features. It enables tools like find usages, go to definition, quick info, etc.Last updated 11 days ago150TypeScriptAGPL 3.0
- -securityAlicense-qualityAn MCP server that provides tools to load and fetch documentation from any llms.txt source, giving users full control over context retrieval for LLMs in IDE agents and applications.Last updated 3 days ago553PythonMIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that connects LLMs to the Compiler Explorer API, enabling them to compile code, explore compiler features, and analyze optimizations across different compilers and languages.Last updated 4 months ago513Python