news 2026/10/31 1:06:20

13 个 SaaS 连接器实战:create-context-graph 把 GitHub/Slack/Linear 数据变成知识图谱

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
13 个 SaaS 连接器实战:create-context-graph 把 GitHub/Slack/Linear 数据变成知识图谱

【免费下载链接】create-context-graph

AI agents with graph based reasoning memory, scaffolded in seconds

项目地址:https://gitcode.com/gh_mirrors/cr/create-context-graph
点击查看免费下载

create-context-graph 是一个开源的「上下文图谱」(context graph)脚手架工具,内置13 个 SaaS 连接器:一条命令即可把 GitHub、Slack、Linear、Notion、Gmail、Salesforce、Google Workspace 的数据,以及 Claude Code / Claude AI / ChatGPT 的对话历史,统一导入 Neo4j 知识图谱,并自动生成一个带 AI Agent 的全栈应用。📥

为什么团队协作数据适合放进知识图谱?

团队的知识通常散落在多个工具里:

  • GitHub存着 Issue、PR 与代码评审;
  • Slack里是大量的即时讨论与决策碎片;
  • Linear / Jira管理着项目排期与任务状态;
  • Notion / Google Docs沉淀了文档与评论。

这些数据彼此孤立,检索只能靠关键词搜索。create-context-graph 的思路不同:它把各服务的数据抽取为实体(Issue、PR、User、Document…)和关系(REPORTED_BY、BLOCKS、LINKS_TO…),构建成一张可推理的知识图谱。AI Agent 不是对着一堆文本做检索,而是沿着图谱上的边做推理——比如「这个 bug 是谁修的、关联哪个 PR、当时在 Slack 里讨论过什么」。

这正是它与普通 RAG(检索增强生成)方案的核心差异:图谱 + 决策轨迹(decision trace)保留了"为什么",而不只是"是什么"。

13 个 SaaS 连接器一览表 🔌

#连接器导入内容认证方式
1GitHub仓库、Issues、PR、commits、用户、代码评审Personal Access Token
2Slack频道、消息、话题线程、用户、表情回应Bot OAuth Token
3Jira项目、Issues、Sprint、用户、评论、工时API Token + Atlassian 邮箱
4Notion页面、数据库、块、用户、评论内部集成 Token
5Gmail邮件、会话、联系人、标签、附件元数据Google OAuth 2.0
6Google Calendar事件、参会人、日历、循环日程Google OAuth 2.0
7Salesforce客户、联系人、商机、线索、案例OAuth 2.0 Connected App
8Linear12 类实体 + Issue 历史转决策轨迹个人 API Key
9Google WorkspaceDrive 文件、评论线程(决策轨迹)、修订记录、活动流、日历与 Gmail 元数据Google OAuth 2.0
10Claude Code会话历史、消息、工具调用、决策、偏好无需(本地文件)
11Claude AI官方导出的对话、消息、思考轨迹无需(导出 zip)
12ChatGPT官方导出的对话、消息、工具结果无需(导出 zip)
13Local FileMarkdown、PDF、HTML、Word、AsciiDoc 文档无需(本地路径)

💡 值得注意:后 5 个连接器完全不需要任何 API Key——Claude Code 直接读取本地~/.claude/projects/会话文件,Claude AI / ChatGPT 读取官方设置里导出的 zip,本地文件连接器则直接解析磁盘上的文档。

快速上手:一条命令生成图谱应用 ⚡

前置要求:Python 3.11+(推荐用 uv)、Node.js 18+,以及一个 LLM API Key。以「软件研发」领域 + PydanticAI 框架为例,同时接入 GitHub 和 Slack:

uvx create-context-graph my-app \ --domain software-engineering \ --framework pydanticai \ --self-hosted \ --connector github \ --connector slack

脚手架会根据你选择的连接器自动完成三件事:

  1. 把所需的环境变量(如GITHUB_TOKEN、SLACK_BOT_TOKEN)写入项目根目录的.env;
  2. 把各连接器的导入代码生成到backend/app/connectors/;
  3. 生成backend/scripts/import_data.py导入脚本与 Makefile 目标。

随后启动并导入数据:

cd my-app make install make docker-up # 启动本地 Neo4j make import-and-seed # 从 GitHub/Slack 拉取数据并写入图谱 make start

打开http://localhost:3000,就能在左侧与 Agent 对话、中间浏览知识图谱、右侧查看导出的文档。想换其他框架,把--framework换成strands、langgraph、crewai、google-adk等即可,8 种框架共享同一套后端与前端。

连接器实战:四类典型场景

GitHub + Slack:研发协作知识图谱

最常用的组合。GitHub 用 Personal Access Token(需要repo、read:org、read:user权限),Slack 用 Bot Token(需要channels:history、channels:read、users:read、reactions:read权限)。导入后,PR 会与其修改的 Issue、评审人、提交者连成子图,Slack 里的讨论则作为上下文挂在相关实体旁——问 Agent「登录接口的 PR 为什么返工了」,它能沿边找到答案。

Linear:把项目管理历史变成决策轨迹

Linear 连接器是 13 个里最"重"的一个(见 linear_connector.py):

  • 导入12 类实体:Issue、项目、Cycle、团队、用户、标签、工作流状态、评论、项目更新、里程碑、Initiative、附件;
  • 把Issue 历史(状态变更、指派记录)转化为决策轨迹——谁在何时、以什么理由改变了状态,全程可溯源;
  • 内置限流重试(指数退避)与认证校验,只依赖 Python 标准库。

