运维123 - api
type: channel
link: https://www.sddts.cn/index.php/category/api/
description: api
items: Claude Text Editor 工具使用指南
items: Mailscript CLI 可编程邮箱自动化工具技术分析
items: SECMON 信息安全监控与漏洞管理平台技术分析
items: Pentaract：利用 Telegram API 实现无限云存储的技术分析
items: WeRSS 微信公众号订阅助手技术分析
items: Octopus LLM API 聚合服务技术分析
items: Rote 个人笔记库技术分析
items: gpt-load 企业级多渠道大模型 API 管理平台技术分析
items: PushMe 消息通知平台技术分析
items: Telethon Python MTProto Telegram 客户端库技术分析

Claude Text Editor 工具使用指南
type: item
date: 2026-01-19T00:31:19+00:00
description: Claude Text Editor 工具使用指南一、概述1. 简介A. 是什么Claude Text Editor 是 Anthropic 定义的一个工具，允许 Claude 直接查看和修改文本文件。这使得 Claude 能够直接与文件系统交互，提供动手协助而不仅仅是建议更改。B. 为什么学让 Claude 能够直接调试、修复和改进代码自动化文档生成和测试创建集成到开发工作流中，提升开发效率C. 学完能做什么使用 Claude 修复代码中的语法错误和逻辑问题让 Claude 帮助重构代码结构和添加文档集成文本编辑器工具到自己的应用中2. 前置知识A. 必备技能了解 RESTful API 基本概念熟悉至少一种编程语言（Python、JavaScript 等）基本的文件系统操作知识B. 推荐知识了解 Claude Messages API 的使用方式熟悉工具调用（Tool Use）的概念二、模型兼容性1. 工具版本模型工具版本Claude 4.xtext_editor_20250728Claude Sonnet 3.7（已弃用）text_editor_20250124重要说明：Claude 4.x 使用的 text_editor_20250728 版本不包含 undo_edit 命令如需撤销功能，需要使用 Claude Sonnet 3.7（已弃用）旧版工具不保证与较新模型向后兼容三、工具使用场景1. 代码调试Claude 可以识别并修复代码中的错误，从语法错误到逻辑问题。2. 代码重构让 Claude 通过有针对性的编辑来改进代码结构、可读性和性能。3. 文档生成请求 Claude 为代码库添加文档字符串、注释或 README 文件。4. 测试创建让 Claude 根据其对实现的理解为代码创建单元测试。四、工具命令1. view 命令view 命令允许 Claude 查看文件内容或列出目录内容。可以读取整个文件或特定行范围。参数：command：必须是 "view"path：要查看的文件或目录的路径view_range（可选）：包含两个整数的数组，指定要查看的起始和结束行号。行号从 1 开始索引，结束行为 -1 表示读取到文件末尾。此参数仅适用于查看文件，不适用于目录。示例：{ "command": "view", "path": "primes.py" }{ "command": "view", "path": "primes.py", "view_range": [1, 20] }2. str_replace 命令str_replace 命令允许 Claude 用新字符串替换文件中的特定字符串。用于进行精确编辑。参数：command：必须是 "str_replace"path：要修改的文件的路径old_str：要替换的文本（必须完全匹配，包括空格和缩进）new_str：要在旧文本位置插入的新文本示例：{ "command": "str_replace", "path": "primes.py", "old_str": " for num in range(2, limit + 1)", "new_str": " for num in range(2, limit + 1):" }3. create 命令create 命令允许 Claude 创建包含指定内容的新文件。参数：command：必须是 "create"path：应该创建新文件的路径file_text：要写入新文件的内容4. insert 命令insert 命令允许 Claude 在文件中的特定位置插入文本。参数：command：必须是 "insert"path：要修改的文件的路径insert_line：在其后插入文本的行号（0 表示文件开头）new_str：要插入的文本5. undo_edit 命令undo_edit 命令允许 Claude 撤销对文件的上一次编辑。重要说明：此命令仅在 Claude Sonnet 3.7（已弃用）中可用。Claude 4 模型使用的 text_editor_20250728 不支持此命令。参数：command：必须是 "undo_edit"path：应该撤销上一次编辑的文件的路径五、使用流程Text Editor 工具的使用遵循以下流程：sequenceDiagram participant U as 用户应用 participant C as Claude API participant F as 文件系统 U->>C: 1. 提供工具和用户提示 C->>U: 2. 返回 view 命令 U->>F: 3. 读取文件内容 F-->>U: 返回文件内容 U->>C: 4. 返回 tool_result C->>U: 5. 返回 …

