-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcore-config.yaml.example
More file actions
299 lines (278 loc) · 9.96 KB
/
core-config.yaml.example
File metadata and controls
299 lines (278 loc) · 9.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
# ============================================================================
# Canvas Learning System - Enhanced BMad Core Configuration
# Version: 2.3 (Canvas Integration)
# Date: 2025-12-15
#
# Purpose: BMad method configuration with Canvas-specific enhancements
# Documentation: docs/RESEARCH_REPORT_BMAD_INTEGRATION.md
# ============================================================================
# <!-- Powered by BMAD™ Core -->
# ====================
# Project Metadata
# ====================
project:
name: "Canvas Learning System"
version: "1.2"
description: "AI-powered learning system based on Feynman technique with 14 specialized agents"
status: "Active Development"
# Epic编号说明 (v2.3 - 2025-12-15):
# - Epic 1-5: 原始Canvas核心系统 (100%完成)
# - Epic 10: Canvas集成 (100%完成)
# - Epic 11/15: FastAPI后端 (100%完成, 11个端点)
# - Epic 12: LangGraph多Agent (88%完成, 代码在src/agentic_rag/)
# - Epic 12.A: Agent-RAG深度集成 (100%完成, 6/6 Stories) ✅ 2025-12-15
# - 12.A.1: Canvas名称标准化 [P0 BLOCKER] ✅ 完成 (38个测试)
# - 12.A.2: Agent-RAG桥接层 [P1] ✅ 完成 (13个端点集成)
# - 12.A.3: 节点上下文深度读取 [P1] ✅ 完成 (21个测试)
# - 12.A.4: 记忆系统注入 [P2] ✅ 完成 (11个测试, 500ms超时+30s缓存)
# - 12.A.5: 学习事件自动记录 [P2] ✅ 完成 (19个测试)
# - 12.A.6: 补齐剖析节点Agent [P1] ✅ 完成 (rag_context已修复)
# - Epic 13: Obsidian插件 (90%完成, 22个服务类)
# - Epic 14: 复习系统 (95%完成, review_service.py 1,247行)
# - Epic 16: 跨Canvas (100%完成)
# - Epic 18: 回滚系统 (100%完成)
# - Epic 19: 检验追踪 (待开发)
# - Epic 12.D: FILE类型节点支持 (待实施, P0 CRITICAL) ✅ 2025-12-15 创建
# - 12.D.1: 前端支持FILE类型节点 [P0 BLOCKER] 待实施
# - 12.D.2: 后端支持FILE类型节点 [P0 BLOCKER] 待实施
# - 12.D.3: 节点类型日志追踪链 [P1] 待实施
# - Epic 12.I: Agent端点日志编码修复 (100%完成) ✅ 2025-12-17
# - 12.I.1: 日志编码UTF-8配置 [P0 BLOCKER] ✅ 完成 (logging.py)
# - 12.I.2: RAG标签ASCII化 [P0] ✅ 完成 (agents.py emoji移除)
# - 12.I.3: 编码错误诊断增强 [P2] 未实施 (可选)
# - Epic 24: 记忆系统完整激活 (合并自Epic 12.M/15/20/22/22-R/23) ✅ 2026-01-15 创建
# - 24.1: Neo4j Docker环境部署 [P0 BLOCKER] 待实施
# - 24.2: Neo4jClient真实驱动实现 [P0 BLOCKER] 待实施
# - 24.3: Memory API端点集成验证 [P1] 待实施
# - 24.4: Agent记忆写入触发机制 [P1] 待实施
# - 24.5: Canvas CRUD操作触发 [P1] 待实施
# - 24.6: 节点颜色变化监听 [P1] 待实施
# - 24.7: Obsidian插件记忆服务初始化 [P0 BLOCKER] 待实施
# - 24.8: 多学科隔离与group_id支持 [P2] 待实施
# - Epic 30: 记忆系统完整激活 (原Epic 24-B,合并自Epic 12.M/15/20/22/22-R/23)
# - 30.1: Neo4j Docker环境部署 [P0 BLOCKER] 待实施
# - 30.2: Neo4jClient真实驱动实现 [P0 BLOCKER] 待实施
# - 30.3: Memory API端点集成验证 [P1] 待实施
# - 30.4: Agent记忆写入触发机制 [P1] 待实施
# - 30.5: Canvas CRUD操作触发 [P1] 待实施
# - 30.6: 节点颜色变化监听 [P1] 待实施
# - 30.7: Obsidian插件记忆服务初始化 [P0 BLOCKER] 待实施
# - 30.8: 多学科隔离与group_id支持 [P2] 待实施
epics_completed: [1, 2, 3, 4, 5, 10, 11, 12, "12.A", "12.F", "12.G", "12.H", "12.I", "12.K", 13, 14, 15, 16, 18]
epics_in_progress: ["12.D", 30] # 12.D: FILE节点支持, 30: 记忆系统完整激活
# ====================
# BMad Core Configuration (Original)
# ====================
markdownExploder: true
slashPrefix: BMad
qa:
qaLocation: docs/qa
prd:
prdFile: docs/prd/CANVAS-LEARNING-SYSTEM-OBSIDIAN-NATIVE-MIGRATION-PRD.md
prdVersion: v4
prdSharded: true
prdShardedLocation: docs/prd
epicFilePattern: EPIC-{n}*.md
architecture:
architectureFile: docs/architecture.md
architectureVersion: v4
architectureSharded: true
architectureShardedLocation: docs/architecture
customTechnicalDocuments: null
devDebugLog: .ai/debug-log.md
devStoryLocation: docs/stories
# ====================
# devLoadAlwaysFiles (Enhanced for Canvas)
# ====================
# Critical files loaded when Dev Agent activates via /dev command
# NOT loaded at session start - only when Dev Agent is activated
# Token Budget: ~18k tokens (optimized for 200k limit)
#
# Why These Files:
# - coding-standards.md: Ensures API accuracy, prevents hallucinations
# - tech-stack.md: Skills activation, zero-hallucination rules
# - project-structure.md: File location map (replaces source-tree.md)
# - canvas-layer-architecture.md: Core 4-layer architecture
# - CANVAS_ERROR_LOG.md: Critical Canvas operation rules
# - SDD specs: API contracts and data schemas for zero-hallucination
devLoadAlwaysFiles:
- docs/architecture/coding-standards.md
- docs/architecture/tech-stack.md
- docs/architecture/project-structure.md
- docs/architecture/canvas-layer-architecture.md
- CANVAS_ERROR_LOG.md
# SDD Specifications - ALL OpenAPI and JSON Schemas
- specs/api/canvas-api.openapi.yml
- specs/api/agent-api.openapi.yml
- specs/data/canvas-node.schema.json
- specs/data/canvas-edge.schema.json
- specs/data/agent-response.schema.json
- specs/data/scoring-response.schema.json
# Anti-Hallucination Index
- project-file-index.md
# ====================
# Helper System (Reference Documentation)
# ====================
# Reference pattern: @helpers.md#Section-Name
# NOTE: This syntax is NOT auto-parsed by Claude
# User must manually request Claude to read specific sections
# This is reference documentation, not an auto-loading mechanism
helpers:
enabled: true
main_file: .bmad-core/data/helpers.md
sections:
story_workflow: "Story-Development-Workflow"
testing: "Testing-Checklist"
agent_protocol: "Agent-Calling-Protocol"
canvas_colors: "Canvas-Color-System"
bmad_phases: "BMad-4-Phase-Workflow"
# ====================
# Templates
# ====================
templates:
prd: .bmad-core/templates/prd-template.md
story: .bmad-core/templates/story-template.md
adr: .bmad-core/templates/adr-template.md
test_suite: .bmad-core/templates/test-suite-template.py
agent: .bmad-core/templates/agent-template.md
# ====================
# Specification-Driven Design (SDD)
# ====================
# OpenAPI + JSON Schema + Gherkin for zero-hallucination development
specifications:
enabled: true
api:
canvas: specs/api/canvas-api.openapi.yml
agent: specs/api/agent-api.openapi.yml
schemas:
node: specs/data/canvas-node.schema.json
edge: specs/data/canvas-edge.schema.json
agent_response: specs/data/agent-response.schema.json
scoring: specs/data/scoring-response.schema.json
behavior:
scoring: specs/behavior/scoring-workflow.feature
review: specs/behavior/review-board-workflow.feature
# ====================
# ADRs (Architecture Decision Records)
# ====================
adrs:
enabled: true
directory: docs/architecture/decisions
format: "Michael Nygard"
naming: "NNNN-title-with-dashes.md"
key_decisions:
- "0001-use-obsidian-canvas.md"
- "0002-langgraph-agents.md"
- "0003-graphiti-memory.md"
- "0004-async-execution-engine.md"
# ====================
# Skills Integration
# ====================
# Claude Code Skills for offline documentation
skills:
- name: langgraph
path: .claude/skills/langgraph
activation: "@langgraph"
pages: 952
- name: graphiti
path: .claude/skills/graphiti
activation: "@graphiti"
- name: obsidian-canvas
path: .claude/skills/obsidian-canvas
activation: "@obsidian-canvas"
# ====================
# Context7 MCP
# ====================
# For tech without Skills
context7:
enabled: true
libraries:
- id: "/websites/fastapi_tiangolo"
name: "FastAPI"
snippets: 22734
- id: "/websites/neo4j_cypher-manual_25"
name: "Neo4j Cypher"
snippets: 2032
# ====================
# Agent System
# ====================
# 14 specialized agents (12 learning + 2 system)
agents:
directory: .claude/agents
count: 14
orchestrator: canvas-orchestrator.md
learning_agents: 12
system_agents: 2
parallel_execution:
enabled: true
max_concurrent: 12
performance_gain: 8.3 # 8.3x faster
# ====================
# Memory System (Epic 12)
# ====================
memory:
temporal:
enabled: true
backend: neo4j
graphiti:
enabled: true
backend: neo4j
semantic:
enabled: true
backend: lancedb
acceleration: cuda
ebbinghaus:
enabled: true
algorithm: py-fsrs
# ====================
# Testing Configuration
# ====================
testing:
framework: pytest
coverage_threshold: 99.0
test_directory: src/tests
contract_testing:
enabled: true
tool: schemathesis
specs:
- specs/api/canvas-api.openapi.yml
- specs/api/agent-api.openapi.yml
# ====================
# Document Sharding
# ====================
# BMad core innovation for context management
sharding:
enabled: true
triggers:
consider_at: 20000 # tokens
recommend_at: 40000 # tokens
critical_at: 60000 # tokens
method: "Split by ## headings"
# ====================
# Zero-Hallucination Rules
# ====================
zero_hallucination:
enabled: true
priorities:
1: "Skills (offline)"
2: "Context7 (online)"
3: "Official docs (WebFetch)"
enforce_source_comments: true
# ====================
# Integration Points
# ====================
integration:
obsidian:
vault: "笔记库/"
canvas_ext: ".canvas"
neo4j:
enabled: true
uri: "bolt://localhost:7687"
database: "canvas_memory"
claude_code:
context: CLAUDE.md
commands: .claude/commands/
hooks: .claude/hooks/
# ============================================================================
# End of Enhanced Configuration
# ============================================================================