指定--linear-team ENG可以只导入单个团队,否则导入整个工作区。

Google Workspace:文档评论即决策轨迹

这是"决策追踪"能力最强的连接器。它不只搬运文件,还会:

  • 提取已解决的评论线程作为一等公民的决策轨迹——包含问题、讨论过程、最终结论与参与人;
  • 记录文件修订历史与 Drive Activity;
  • 可选导入日历事件与 Gmail 元数据(--gws-include-calendar、--gws-include-gmail);
  • 用--gws-folder-id圈定范围,避免全库扫描。

与 Linear 同时启用时,两者会自动交叉关联:Google Docs 评论或文件名中出现的 Linear Issue 引用,会生成RELATES_TO_ISSUE关系,从而拼出「会议讨论 → 文档定案 → 代码落地」的完整决策生命周期。

Claude Code / Claude AI / ChatGPT:零成本导入 AI 对话历史

三个 AI 助手连接器都不需要任何 API Key:

  • Claude Code:直接解析~/.claude/projects/下的会话 JSONL 文件,从「用户纠正、错误修复循环」中提取决策轨迹,识别开发偏好,并在入库前自动脱敏密钥,还附带 8 个会话智能 Agent 工具;
  • Claude AI / ChatGPT:先在官方设置页导出数据(会收到邮件下载链接),再一条命令入库:
uvx create-context-graph my-chat-graph \ --domain personal-knowledge --framework pydanticai \ --import-type chatgpt \ --import-file ~/Downloads/chatgpt-export.zip \ --import-filter-after 2025-10-01 \ --import-filter-title "python|neo4j"

--import-filter-*系列参数支持按日期、标题正则过滤,--import-depth deep可让抽取更深入。你的 AI 对话历史就此变成个人知识图谱,之后任何 Agent 都能复用。

Local File:本地文档库直接入图

没有 SaaS 依赖的"兜底"连接器:把文件夹丢给它,支持.md、.pdf、.html、.docx、.adoc五种格式,每个文档拆成:Document节点、每个标题拆成:Section节点,再用HAS_SECTION、LINKS_TO边连成结构化子图:

uvx create-context-graph my-app \ --domain financial-services --framework pydanticai \ --connector local-file \ --local-file-path ./my-docs \ --local-file-pattern "**/*.md" \ --local-file-exclude "**/drafts/**" \ --ingest

解析逻辑位于 connectors/_local_file/,其中 PDF 采用四级回退策略,兼顾速度与完整性。

数据如何变成图谱?——NormalizedData 统一管道 🧠

13 个连接器看似形态各异,实际都遵循同一条管道。每个连接器(继承自BaseConnector,见 connectors/init.py)都会把自己拉取的数据归一化成统一的NormalizedData结构,包含四部分:

  • entities:按标签分组的实体字典;
  • relationships:type + source + target的关系列表;
  • documents:标题、正文与元数据;
  • traces:决策轨迹(任务、结论、推理步骤)。

多连接器结果通过merge_connector_results合并后,一次性写入图谱。数据最终落入三种记忆类型(源自 neo4j-agent-memory 架构):

  • 短期记忆:对话与文档正文;
  • 长期记忆:POLE+O 实体图谱(人、组织、地点、事件、对象);
  • 推理记忆:带完整来源的决策轨迹——Agent 回答时能引用"这条结论来自哪次 Linear 状态变更、哪条 Slack 讨论"。

增量再导入:make import 就够了 📚

连接器只在脚手架生成时运行一次,但项目里已经内置了导入管线,后续随时可以增量刷新数据:

make import # 从所有已配置的连接器重新拉取 make import-and-seed # 拉取并写入图谱

凭据统一读取项目根目录的.env,无需再传命令行参数。

延伸阅读

  • SaaS 导入完整指南:import-saas-data.md
  • 本地文档导入:import-local-files.md
  • AI 对话历史导入教程:import-chat-history.md
  • 全部 CLI 参数:cli-options.md
  • 连接器源码目录:src/create_context_graph/connectors/

从「数据散落 6 个工具」到「一张可推理的知识图谱」,create-context-graph 把 ETL 写起来最头疼的脏活——多源拉取、归一化、去重、脱敏——全部封装在 13 个开箱即用的连接器里。下一步,你可以用--list-domains看看 27 个行业领域模板,为你的团队挑一个最贴切的起点。

【免费下载链接】create-context-graph

AI agents with graph based reasoning memory, scaffolded in seconds

项目地址:https://gitcode.com/gh_mirrors/cr/create-context-graph
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/31 1:05:58

把EMI问题扼杀在Layout阶段:EMC预测试频点反推实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 1:03:58

树莓派5换内存为何黑屏?DDR初始化与固件锁死的技术真相

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 1:03:13

质量流量控制器MFC选型与调试实战:从原理到气路集成的关键指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 1:02:04

一键开关机芯片选型指南:功耗、逻辑、集成度与可靠性全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 1:01:51

IT6122桥接芯片详解:MIPI DSI转LVDS接口实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 1:01:39

基于WMS的仓库智能优化:从数据导出到波次路径的落地实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华