标签: 开源项目

  • PDFCraft:全能开源的本地 PDF 工具箱,彻底终结隐私焦虑

    PDFCraft:全能开源的本地 PDF 工具箱,彻底终结隐私焦虑

    在日常办公中,我们经常需要处理 PDF 合并、拆分、压缩或添加水印。市面上大多数在线工具都需要将文件上传至第三方服务器,这对于包含个人信息或商业机密的文件来说,无疑是一个巨大的安全隐患。PDFCraft 是一款基于 Next.js 开发的开源 PDF 处理工具,它最大的亮点在于完全在浏览器本地处理文件

    PDFCraft 不仅仅是一个简单的转换器,它是一个集成了 20 多种功能的综合工作台。由于处理逻辑运行在用户的浏览器端,你的原始文件永远不会离开你的电脑。这不仅保障了极致的隐私,还避免了上传大文件带来的带宽消耗和等待时间。


    🚀 核心功能

    • 📄 基础编辑:支持 PDF 合并、拆分、删除特定页面、重新排序。
    • 🔐 安全防护:为 PDF 添加密码保护、移除现有密码、添加文本或图片水印。
    • 🖼️ 格式转换:支持 PDF 转图片(JPG/PNG)、图片转 PDF、HTML 转 PDF。
    • 📉 优化压缩:在保持清晰度的前提下减小文件体积,方便邮件发送。
    • ✍️ 注释修复:提取 PDF 中的图像、旋转页面、修复损坏的文档。
    • 🌐 隐私优先:所有核心处理逻辑均在客户端执行,无需服务器后端存储文件。
    • 📱 极致体验:基于 Tailwind CSS 的现代化响应式 UI,支持暗黑模式,适配移动端。

    📊 PDFCraft 与主流工具对比

    特性PDFCraft (开源)Adobe Acrobat商业在线工具 (如 SmallPDF)
    费用完全免费昂贵的订阅制部分免费/按量付费
    隐私安全性极高 (本地处理)高 (本地)中 (需上传至云端)
    部署方式自托管/Vercel/Docker客户端安装Web 访问
    处理速度取决于本地算力取决于网速与服务器排队
    功能限制无限制无限制每日免费次数限制

    🛠️ 准备工作

    • Node.js 环境:若使用源码部署,需安装 Node.js 18.x 或更高版本。
    • 包管理工具:推荐使用 pnpmnpm
    • Docker 环境:若使用容器化部署,请确保已安装 Docker。
    • 内存建议:处理超大 PDF 文件(如 500MB 以上)时,建议浏览器分配至少 2GB 内存空间。

    📦 部署步骤

    PDFCraft 提供了灵活的部署选项,无论你是个人使用还是为公司搭建内部工具,都能找到合适的方案。

    1. 使用 Docker 部署 (最推荐)

    Docker 是最简单且隔离性最好的部署方式,一行命令即可搞定。

    快速启动

    docker run -d -p 3000:3000 --name pdfcraft pdfcrafttool/pdfcraft:latest
    

    使用 Docker Compose (适用于群晖/NAS)

    创建一个 docker-compose.yml 文件:

    version: '3'
    services:
      pdfcraft:
        image: pdfcrafttool/pdfcraft:latest
        container_name: pdfcraft
        ports:
          - "3000:3000"
        restart: always
    

    然后在目录下运行:

    docker-compose up -d
    

    2. 在 Vercel 或 Netlify 上一键部署

    由于 PDFCraft 是基于 Next.js 开发的纯前端项目(大部分逻辑在客户端),它非常适合部署在 Vercel 等平台。

    1. 登录你的 GitHub 账号并 Fork PDFCraft 仓库
    2. 进入 Vercel 控制台,点击 Add New Project
    3. 导入刚才 Fork 的仓库,保持默认构建设置(Framework Preset 选择 Next.js)。
    4. 点击 Deploy,几分钟后你将获得一个全球加速的个人 PDF 工具站。

    3. 源码手动构建部署

    如果你需要进行二次开发或在内网环境运行:

    第一步:克隆并安装依赖

    git clone https://github.com/PDFCraftTool/pdfcraft.git
    cd pdfcraft
    pnpm install
    

    第二步:运行开发服务器

    pnpm dev
    

    第三步:生产环境构建

    pnpm build
    pnpm start
    

    服务默认运行在 http://localhost:3000


    💡 总结评价

    PDFCraft 是目前市面上最值得推荐的开源 PDF 解决方案之一。它精准地切中了用户对“在线工具不安全”和“本地软件太笨重”之间的矛盾。

    • 优点:UI 极度精美,功能覆盖面极广,最重要的是完全免费且保护隐私
    • 缺点:对于极个别超大、超复杂的加密 PDF,浏览器的处理性能可能稍逊于原生 C++ 编写的客户端软件。
    • 适用建议:强烈建议公司行政、财务人员以及对隐私敏感的极客群体自建使用。将其部署在 NAS 或公司内网服务器上,是替代 Acrobat 的绝佳方案。

    项目地址

    资源名称链接地址
    GitHub 仓库https://github.com/PDFCraftTool/pdfcraft
    在线演示地址https://pdfcraft.devtoolcafe.com
  • Kula:极致轻量的单二进制 Linux 服务器监控神器深度测评与部署指南

    Kula:极致轻量的单二进制 Linux 服务器监控神器深度测评与部署指南

    在服务器运维领域,传统的监控方案如 Prometheus + Grafana 虽然强大,但往往伴随着复杂的依赖和沉重的资源消耗。对于追求极致效率的极客来说,一个“开箱即用、零依赖、毫秒级响应”的监控工具才是刚需。今天我们要深度拆解的开源项目是 Kula —— 一个专注于高性能、自包含的 Linux 系统实时监控利器。

    Kula 放弃了外部数据库,转而采用自研的二进制环形缓冲区(Ring-buffer)存储引擎。它直接与 Linux 内核对话,通过读取 /proc/sys 目录获取第一手系统指标。无论是在高性能服务器还是资源受限的嵌入式设备上,Kula 都能展现出惊人的运行效率。🚀


    核心功能

    • 📦 零依赖单兵作战:无外部数据库依赖,不要求安装 Python、Node.js 或 Docker,单个二进制文件搞定一切。
    • 📊 全方位指标采集
      • CPU/GPU:利用率、核心负载、NVIDIA GPU 功耗及显存监控。
      • 内存与存储:详细的内存分级(Available/Buffers/Cached)、磁盘 I/O(IOPS、吞吐量)。
      • 网络链路:每接口带宽监控、TCP 重传/重置错误统计。
      • 系统状态:进程统计(僵尸进程捕捉)、系统负载、时钟同步及熵值监控。
    • 🗄️ 创新存储引擎:内置三级环形缓冲区(1s/1m/5m 聚合),通过固定大小的二进制文件存储数据,新数据自动覆盖旧数据,永不撑爆磁盘。
    • 🖥️ 双重交互界面
      • Web Dashboard:基于 WebSocket 的实时数据流,支持拖拽缩放、聚焦模式及亮暗主题。
      • 终端 TUI:支持通过命令行直接进入交互式文本界面,适合 SSH 远程调试。
    • 🔒 隐私与安全:完全自托管,无任何云端连接,支持 Argon2id 加密认证。

    准备工作

    由于 Kula 极度轻量,其前置需求非常简单:

    1. 操作系统:任何现代 Linux 发行版(内核支持 /proc 接口)。
    2. 权限:运行 Kula 需要读取 /proc/sys 的权限(部分指标可能需要 root 权限)。
    3. 架构支持:支持 amd64, arm64, riscv64 等主流架构。
    4. 端口准备:默认占用 27960 端口(可在配置中修改)。

    部署步骤

    Kula 提供了极为丰富的部署方案,涵盖了从一键脚本到容器化的所有主流方式。

    1. 引导式一键安装(推荐)

    这是最快的方式,脚本会自动识别你的系统架构并完成配置:

    sh -c "$(curl -fsSL https://raw.githubusercontent.com/c0m4r/kula/refs/heads/main/addons/install.sh)"
    

    2. Docker 部署方案

    如果你偏好容器化管理,可以使用以下指令快速启动:

    临时测试(不保存数据)

    docker run --rm -it --name kula --pid host --network host -v /proc:/proc:ro c0m4r/kula:latest
    

    生产环境持久化部署

    docker run -d --name kula --pid host --network host \
      -v /proc:/proc:ro \
      -v kula_data:/app/data \
      c0m4r/kula:latest
    

    3. 系统原生包管理安装

    Kula 官方预编译了主流发行版的安装包,支持 journalctl 查看日志:

    Debian / Ubuntu (.deb)

    wget https://github.com/c0m4r/kula/releases/download/0.12.1/kula-0.12.1-amd64.deb
    sudo dpkg -i kula-0.12.1-amd64.deb
    sudo systemctl start kula
    

    RHEL / Fedora / CentOS (.rpm)

    wget https://github.com/c0m4r/kula/releases/download/0.12.1/kula-0.12.1-x86_64.rpm
    sudo rpm -i kula-0.12.1-x86_64.rpm
    sudo systemctl start kula
    

    Arch Linux (AUR)

    git clone https://aur.archlinux.org/kula.git
    cd kula && makepkg -si
    

    4. 源码编译(开发者模式)

    如果你需要针对特定环境进行二次开发:

    git clone https://github.com/c0m4r/kula.git
    cd kula
    ./addons/build.sh
    ./kula
    

    总结评价

    Kula 是一款充满“Unix 哲学”的监控工具。它不贪大求全,而是将“实时监控”这一核心功能做到了极致。

    👍 优点:

    • 部署门槛极低:单二进制文件在应急响应和临时监控场景下简直是救星。
    • 资源开销极小:存储引擎的设计非常聪明,避免了大规模监控带来的磁盘膨胀问题。
    • 交互体验佳:Web 端支持 WebSocket 实时推送,延迟极低,UI 极具现代感。

    👎 缺点:

    • 非长期历史分析工具:由于环形缓冲区的特性,它更侧重于当前和近期状态,不适合存储数年的历史审计数据。
    • 单机属性强:虽然提供 API,但原生并不具备像 Prometheus 那样的集群发现机制。

    适用性建议:

    Kula 非常适合个人 VPS、边缘计算设备、家庭实验室(Homelab)以及需要快速定位性能瓶颈的临时生产环境。


    项目地址

    维度信息
    GitHub 仓库https://github.com/c0m4r/kula
    官方演示👀 Live Demo
  • 彻底告别昂贵月费:全平台开源视频会议系统 Jitsi Meet 部署全攻略

    彻底告别昂贵月费:全平台开源视频会议系统 Jitsi Meet 部署全攻略

    在远程办公与全球协作成为常态的今天,一套稳定、高清且安全的视频会议系统是企业的刚需。然而,依赖 Zoom 或 Teams 等商业软件不仅面临高昂的订阅费用,更存在数据隐私泄露的风险。

    Jitsi Meet 是一套完全免费、开源且具备企业级性能的视频会议解决方案。它基于 WebRTC 技术,支持浏览器、移动端 App 甚至桌面端。与传统的视频会议不同,Jitsi 不需要下载任何插件即可通过浏览器一键入会。通过自托管 Jitsi Meet,你可以完全掌控会议数据,并利用其强大的 SFU(选择性转发单元)架构,实现低延迟、高并发的流畅体验。


    简介

    Jitsi Meet 是一套由多个核心组件协同工作的开源全家桶。它通过 Jitsi Videobridge (JVB) 实现了高效的流媒体转发,不同于传统的 MCU 方案(在服务器端混合视频),SFU 方案将原始流转发给参与者,极大地降低了服务器的 CPU 消耗。

    该项目解决了企业在选择视频工具时最核心的痛点:私有化部署端到端加密以及无限制的参会人数。只要服务器带宽和性能足够,你可以搭建一个支持成百上千人同时在线的通讯平台。

    核心功能

    • 免下载入会:基于 WebRTC 协议,直接通过浏览器链接即可加入会议。 🌐
    • 端到端加密:支持最先进的加密技术,确保会议内容只有参会者可见。 🔒
    • 多方通话与协作:支持屏幕共享、举手发言、实时聊天以及共享文档协作(通过 Etherpad)。 🤝
    • 全平台覆盖:提供 iOS、Android 移动端 App 以及各平台的桌面客户端。 📱
    • 强大的 API 集成:可以通过外部 API 轻松集成到你的企业内网或网站中。 🛠️
    • 自定义品牌:支持更换 Logo、背景及 UI 界面,打造专属的企业品牌形象。 🎨

    技术栈概览

    组件名称核心职责
    Jitsi Videobridge (JVB)负责音视频流的转发 (SFU)
    Jicofo负责会议信令和资源管理
    Prosody基于 XMPP 协议的用户连接与认证服务器
    Jitsi Meet Web基于 React 开发的前端界面

    准备工作

    在开始部署前,请确保你的服务器(推荐 Ubuntu 20.04/22.04 LTS)满足以下条件:

    1. 域名:一个解析好的全限定域名 (FQDN),如 meet.yourdomain.com
    2. 带宽:视频会议对上行带宽要求极高,建议至少 10 Mbps 对称带宽。
    3. 端口开放
      • 80/443 TCP:用于 Web 访问和 SSL 证书申请。
      • 10000 UDP:用于音视频流传输(关键!)。
      • 3478 UDP:用于 STUN 服务。
      • 5347 TCP:用于 XMPP 组件通信。
    4. 硬件配置
      • 小型会议 (10人以内):2核 4G 内存。
      • 中型会议 (50人以内):4核 8G 内存。

    部署步骤

    Jitsi Meet 提供了多种部署方式,生产环境下推荐使用 Docker Compose 以获得更好的隔离性和易维护性。

    方案一:Docker Compose 快速部署 (推荐方案) 🌟

    1. 克隆官方部署仓库

    git clone https://github.com/jitsi/docker-jitsi-meet
    cd docker-jitsi-meet
    

    2. 配置环境变量

    cp env.example .env
    # 使用提供的脚本生成随机密码
    ./gen-passwords.sh
    

    3. 修改关键配置

    使用编辑器打开 .env 文件,修改以下项:

    # 你的服务器域名
    PUBLIC_URL=https://meet.yourdomain.com
    
    # 自动申请 Let's Encrypt 证书
    ENABLE_LETSENCRYPT=1
    LETSENCRYPT_EMAIL=your-email@example.com
    
    # 允许访客访问
    ENABLE_GUESTS=1
    

    4. 启动容器

    docker-compose up -d
    

    稍等片刻,访问你的域名即可看到熟悉的会议界面。


    方案二:Ubuntu/Debian 原生安装 (极致性能) 🚀

    如果你希望直接在操作系统上运行以榨取最大性能,可以按照以下步骤操作:

    1. 添加 Jitsi 官方源

    curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
    echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null
    sudo apt update
    

    2. 安装 Jitsi Meet

    sudo apt install jitsi-meet
    

    安装过程中会弹出窗口,询问你的 Hostname,并建议你生成自签名证书或选择已有证书。

    3. 一键配置 SSL 证书

    安装完成后,执行脚本自动获取免费证书:

    sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
    

    总结评价

    优点

    • 极致的私密性:会议数据完全驻留在自己的服务器上,支持端到端加密。 🛡️
    • 低延迟体验:SFU 架构保证了在大规模会议下的流畅度。 ⚡
    • 高度可扩展:支持通过 Jibri 组件实现视频录制和直播功能。 🎥

    缺点

    • 网络环境要求高:对丢包率敏感,如果服务器在国内但参会者在海外,需要配置良好的中转。 📶
    • 配置稍显复杂:尤其是开启录制功能 (Jibri) 时,需要额外的硬件加速资源和配置。 🛠️

    适用建议

    如果你是追求自主掌控权的中大型企业,或者是对隐私有极高要求的教育/医疗机构,Jitsi Meet 是目前开源界唯一能与商业巨头正面抗衡的视频会议系统。


    项目地址

    资源名称链接地址
    GitHub 主仓库jitsi/jitsi-meet
    官方文档Jitsi Handbook
    社区论坛Jitsi Community
    官网地址免费网页和移动视频会议软件
  • 告别繁琐编译:JsxposedX —— 让 JS 脚本成为安卓逆向的“捷径”

    告别繁琐编译:JsxposedX —— 让 JS 脚本成为安卓逆向的“捷径”

    在安卓玩机和逆向分析的圈子里,Xposed 插件开发一直是一座难啃的硬骨头。传统的 Java 开发模式不仅要求深厚的安卓底层功底,更伴随着漫长的编译、安装、重启循环,极大地消耗了开发者的耐心。

    JsxposedX(由开发者 dugongzi 维护的增强版本)正是为打破这一僵局而生的利器。它将 JavaScript 的灵活性与 Xposed 框架的强大能力完美结合,让用户通过简单的 JS 脚本就能实现对系统和应用的深度 Hook。相比于原版,JsxposedX 在稳定性和兼容性上做了进一步优化,真正实现了“即写即用”。你不再需要为了修改一个小的 UI 逻辑而去配置复杂的 IDE 环境,只需一段轻便的脚本,就能在手机上实时调教各类 App。对于想要快速验证 Hook 点、实现自动化流程或者进行安全研究的极客来说,这无疑是目前最高效的“物理外挂”。


    🚀 功能亮点与核心优势

    • JS 驱动核心: 使用广为人知的 JavaScript 编写 Hook 逻辑,大幅降低了安卓逆向的准入门槛。
    • 热加载机制: 修改脚本后通常无需重新启动手机,极大缩短了调试周期,效率提升翻倍。
    • 深度集成: 完美适配 LSPosed 等主流框架,作为模块运行,系统资源占用极低。
    • 强大的 API 封装: 提供简洁的 API 调用方式,轻松实现类查找、方法替换、参数拦截及字段修改。
    • 跨平台开发: 只要有文本编辑器,你甚至可以直接在手机端完成脚本的编写与部署。

    💻 适用场景

    1. 快速原型验证: 在开发正式插件前,利用 JsxposedX 快速测试 Hook 点是否准确有效。
    2. App 个性化定制: 轻松去除应用内置广告、解锁隐藏功能或修改特定的界面布局。
    3. 自动化分析: 配合脚本实现对特定 App 数据流的监控和自动化操作。

    📥 软件下载

    JsxposedX 作为开源项目,建议直接从 GitHub Release 页面获取经过编译的稳定版本。

    平台下载链接
    Android (Root)GitHub Releases 下载
    Android项目主页获取
    源代码GitHub 仓库主页
    JsxposedXJsxposedX

  • 阿里巴巴 Page-Agent 深度解析:无需视觉模型,纯 JavaScript 实现网页 GUI 自动化控制

    阿里巴巴 Page-Agent 深度解析:无需视觉模型,纯 JavaScript 实现网页 GUI 自动化控制

    在 AI Agent 飞速发展的今天,自动化操作网页通常依赖于 Puppeteer 等厚重的后端驱动程序,或者需要消耗巨大 Token 的视觉模型(Vision Model)来识别截图。这种方式不仅延迟高、部署复杂,而且隐私性较差。

    Page-Agent 是由阿里巴巴团队推出的新一代 In-Page GUI Agent 框架。它完全运行在浏览器页面内部,通过纯 JavaScript 驱动,能够将复杂的 DOM 结构智能“脱水”为大模型易于理解的纯文本。这意味着你可以仅凭自然语言,就能让 AI 在你的 SaaS 系统、ERP 或任何复杂网页上像真人一样进行点击、输入和滚动,而无需昂贵的视觉推理。


    简介

    Page-Agent 是一款革命性的网页原生智能体工具。它解决了传统自动化工具的三大痛点:环境依赖重(需要 Python/Node 后端)、Token 消耗高(截图识别非常贵)以及操作精度差

    该项目的核心思想是“赋予网页自我意识”。通过在前端注入一个轻量级的 JS 代理,Page-Agent 能够实时感知页面状态,并将操作逻辑交给大模型(如通义千问、GPT-4)处理。它将网页操作从“模拟像素点击”进化到了“语义化 DOM 操控”。

    核心功能

    • 原生 JS 驱动:无需安装 Python 或任何后端驱动,直接在浏览器控制台或 HTML 中引入即可使用。 ⚡
    • 高效 DOM 脱水:独创的文本压缩技术,将冗长的 HTML 转化为精简的语义文本,大幅降低 LLM 的 Token 开销。 📉
    • 无需视觉模型:通过理解元素属性(ID, Class, Text)而非图像进行决策,操作精度更高,适配性更强。 🎯
    • 工具调用(Tool-Use)集成:完美适配大模型的 Function Calling 机制,支持点击、输入、滚动、等待等一系列原子操作。 🛠️
    • 极低延迟:由于决策逻辑与页面执行都在浏览器端(或通过 API 快速交互),响应速度远超视觉方案。 🚀
    • 隐私保护:所有 DOM 数据处理均在本地进行,无需上传页面截图到云端。 🔒

    技术参数对比

    特性传统视觉 Agent (如 UFO)Page-Agent
    推理资源高(需要 Vision LLM)低(普通文本 LLM 即可)
    部署方式复杂(后端环境+驱动)极简(Script 注入/NPM)
    准确率受分辨率和布局影响受 DOM 语义清晰度影响
    Token 成本极高(单次交互数千 Token)极低(数百 Token)

    准备工作

    在部署 Page-Agent 之前,请确保你已具备以下环境:

    1. 大模型 API 密钥:支持 Tool Call 功能的模型(推荐 Qwen-Max, Qwen-PlusGPT-4o)。
    2. 开发环境
      • 若使用 NPM 方式,需安装 Node.js 18+
      • 若使用 CDN 方式,仅需一个现代浏览器(Chrome/Edge)。
    3. 网络环境:能够正常调用大模型 API 接口。

    部署步骤

    Page-Agent 提供了多种灵活的接入方式,满足从个人演示到企业级集成的不同场景。

    方案一:通过 CDN 一行代码引入 (最快体验)

    这种方式最适合在现有网页中快速增加 AI 助手功能,或在浏览器控制台中直接调试。

    <script src="https://unpkg.com/@alibaba/page-agent/dist/index.js"></script>
    
    <script>
      const agent = new PageAgent({
        apiKey: 'YOUR_LLM_API_KEY',
        model: 'qwen-max',
        baseURL: 'https://dashscope.aliyuncs.com/api/v1', // 对应模型的 API 终点
      });
    
      // 启动 Agent 并下达指令
      agent.run("帮我把这个页面的背景色改成浅蓝色,并搜索 '阿里巴巴'");
    </script>
    

    方案二:使用 NPM 集成到工程项目

    如果你正在开发一个 SaaS 系统的 AI Copilot,推荐使用 NPM 包形式。

    1. 安装依赖

    npm install @alibaba/page-agent
    

    2. 在业务代码中调用

    import { PageAgent } from '@alibaba/page-agent';
    
    const agent = new PageAgent({
      config: {
        // 这里的配置可以根据具体的 LLM 服务商进行调整
        provider: 'openai', // 兼容 OpenAI 协议的接口
        apiKey: process.env.AGENT_API_KEY,
      }
    });
    
    async function autoFillForm() {
      await agent.execute("找到页面上的注册表单,并填写默认测试信息");
    }
    

    方案三:源码编译与本地开发

    如果你需要自定义“脱水”逻辑或增加新的原子操作工具,可以从源码构建。

    1. 克隆仓库

    git clone https://github.com/alibaba/page-agent.git
    cd page-agent
    

    2. 安装并构建

    npm install
    npm run build
    

    3. 运行示例

    项目中包含了多个 Playground 示例,可以帮助你理解 Agent 是如何在 React 或 Vue 页面中工作的:

    npm run dev
    

    核心配置项解析

    在初始化时,你可以通过配置项优化 Agent 的表现:

    {
      maxSteps: 10,        // 最大尝试步数,防止死循环
      interactive: true,   // 是否开启交互模式(人工确认后再执行)
      includeHidden: false // 是否包含隐藏元素,设为 false 可显著减少 Token 消耗
    }
    

    总结评价

    优点

    • 成本极度友好:对于需要频繁操作网页的场景,Page-Agent 能帮你节省 80% 以上的 API 费用。 💰
    • 开发门槛低:前端工程师无需学习复杂的自动化测试框架,只要会 JS 就能上手。 👩‍💻
    • 稳定性高:直接操作 DOM 元素比图像识别更稳健,即使页面缩放或部分遮挡也不受影响。 🏗️

    缺点

    • 跨域限制:受浏览器沙箱限制,在不使用插件的情况下,无法跨域名操作(例如从 A 网站直接跳到 B 网站)。 🚧
    • 对 DOM 规范有依赖:如果网页充满了无意义的 <div> 嵌套且没有任何 Text 或 Class 描述,Agent 的理解能力会下降。 🧩

    适用建议

    Page-Agent 非常适合作为 SaaS 产品的内置 AI 助手自动化报表填写工具内部管理系统的智能导航。如果你需要一个能够“听懂人话”并操作复杂后台界面的组件,它是目前的最佳选择。


    项目地址

    资源名称链接地址
    GitHub 仓库alibaba/page-agent
    官方文档Page-Agent Wiki
    示例演示Online Playground
  • 打造私有全能网盘搜索引擎 高性能开源项目 PanSou 深度部署教程

    打造私有全能网盘搜索引擎 高性能开源项目 PanSou 深度部署教程

    在资源极其碎片化的今天,寻找一份网盘文件往往需要在百度网盘、阿里云盘、夸克、迅雷等多个平台间反复横跳,效率极低。虽然市面上有很多网盘搜索工具,但大多充满广告,且搜索源不可控。

    PanSou 是一款专为极客打造的高性能网盘资源搜索 API 服务。它不仅支持通过自定义插件抓取网页资源,还能直接通过 ✈️ 频道获取第一手的影视、软件与书籍。通过并发搜索技术,PanSou 能在几秒钟内聚合全网主流网盘的结果,并进行智能去重与排序。对于想要搭建属于自己的搜索站点或 API 服务的开发者来说,这无疑是目前最顶级的开源方案。


    简介

    PanSou (盘搜) 核心定位是一个“搜索引擎聚合器”。它解决了传统网盘搜索工具更新慢、来源单一、容易被封禁的痛点。

    该项目采用 Go 语言 编写,通过异步插件系统和 ✈️ 爬虫机制,实现了秒级响应。其最大的特色在于集成了 MCP (Model Context Protocol) 协议,这意味着你可以直接将它接入 Claude 或 ChatGPT 等 AI 助手,让 AI 帮你找资源。

    核心功能

    • 多源并发搜索:同时检索数十个 ✈️ 频道及自定义插件源,速度快如闪电。 ⚡
    • 智能排序算法:基于资源新鲜度、插件等级、关键词匹配度进行多维度权重排序。 🧠
    • 全平台网盘覆盖:自动识别并分类百度、阿里、夸克、天翼、115、迅雷等 10+ 种网盘。 📂
    • 二级缓存机制:内存 + 磁盘分片缓存,大幅降低重复请求,提升高并发下的稳定性。 🚀
    • 开箱即用:提供 Docker 前后端集成镜像,一键启动完整搜索门户。 🐳
    • 安全认证:可选的 JWT 认证系统,支持多用户管理,保护你的私有 API 不被滥用。 🔐

    支持的网盘类型

    类型名称标识符支持状态
    百度网盘baidu✅ 已支持
    阿里云盘aliyun✅ 已支持
    夸克网盘quark✅ 已支持
    迅雷网盘xunlei✅ 已支持
    115网盘115✅ 已支持
    磁力/电驴magnet / ed2k✅ 已支持
    其他 (移动/UC等)mobile / uc / 123✅ 已支持

    准备工作

    在开始部署之前,请确保你的服务器环境满足以下条件:

    1. 操作系统:主流 Linux 发行版(Ubuntu/CentOS/Debian)。
    2. 基础环境:已安装 DockerDocker Compose
    3. 网络环境
      • 若需搜索 ✈️ 频道资源,服务器需能访问 ✈️ 服务器(或配置 SOCKS5 代理)。 🌐
    4. 硬件要求:最低 1 核 1G 内存(Go 语言极其节省资源)。

    部署步骤

    PanSou 提供了三种灵活的部署方案,建议根据你的需求选择。

    方案一:前后端集成版 (推荐) 🌟

    此方案包含美观的前端界面和强大的后端 API,适合直接搭建搜索门户。

    1. 使用 Docker Compose 一键启动

    创建 docker-compose.yml 文件:

    curl -o docker-compose.yml https://raw.githubusercontent.com/fish2018/pansou-web/main/docker-compose.yml
    

    启动服务:

    docker-compose up -d
    

    启动后,访问服务器 http://IP 即可看到搜索界面。


    方案二:纯后端 API 版 🛠️

    如果你只需要后端数据接口,用于自己的应用或小程序,请使用此方案。

    1. 快速启动命令

    docker run -d --name pansou-api \
      -p 8888:8888 \
      -e PORT=8888 \
      ghcr.io/fish2018/pansou:latest
    

    2. 配置 SOCKS5 代理 (抓取 TG 必备)

    如果你的服务器在国内,需要配置代理才能正常抓取 ✈️ 的数据:

    docker run -d --name pansou-api \
      -p 8888:8888 \
      -e PROXY=socks5://127.0.0.1:1080 \
      -e ENABLED_PLUGINS="labi,zhizhen,shandian" \
      ghcr.io/fish2018/pansou:latest
    

    方案三:源码编译安装 💻

    适合开发者进行二次开发。

    1. 环境要求

    • Go 1.18+

    2. 克隆与编译

    git clone https://github.com/fish2018/pansou.git
    cd pansou
    # 编译
    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o pansou .
    # 运行
    ./pansou
    

    进阶:配置安全认证 (JWT)

    为了防止 API 被盗刷,你可以启用认证功能:

    修改环境变量或在 Docker 启动时加入:

    • AUTH_ENABLED=true
    • AUTH_USERS=admin:password123 (格式为:用户名:密码)

    启用后,所有 API 请求需在 Header 中携带 Authorization: Bearer <token>


    总结评价

    优点

    • 性能极佳:Go 语言的并发优势在多源搜索中体现得淋漓尽致,几乎没有延迟感。 🚄
    • 数据源丰富:TG 频道+插件模式保证了资源的覆盖面,尤其在影视资源上非常强势。 🎬
    • 架构优雅:支持 MCP 协议和异步处理模式,扩展性极强。 🏗️

    缺点

    • 网络门槛:✈️ 爬虫功能依赖代理,对于部分小白用户有一定的网络配置成本。 📶
    • 前端局限:集成的 Web 端虽简洁,但自定义样式略显繁琐。 🎨

    适用建议

    如果你想建立一个私人的资源库,或者为你的社群提供资源搜索服务,PanSou 是目前性能最优、配置最灵活的开源方案。


    项目地址

    资源名称链接地址
    GitHub 主仓库fish2018/pansou
    演示地址so.252035.xyz
  • 打造专属个人短链接平台 YOURLS 自建指南以及主题配置

    打造专属个人短链接平台 YOURLS 自建指南以及主题配置

    在互联网营销、社交媒体分享以及数据追踪中,短链接的作用不可小觑。然而,依赖第三方服务往往面临数据隐私泄露、品牌展示受限以及昂贵的 API 调用成本。YOURLS (Your Own URL Shortener) 是一款久经考验、功能强大的开源 PHP 程序,它能让你在几分钟内搭建起一个完全属于自己的短链接平台。

    简介

    YOURLS 解决了用户对短链接底层数据控制权的渴望。通过自建服务,你可以使用自己的品牌域名(如 yourbrand.co/sale),确保链接在社交平台上的信任度。同时,它规避了第三方服务随时可能倒闭或封禁域名的风险,让每一条短链接的生命周期都掌握在自己手中。

    核心功能

    • 完全私有化控制 🔒:支持私有模式(仅自己使用)或公开模式(允许他人缩短链接)。
    • 详尽的数据统计 📈:提供实时点击量、历史趋势、地理位置分布(GeoIP)以及来源(Referrer)分析。
    • 强大的 API 支持 ⚙️:原生提供 RESTful API,方便集成到自定义应用、浏览器扩展或 WordPress 中。
    • 丰富的插件生态 🧩:拥有数百个社区插件,支持自定义 URL 规则、安全过滤、LDAP 认证等。
    • 简洁的管理界面 🖥️:基于 AJAX 的后台管理,操作流畅,支持批量编辑与搜索。
    • 开发者友好 🛠️:基于经典的 PHP+MySQL 架构,代码易于二次开发与维护。

    视觉辅助

    特性维度YOURLS (自建)第三方服务
    数据所有权完全归属用户 🙋‍♂️归属平台商 🏢
    品牌域名支持无限自定义域名 🏷️通常需要付费订阅 💰
    统计深度原始点击数据,永久保存 📅免费版通常有时间限制 ⏳
    扩展性支持插件与代码修改 🛠️仅限官方提供的功能 🧱
    成本仅需基础 VPS 费用 ☁️高级功能月费昂贵 💸

    准备工作

    在部署 YOURLS 之前,请确保你的服务器环境满足以下要求:

    1. Web 服务器:Apache (需开启 mod_rewrite) 或 Nginx。
    2. PHP 版本:PHP 7.4 或更高版本。
    3. 数据库:MySQL 5.0 或 MariaDB。
    4. 域名:一个较短的域名(例如 s.yourname.com)。
    5. 核心扩展:PHP 的 curl, gd, mysql 等标准扩展。

    部署步骤

    YOURLS 提供了传统的源码部署方案以及现代化的容器化部署方案。

    1. 宝塔面板部署 (推荐)

    步骤 1:下载并解压

    Releases 页面下载源码,将文件解压至服务器中。

    步骤 2:配置数据库后台账户密码

    进入 user 目录 打开 config-sample.php 原版本是英文可参考如下中文版本的

    注释修改版本
    <?php
    /* 这是一个示例配置文件。
     * 请使用你自己的配置修改此文件,并将其保存为 "config.php"
     *
     * 重要提示:请使用纯文本编辑器(如 Mac OS 的 TextEdit 或 Windows 的记事本)
     * 将此文件编辑并保存为纯 ASCII 文本格式。确保文件开头的 <?php 之前没有任何字符。
     */
    
    /*
     ** MySQL 数据库设置 - 你可以从虚拟主机服务商处获取这些信息
     */
    
    /** MySQL 数据库用户名 */
    define( 'YOURLS_DB_USER', '填写数据库用户名' );
    
    /** MySQL 数据库密码 */
    define( 'YOURLS_DB_PASS', '填写数据库密码' );
    
    /** YOURLS 所用的数据库名称
     ** 仅允许使用小写字母 [a-z]、数字 [0-9] 和下划线 [_] */
    define( 'YOURLS_DB_NAME', '填写数据库名称' );
    
    /** MySQL 数据库主机地址
     ** 如果使用非标准端口,请按此格式填写 '主机名:端口',例如 'localhost:9999' 或 '127.0.0.1:666' */
    define( 'YOURLS_DB_HOST', 'localhost' );
    
    /** MySQL 数据表前缀
     ** YOURLS 会使用此前缀创建数据表(例如 `yourls_url`、`yourls_options` 等)
     ** 仅允许使用小写字母 [a-z]、数字 [0-9] 和下划线 [_] */
    define( 'YOURLS_DB_PREFIX', 'yourls_' );
    
    /*
     ** 站点配置选项
     */
    
    /** YOURLS 安装地址
     ** 全部使用小写字母,末尾不要加斜杠。
     ** 如果你将其定义为 "https://sho.rt",则不要在浏览器中使用 "https://www.sho.rt"(反之亦然)
     ** 如果使用国际化域名(例如 https://héhé.com),请在此填写其 ASCII 形式(例如 https://xn--hh-bjab.com) */
    define( 'YOURLS_SITE', 'https://your-own-domain-here.com' );
    
    /** YOURLS 语言设置
     ** 修改此配置可使用对应语言的翻译文件,替代默认的英文。
     ** 翻译文件(.mo 格式)必须安装在 user/language 目录下。
     ** 更多信息请参考:https://yourls.org/translations */
    define( 'YOURLS_LANG', '' );
    
    /** 是否允许同一个长链接对应多个短链接
     ** 设置为 true:仅允许一对短链接/长链接(YOURLS 默认行为)
     ** 设置为 false:允许多个短链接指向同一个长链接(类似 bit.ly 的行为) */
    define( 'YOURLS_UNIQUE_URLS', true );
    
    /** 私有模式:后台管理区域将受以下定义的账号密码保护。
     ** 设置为 false 则为公共模式(例如在受限内网或测试环境中使用)
     ** 若不确定,请参考:https://yourls.org/privatepublic */
    define( 'YOURLS_PRIVATE', true );
    
    /** 用于加密 Cookie 的随机密钥。无需记忆,建议设置为长且复杂的字符串
     ** 提示:可从 https://yourls.org/cookie 生成随机密钥 */
    define( 'YOURLS_COOKIEKEY', 'modify this text with something random' );
    
    /** 允许访问站点的用户名和密码。密码可填写明文或加密哈希值
     ** YOURLS 会自动将此文件中的明文密码加密
     ** 更多信息请参考:https://yourls.org/userpassword */
    $yourls_user_passwords = [
        'username' => 'password',
        // 'username2' => 'password2',
        // 你可以添加一行或多行 '用户名'=>'密码' 配置
    ];
    
    /** URL 缩短规则:36 进制或 62 进制
     ** 36:生成纯小写字母的短链接关键词(例如:13jkm)
     ** 62:生成大小写混合的短链接关键词(例如:13jKm 或 13JKm)
     ** 更多信息请参考:https://yourls.org/urlconvert */
    define( 'YOURLS_URL_CONVERT', 36 );
    
    /** 调试模式:输出部分内部运行信息
     ** 生产环境默认设为 false。编写代码或提交 Bug 前可启用 */
    define( 'YOURLS_DEBUG', false );
    
    /**
    * 保留关键词(确保生成的短链接不会匹配这些词)
    * 在此定义禁用、不希望出现或可能引起误解的关键词。
    */
    $yourls_reserved_URL = [
        'porn',      // 色情
        'faggot',    // 侮辱性词汇
        'sex',       // 性
        'nigger',    // 种族歧视词汇
        'fuck',      // 脏话
        'cunt',      // 脏话
        'dick',      // 脏话
    ];
    
    /*
     ** 自定义配置可写在下方。
     */
    代码行常量名含义对应填写内容
    第 14 行YOURLS_DB_USER数据库用户名你的 MySQL 用户名(如 root 或自定义用户名)
    第 17 行YOURLS_DB_PASS数据库密码你的 MySQL 密码
    第 21 行YOURLS_DB_NAME数据库名你为 YOURLS 新建的数据库名称(默认 yourls
    第 26 行YOURLS_DB_HOST数据库地址一般是 localhost,如果是远程数据库填对应 IP
    第 30 行YOURLS_DB_PREFIX表前缀数据库表名前缀,默认 yourls_ 即可

    接下来是配置,站点地址、中文设置、随机密钥、后台账号密码。

    这里是设置账号与密码的参考如下。

    $yourls_user_passwords = [
        '用户名' => '密码',
        // 'username2' => 'password2',
        // You can have one or more 'login'=>'password' lines
    ];

    访问获取Cookie:https://yourls.org/cookie

    下载翻译包:https://github.com/YOURLS/awesome#Translations 链接直达中文版:Simplified Chinese (zh_CN)。

    翻译包上传至 /user/languages 目录并解压,之后进入压缩包文件将 zh_CN.mozh_CN.po 复制到 /user/languages 目录下。

    设置完毕应该是我这样。

    最后一步将 config-sample.php 重命名为 config.php

    步骤 3:配置 Web 服务器伪静态

    location / {
      try_files $uri $uri/ /yourls-loader.php$is_args$args;
      # 如果YOURLS安装在Windows中,请更改路径
      # 到yourls-loader.php,例如, eg
      # try_files $uri $uri/ /subdir/yourls-loader.php$is_args$args;
    }

    步骤 4:访问地址进入安装页面

    访问:域名 /admin 进入安装页面

    这样就代表已经部署完毕可正常使用。目前没配置前台主题所以前台会打不开。

    安装主题:

    进入文档:https://github.com/YOURLS/awesome#Themes

    建议使用Sleeky主题 地址直达:Flynntes/Sleeky

    然后将压缩包解压至服务器中进入后会有俩个文件非别为前台主题和后台主题插件(可以自行选择安装)

    sleeky-backend 插件包 移动到 插件目录 /user/plugins 粘贴

    然后将前台包 sleeky-frontend 里面的文件移动至 网址目录下如图

    然后访问前台就会发现可以打开了

    前台主题的内容在 /frontend/config.php 中修改

    注释修改为版本
    <?php 
    // 配置项 - 这些参数控制网站的外观和细节。更多细节请参考官方文档。
    
    // 通用设置
    
    // 网站页面标题
    define('title', 'Sleeky theme for YOURLS'); 
    
    // 网站简短标题,用于页脚和部分子页面
    define('shortTitle', 'Sleeky');
    
    // 网站描述,显示在首页
    define('description', 'A quick description on why your site is so fantastic, what it does and why people should definitely start using it. Oh, and how it’s free.'); 
    
    // 网站/favicon图标路径
    define('favicon', '/frontend/assets/img/favicon.ico');
    
    // 网站logo路径,显示在首页
    define('logo', '/frontend/assets/img/logo-black.png');
    
    // 启用reCAPTCHA V3验证
    // 强烈建议启用reCAPTCHA V3,可有效阻止垃圾信息。你可从以下地址获取站点密钥和密钥:https://www.google.com/recaptcha/admin/create
    define("enableRecaptcha", false);
    
    // reCAPTCHA V3 站点密钥
    define("recaptchaV3SiteKey", 'YOUR_SITE_KEY_HERE');
    
    // reCAPTCHA V3 密钥
    define("recaptchaV3SecretKey", 'YOUR_SECRET_KEY_HERE');
    
    // 启用缩短链接的身份验证要求
    // true = 仅已登录用户可缩短链接,false = 任何人都可缩短链接
    // 默认值: false
    define('requireAuth', false);
    
    // 启用自定义URL输入框
    // 可选值:true 或 false
    define('enableCustomURL', true);
    
    // 可选配置
    // 设置网站主色调。默认值: #007bff
    // 你也可以尝试这些颜色值:
    // #f44336: 红色, #9c27b0: 紫色, #00bcd4: 青绿色, #ff5722: 橙色
    define('colour', '#007bff');
    
    // 可选配置
    // 设置网站背景图片。
    // 默认值: 使用picsum.photos的随机图片
    // define('backgroundImage', 'https://picsum.photos/1920/1080');
    
    // 页脚设置
    
    // 这些是页脚的链接。每新增一个链接就添加一行即可。
    // 数组格式遵循「标题 => 链接」的结构:
    // "标题" => "链接地址",
    $footerLinks = [
        "About"   =>  "https://sleeky.flynntes.com/",
        "Contact" =>  "https://yourls.org/",
        "Legal"   =>  "https://yourls.org/",
        "Admin"   =>  "/admin"
    ];
    
    ?>

    2. 传统 LAMP/LEMP 部署

    这是最能发挥 YOURLS 性能和插件兼容性的方式。

    步骤 1:下载并解压

    git clone https://github.com/YOURLS/YOURLS.git
    cd YOURLS
    # 将文件移动到你的 Web 根目录
    sudo cp -R . /var/www/html/short
    

    步骤 2:配置数据库

    进入 user 目录,将示例配置文件重命名并编辑:

    cd user
    cp config-sample.php config.php
    nano config.php
    

    config.php 中填入你的数据库信息:

    define( 'YOURLS_DB_USER', 'your_db_user' );
    define( 'YOURLS_DB_PASS', 'your_db_password' );
    define( 'YOURLS_DB_NAME', 'your_db_name' );
    define( 'YOURLS_DB_HOST', 'localhost' );
    define( 'YOURLS_SITE', 'https://s.yourdomain.com' );
    

    步骤 3:配置 Web 服务器伪静态

    • Nginx 用户:请在配置文件中加入以下规则:
    location / {
      try_files $uri $uri/ /yourls-loader.php$is_args$args;
      # 如果YOURLS安装在Windows中,请更改路径
      # 到yourls-loader.php,例如, eg
      # try_files $uri $uri/ /subdir/yourls-loader.php$is_args$args;
    }

    步骤 4:运行安装脚本

    访问 https://s.yourdomain.com/admin/,点击安装按钮即可。


    3. 使用 Docker 一键部署

    适合追求快速上线和环境隔离的用户。

    docker run -d \
      --name my-yourls \
      -e YOURLS_DB_USER=root \
      -e YOURLS_DB_PASS=secret \
      -e YOURLS_DB_NAME=yourls \
      -e YOURLS_SITE=https://s.example.com \
      -e YOURLS_USER=admin \
      -e YOURLS_PASS=admin_password \
      -p 8080:80 \
      --restart always \
      yourls:latest
    

    4. 使用 Docker Compose 部署 (含数据库)

    version: '3.5'
    services:
      mysql:
        image: mariadb:10.5
        environment:
          - MYSQL_ROOT_PASSWORD=root_pass
          - MYSQL_DATABASE=yourls
        volumes:
          - ./mysql_data:/var/lib/mysql
    
      yourls:
        image: yourls:latest
        ports:
          - "8080:80"
        environment:
          - YOURLS_DB_HOST=mysql
          - YOURLS_DB_USER=root
          - YOURLS_DB_PASS=root_pass
          - YOURLS_DB_NAME=yourls
          - YOURLS_SITE=http://localhost:8080
          - YOURLS_USER=admin
          - YOURLS_PASS=password
        depends_on:
          - mysql
    

    总结评价

    YOURLS 是短链接领域的老牌霸主,虽然其后台 UI 略显复古,但其稳定性和可扩展性至今无人能出其右。

    • 优点
      • 极致稳定:核心代码极其精简,在低配服务器上也能支持极高并发。
      • 插件丰富:如果你觉得原生功能不够,社区提供的插件几乎能覆盖所有想象力范围内的需求。
      • 数据详尽:自带的点击热图和地理分析对于复盘营销效果非常有帮助。
    • 缺点
      • UI 审美:默认后台管理界面比较传统,不符合现代 Material Design 审美(可通过插件更换皮肤)。
      • PHP 依赖:对于习惯了 Node.js 或 Go 的开发者来说,PHP 的部署环境配置稍显繁琐。

    适用建议:非常适合自媒体从业者、跨境电商卖家以及需要大规模分发内部追踪链接的企业。


    项目地址

    资源名称链接地址
    GitHub 仓库https://github.com/YOURLS/YOURLS
    官方文档https://yourls.org/
    插件市场https://github.com/YOURLS/awesome
  • Metapi 进阶指南:打造 AI 中转聚合网关的“元管理层”

    Metapi 进阶指南:打造 AI 中转聚合网关的“元管理层”

    如果你手中握有多个 New API、One API、OneHub 或 AnyRouter 的账号,你一定体会过那种“余额分散、模型混乱、手动切换”的痛苦。Metapi 并非另一个简单的 AI 中转站,它是位于所有中转站之上的元聚合层(Meta-Aggregation Layer)。它能将你所有的上游站点汇聚成一个统一的 API 入口,并提供智能路由、自动签到、成本优化等极客功能。

    Metapi

    Metapi 彻底解决了开发者在多站点管理时的心智负担。通过它,你只需要管理一个 PROXY_TOKEN,即可让下游工具(如 Cursor、Open WebUI、Claude Code)无感调用所有关联站点的最优质模型。

    简介

    Metapi 是一个基于 Fastify 与 React 18 构建的高性能 AI 聚合网关。它通过自动化手段,解决了多站点余额监控难、模型定价不透明以及上游通道不稳定的核心痛点。它不仅是一个代理转发器,更是一个带有“智能大脑”的资源调度器。

    架构

    界面预览

    核心功能

    • 统一代理网关 🌐:支持 OpenAI 与 Claude 格式的双向转换,完美适配 SSE 流式传输。
    • 智能路由引擎 🧠:基于成本 (40%)、余额 (30%)、使用率 (30%) 自动计算最优路径。
    • 自动故障转移 🔄:某个站点挂了?Metapi 会自动将其放入 10 分钟“冷却期”并无感切到备用通道。
    • 全自动模型发现 🔍:无需手动添加,自动同步上游站点的最新模型列表,实现零配置上线。
    • 多渠道告警通知 🔔:支持 Webhook、Bark、Telegram、Server酱等,余额不足及时提醒。
    • 自动化日常运维 ✅:内置 Cron 定时任务,支持多站点自动签到领额度,省心省力。

    视觉辅助

    特性分类技术细节 / 优势推荐指数
    架构设计单 Docker 镜像 + 内置 SQLite,迁移备份极易 📦⭐⭐⭐⭐⭐
    路由逻辑实测成本优先 + 加权随机概率分配,兼顾稳定与低价 ⚖️⭐⭐⭐⭐⭐
    状态追踪具备 Healthy / Degraded / Disabled 四级状态机管理 🏥⭐⭐⭐⭐
    隐私安全所有凭证本地加密存储,不经过任何第三方服务器 🔒⭐⭐⭐⭐⭐

    准备工作

    在部署 Metapi 前,请确保你已经准备好:

    1. 基础设施:一台已安装 Docker 与 Docker Compose 的 Linux 服务器(1核1G即可)。
    2. 管理信息
      • AUTH_TOKEN:管理员后台登录令牌(必设)。
      • PROXY_TOKEN:下游客户端调用的 Bearer Token(必设)。
    3. 上游账号:准备好你各个中转站的 API 地址与令牌。

    部署步骤

    Metapi 提供了多种部署方案,确保初学者到高级用户都能快速上手。

    1. Docker 命令行部署 (极速方案)

    适合希望快速验证功能的场景。

    docker run -d --name metapi -p 4000:4000 \
      -e AUTH_TOKEN=your-admin-token \
      -e PROXY_TOKEN=your-proxy-sk-token \
      -v ./data:/app/data \
      --restart unless-stopped \
      1467078763/metapi:latest
    

    2. Docker Compose 部署 (推荐方案)

    通过配置文件管理环境参数,更适合生产环境。创建 docker-compose.yml

    version: '3'
    services:
      metapi:
        image: 1467078763/metapi:latest
        container_name: metapi
        restart: unless-stopped
        ports:
          - "4000:4000"
        environment:
          - AUTH_TOKEN=your-strong-admin-token
          - PROXY_TOKEN=sk-metapi-your-key
          - TZ=Asia/Shanghai
          - CHECKIN_CRON=0 8 * * * # 每天早上8点自动签到
          - BALANCE_REFRESH_CRON=0 * * * * # 每小时刷新一次余额
        volumes:
          - ./data:/app/data
    

    启动命令:docker-compose up -d

    3. Nginx 反向代理配置 (进阶)

    为了让 SSE(流式输出)正常工作,必须在 Nginx 中关闭缓存与缓冲:

    location / {
        proxy_pass http://127.0.0.1:4000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        
        # 核心:支持流式传输
        proxy_buffering off;
        proxy_cache off;
        proxy_http_version 1.1;
        proxy_set_header Connection '';
        chunked_transfer_encoding off;
    }
    

    4. 客户端接入示例

    • Cursor: 设置 -> Models -> OpenAI API Key 填入 PROXY_TOKEN,Base URL 填入 https://your-domain.com/v1
    • Open WebUI: 设置 -> Connections -> OpenAI API URL 填入 https://your-domain.com/v1

    总结评价

    Metapi 是目前市场上少有的、专门针对“中转站聚合”这一细分需求做出极致优化的工具。

    • 优点
      • 智能路由决策:不再盲目使用某个 Key,而是基于成本动态计算,真正帮你省钱。
      • 架构极简:Node.js + SQLite 的组合让它在资源极其有限的机器上也能流畅运行。
      • 体验丝滑:自动格式转换让原本只支持 OpenAI 格式的站点也能顺畅供应 Claude 客户端。
    • 缺点
      • 配置深度:智能路由的权重因子(Cost vs Balance)虽然可以微调,但对新手可能有一定的理解门槛。
      • 单一镜像:目前仅支持单机 SQLite,对于极大流量的集群部署尚需扩展。

    适用建议:如果你手里有超过 3 个中转站账号,或者正在为 Cursor 的多模型切换感到头疼,Metapi 是你的不二之选。


    项目地址

    资源项链接地址
    GitHub 仓库https://github.com/cita-777/metapi
    在线文档https://metapi.cita777.me/
  • 隐私第一!手把手教你搭建 Bark-server:打造专属的 iOS 私有推送中心

    隐私第一!手把手教你搭建 Bark-server:打造专属的 iOS 私有推送中心

    在这个信息爆炸的时代,能够即时、私密地将消息推送到手机上是一项刚需。无论你是开发者需要监控服务器状态,还是极客想要同步自动化脚本的运行结果,Bark 都是目前 iOS 平台上最优雅、最纯粹的推送方案。今天,小编就带大家深度实操,如何在自己的服务器上搭建 Bark-server


    🚀 简介:为什么你需要自建 Bark 服务?

    Bark 是一款开源的 iOS 自定义推送工具。通常情况下,我们使用开发者提供的公共服务器,但如果你对隐私安全有极高要求,或者希望在高并发场景下拥有更稳定的响应速度,自建后端服务(Bark-server)是唯一的选择。

    它彻底解决了以下痛点:

    • 隐私泄露风险:消息内容不再经过第三方中转,直达苹果 APNs。
    • 推送延迟:自建服务器可部署在离你最近的机房,响应更迅速。
    • 完全掌控:无限制的消息发送频率,自定义存储规则。

    ✨ 核心功能

    • ⚡ 极简架构:基于 Go 语言编写,内存占用极低,运行极其稳定。
    • 🛠 多样化接口:支持 GETPOST 请求,只需一个 URL 即可发送推送。
    • 🎨 丰富的推送样式:支持自定义推送图标、告警声音、复制内容、跳转 URL 以及时效性通知。
    • 💾 数据持久化:支持将推送记录保存在本地数据库,方便历史回溯。
    • 🔐 安全验证:支持设置 Access Key,确保只有授权用户能调用你的接口。

    📋 准备工作

    在开始部署之前,请确保你已经准备好:

    1. 一台运行 Linux 的服务器(如 Ubuntu, CentOS, Debian)。
    2. 已安装 DockerDocker Compose(强烈推荐)。
    3. 已在 iPhone 上下载并安装 Bark App。
    4. (建议)已解析的域名及 SSL 证书,用于开启 HTTPS。

    🛠 部署步骤

    小编为你整理了四种部署方案,请根据你的技术栈选择:

    1. 使用 Docker 部署(推荐 ✨)

    这是最快且最易维护的方式,适合绝大多数用户。

    docker run -dt \
      --name bark-server \
      -p 8080:8080 \
      -v ~/bark-data:/data \
      finab/bark-server
    

    注意-v ~/bark-data:/data 会将推送数据持久化到宿主机的文件夹中,防止容器重启后数据丢失。

    2. 使用 Docker Compose 部署

    适合需要进行容器编排或配合 Nginx 使用的用户。

    version: '3.8'
    services:
      bark-server:
        image: finab/bark-server
        container_name: bark-server
        restart: always
        volumes:
          - ./data:/data
        ports:
          - "8080:8080"
    

    运行指令:

    docker-compose up -d
    

    3. 二进制文件直接部署

    如果你不希望使用容器化技术,可以直接运行二进制包。

    # 1. 下载对应平台的 Release 版本
    wget https://github.com/Finb/bark-server/releases/download/v2.1.5/bark-server_linux_amd64.tar.gz
    
    # 2. 解压
    tar -zxvf bark-server_linux_amd64.tar.gz
    
    # 3. 赋予权限并运行
    chmod +x bark-server
    ./bark-server -addr 0.0.0.0:8080 -data ./bark-data
    

    4. 源码编译部署

    适合有定制化开发需求的用户。

    # 克隆仓库
    git clone https://github.com/Finb/bark-server.git
    cd bark-server
    
    # 编译并运行
    go build -o bark-server main.go
    ./bark-server -addr 0.0.0.0:8080 -data ./data
    

    📝 总结评价

    Bark-server 是每一个 iOS 极客的必备神器。它完美平衡了“简单易用”与“功能强大”。

    • 优点:部署极其简单,API 设计符合直觉,对系统资源消耗几乎可以忽略不计。
    • 缺点:目前仅支持 iOS 平台,且不具备原生的 Web UI 管理界面。
    • 适用性建议:如果你追求极致的隐私保护,或者需要一个高频率的消息通知通道,别犹豫,立刻开搞!

    项目地址

    项目项详细信息
    GitHub 仓库Finb/bark-server
    App Store 下载Bark – Push To iPhone
    官方文档Bark Documentation
    LicenseMIT License

    小编有话说:

    部署完成后,请在手机 App 中添加你的服务器地址。如果无法接收推送,请检查服务器防火墙是否放行了 8080 端口。

  • 告别繁杂的收藏夹!自托管终极仪表板 Dashy 深度部署指南

    告别繁杂的收藏夹!自托管终极仪表板 Dashy 深度部署指南

    想象一下,你精心搭建了数十个自托管服务(Plex, Pi-hole, Home Assistant, Nextcloud…),但每次访问都要苦苦回忆那个该死的端口号,或者在乱糟糟的浏览器收藏夹里翻找。这种体验显然不够“极客”。Dashy 的出现,就是为了终结这种混乱。它不仅仅是一个导航页,更是你私有云环境的“指挥中心”。


    🌟 简介:为什么 Dashy 是自托管玩家的标配?

    Dashy 是一款开源的、高度可定制的自托管仪表板。它旨在将你所有的自托管应用、服务和链接整合到一个美观、响应迅速且功能丰富的界面中。

    它解决了以下核心痛点:

    • 入口分散:解决 IP+端口 难以记忆的问题,提供统一的访问门户。
    • 状态盲区:通过内置组件即可实时查看服务是否在线。
    • 审美疲劳:支持 27+ 套精美主题,支持 CSS 级定制。
    • 配置困境:不依赖数据库,通过一个 YAML 文件即可完成所有配置。

    💎 核心功能一览

    功能模块亮点描述推荐指数
    🎨 视觉定制内置 27+ 主题,支持明暗模式、自定义背景。⭐⭐⭐⭐⭐
    📊 实时监控支持 HTTP 状态检查、系统资源小组件。⭐⭐⭐⭐
    🔍 强力搜索支持全局搜索、快捷键触发。⭐⭐⭐⭐
    🔒 安全防护内置多种身份验证方式(Keycloak, Authelia 等)。⭐⭐⭐⭐⭐

    🛠️ 准备工作

    在开始部署之前,请确保你的服务器已具备以下环境:

    • Docker:版本 >= 20.10.x。
    • Docker Compose:版本 >= 2.0.0。
    • 网络环境:确保可以拉取 Docker Hub 镜像。

    🚀 部署步骤

    Dashy 提供了多种灵活的部署方案,请根据需求选择。

    1. 使用 Docker 快速启动

    如果你想先试用,可以直接运行以下指令:

    Bash

    docker run -d \
      -p 8080:80 \
      --name my-dashy \
      --restart=always \
      lissy93/dashy:latest
    

    2. 使用 Docker Compose 部署(正式环境推荐)

    创建一个 docker-compose.yml 文件,便于持久化存储:

    version: "3.8"
    services:
      dashy:
        image: lissy93/dashy:latest
        container_name: Dashy
        volumes:
          - ./conf.yml:/app/public/conf.yml
        ports:
          - "8080:80"
        environment:
          - NODE_ENV=production
        restart: unless-stopped
    

    3. Node.js 本地直接安装

    git clone https://github.com/Lissy93/dashy.git
    cd dashy
    yarn install
    yarn build
    yarn start
    

    📝 总结评价

    • 优点:极致灵活,UI 极度精美,不依赖外部数据库。
    • 缺点:对于完全不懂 YAML 的新手有一定学习曲线;配置更新后的重构可能稍慢。
    • 适用建议:强迫症极客、HomeLab 重度用户必装。

    项目地址

    资源名称链接地址
    GitHub 仓库https://github.com/Lissy93/dashy
    官方文档https://dashy.to/docs/
    在线演示https://demo.dashy.to/