Agent Skills: Notion 自动化管理

自动化 Notion 操作。当用户需要管理 Notion 页面、数据库、块内容、项目跟踪或进行内容组织和搜索时使用此技能。

UncategorizedID: aAAaqwq/claude-code-skills/notion-automation

Skill Files

Browse the full folder contents for notion-automation.

Download Skill

Loading file tree…

notion-automation/SKILL.md

Skill Metadata

Name
notion-automation
Description
自动化 Notion 操作。当用户需要管理 Notion 页面、数据库、块内容、项目跟踪或进行内容组织和搜索时使用此技能。

Notion 自动化管理

功能说明

此技能专门用于自动化 Notion 平台的各种操作,包括:

  • 页面创建、内容编辑和管理
  • 数据库创建、配置和查询
  • 块(Block)操作和内容更新
  • 页面搜索和内容检索
  • 项目和任务跟踪管理
  • 团队协作和评论管理
  • 页面移动和组织结构管理

使用场景

  • "创建一个新的项目页面"
  • "更新 Notion 数据库中的记录"
  • "搜索包含特定关键词的页面"
  • "批量管理页面内容"
  • "设置项目跟踪看板"
  • "管理团队协作和评论"
  • "整理和组织 Notion 工作空间"

核心功能模块

1. 页面管理

  • 创建页面:创建新页面并添加初始内容
  • 更新页面:修改页面属性、标题和封面
  • 获取页面:检索页面详细信息
  • 移动页面:在不同数据库或父页面间移动
  • 删除页面:归档或删除页面
  • 页面搜索:按关键词搜索页面和数据库

2. 数据库管理

  • 创建数据库:创建新的数据库并配置字段
  • 查询数据库:筛选和检索数据库记录
  • 更新数据库:修改数据库结构和属性
  • 获取数据库详情:查看数据库元数据
  • 数据库模板:应用预设模板创建数据库

3. 块(Block)操作

  • 获取块内容:读取页面下的所有块
  • 更新块内容:修改块的文本、样式
  • 添加子块:在块中添加子元素
  • 删除块:移除不需要的块
  • 批量操作:一次性更新多个块

4. 内容搜索

  • 全文搜索:搜索页面标题和内容
  • 数据库搜索:在特定数据库中查找
  • 筛选搜索:按对象类型筛选结果
  • 排序结果:按编辑时间排序

5. 协作管理

  • 获取用户:列出工作空间用户
  • 创建评论:在页面或块中添加评论
  • 获取评论:查看页面讨论
  • 页面权限:管理页面访问权限

6. 项目管理

  • 项目页面:创建项目概览页面
  • 任务看板:设置 Kanban 风格任务管理
  • 进度跟踪:更新任务状态和进度
  • 里程碑管理:设置项目里程碑
  • 依赖关系:管理任务间依赖

工作流程

标准页面创建流程

  1. 创建页面:创建新页面并设置标题
  2. 添加封面:设置页面封面图片
  3. 添加图标:设置页面图标
  4. 填充内容:使用块添加初始内容
  5. 关联数据库:如需要,关联到数据库
  6. 添加协作人:设置页面协作者

数据库设置流程

  1. 创建数据库:创建新数据库
  2. 定义字段:配置属性类型(文本、数字、日期等)
  3. 设置视图:创建不同视图(表格、看板、日历)
  4. 添加记录:批量添加初始记录
  5. 配置筛选:设置常用筛选条件
  6. 设置模板:创建页面模板

内容更新流程

  1. 获取当前内容:读取页面块结构
  2. 定位目标块:找到需要更新的块
  3. 更新块内容:修改块文本或属性
  4. 添加新块:如需要,插入新内容块
  5. 验证更新:确认更改正确应用

项目跟踪流程

  1. 创建项目数据库:建立项目看板
  2. 定义任务状态:设置状态字段(待办、进行中、已完成)
  3. 添加任务:创建任务记录
  4. 分配负责人:设置任务负责人
  5. 设置截止日期:添加日期字段
  6. 更新进度:随进度更新状态

最佳实践

页面组织

  • 使用层级结构组织页面
  • 合理使用数据库代替普通页面
  • 定期清理归档不需要的页面
  • 使用图标和封面区分不同页面
  • 建立统一的命名规范

数据库设计

  • 字段类型选择要准确
  • 合理使用关系字段连接数据库
  • 设置默认视图提高使用效率
  • 使用筛选条件减少噪音
  • 定期维护数据库结构

内容编辑

  • 使用块组织内容结构
  • 合理使用标题层级
  • 保持内容简洁明了
  • 及时保存重要修改
  • 使用评论进行讨论

协作规范

  • 明确页面负责人
  • 使用 @提及通知协作者
  • 及时回复评论
  • 定期同步更新状态
  • 尊重页面权限设置

常用代码示例

1. 创建页面并添加内容

