ContextKit 是一款 CLI 工具兼 MCP 客户端,用于为 AI 编程智能体创建内嵌上下文的规格(spec)文件。它从可复用的 Jinja2 模板生成规格,并从各类 MCP 来源和用户输入中填充上下文。官方说明特别指出:ContextKit 虽然是一个 MCP 客户端,但它不使用 AI 模型,而是一个利用 MCP 生态进行上下文注入的工具。
用途方面,ContextKit 利用 MCP(Model Context Protocol)生态,将来自工单系统、数据库、文档存储和设计工具等来源的上下文注入到规格文件中。它围绕“规格模板”工作:这些模板是可复用的 Jinja2 模板文件,包含上下文变量,用于定义开发任务的通用结构和需求。上下文变量在可能时从 MCP 资源自动获取,在需要额外输入时则通过交互方式向用户收集。
主要能力包括:基于 Jinja2 的模板引擎,并额外提供全局函数 call_tool(server_name, tool_name, arguments)(调用 MCP 工具)与 get_resource(server_name, resource_uri)(获取 MCP 资源),同时支持全部标准 Jinja2 过滤器与函数。模板变量支持直接值(如 --var ticket_id=ACME-123)、JSON 对象(如 --var ticket='{"id": 123, "status": "open"}'),未提供时则交互式提示输入。还支持对上下文进行过滤与处理(如过滤敏感信息、提取特定字段),以及通过管道传入模板内容。
使用方式方面,环境要求为 Python 3.11 或更高版本。可从源码安装,也支持以可编辑模式安装;可编辑安装后可直接使用 cxk 命令,或在不使用可编辑安装的情况下使用。典型流程为:1. 在项目目录中初始化项目(会创建一个 .cxk/ 目录用于存储配置);2. 添加 MCP 服务器;3. 从模板创建规格。CLI 命令分为项目管理、MCP 服务器管理和规格生成三类。模板中可包含变量,例如模板 spec.md 中的变量会提示用户直接提供 prd 的值,或选择一个 MCP 工具来调用;也支持带 MCP 工具调用的模板和带 MCP 资源的模板。
适用场景为:需要为 AI 编程智能体准备带有现成上下文的规格文件,并希望复用版本控制中的规格模板、保持团队规格格式一致的开发团队。官方列出的价值包括:速度快(自动用相关上下文预填充规格)、降低成本(AI 智能体无需额外发起 MCP 调用)、代码库整洁(将可复用规格模板保存在版本控制中)、一致性(团队间标准化的规格格式)、可扩展(利用不断成长的 MCP 生态)。
限制方面,官方明确 ContextKit 不使用 AI 模型,它是用于上下文注入的工具,而非 AI 生成工具。需要 Python 3.11 或更高版本。关于具体收费、价格、平台支持范围以及更详细的使用步骤,当前资料暂未提供。