Mailscript CLI 可编程邮箱自动化工具技术分析
type: item
date: 2026-01-18T22:28:30+00:00
description: Mailscript CLI 可编程邮箱自动化工具技术分析一、概述1. 项目简介A. 是什么Mailscript（原名 CLI）是一个基于 Node.js 和 TypeScript 构建的命令行工具，提供可编程邮箱地址和低代码邮件自动化功能。该项目由 pagedotapp 组织开发，采用 MIT 开源许可证。B. 核心价值邮件自动化：类似 Zapier，但面向开发者群体低代码方案：无需转移邮箱服务商即可使用可编程性：支持自定义代码过滤器和路由规则元数据解析：自动解析邮件所有元素并提供 JSON 格式C. 技术特点TypeScript 91.6%：强类型安全保障代码质量CLI 工具：全局安装后提供命令行交互本地守护进程：通过本地 daemon 处理认证HTTP API：支持 RESTful 接口集成二、核心架构1. 系统组成graph TB subgraph 用户层 A[命令行] --> B[mailscript CLI] C[浏览器] --> D[OAuth 登录] end subgraph 本地守护进程 E[Daemon 进程] --> F[认证处理] E --> G[状态管理] end subgraph Mailscript 服务 H[API 网关] --> I[邮箱自动化引擎] I --> J[邮件解析器] I --> K[路由规则引擎] I --> L[自定义脚本执行] end subgraph 外部集成 M[现有邮箱提供商] --> I N[短信服务] --> I O[文件服务器] --> I end B --> E D --> E E --> H2. 组件功能A. CLI 工具负责用户交互和命令执行，核心命令包括：login：OAuth 认证登录automate：创建自动化规则address：管理邮箱地址inbox：管理收件箱B. 本地守护进程处理浏览器 OAuth 回调管理访问令牌和会话状态与远程 API 持续通信C. 邮件解析器解析邮件头信息（From、To、Subject、Date）提取邮件正文（纯文本、HTML）处理附件文件生成结构化 JSON 输出D. 路由规则引擎支持条件过滤（关键词、发件人、主题）支持正则表达式匹配支持邮件头内容过滤支持优先级路由三、核心功能1. 邮箱地址管理graph LR A[用户] -->|创建| B[邮箱地址] B -->|绑定规则| C[自动化脚本] C -->|触发条件| D[动作执行] D --> E[发送短信] D --> F[自动回复] D --> G[保存附件] D --> H[转发邮件]A. 无限地址为不同用途创建专用邮箱地址每个地址可独立配置自动化规则支持动态生成和销毁B. 规则绑定每个地址绑定一个或多个自动化脚本脚本在邮件到达时自动触发支持条件判断和复杂逻辑2. 邮件自动化sequenceDiagram participant M as 发件人 participant P as 邮箱提供商 participant S as Mailscript participant F as 过滤器 participant A as 动作执行 M->>P: 发送邮件 P->>S: Webhook 通知 S->>F: 解析邮件 F->>F: 匹配规则 F->>A: 触发动作 A->>A: 执行脚本A. 内置动作发送短信通知（SMS）自动回复邮件保存附件到服务器转发到主邮箱添加标签或分类B. 自定义脚本支持 JavaScript/TypeScript 编写过滤器访问完整邮件元数据集成第三方 API执行复杂业务逻辑3. 邮件解析graph TD A[原始邮件] --> B[解析器] B --> C[邮件头] B --> D[邮件正文] B --> E[附件] C --> F[From] C --> G[To] C --> H[Subject] C --> I[Date] C --> J[其他头] D --> K[纯文本] D --> L[HTML] E --> M[文件列表] F --> N[JSON 输出] G --> N H --> N I --> N J --> N K --> N L --> N M --> NA. 结构化输出{ "id": "email_id", "from": "sender@example.com", "to": "recipient@mailscript.com", "subject": "Email Subject", "date": "2026-01-19T16:30:00Z", "headers": { "message-id": "...", "references": "...", "in-reply-to": "..." }, "bod…

SECMON 信息安全监控与漏洞管理平台技术分析
type: item
date: 2026-01-17T21:54:25+00:00
description: SECMON 信息安全监控与漏洞管理平台技术分析一、背景与目标1. 项目背景A. 业务场景随着信息安全威胁日益复杂，企业和组织面临着持续增长的漏洞管理挑战。SECMON 是一个基于 Web 的自动化信息安全监控和漏洞管理工具，旨在帮助安全团队及时获取相关 CVE（通用漏洞披露）信息、网络安全威胁动态，并有效管理基础设施中的安全风险。B. 痛点分析信息分散：CVE 信息、安全新闻、漏洞情报散布在多个平台手动追踪效率低：依赖人工检查安全公告，容易遗漏关键信息误报率高：通用的漏洞信息包含大量无关内容，难以快速定位管理难度大：缺乏统一的平台管理产品的安全状态2. 设计目标A. 功能目标自动化收集和推送 CVE 信息监控网络安全威胁动态提供漏洞管理和搜索功能生成安全报告和可视化分析B. 非功能目标易用性：Web 界面提供直观的操作体验可扩展性：支持多用户、多产品管理集成性：日志可集成到 SIEM 系统二、系统概述1. 产品定位SECMON 是一款开源的信息安全监控工具，专注于漏洞情报收集和管理。通过自动化轮询多种数据源，为安全团队提供及时、准确的安全威胁信息。2. 核心特性CVE 邮件告警：当产品列表中出现新的 CVE 时自动发送邮件安全新闻监控：推送网络安全相关新闻，包括新威胁、攻击事件等高风险产品可视化：展示 IT 基础设施中的高风险产品CVE Excel 报告：按日期范围下载漏洞报告网络安全主题排行：展示热门网络安全主题SIEM 日志集成：日志格式易于集成到 Splunk、Graylog 等漏洞详情查询：搜索 CVE 详细信息，包括利用代码检测三、系统架构1. 总体架构graph TB subgraph 数据源层 NIST[NIST CVE API] RSS[RSS 新闻源] Github[GitHub API] ExploitDB[Exploit-DB] end subgraph 采集层 Poller[轮询器] CVECollector[CVE 收集器] NewsCollector[新闻收集器] ExploitCollector[利用代码收集器] end subgraph 处理层 Analyzer[分析引擎] CPEMatcher[CPE 匹配器] KeywordMatcher[关键词匹配器] AlertGenerator[告警生成器] end subgraph 数据层 SQLite[(SQLite 数据库)] Log[日志文件] end subgraph 应用层 Flask[Flask Web 应用] WebUI[Web 界面] API[REST API] end subgraph 通知层 Email[邮件服务] SIEM[SIEM 集成] end NIST --> Poller RSS --> Poller Github --> Poller ExploitDB --> Poller Poller --> CVECollector Poller --> NewsCollector Poller --> ExploitCollector CVECollector --> Analyzer NewsCollector --> Analyzer ExploitCollector --> Analyzer Analyzer --> CPEMatcher Analyzer --> KeywordMatcher CPEMatcher --> AlertGenerator KeywordMatcher --> AlertGenerator AlertGenerator --> SQLite AlertGenerator --> Log AlertGenerator --> Email Flask --> SQLite Flask --> Log Flask --> WebUI Flask --> API WebUI --> 用户 API --> 外部应用 Log --> SIEM2. 组件说明轮询器：定期从各数据源获取最新信息收集器：解析和标准化原始数据分析引擎：处理收集的数据，匹配用户关注的产品匹配器：支持 CPE 和关键词两种匹配方式Web 应用：提供用户界面和管理功能通知服务：发送邮件告警和集成 SIEM四、核心功能1. CVE 监控与告警A. 数据收集机制SECMON 通过两种方法收集 CVE 信息：基于关键词：主动检索相关 CVE，无需精确版本检查，仅匹配关键词（如 "VMWare"、"Apache"）基于 CPE：精确匹配特定产品版本的 CVE（如 "Windows 10 1909"、"Apache 2.4.38"）B. 匹配流程graph LR A[新 CVE 发布] --> B{匹配方式} B --> C[关键词匹配] B…

Pentaract：利用 Telegram API 实现无限云存储的技术分析
type: item
date: 2026-01-17T13:40:36+00:00
description: Pentaract：利用 Telegram API 实现无限云存储的技术分析一、项目概述1. 核心理念Pentaract 是一个开源工具，巧妙地将用户现有的 Telegram 账户转化为无限云存储后端。它不将文件上传到公开频道，而是发送到用户的私人聊天（如「已保存消息」），利用 Telegram 庞大的云基础设施构建个人无限存储系统。2. 项目背景A. 痛点分析云存储费用高昂免费层存储空间有限多服务间文件转移繁琐B. 解决方案复用已有的 Telegram 应用，利用其本质上无限的媒体和文档存储能力。3. 技术定位项目类型：本地客户端工具开发语言：Python存储后端：Telegram API安全特性：端到端加密二、系统架构1. 核心组件graph TD A[用户文件] --> B[Pentaract 客户端] B --> C[本地加密模块] C --> D[文件分块处理] D --> E[Telegram API] E --> F[私人聊天/已保存消息] F --> G[Telegram 云存储] H[用户] -->|请求下载| B B -->|通过 API 获取| F B -->|重组解密| A2. 组件说明A. Pentaract 客户端运行在用户本地机器监控指定文件夹的变更自动同步文件到 Telegram 云B. 本地加密模块使用用户控制的密钥进行本地加密Telegram 只能看到加密后的数据块端到端加密保护隐私C. 文件分块处理自动处理 Telegram 文件大小限制大文件自动分割下载时透明重组D. Telegram API使用标准 Telegram Bot API 或 MTProto认证通过 api_id 和 api_hash与私人聊天交互三、工作流程1. 上传流程sequenceDiagram participant U as 用户 participant C as Pentaract 客户端 participant E as 加密模块 participant S as 分块处理 participant T as Telegram API U->>C: 选择文件 C->>E: 本地加密 E-->>C: 加密数据 C->>S: 文件分块 S->>T: 上传数据块 T-->>S: 确认上传 S-->>C: 上传完成 C-->>U: 同步成功2. 下载流程sequenceDiagram participant U as 用户 participant C as Pentaract 客户端 participant T as Telegram API participant S as 重组模块 participant E as 解密模块 U->>C: 请求文件 C->>T: 获取数据块 T-->>C: 返回加密块 C->>S: 重组文件 S->>E: 解密数据 E-->>C: 原始文件 C-->>U: 返回文件四、技术特性1. 核心优势A. 端到端加密（E2EE）使用用户控制的密钥本地加密Telegram 仅看到加密数据块无法访问原始文件内容B. 无需新账户直接使用现有 Telegram 账户无需注册新服务利用已有的 API 访问权限C. 自动分块处理透明处理 Telegram 文件大小限制自动分割大文件下载时自动重组D. 自托管开源客户端自行运行不信任第三方中介开源代码可审计2. 适用场景归档存储文件备份跨机器同步非敏感文件免费无限存储需求3. 局限性不适合高频协作场景速度不及专业云存储依赖 Telegram 服务可用性五、部署与配置1. 环境准备A. 获取 API 凭证访问 my.telegram.org创建 Telegram 应用获取 api_id 和 api_hashB. 安装依赖# 克隆仓库 git clone https://github.com/Dominux/Pentaract.git cd Pentaract # 安装 Python 依赖 pip install -r requirements.txt2. 配置步骤A. 配置文件设置# config.yaml 示例 telegram: api_id: "your_api_id" api_hash: "your_api_hash" phone: "+1234567890" storage: sync_folder: "/path/to/sync" chat_id: "saved_messages" # 或私人聊天 ID encryption: enabled: true key_file: "/path/to/key"B. 运行客户端# 启动同步服务 python pentaract.py --config config.yaml # 首次运行需要认证 # 输入…

WeRSS 微信公众号订阅助手技术分析
type: item
date: 2026-01-17T10:40:41+00:00
description: WeRSS 微信公众号订阅助手技术分析一、项目概述1. 项目简介WeRSS（We-MP-RSS）是一个开源的微信公众号订阅助手项目，旨在为用户提供符合阅读习惯的微信公众号内容管理方案。该项目通过微信公众号内容爬取和解析，自动生成 RSS 订阅源，使用户能够使用 RSS 阅读器订阅和管理微信公众号内容，摆脱微信应用的束缚。项目仓库地址为 https://github.com/rachelos/we-mp-rss，采用前后端分离架构，后端使用 Python + FastAPI，前端使用 Vue 3 + Vite，数据库支持 SQLite 和 MySQL。2. 核心功能WeRSS 提供了丰富的功能特性，主要涵盖以下几个方面：A. 内容管理功能微信公众号内容爬取和解析：支持多种爬取方式，自动获取公众号文章列表和详情RSS 订阅源生成：为每个订阅的公众号自动生成标准 RSS 格式的订阅源定时自动更新：可配置定时任务，自动抓取最新文章标签订阅：支持按标签筛选和订阅公众号B. 内容导出功能导出为 Markdown：将公众号文章转换为 Markdown 格式导出为 PDF：支持将文章导出为 PDF 文档导出为其他格式：支持 docx、json 等多种格式导出C. Web 管理界面友好的用户界面：提供简洁易用的 Web 管理界面二维码授权：支持扫码授权登录微信公众号订阅管理：可视化的订阅列表管理文章阅读：内置文章阅读器D. 通知与集成授权过期提醒：当公众号授权即将过期时自动提醒自定义通知渠道：支持钉钉、微信、飞书和自定义 WebhookAPI 接口：提供完整的 RESTful APIWebHook 支持：支持 Webhook 集成AI Agent 接入：支持 AI Agent 接入微信公众号E. 定制化配置自定义 RSS 标题、描述和封面自定义 RSS 分页大小多数据库支持：默认使用 SQLite，可选 MySQL多 RSS 客户端支持3. 技术架构WeRSS 采用前后端分离的架构设计，主要技术栈包括：A. 后端技术Python 3.13.1+：项目要求 Python 版本不低于 3.13.1FastAPI：高性能的 Python Web 框架，用于构建 RESTful APISQLite/MySQL：数据存储，默认使用 SQLite，可配置 MySQL定时任务：内置任务调度系统，支持定时抓取文章B. 前端技术Vue 3：渐进式 JavaScript 框架Vite：下一代前端构建工具Node.js 20.18.3+：前端开发环境要求C. 系统架构图graph TB subgraph 前端 A[Vue3 + Vite] end subgraph 后端 B[FastAPI] C[定时任务] D[爬虫模块] E[RSS生成] end subgraph 数据存储 F[(SQLite/MySQL)] G[文件缓存] end subgraph 外部服务 H[微信公众号] I[通知渠道] end A -->|HTTP API| B B --> F B --> G C --> D D --> H D --> F E --> B B --> I I --> J[钉钉/微信/飞书/自定义]二、系统工作原理1. 核心工作流程WeRSS 的核心工作流程可以分为订阅管理、内容爬取、RSS 生成和通知推送四个主要环节。A. 订阅管理用户通过 Web 界面添加要订阅的微信公众号，系统提供多种添加方式：二维码授权：用户使用微信扫描二维码授权登录，系统自动获取已关注的公众号列表手动添加：用户输入公众号名称或 ID，系统搜索并添加标签订阅：用户选择感兴趣的标签，系统自动订阅相关公众号订阅信息被保存到数据库中，包括公众号 ID、名称、授权状态等。B. 内容爬取系统的定时任务模块会周期性地执行内容爬取任务：文章列表爬取：根据订阅列表，爬取每个公众号的最新文章列表文章详情爬取：对新增文章，爬取完整的文章内容、图片、作者等信息内容解析：解析微信公众号的 HTML 内容，提取正文、图片链接等关键信息内容存储：将解析后的文章内容保存到数据库爬取过程支持多种爬取方式，可以应对不同的反爬策略。C. RSS 生成当用户或其他系统请求 RSS 订阅源时，系统会执行以下步骤：读取文章列表：从数据库中查询指定公众号的文章列表生成 RSS XML：按照 RSS 2.0 标准格式生成 XML 文档应用自定义配置：根据用户配置的标题、描述、封面等信息自定义 RSS返回 RSS：将生成的 RSS 内容返回给请求方D. 通知推送当有新的文章被爬取或授权即将过期时，系统会触发通知推送：检查通知条件：判断是否满足通知条件（新文章、授权过期等）格式化通知内容：根据配置的格式（HTML/文本）格式化通知内容调用 Webh…

Octopus LLM API 聚合服务技术分析
type: item
date: 2026-01-16T06:59:47+00:00
description: Octopus LLM API 聚合服务技术分析一、新闻概述1. 标题Octopus：为个人打造的 LLM API 聚合与负载均衡服务2. 发布时间2025 年 1 月 16 日3. 来源GitHub 开源项目二、核心内容1. 事件摘要A. 主要内容Octopus 是一个面向个人用户的 LLM API 聚合服务项目，旨在通过统一入口管理多个 LLM 提供商的 API，实现智能负载均衡和成本优化。B. 核心亮点多渠道聚合：统一管理多个 LLM 提供商通道智能负载均衡：支持轮询、随机、故障转移、加权等多种模式协议转换：无缝转换 OpenAI Chat、OpenAI Responses、Anthropic API 格式自动同步：模型列表和价格信息自动更新优雅 UI：简洁美观的 Web 管理面板2. 关键信息A. 技术栈后端：Go 1.24.4前端：Next.js + pnpm数据库：SQLite、MySQL、PostgreSQLB. 部署方式Docker 容器化部署二进制文件直接运行源码编译C. 默认配置服务端口：8080默认账号：admin/admin数据存储：/app/data3. 背景介绍A. 项目起源随着 LLM 服务提供商日益增多，个人用户面临管理多个 API Key、分散调用、成本统计困难等问题。Octopus 应运而生，提供统一的 API 聚合解决方案。B. 相关上下文项目借鉴了 axonhub 的 LLM API 适配模块设计，并整合了 models.dev 的 AI 模型数据库用于价格信息同步。三、详细报道1. 主要内容A. 功能特性渠道管理：支持单通道多 API Key 配置每个通道支持多个端点，智能选择延迟最短的端点自动根据通道类型追加 API 路径分组管理：将多个通道聚合为统一的对外模型名称调用时设置 model 参数为分组名称即可访问所有通道支持多种负载均衡模式负载均衡模式：轮询模式：按顺序依次分配请求到各通道随机模式：随机选择可用通道故障转移：优先使用高优先级通道，失败时切换到低优先级通道加权模式：根据配置的通道权重分配请求B. 技术改进协议转换：OpenAI Chat 格式OpenAI Responses 格式Anthropic Messages 格式Gemini Generate Content 格式自动同步：定期从 models.dev 同步模型定价数据创建通道时自动同步可用模型列表自动创建未知模型的定价信息C. 统计分析综合请求统计Token 消耗统计成本跟踪定期批量写入数据库（性能优化策略）2. 技术细节A. 系统架构graph TB Client[客户端应用] --> Octopus[Octopus API 网关] Octopus --> LoadBalancer[负载均衡器] LoadBalancer --> Channel1[通道 1] LoadBalancer --> Channel2[通道 2] LoadBalancer --> Channel3[通道 3] Channel1 --> Provider1[提供商 1] Channel2 --> Provider2[提供商 2] Channel3 --> Provider3[提供商 3] Octopus --> Database[(数据库)] Octopus --> PriceSync[价格同步] PriceSync --> ModelsDev[models.dev]B. 数据流程sequenceDiagram participant C as 客户端 participant O as Octopus participant LB as 负载均衡 participant P as LLM 提供商 participant D as 数据库 C->>O: API 请求（model=分组名） O->>LB: 负载均衡选择 LB->>O: 返回选定通道 O->>P: 转发请求（协议转换） P-->>O: 返回响应 O-->>C: 返回结果 O->>D: 异步记录统计C. 配置架构graph LR Config[配置文件] --> Server[服务器配置] Config --> Database[数据库配置] Config --> Log[日志配置] Database --> SQLite[SQLite] Database --> MySQL[MySQL] Database --> PostgreSQL[PostgreSQL]3. 数据与事实A. 支持的 LLM 提供商OpenAI（Chat Completions、Responses）Anthropic（Claude）Google（Gemini）其他兼容 OpenAI 格式的提供商B. 数据库支…

Rote 个人笔记库技术分析
type: item
date: 2026-01-16T06:37:13+00:00
description: Rote 个人笔记库技术分析一、项目概述1. 项目简介Rote 是一款开源的个人笔记仓库项目，主打简约优雅的笔记体验和数据自主控制。项目采用前后端分离架构，支持 Self-Hosted 部署，提供开放 API 接口，让用户完全掌控自己的数据。2. 核心特点A. 设计理念保持克制：专注于优雅的笔记体验，避免功能冗余低心理负担：提供简单直观的记录和部署体验开放接口：提供 API，支持任意场景下的数据记录和获取B. 技术亮点前后端分离架构：可独立部署所需服务Self-Hosted 支持：Docker 一键部署Markdown 文章支持：独立文章可与笔记相互引用iOS 客户端：提供移动端优雅体验二、系统架构1. 整体架构graph TB subgraph 前端层 Web[Web 界面] iOS[iOS 客户端] end subgraph API 层 API[开放 API 接口] Auth[认证授权] end subgraph 数据层 Notes[笔记数据] Articles[Markdown 文章] Export[数据导出] end subgraph 部署层 Docker[Docker 容器] Dokploy[Dokploy 平台] end Web --> API iOS --> API API --> Auth API --> Notes API --> Articles Notes --> Export Articles --> Export Docker --> API Dokploy --> Docker2. 组件说明前端组件Web 界面：基于现代 Web 技术构建的用户界面iOS 客户端：原生 iOS 应用，提供移动端访问后端服务API 服务：提供 RESTful API 接口认证服务：支持 API Key 认证机制数据存储笔记数据：核心笔记内容存储Markdown 文章：独立的文章内容，可与笔记关联三、核心功能1. 笔记管理A. 基础功能创建、编辑、删除笔记笔记分类与标签管理Markdown 格式支持B. 高级功能笔记间相互引用独立文章与笔记关联全文搜索能力2. API 接口A. 开放性设计提供完整的 API 接口，支持：第三方应用集成自动化脚本调用跨平台数据同步B. 认证机制API Key 认证用户名密码认证Token 管理3. 数据控制A. 数据主权完全掌控自己的数据无供应商锁定风险自由导出数据B. 部署自由支持 Docker 部署支持 Dokploy 一键部署可选择部署位置四、部署方案1. Docker 部署A. 快速启动使用 Docker Hub 镜像一键部署：VITE_API_BASE=http://<your-ip-address>:18000 docker-compose up -dB. 环境变量配置VITE_API_BASE：后端 API 地址IMAGE_TAG：镜像版本标签2. Dokploy 部署（推荐）A. 部署步骤访问 Dokploy 管理界面选择 Rote 应用模板点击部署按钮配置自定义域名（可选）B. 域名配置若使用自定义域名，需设置环境变量：VITE_API_BASE=http://your-domain.com # 或使用 HTTPS VITE_API_BASE=https://your-domain.com3. 部署架构graph LR User[用户] -->|HTTPS| LB[负载均衡] LB --> Web[Web 服务] LB --> API[API 服务] API --> DB[(数据库)] Web --> API API --> Storage[文件存储]五、技术栈1. 前端技术根据项目展示，技术栈包括：现代前端框架响应式设计Markdown 渲染引擎2. 后端技术RESTful API 设计数据库持久化API Key 认证机制3. 部署技术Docker 容器化Docker Compose 编排Dokploy 平台集成六、功能特色1. 保持克制的交互设计A. 设计原则专注核心功能避免过度设计简洁直观的用户界面B. 用户体验低学习成本流畅的操作体验减少认知负担2. 开放的数据接口A. API 能力完整的 CRUD 操作数据查询与过滤批量操作支持B. 集成能力支持第三方工具集成支持自动化工作流支持跨平台同步3. 数据自由导出A. 导出格式Markdown 格式JSON 格式其他常用格式B. 迁移能力无供应商锁定支持数据备份支持平台迁移七、应用场景1. 个人知识管理A. 笔记记录日常学习笔记工作经验总结项目文档记录B. 知识沉淀构建个人知识库笔记间关联引用长期知识积累2. 团队协作A. 小型团队团队知识共享协作编辑版本管理B. 文档管理技术文档产品文档流程文档3. API 集成应用…

gpt-load 企业级多渠道大模型 API 管理平台技术分析
type: item
date: 2026-01-16T01:48:52+00:00
description: gpt-load 企业级多渠道大模型 API 管理平台技术分析一、平台概述1. 简介gpt-load 是一款基于 Go 语言开发的企业级多渠道大模型 API 管理平台，专为需要集成多种 AI 服务的企业和开发者设计。它作为透明代理服务，完整保留了各 AI 服务商的原生 API 格式，支持智能密钥管理、负载均衡、故障切换和水平扩展，内置 Web 管理界面，提供高效、稳定的多 AI 服务集成管理方案。2. 核心定位企业级 AI 服务聚合中间件，解决多 AI 服务商接入、密钥管理、负载均衡等痛点问题。3. 设计目标简化 AI 服务集成复杂度，提供统一接入层，降低企业使用多种大模型的技术门槛和运维成本。二、核心功能特性1. 透明代理完全保留 OpenAI、Google Gemini 和 Anthropic Claude 等原生 API 格式，无需修改客户端代码即可无缝迁移。支持官方 OpenAI API、Azure OpenAI 以及其他 OpenAI 兼容服务。支持 Gemini Pro、Gemini Pro Vision 等模型的原生 API。支持 Claude 系列模型，支持高质量的对话和文本生成。2. 智能密钥管理支持密钥分组管理、自动轮换和故障恢复，提升密钥可用性与安全性。提供高性能密钥池，确保在高并发场景下密钥的稳定使用。3. 负载均衡支持多上游端点加权负载均衡，优化请求分发，提高服务整体可用性。自动管理密钥黑名单及恢复机制，减少因密钥失效导致的请求失败。4. 动态配置与热重载系统设置和分组配置支持热重载，修改后无需重启即可生效，提升运维效率。分组配置优先级高于系统设置，满足不同场景下的定制化需求。5. 企业级架构支持分布式主从部署和水平扩展，满足高并发场景下的性能需求。提供全面的监控功能，包括实时统计、健康检查和详细请求日志，便于问题排查与系统优化。6. 现代化管理与安全基于 Vue 3 的 Web 管理界面，直观易用，提升管理效率。管理端与代理端认证分离，支持全局和分组级别代理密钥，强化权限管控。提供优雅关闭、错误恢复和完善的安全机制，确保服务稳定运行。三、系统架构1. 架构设计graph TB subgraph 客户端层 A1[OpenAI 客户端] A2[Gemini 客户端] A3[Claude 客户端] end subgraph gpt-load 代理层 B1[API 网关] B2[认证模块] B3[负载均衡器] B4[密钥管理器] B5[健康检查] B6[配置中心] B7[Web 管理界面] end subgraph 上游服务层 C1[OpenAI API] C2[Azure OpenAI] C3[Gemini API] C4[Claude API] C5[其他兼容服务] end subgraph 数据存储层 D1[(MySQL/PostgreSQL)] D2[(SQLite)] D3[Redis 可选] end A1 --> B1 A2 --> B1 A3 --> B1 B1 --> B2 B2 --> B3 B3 --> B4 B4 --> C1 B4 --> C2 B4 --> C3 B4 --> C4 B4 --> C5 B3 --> B5 B5 --> B4 B7 --> B6 B6 --> B4 B6 --> D1 B6 --> D2 B6 --> D32. 请求处理流程sequenceDiagram participant C as 客户端 participant G as gpt-load 网关 participant A as 认证模块 participant L as 负载均衡器 participant K as 密钥管理器 participant P as 上游 AI 服务 C->>G: 发起 API 请求 G->>A: 验证代理密钥 A-->>G: 认证通过 G->>L: 获取可用端点 L->>K: 请求密钥 K-->>L: 返回健康密钥 L->>P: 转发请求 P-->>L: 返回响应 L-->>G: 转发响应 G-->>C: 返回结果3. 密钥管理机制graph LR subgraph 密钥池 A[密钥组 1] B[密钥组 2] C[密钥组 3] end subgraph 密钥状态 D[活跃密钥] E[冷却密钥] F[黑名单密钥] end subgraph 密钥操作 G[自动轮换] H[故障恢复] I[健康检查] end A --> D B --> D C --> D D --> E E --> D D --> F F --> H H --> D I --> D G --> D四、部署与安装1. 环境准备确保服务器已安装 Docker 和 Docker Compose。准备数据库（…

PushMe 消息通知平台技术分析
type: item
date: 2026-01-15T10:45:48+00:00
description: PushMe 消息通知平台技术分析项目概述PushMe 是一个开源的轻量级消息通知解决方案，由 Android 客户端、自建服务器端和多种接收端组成。该项目旨在为个人开发者和小型团队提供简单、可靠的消息推送能力，无需复杂的注册登录流程，通过 push_key 即可实现消息推送。核心特点：简单：无需登录注册，安装后获取 push_key 即可使用轻量：Android 原生开发，安装包不到 3M可靠：支持离线消息存储与转发兼容：接口兼容企业微信/钉钉/飞书群机器人可扩展：支持插件开发和消息转发系统架构graph TD subgraph "发送端" A1[API调用] A2[curl命令] A3[第三方服务] A4[群机器人兼容] end subgraph "PushMe服务器" B1[HTTP API 端口3010] B2[WebSocket服务] B3[消息队列] B4[push_key管理] end subgraph "接收端" C1[Android客户端] C2[Windows客户端] C3[Telegram机器人] end A1 -->|HTTP POST| B1 A2 -->|HTTP POST| B1 A3 -->|HTTP POST| B1 A4 -->|HTTP POST| B1 B1 --> B3 B3 --> B2 B2 -->|WebSocket| C2 B2 -->|原生推送| C1 B2 -->|Bot API| C3 C1 -->|确认回执| B4 C2 -->|确认回执| B4架构说明：发送端：支持多种消息来源API 调用：任何支持 HTTP 的编程语言curl 命令：命令行直接发送第三方服务： webhook 集成群机器人兼容：可直接替换企业微信/钉钉/飞书群机器人地址PushMe服务器：核心消息中继HTTP API（端口3010）：接收消息推送请求WebSocket服务：实时推送给桌面客户端消息队列：处理离线消息push_key管理：用户身份验证接收端：多终端消息同步Android客户端：原生推送接收Windows客户端：WebSocket 实时接收Telegram机器人：跨平台消息转发技术栈分析服务器端（PushMeServer）组件技术选型运行时Node.js >= 16进程管理PM2部署方式Docker / 源码安装通信协议HTTP + WebSocket消息格式JSON端口分配：3010：Web管理界面、消息发送 API、WebSocket 服务（管理员和 Windows 客户端）3100：消息服务端口（Android 客户端连接）Android 客户端特性说明系统要求Android 7+开发方式原生 Android 开发安装包大小< 3M后台保活支持多种 ROM 的后台保活设置后台保活策略：权限管理：允许自启动、后台运行电池管理：允许后台高耗电（实测耗电低）通知管理：允许消息通知Android 12+：需开启 alarm 闹钟权限部分手机：关闭后台网络优化消息类型支持type 参数类型说明text通知消息普通文本消息markdown通知消息Markdown 格式文本消息html通知消息HTML 格式消息data数据消息数据可视化（支持 data/markdata/chart/echarts 格式）核心功能分析1. push_key 认证机制push_key 是 PushMe 的核心认证机制，用户在 Android 客户端生成后，即可用于 API 调用。这种设计避免了传统账号体系的复杂性：获取流程：安装APP → 生成push_key → 复制使用 → 发送消息优势：无需注册登录密钥即身份支持多设备独立密钥2. 消息通道机制PushMe 支持自定义消息通道，用户可以为不同来源的消息设置：不同的通知声音不同的震动模式不同的通知样式应用场景：监控告警：使用紧急提醒消息通知：使用普通提示定时任务：使用静默通知3. 插件系统PushMe 支持插件开发，允许用户对收到的消息进行加工处理：// 插件开发示例（概念） function processMessage(message) { // 自定义处理逻辑 return modifiedMessage; }4. 消息转发支持将手机端收到的消息转发到电脑端：Android 客户端接收消息通过 WebSocket 转发到 Windows 客户端实现跨设备消息同步API 接口发送消息接口请求地址：POST https://push.i-i.me/请求参数：参数描述必填push_key接口密钥是title消息标题与 content 至少填一项content消息内容与 title 至少填一项type消息类型（text/markdown/html/data）否to…

Telethon Python MTProto Telegram 客户端库技术分析
type: item
date: 2026-01-15T10:39:27+00:00
description: Telethon Python MTProto Telegram 客户端库技术分析一、概述1. 简介A. 是什么Telethon 是一个基于 asyncio 的纯 Python 3 MTProto 库，用于与 Telegram API 进行交互。它支持用户账户和机器人账户两种模式，是 Bot API 的替代方案。B. 为什么值得研究纯 Python 实现，无需依赖 C 扩展库完整实现 MTProto 协议，直接访问 Telegram API支持 asyncio 异步编程模型，性能优异活跃的社区维护，11.2k+ GitHub Stars被超过 69,900 个项目使用C. 学完能做什么开发 Telegram 机器人和用户自动化工具实现 Telegram 消息收发、文件传输功能构建自定义的 Telegram 客户端应用理解 MTProto 协议的工作原理2. 前置知识A. 必备技能Python 3 基础编程能力异步编程概念（async/await）Telegram 基本使用经验B. 推荐知识asyncio 库的使用MTProto 协议基础API 开发经验二、环境准备1. 系统要求Python 3.6 或更高版本asyncio 支持（Python 3.7+ 内置）网络连接2. 安装步骤基础安装pip3 install telethon完整安装（包含加密库依赖）pip3 install telethon[cryptg]3. 获取 API 凭证在使用 Telethon 之前，必须从 Telegram 获取 API 凭证：访问 https://my.telegram.org登录你的 Telegram 账户进入 API Development 部分获取：api_id：数字标识符api_hash：密钥字符串4. 验证安装from telethon import TelegramClient print(Telethon.__version__)三、核心概念1. 基本术语MTProtoMTProto 是 Telegram 开发的专有网络协议，用于客户端与服务器之间的通信。它提供了：高效的数据传输端到端加密数据完整性验证Session（会话）Session 是客户端与 Telegram 服务器之间的持久化连接状态，包含：认证信息服务器配置缓存数据Events（事件）Telethon 使用事件驱动模型处理消息和通知：NewMessage：新消息事件CallbackQuery：回调查询Raw：原始事件2. 工作原理graph TB A[Python 应用] -->|API 调用| B[Telethon 客户端] B -->|MTProto 协议| C[Telegram 服务器] C -->|响应| B B -->|异步事件| D[事件处理器] D -->|回调| A B -->|持久化| E[Session 文件]3. 架构设计Telethon 采用分层架构：graph LR A[应用层] -->|API| B[Telethon Client] B -->|请求| C[TL 层] C -->|序列化| D[MTProto 层] D -->|网络| E[Transport 层] E -->|TCP| F[TG Server]组件说明：应用层：用户代码，调用 Telethon APITelethon Client：提供高级 API 接口TL 层：Type Language，定义 API 数据结构MTProto 层：协议实现，处理加密和传输Transport 层：网络传输抽象四、快速上手1. Hello World 示例创建客户端from telethon import TelegramClient # 使用从 my.telegram.org 获取的凭据 api_id = 12345 api_hash = '0123456789abcdef0123456789abcdef' # 创建客户端，session_name 会保存登录状态 client = TelegramClient('session_name', api_id, api_hash) # 启动客户端（首次运行会要求输入手机号和验证码） client.start()基本操作# 获取当前账户信息 print(client.get_me().stringify()) # 发送消息 client.send_message('username', 'Hello! Talking to you from Telethon') # 发送文件 client.send_file('username', '/path/to/file.jpg') # 下载个人资料照片 client.download_profile…