2026-06-26 02:38:35 +08:00

251 lines
7.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: knowledge-base
description: "个人知识库数据结构框架 - 面向创作者的树形知识体系+创意作品解构管理"
---
## 触发方式
Claude 原触发:`/kb`。在 Codex 中,用户提到该命令、技能名或相关任务时,先读取并遵循本 skill。
# /kb (knowledge-base)
面向创作者的树形知识库框架,支持科学知识体系化整理 + 创意作品精细化拆解。
## 核心设计理念
- **严格树形知识架构**:科学知识按学科层级组织,支持从根到叶的无限延伸
- **标签分类树**:标签不是扁平的,而是有层级、可继承的分类体系
- **作品组件树支持**:对动漫、小说等作品按任意维度拆解(角色、世界观、剧情、主题等)
- **混合导航**:树形结构为主 + 标签横向关联
## 核心数据实体
### 1. KnowledgeNode知识树节点
```yaml
id: uuid
parent_id: uuid | null
name: string # 概念名
full_path: string # 如"科学/生物学/进化论/性选择"
node_type: enum [domain, category, concept, fact, trivia]
# domain=学科根, category=子分类, concept=核心概念, fact=具体事实, trivia=趣味/冷知识
content: markdown # 定义、理解、笔记
depth_level: int # 层级深度
# 关联
prerequisites: [node_ids] # 前置知识
related_nodes: [{node_id, relation_type, note}]
# 溯源
sources: [{
source_type: enum [book, paper, article, video, podcast, course, conversation],
title: string,
author: string,
url: string,
timestamp: string
}]
# 元数据
tags: [tag_full_paths]
created_at: datetime
updated_at: datetime
review_count: int
mastery_level: enum [exposed, familiar, understood, mastered, can_teach]
```
### 2. Tag标签树
```yaml
id: uuid
name: string
parent_id: uuid
full_path: string # 如"创作研究/叙事/结构/三幕式"
color: hex
description: string
aliases: [string]
usage_count: int
```
**标签树结构**:
```
创作研究/
├── 叙事/结构/[三幕式,英雄之旅,多线叙事]
├── 角色/原型/[成长型英雄,悲剧英雄,导师]
├── 世界观/
└── 情感/[热血,治愈,悬疑,荒诞]
知识状态/[待整理,待理解,已掌握,可输出]
关联类型/[支持强化,矛盾颠覆,类比隐喻,因果推导]
```
### 3. CreativeWork创意作品容器
```yaml
id: uuid
title: string
type: enum [animation, manga, novel, film, game, short_video]
creators: [{role, name}]
release_year: int
status: enum [planned, consuming, consumed, re_consuming]
personal_rating: 1-10
research_depth: enum [surface, component, deep_analysis]
components: [WorkComponent] # 树形组件
tags: [tag_full_paths]
```
### 4. WorkComponent作品组件树
```yaml
id: uuid
work_id: uuid
parent_id: uuid | null # 支持无限嵌套
component_type: enum
- narrative_arc # 叙事弧/篇章
- scene # 场景/名场面
- character # 角色
- world_element # 世界观元素
- theme # 主题/母题
- technique # 创作技法
- item # 道具/设定
- dialogue # 对白
name: string
span: {start, end} # 时间范围
summary: string
analysis: markdown # 你的详细研究
# 角色特有
character_profile:
role_type: enum [protagonist, deuteragonist, antagonist, support]
motivation: string
arc_type: enum [positive_change, negative_change, flat, transformative]
relationships: [{ # 双向关系追踪
target_component_id: uuid,
relation_type: enum [family, friend, rival, mentor, enemy, complex],
dynamics: string, # A对B
reciprocal_dynamics: string # B对A可选
evolution: string
}]
# 世界观特有
world_profile:
category: enum [geography, history, politics, technology, magic_system, culture]
rules: [{rule, implications, broken_in_story}]
# 关联
inspired_knowledge: [{knowledge_node_id, connection_note}]
tags: [tag_full_paths]
order_index: int
```
### 5. QuickCapture快速捕获
```yaml
id: uuid
captured_at: datetime
raw_content: string
status: enum [inbox, processing, triaged_to_knowledge, triaged_to_work, archived]
auto_parsed:
likely_type: enum [knowledge, work_observation, cross_insight]
suggested_knowledge_parent: string
suggested_tags: [tag_paths]
mentioned_works: [string]
mentioned_concepts: [string]
```
---
## 使用场景
### 捕获新知识
```
/kb capture "热力学第二定律的微观解释是熵增原理,即孤立系统总是趋向于更混乱的状态"
→ 解析建议: 添加到 "科学/物理学/热力学/熵"
→ 标签建议: 知识状态/待整理
```
### 拆解作品
```
/kb decompose "进击的巨人" --type animation
→ 创建作品容器
→ 建议组件: 角色[艾伦,三笠,阿尔敏], 世界观[墙内社会,巨人起源], 主题[自由与宿命]
```
### 建立关联
```
/kb link --from-component "艾伦的动机" --to-knowledge "认知失调理论"
→ 在WorkComponent.inspired_knowledge中创建记录
```
---
## 数据关系图谱
```
[KnowledgeNode] ←tree→ [KnowledgeNode]
↑ ↓
prerequisite related
↓ ↑
[KnowledgeNode] ←inspired→ [WorkComponent]
tree (components)
[CreativeWork]
tagged
[Tag] ←tree→ [Tag]
```
---
## 目录结构
```
TenkajinKB/
├── 00_System/ # 系统配置层(全局资产)
│ ├── Tags/ # 全局标签定义
│ │ ├── 创作研究.md
│ │ ├── 知识状态.md
│ │ └── 关联类型.md
│ └── Config/ # 其他系统配置
│ └── knowledge-base-schema.yaml
├── 01_Active_Projects/ # 项目(引用全局标签)
├── 02_Knowledge_Base/ # 知识(引用全局标签)
└── 03_Inbox/ # 收集箱(引用全局标签)
```
**为何 Tags 在 00_System**
- 标签是**全局资产**,跨三个一级模块共享
- 树形标签定义在中央位置,确保一致性
- Dashboard 通过 tags.html 提供可视化树形浏览器
---
## 设计原则
1. **树形优先**:知识必须有明确父子归属,查找时层级清晰
2. **标签辅助**:横向关联通过标签树的叶子节点实现
3. **作品可拆解**:任何作品可按"篇章→场景→角色"或"主题→子主题"任意嵌套
4. **快速捕获不归类**先捕获后整理inbox机制避免打断流
5. **关系双向存储**角色关系统一存储支持不同的A→B和B→A描述
---
## 迭代机制
- `mastery_level``review_count` 支持间隔复习
- `research_depth` 追踪对作品的拆解深度
- `usage_count` 让高频标签自动靠前
---
Version: 0.1.0
Author: user-defined
Last Updated: 2026-04-19