AI 时代知识保存方案的快速实现
开发者用 21 天推出应对 AI 时代知识崩塌的实际解决方案,展示知识管理工程化的可行路径。
开发者用 21 天推出应对 AI 时代知识崩塌的实际解决方案,展示知识管理工程化的可行路径。
三周前,我写过关于知识崩溃的文章 —— 我们最好的技术洞察正在私密的 Claude 对话中消亡,而 Stack Overflow 的流量下降了 78%。
数百名开发者同意我们需要一个解决方案。
所以我构建了一个。现在它正在生产环境中运行。
以下是线上演示:https://chat-knowledge-api.fpl-test.workers.dev 以下是源代码:https://github.com/dannwaneri/chat-knowledge 以下是你正在阅读的完整构建会话:107 个分块,174 条消息,通过 HTML 导入
让我向你展示它的工作原理。
知识崩溃正在发生:
你最好的调试解决方案存在私密的 Claude 对话中
没有署名,没有发现,没有共享知识库
Stack Overflow 流量自 ChatGPT 推出以来下降了 78%
我们在优化自己走进一条知识的死胡同
我们需要"Stack Overflow for AI conversations" —— 但要分散化、隐私优先、开发者所有。
工作流非常简单:
进行一次有价值的 Claude 对话
按 Ctrl+S(另存为 HTML)
导入它:node dist/cli/import-html.js chat.html
完成 —— 它是可搜索的
在这篇文章的构建会话中测试:
没有复杂的设置。没有 API 密钥。只需保存和导入。
在任何对话公开之前,它会通过自动检测:
🔴 严重(自动阻止):
API 密钥,Bearer 令牌
私密 URL(localhost、.internal 域)
凭证,密码
我的构建会话扫描的真实结果:
Total issues detected: 599
Critical blocks: 3 (2 Bearer tokens, 1 API key)
High severity: Multiple localhost URLs
Safe to share: FALSE ✅ (exactly as designed)
这就是"分享一切"和"安全分享"之间的区别。一个泄露的 API 密钥成本超过整个系统。
开始:问题识别(1 月 15 日)
构建:107 个对话分块
文件大小:4.6MB HTML
解析时间:< 2 秒
安全扫描:599 个问题检测(3 个严重自动阻止)
发布日期:2 月 8 日(从问题到生产用时 24 天)
这比大多数公司决定要构建什么的时间还要快。
不是关键字匹配 —— 是真正的理解。
查询:"how to handle vectorize embeddings" 找到:关于"维度缩减"和"优化"的内容 相关性分数:0.78
该系统理解了我的意思,而不仅仅是我键入的内容。
Workers AI (@cf/baai/bge-base-en-v1.5) —— 生成嵌入
Vectorize —— 存储 768 维向量
D1 —— 元数据和聊天结构
跨所有导入对话的余弦相似性搜索
这不仅仅是个人知识管理。它被设计为可以联邦化。
NodeInfo:/api/federation/nodeinfo(200 OK ✅)
WebFinger:/api/federation/.well-known/webfinger
Inbox/Outbox:ActivityPub 标准
联邦化的意义:
你运行你的实例
我们搜索跨越所有实例
没有单一的控制点
没有公司大亨
完全像 Mastodon,但针对开发者知识。
Frontend: HTML → Parser → Chunks
Backend: Cloudflare Workers (edge-native)
Database: D1 (SQLite at the edge)
Vector Store: Vectorize (768-dim embeddings)
AI: Workers AI (BGE-base-en-v1.5)
Protocol: ActivityPub (federation standard)
1. IMPORT
HTML file → Parse messages → Chunk content → Generate embeddings
2. SECURITY
Scan for secrets → Flag risks → Require review → Safe by default
3. STORAGE
Chunks → D1 (metadata)
Embeddings → Vectorize (semantic search)
4. SEARCH
Query → Generate embedding → Cosine similarity → Ranked results
5. FEDERATION (coming)
Public chats → ActivityPub → Federated timeline → Cross-instance search
Claude 的 HTML 导出格式没有文档。必须逆向工程:
代码块保留
嵌套内容结构
不能只是用正则表达式匹配"API key" —— 需要理解上下文:
这是代码示例还是真实凭证?
localhost URL 在文档中还是实际端点?
平衡:太严格 = 误报,太宽松 = 泄露
ActivityPub 是为社交帖子设计的,不是问答:
如何表示"问题"vs"答案"?
跨实例的投票联邦化?
没有集中式审核的垃圾邮件防护?
Cloudflare Workers 有约束条件:
每个请求 10ms CPU 限制
仅异步数据库访问
在约束条件内工作 = 更好的架构。
// Real security detection from the codebase
const patterns = {
bearerToken: /Bearer\s+[A-Za-z0-9\-._~+/]+=*/gi,
apiKey: /['\"]?api[_-]?key['\"]?\s*[:=]\s*['\"]?[A-Za-z0-9-_]{20,}['\"]?/gi,
localhost: /https?:\/\/(localhost|127\.0\.0\.1|::1)/gi,
internalDomain: /https?:\/\/[a-z0-9.-]+\.(local|internal|corp|dev)/gi
}
// Scan returns: { safe: boolean, issues: Issue[] }
// Auto-blocks if critical issues found
chats -- Core chat storage
chunks -- Content chunks for search
pre_share_scans -- Security scanner results
chunk_redactions -- Auto-redaction tracking
share_approvals -- Sharing workflow
federated_instances -- Federation network
federated_knowledge -- Cross-instance content
federation_activities -- ActivityPub events
knowledge_analytics -- Usage tracking
collections -- Knowledge curation
collection_items -- Collection membership
这是生产级基础设施,不是概念验证。
Stack Overflow 流量下降 78%,并且还在继续下降。每天,数千个有价值的调试会话在私密 AI 对话中发生并永久消失。
我们不仅失去知识 —— 我们失去了知识共享的习惯。
现在构建这个意味着:
早期采用者塑造协议
联邦化标准自然地出现
我们避免公司收购(没有 VC,没有"转向付费")
开发者从第一天就拥有基础设施
重建知识共享库的最好时机是在 Stack Overflow 崩溃之前。
次好的时机是现在。
✅ 洞察保持可发现 —— 语义搜索找到相关内容
✅ 署名保留 —— 内置源追踪
✅ 隐私受尊重 —— 安全扫描器捕获泄露
✅ 没有平台风险 —— 自托管,你控制你的数据
ActivityPub = 经验证的联邦化协议(为 Mastodon 的 1000 万+用户提供支持)
开发者拥有的实例 —— 运行你自己的,与其他实例连接
没有"地毯式撤离"风险 —— 开源,MIT 许可
Cloudflare Workers 处理大规模:
边缘原生架构
边缘处的 D1 数据库
Vectorize 用于语义搜索
Workers AI 用于嵌入
我用于生产应用的相同技术栈,为数千个用户提供服务。
三周前,Richard Pascoe 在评论中问:"Mastodon 服务器如 Fosstodon 能帮助促进知识共享平台吗?"
我说可以,并构建了它。
这不是理论性的基础设施。它兼容 ActivityPub,意味着它与 Mastodon、Fosstodon 和整个 Fediverse 网络联邦化。
Richard 的问题成为了诊断和解决方案之间的桥梁。
@richardpascoe —— 你的实例准备好了。🚀
问题解决投资组合 —— 你最好的调试会话,可搜索
公开学习 —— 分享解决方案,获得反馈,建立声誉
未来参考 —— "我之前解决过这个,那个对话在哪里?"
机构知识 —— 团队的集体调试历史
入职 —— 新开发者搜索团队的过往解决方案
模式识别 —— 看到跨对话的重复问题
利基专业知识 —— Rust 专家、Cloudflare 开发者等分享领域知识
联邦化发现 —— 跨实例找专家
署名 —— 信用流向真正解决它的人
Stack Overflow 替代品 —— 但分散化和社区拥有
AI 训练数据 —— 高质量、有署名的对话
知识考古 —— 洞察不会随着平台消亡
✅ 在 GitHub 上开源(MIT 许可)
✅ 自托管文档
✅ 生产部署运行
导入 50+ 个历史 Claude 对话(构建语料库)
MCP 扩展(从 Claude Code 公开分享这个对话)
与另一个开发者的第一次联邦化测试
10+ 个联邦化实例
Collections 功能(按主题策划知识)
分析(哪些洞察最有价值)
跨实例搜索
两周前,我们创建了 @the-foundation 来公开保留开发者知识。
Richard Pascoe 发布了我们第一个关于基础知识的协作文章。
这是我们的第二个:工作中的基础设施。
基础不仅仅在写关于问题。我们在发布解决方案。
这不是个人项目。它是基础设施。
克隆仓库:https://github.com/dannwaneri/chat-knowledge
运行你自己的实例 —— README 中有完整的设置指南
贡献协议 —— Issues 和 PRs 欢迎
导入你最好的 AI 对话 —— 构建你的知识投资组合
安全分享 —— 安全扫描器保护你
被发现 —— 联邦化搜索使你的洞察可被找到
给仓库加星 ⭐ —— 表明你关心保留知识
分享这篇文章 —— 帮助传播
加入讨论 —— 下面评论你的想法
知识共享库不会自己重建。但我们可以一起构建它。
# Clone the repo
git clone https://github.com/dannwaneri/chat-knowledge.git
cd chat-knowledge
# Install dependencies
npm install
# Login to Cloudflare (free tier works)
wrangler login
# Create infrastructure
wrangler d1 create chat-knowledge-db
wrangler vectorize create chat-knowledge-embeddings --dimensions=768 --metric=cosine
# Run migrations
wrangler d1 execute chat-knowledge-db --remote --file=migrations/migration-federation.sql
wrangler d1 execute chat-knowledge-db --remote --file=migrations/migration-sanitizer.sql
# Deploy
npm run deploy
就这样。你现在有了自己的联邦化知识实例。
# Save any Claude conversation as HTML (Ctrl+S)
npm run build
node dist/cli/import-html.js path/to/chat.html "My First Import"
curl -X POST https://your-worker.workers.dev/search \
-H "Content-Type: application/json" \
-d '{"query": "debugging tips", "maxResults": 5}'
node dist/cli/safe-share.js <chat-id>
# Shows what would leak before you share
我三周前写了关于这个问题的文章。现在解决方案在生产环境中运行。
从观察到发布的产品用时 21 天。
Cloudflare Workers(秒级部署)
AI 嵌入(开箱即用的语义搜索)
ActivityPub(经验证的联邦化协议)
公开构建(问责 + 反馈)
轮到你了,Stack Overflow。👊
我的 Chrome 标签页讲述了一个故事 —— 开启一切的观察
我们正在创造知识崩溃 —— 问题陈述(12K+ 浏览量)
API 之上:开发者在 AI 能编码时做出的贡献 —— 什么技能真正重要
你在这里 —— 解决方案
GitHub:https://github.com/dannwaneri/chat-knowledge 线上演示:https://chat-knowledge-api.fpl-test.workers.dev Twitter:@dannwaneri
如果你相信保留开发者知识,给仓库加星 ⭐ 让我们把这个做成真实。
基础已奠定。现在我们需要建设者。
有些评论可能仅对登录的访客可见。登录查看所有评论。
如需进一步行动,你可以考虑屏蔽此人和/或举报滥用