// 创建新页面
const page = await createPage({
  parent: {
    type: "page_id",
    page_id: "parent_page_id"
  },
  properties: {
    title: {
      type: "title",
      title: [
        {
          type: "text",
          text: {
            content: "项目文档"
          }
        }
      ]
    }
  },
  children: [
    {
      object: "block",
      type: "paragraph",
      paragraph: {
        rich_text: [
          {
            type: "text",
            text: {
              content: "这是项目文档的概述内容。"
            }
          }
        ]
      }
    }
  ],
  icon: {
    type: "emoji",
    emoji: "📝"
  },
  cover: {
    type: "external",
    external: {
      url: "https://example.com/cover.jpg"
    }
  }
});

2. 数据库操作

// 创建数据库
const database = await createDatabase({
  parent: {
    type: "page_id",
    page_id: "parent_page_id"
  },
  title: [
    {
      type: "text",
      text: {
        content: "项目管理数据库"
      }
    }
  ],
  properties: {
    "任务名称": {
      title: {}
    },
    "状态": {
      select: {
        options: [
          { name: "待办", color: "gray" },
          { name: "进行中", color: "blue" },
          { name: "已完成", color: "green" }
        ]
      }
    },
    "负责人": {
      people: {}
    },
    "截止日期": {
      date: {}
    }
  }
});

// 查询数据库记录
const records = await queryDatabase({
  database_id: "database_id",
  filter: {
    property: "状态",
    select: {
      equals: "进行中"
    }
  },
  sorts: [
    {
      property: "截止日期",
      direction: "ascending"
    }
  ]
});

3. 页面搜索

// 搜索页面
const searchResults = await search({
  query: "项目计划",
  filter: {
    property: "object",
    value: "page"
  },
  sort: {
    direction: "descending",
    timestamp: "last_edited_time"
  }
});

// 搜索数据库
const dbResults = await search({
  query: "任务",
  filter: {
    property: "object",
    value: "database"
  }
});

4. 块内容更新

// 获取页面块
const blocks = await getBlockChildren({
  block_id: "page_id"
});

// 更新块内容
await updateBlock({
  block_id: "block_id",
  paragraph: {
    rich_text: [
      {
        type: "text",
        text: {
          content: "更新后的内容"
        }
      }
    ]
  }
});

// 添加新块
await appendBlockChildren({
  block_id: "parent_block_id",
  children: [
    {
      object: "block",
      type: "heading_2",
      heading_2: {
        rich_text: [
          {
            type: "text",
            text: {
              content: "新的章节标题"
            }
          }
        ]
      }
    }
  ]
});

5. 评论管理

// 创建评论
await createComment({
  parent: {
    page_id: "page_id"
  },
  rich_text: [
    {
      type: "text",
      text: {
        content: "建议在这里添加更多细节描述。"
      }
    }
  ]
});

// 获取评论
const comments = await retrieveComments({
  block_id: "page_id"
});

6. 页面移动

// 移动页面到其他父页面
await movePage({
  page_id: "page_id",
  parent: {
    type: "page_id",
    page_id: "new_parent_id"
  }
});

// 或移动到数据库
await movePage({
  page_id: "page_id",
  parent: {
    type: "database_id",
    database_id: "database_id"
  }
});

7. 批量操作

// 批量创建页面记录
const batchCreate = async (databaseId, records) => {
  for (const record of records) {
    await createPage({
      parent: {
        type: "database_id",
        database_id: databaseId
      },
      properties: {
        "任务名称": {
          title: [{ text: { content: record.title } }]
        },
        "状态": {
          select: { name: record.status }
        }
      }
    });
  }
};

// 批量更新块
const batchUpdate = async (updates) => {
  for (const update of updates) {
    await updateBlock({
      block_id: update.blockId,
      ...update.content
    });
  }
};

8. 用户和权限

// 获取用户信息
const users = await listUsers();

// 获取特定用户
const user = await getUser({
  user_id: "user_id"
});

// 获取当前用户
const me = await getSelf();

集成场景

1. 项目管理系统

  • 创建项目概览页面
  • 设置任务跟踪数据库
  • 管理里程碑和时间线
  • 生成项目报告
  • 跟踪团队进度

2. 知识库管理

  • 组织文档结构
  • 创建知识库页面
  • 维护文档索引
  • 设置文档权限
  • 定期更新内容

3. 内容创作工作流

  • 创建内容日历
  • 管理草稿和发布
  • 协作编辑文档
  • 追踪评论反馈
  • 自动化内容发布

4. 团队协作平台

  • 建立团队主页
  • 管理团队成员
  • 设置会议记录
  • 共享资源和链接
  • 跟踪团队任务

5. 自动化报告生成

  • 收集数据更新
  • 生成定期报告
  • 导出报告内容
  • 分发报告给团队
  • 存档历史记录

注意事项

  • 遵守 Notion API 速率限制
  • 正确处理认证和权限
  • 验证块类型和内容格式
  • 保护敏感信息不被泄露
  • 定期备份重要数据
  • 注意页面和数据库的层级关系
  • 使用正确的 ID 类型(page_id、database_id、block_id)
  • 处理 API 错误和异常情况
  • 遵守 Notion 的使用条款
  • 尊重数据隐私和安全规范