Context Engineering AI编程系统
本指南专为JeecgBoot 3.8.2+框架设计,基于Context Engineering理论和CoT推理链,通过A2A (Agent-to-Agent)协议集成,实现从需求理解到代码生成的完整AI驱动开发生命周期。
核心技术理念
DeepWiki启发:可对话的智能文档系统
Context Engineering融合了DeepWiki的核心理念,将静态技术文档转化为可查询、可对话的活知识库。
核心特性:
- 交互式知识探索:自然语言查询复杂代码库
- 深度代码理解:AI深度索引和语义检索
- 上下文感知检索:基于语义理解的智能文档检索
- 持续知识演进:文档随代码库自动更新
Context7启发:AI优先的上下文协议
集成Context7的MCP协议标准,为LLMs提供优化的文档上下文。
核心特性:
- MCP协议集成:Model Context Protocol工具链标准
- 实时上下文管理:动态维护开发上下文
- LLM优化文档:针对AI推理能力优化的格式
- 跨工具协作:支持多种AI编程工具无缝集成
7-Agent推理协作链
Agent架构设计
agent-1 (Context基线师): Context基线建立 + 领域知识构建
agent-2 (需求推理师): EARS需求分析 + BDD场景设计 + CoT业务推理
agent-3 (设计思考师): 需求可视化 + 交互设计推理 + 原型生成
agent-4 (架构推理师): 技术架构CoT推理 + 设计决策链 + 组件设计
agent-5 (POC验证师): POC场景开发 + 技术验证 + 风险评估
agent-6 (实施推理师): 任务分解CoT + 代码生成策略 + 实施推理
agent-7 (验证推理师): 测试策略推理 + 质量保证CoT + 验证设计
详细实施步骤
第一步:环境配置
1.1 MCP Server环境配置
# 克隆superdesign MCP Server项目
git clone https://github.com/jonthebeef/superdesign-mcp-claude-code.git
# 进入项目目录
cd superdesign-mcp-claude-code
# 安装依赖
npm install
# 构建项目
npm run build
# 配置Claude Code MCP服务
claude mcp add superdesign "node /path/to/superdesign-mcp-claude-code/dist/index.js"
# 验证MCP服务状态
claude mcp list
1.2 项目结构初始化
# 创建AI编程目录结构
mkdir -p ContextDev/{agents,templates,AIGC,CONTEXT-KNOWLEDGE}
# 创建模板子目录
mkdir -p ContextDev/templates/{01-baseline,02-requirements,03-prototype,04-architecture,05-poc,06-development,07-testing}
# 创建存储目录
mkdir -p AIGC/context_engineering
mkdir -p CONTEXT-KNOWLEDGE/{domain-knowledge,reasoning-patterns}
第二步:Context Engineering初始化
2.1 建立Context基线
创建 AIGC/context_base_[SYSTEM].yaml:
# Context基线文档
project_info:
system_code: "CRM"
system_name: "客户关系管理系统"
version: "1.0.0"
framework: "JeecgBoot 3.8.2"
tech_stack:
backend:
- "Spring Boot 3.2.0"
- "JeecgBoot 3.8.2"
- "MySQL 8.0"
- "Redis 7.0"
frontend:
- "Vue 3.4.0"
- "Ant Design Vue 4.0"
- "TypeScript 5.0"
domain_knowledge:
business_entities:
- name: "客户信息"
attributes: ["姓名", "联系方式", "会员等级", "注册时间"]
relationships:
- target: "订单"
type: "一对多"
reasoning: "一个客户可以有多个订单"
- name: "订单信息"
attributes: ["订单号", "客户ID", "商品信息", "金额", "状态"]
relationships:
- target: "客户"
type: "多对一"
reasoning: "多个订单属于一个客户"
reasoning_patterns:
- pattern: "CRUD标准流程"
applies_to: ["基础数据管理"]
decision_chain:
- "识别业务实体"
- "确定字段类型和验证规则"
- "生成标准CRUD接口"
code_template: "entity-service-controller-vue"
2.2 建立推理基线
创建 AIGC/reasoning_baseline_[SYSTEM]_[MODULE].yaml:
# 推理基线和上下文
execution_mode: "interactive"
project_context:
system_code: "CRM"
module_code: "CUSTOMER"
current_stage: "需求分析"
reasoning_history:
- stage: "项目初始化"
key_decisions:
- decision: "采用JeecgBoot框架"
reasoning: "需要快速开发企业级应用"
alternatives_considered: ["Spring Boot原生", "JeecgBoot", "若依框架"]
chosen: "JeecgBoot"
artifacts: ["项目初始化文档"]
timestamp: "2025-01-27T10:00:00Z"
communication_protocol:
agent_format: "YAML"
context_sharing: "full"
decision_tracing: "enabled"
quality_metrics:
reasoning_depth: "high"
decision_transparency: "required"
artifact_completeness: "mandatory"
第三步:Agent定义和模板创建
3.1 创建Agent定义
创建 ContextDev/agents/baseline-manager.md:
---
name: "Context基线师"
description: "负责建立Context基线和领域知识构建"
capabilities: ["context_engineering", "domain_modeling", "knowledge_management"]
tools: ["Read", "Write", "Edit", "Grep"]
stage: "baseline"
---
# Context基线师
## 主要职责
- 建立项目Context基线
- 构建领域知识图谱
- 维护推理模式库
- 管理文档-代码追溯关系
## 工作流程
1. 分析项目需求和技术约束
2. 构建领域知识模型
3. 建立推理基线文档
4. 定义Agent协作协议
## 输出产物
- context_base_[SYSTEM].yaml
- reasoning_baseline_[SYSTEM]_[MODULE].yaml
- domain-knowledge.yaml
- reasoning-patterns.yaml
## 决策标准
- 知识完整性:覆盖所有核心业务实体
- 推理一致性:保持逻辑链的连贯性
- 可追溯性:每个决策都有明确的推理依据
3.2 创建需求推理模板
创建 ContextDev/templates/02-requirements/requirement_template.yaml:
# EARS需求推理模板
requirement_analysis:
module_code: "{{MODULE_CODE}}"
requirement_title: "{{REQUIREMENT_TITLE}}"
analysis_date: "{{TIMESTAMP}}"
ears_requirements:
- requirement_id: "REQ_001"
title: "{{FEATURE_TITLE}}"
specification: |
WHEN <触发条件>
IF <前置条件>
THEN <系统应执行的操作>
AND <预期的结果>
acceptance_criteria:
- "条件1:验证功能基本可用性"
- "条件2:验证边界条件处理"
- "条件3:验证异常情况处理"
business_value: "{{BUSINESS_VALUE}}"
priority: "{{PRIORITY_LEVEL}}"
complexity: "{{COMPLEXITY_LEVEL}}"
bdd_scenarios:
- scenario_id: "BDD_001"
feature: "{{FEATURE_NAME}}"
scenario: "{{SCENARIO_DESCRIPTION}}"
given: "{{前置条件}}"
when: "{{用户操作}}"
then: "{{预期结果}}"
and: "{{附加验证}}"
cot_reasoning:
reasoning_chain:
- step: "需求理解"
reasoning: "{{需求理解推理}}"
evidence: ["证据1", "证据2"]
- step: "业务分析"
reasoning: "{{业务逻辑分析}}"
assumptions: ["假设1", "假设2"]
- step: "技术评估"
reasoning: "{{技术实现评估}}"
alternatives: ["方案1", "方案2"]
decision: "{{最终决策}}"
decision_rationale: "{{决策理由}}"
implementation_hints:
suggested_architecture: "{{架构建议}}"
key_components: ["组件1", "组件2", "组件3"]
technical_constraints: ["约束1", "约束2"]
integration_points: ["集成点1", "集成点2"]
第四步:A2A协议实施
4.1 Agent间通信协议
# A2A通信协议定义
a2a_protocol:
version: "1.0"
message_format: "YAML"
context_transfer: "full"
message_structure:
header:
from_agent: "{{AGENT_ID}}"
to_agent: "{{TARGET_AGENT_ID}}"
message_id: "{{UUID}}"
timestamp: "{{ISO_TIMESTAMP}}"
body:
stage: "{{当前阶段}}"
context: "{{传递的上下文}}"
decisions: "{{关键决策列表}}"
artifacts: "{{生成的产物列表}}"
next_steps: "{{下一步建议}}"
footer:
reasoning_trace: "{{推理追溯}}"
quality_score: "{{质量评分}}"
confidence_level: "{{置信度}}"
4.2 上下文传递机制
# A2A上下文传递示例代码
class A2AContextManager:
def __init__(self):
self.context_store = {}
self.reasoning_chain = []
def create_context_package(self, agent_id, stage, context, decisions):
"""创建上下文包"""
package = {
'agent_id': agent_id,
'stage': stage,
'timestamp': datetime.now().isoformat(),
'context': context,
'decisions': decisions,
'reasoning_trace': self.reasoning_chain.copy()
}
return package
def transfer_context(self, from_agent, to_agent, context_package):
"""传递上下文到下一个Agent"""
self.context_store[f"{from_agent}_to_{to_agent}"] = context_package
self.reasoning_chain.extend(context_package.get('reasoning_trace', []))
# 记录传递日志
self.log_transfer(from_agent, to_agent, context_package)
def get_context_for_agent(self, agent_id):
"""获取Agent的上下文"""
relevant_contexts = []
for key, context in self.context_store.items():
if agent_id in key:
relevant_contexts.append(context)
return relevant_contexts
第五步:执行模式配置
5.1 交互式模式配置
# interactive模式配置
execution_mode:
type: "interactive"
user_confirmation_required: true
step_timeout: 300 # 5分钟
interaction_points:
- stage: "需求分析"
action: "确认需求理解"
prompt: "我理解的需求是:{{需求摘要}},是否正确?"
- stage: "架构设计"
action: "确认技术方案"
prompt: "建议的技术架构:{{架构描述}},是否采用?"
- stage: "代码生成"
action: "确认实现方案"
prompt: "将要生成的代码结构:{{代码结构}},是否继续?"
user_interface:
confirmation_style: "detailed"
progress_display: "real_time"
error_handling: "interactive_retry"
5.2 静默模式配置
# silent模式配置
execution_mode:
type: "silent"
auto_decision: true
quality_threshold: 0.8
auto_execution_rules:
requirement_confidence_min: 0.9
architecture_compliance: "strict"
code_quality_threshold: 0.85
fallback_conditions:
- condition: "confidence_below_threshold"
action: "request_human_review"
- condition: "multiple_valid_options"
action: "choose_highest_rated"
- condition: "technical_constraint_violation"
action: "modify_design"
第六步:质量保证机制
6.1 推理质量评估
# 推理质量评估器
class ReasoningQualityAssessor:
def __init__(self):
self.quality_metrics = {
'completeness': 0.0,
'consistency': 0.0,
'feasibility': 0.0,
'traceability': 0.0
}
def assess_reasoning_quality(self, reasoning_chain):
"""评估推理质量"""
scores = {}
# 完整性评估
scores['completeness'] = self._assess_completeness(reasoning_chain)
# 一致性评估
scores['consistency'] = self._assess_consistency(reasoning_chain)
# 可行性评估
scores['feasibility'] = self._assess_feasibility(reasoning_chain)
# 可追溯性评估
scores['traceability'] = self._assess_traceability(reasoning_chain)
overall_score = sum(scores.values()) / len(scores)
return {
'individual_scores': scores,
'overall_score': overall_score,
'recommendations': self._generate_recommendations(scores)
}
def _assess_completeness(self, reasoning_chain):
"""评估推理完整性"""
required_elements = ['problem_understanding', 'alternatives', 'decision', 'rationale']
present_elements = sum(1 for step in reasoning_chain
if any(elem in str(step).lower() for elem in required_elements))
return present_elements / len(required_elements)
6.2 文档验证机制
# 文档验证规则
validation_rules:
yaml_syntax:
required: true
validator: "yamllint"
schema_compliance:
required: true
schema_file: "schemas/context_schema.json"
content_completeness:
required_fields:
- "project_info"
- "tech_stack"
- "domain_knowledge"
- "reasoning_patterns"
reasoning_quality:
min_score: 0.7
auto_assessment: true
quality_gates:
- gate: "baseline_completion"
criteria:
- context_base_exists: true
- reasoning_baseline_exists: true
- domain_knowledge_complete: true
- gate: "requirement_analysis"
criteria:
- ears_requirements_valid: true
- bdd_scenarios_complete: true
- cot_reasoning_traceable: true
使用场景和工作流程
场景1:探索式需求分析
# 启动需求探索流程
claude "我要启动ContextDev的需求探索模式,目标是开发一个电商系统"
# agent-1响应示例
"我来帮您明确电商系统的具体需求。请告诉我:
1. 目标客户群体是什么?(B2B/B2C/C2C)
2. 主要销售什么类型的商品?
3. 预期的用户规模和交易量?
4. 是否需要移动端支持?
5. 有哪些特殊的业务流程要求?"
场景2:明确需求实施
# 直接进入实施阶段
claude "开发一个培训管理系统,包含课程管理、学员管理、考试系统、证书颁发功能,基于JeecgBoot框架,支持多租户"
# agent-2响应示例
"我理解您需要开发一个培训管理系统,核心功能包括:
- 课程管理:课程创建、分类、排课
- 学员管理:注册、学习进度跟踪
- 考试系统:试题管理、在线考试、成绩统计
- 证书颁发:证书模板、自动颁发
- 多租户支持:数据隔离、权限管理
技术栈:JeecgBoot + Vue3 + MySQL
开始执行7-Agent协作链..."
最佳实践建议
1. Context Engineering最佳实践
- 知识建模:建立完整的业务领域知识图谱
- 推理模式:积累可复用的推理模式和决策模板
- 文档一致性:保持文档格式和结构的一致性
- 版本管理:使用Git管理Context文档的演进
2. Agent协作最佳实践
- 明确职责边界:每个Agent有清晰的职责范围
- 标准化接口:使用统一的A2A通信协议
- 质量把关:设置质量门禁和验证机制
- 异常处理:建立异常情况的处理流程
3. 代码生成最佳实践
- 模板驱动:使用高质量代码模板
- 增量生成:支持增量式代码生成和优化
- 质量保证:集成代码质量检查工具
- 测试覆盖:自动生成单元测试和集成测试
故障排除
常见问题解决
MCP服务连接失败:
# 检查MCP服务状态
claude mcp list
# 重新配置MCP服务
claude mcp remove superdesign
claude mcp add superdesign "node /path/to/superdesign-mcp-claude-code/dist/index.js"
Agent执行超时:
# 调整执行超时配置
execution_mode:
type: "interactive"
step_timeout: 600 # 增加到10分钟
推理质量不达标:
# 重新评估推理质量
assessor = ReasoningQualityAssessor()
result = assessor.assess_reasoning_quality(reasoning_chain)
if result['overall_score'] < 0.7:
# 触发人工审核
request_human_review()
这套Context Engineering AI编程系统通过系统化的方法论和工具链,实现了从需求到代码的完整AI驱动开发流程,特别适合复杂业务系统和企业级应用开发。