home / kengdb / teamNoteTb

teamNoteTb

Table actions Table actions
  • Edit table schema

32 rows

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: team_id, author_id, content, tags, created_at, updated_at, enable, comment, created_at (date), updated_at (date), tags (array)

id ▼ team_id author_id content tags created_at updated_at enable pinned comment folder_id locked_by position
10004 1 1 1 1 团队第二笔记 [] 2026-05-12 16:55:03 2026-05-12 18:21:48 T F       0
10005 1 1 1 1 团队第一个笔记 [] 2026-05-12 17:30:19 2026-05-12 18:21:41 T F       0
10006 1 1 1 1 文件夹里idea笔记 ["阿斯蒂", "as", "asd"] 2026-05-12 18:22:02 2026-05-12 18:59:29 T F 阿斯顿发 18   0
10008 1 1 1 1   [] 2026-05-12 18:57:59 2026-05-13 13:10:17 T F       0
10009 1 1 1 1 阿斯顿发斯蒂芬阿斯顿发斯蒂芬 [] 2026-05-12 18:57:59 2026-05-12 18:58:10 T F       0
10010 1 1 1 1   [] 2026-05-12 18:58:00 2026-05-12 18:58:00 F F       0
10011 1 1 1 1   [] 2026-05-12 18:58:00 2026-05-12 18:58:00 F F       0
10012 2 2 1 1 2对笔记 [] 2026-05-12 19:11:30 2026-05-12 19:11:36 T F asdf     0
10013 2 2 1 1 阿斯顿发斯蒂芬 [] 2026-05-12 19:11:40 2026-05-12 19:11:43 T F   22   0
10014 1 1 1 1 # Goose 记忆系统设计文档 **作者**:Goose 版本:1.3 ## 设计目标 Goose 是一个通用 AI 代理,每次对话默认没有上下文记忆。记忆系统的目的是让 Goose 能在多次对话之间"记住"关键信息,避免重复讨论同一问题。 ## 架构 ~/.config/goose/ ├── .goosehints <- 启动规则(含记忆操作规则) ├── sync_notehb.py <- notehb 云端同步 ├── validate_clue.py <- .clue 校验修复 └── memory/ ├── .clue <- 记忆索引(含 common_tags) └── home-project/ <- 按 dir_slug 分文件夹 └── 自建goose启动规则.md ### 索引文件 (.clue) entries: - dir: "/home/project" dir_slug: "home-project" name: "project" common_tags: ["goose", "配置", "启动规则", "记忆库", "clue", "sync_notehb", "tags"] memories: - file: "自建goose启动规则.md" tags: ["goose", "配置", "启动规则", "记忆库", "clue", "sync_notehb", "tags"] ### 文件夹命名规则 /home/project -> home-project /home/project/web -> home-project-web /root -> root ### 文件命名规则 - 文件名 = 浓缩关键词 - 不加时间戳,序号兜底 ## 核心字段 - common_tags: 该目录下所有记忆 tags 的并集 - memories[].tags: 单个记忆文件的标签 ## 记忆核心规则(不可违反) 1. 同一对话只能有一个记忆文件,不可拆分。无论对话中切换了几个话题/任务,全部追加到同一个 .md 文件中,用分隔线和分段区分。 2. 禁止同一对话内容拆成多个 .md 文件存储。 3. 只有跨会话的新对话才允许创建新的记忆文件。 ## 记忆读写流程 ### 启动时(读取) 1. Goose 读 .clue,找当前工作目录 2. 去 memory/<dir_slug>/ 下列出所有 .md 文件 3. 用 编号 + [行数] 让用户选择(不显示 tags) 4. 用户选中 -> 读文件;选 0 -> 新对话 ### 启动校验(validate_clue.py) - 路径规则:memory/{dir_slug}/{file},而非 entry["dir"]/{file} - 移除不存在的记忆文件条目 - 重算 common_tags 并集去重 ### 存记忆(写入) - 同一对话 = 同一记忆文件,追加不新建 - 打 tag 前先读 common_tags,优先沿用公共 tags - 新 tag 至少有一个与 common_tags 重叠 - 新增 tags 后同步更新 common_tags(并集去重) - tags 数量 2-5 个 ### 写笔记(Simplenote) - 写前先查记忆文件里有没有相同主题的笔记 ID - 有 -> 更新版本号,POST 到同一 ID - 没有 -> 新建 - 头部格式:作者:Goose、版本:1.x ## 重要路径 - notehb 手册: ~/.config/goose/notehb.md - 同步脚本: ~/.config/goose/sync_notehb.py - 校验脚本: ~/.config/goose/validate_clue.py - 记忆库: ~/.config/goose/memory/ - 记忆索引: ~/.config/goose/memory/.clue ## 变更记录 ### 2026-05-07 v1.3 - 新增"记忆核心规则":同一对话只能一个记忆文件,不可拆分 - 新增 validate_clue.py 校验脚本说明(路径:memory/{dir_slug}/{file}) - 用户选记忆时不再显示 tags,仅显示 [行数] - .clue 展示改为每行一条记忆 ### 2026-05-07 v1.2 - 启动初始化精简:notehb 同步改为一行、记忆线索简化为一条一行 - .goosehints 精简到 65 行 ### 2026-05-07 v1.0 … [] 2026-05-13 03:41:29 2026-05-13 03:41:29 F F source=simplenote; source_id=3264d883-b42b-469b-97c1-928a6b6b620f     0
10034 3 3 2 2 # 测试笔记第一篇 这是test1在测试A组写的第一篇测试笔记。 **内容**:日常记录和工作总结。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10035 3 3 2 2 # 测试笔记第二篇 这是test1在测试A组写的第二篇测试笔记。 **内容**:项目进展和问题记录。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10036 3 3 2 2 # 测试笔记第三篇 这是test1在测试A组写的第三篇测试笔记。 **内容**:心得体会和学习笔记。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10037 3 3 3 3 # 测试笔记第一篇 这是test2在测试A组写的第一篇测试笔记。 **内容**:日常记录和工作总结。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10038 3 3 3 3 # 测试笔记第二篇 这是test2在测试A组写的第二篇测试笔记。 **内容**:项目进展和问题记录。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10039 3 3 3 3 # 测试笔记第三篇 这是test2在测试A组写的第三篇测试笔记。 **内容**:心得体会和学习笔记。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10040 3 3 4 4 # 测试笔记第一篇 这是test3在测试A组写的第一篇测试笔记。 **内容**:日常记录和工作总结。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10041 3 3 4 4 # 测试笔记第二篇 这是test3在测试A组写的第二篇测试笔记。 **内容**:项目进展和问题记录。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10042 3 3 4 4 # 测试笔记第三篇 这是test3在测试A组写的第三篇测试笔记。 **内容**:心得体会和学习笔记。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10043 4 4 5 5 # 测试笔记第一篇 这是test4在测试B组写的第一篇测试笔记。 **内容**:日常记录和工作总结。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10044 4 4 5 5 # 测试笔记第二篇 这是test4在测试B组写的第二篇测试笔记。 **内容**:项目进展和问题记录。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10045 4 4 5 5 # 测试笔记第三篇 这是test4在测试B组写的第三篇测试笔记。 **内容**:心得体会和学习笔记。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10046 4 4 6 6 # 测试笔记第一篇 这是test5在测试B组写的第一篇测试笔记。 **内容**:日常记录和工作总结。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10047 4 4 6 6 # 测试笔记第二篇 这是test5在测试B组写的第二篇测试笔记。 **内容**:项目进展和问题记录。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10048 4 4 6 6 # 测试笔记第三篇 这是test5在测试B组写的第三篇测试笔记。 **内容**:心得体会和学习笔记。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10049 4 4 7 7 # 测试笔记第一篇 这是test6在测试B组写的第一篇测试笔记。 **内容**:日常记录和工作总结。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10050 4 4 7 7 # 测试笔记第二篇 这是test6在测试B组写的第二篇测试笔记。 **内容**:项目进展和问题记录。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10051 4 4 7 7 # 测试笔记第三篇 这是test6在测试B组写的第三篇测试笔记。 **内容**:心得体会和学习笔记。 [] 2026-05-13 16:27:23 2026-05-13 16:27:23 T F       0
10052 5 5 1 1 我是bibi [] 2026-05-15 20:41:48 2026-05-15 20:41:53 T F       0
10053 5 5 24 24 我是 李上b [] 2026-05-15 21:46:26 2026-05-15 21:46:37 F F       0
10054 5 5 24 24   [] 2026-05-16 12:37:55 2026-05-16 12:37:55 F F       0
10055 5 5 1 1   [] 2026-05-21 01:16:50 2026-05-21 01:16:50 T F       0

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE teamNoteTb (
    id        INTEGER PRIMARY KEY AUTOINCREMENT,
    team_id   INTEGER NOT NULL REFERENCES teamTb(id),
    author_id INTEGER NOT NULL DEFAULT 1 REFERENCES userTb(id),
    content   TEXT    NOT NULL DEFAULT '',
    tags      TEXT    NOT NULL DEFAULT '[]',
    created_at TEXT   NOT NULL DEFAULT (datetime('now','localtime')),
    updated_at TEXT   NOT NULL DEFAULT (datetime('now','localtime')),
    enable    TEXT    NOT NULL DEFAULT 'T',
    pinned    TEXT    NOT NULL DEFAULT 'F',
    comment   TEXT    NOT NULL DEFAULT ''
, folder_id INTEGER DEFAULT NULL, locked_by INTEGER DEFAULT NULL, position INTEGER DEFAULT 0);
Powered by Datasette · Queries took 1.2ms