首页/新闻资讯/正文详情

AI Short(ChatGPT-Shortcut)自部署完整指南:标准部署、离线内网版与 Docker 落地实践

发布时间:2026/9/25 2:59:07 来源:云帆数科 栏目:资讯中心
AI Short(ChatGPT-Shortcut)自部署完整指南:标准部署、离线内网版与 Docker 落地实践
AI 应用提示工程人工智能前端【免费下载链接】ChatGPT-ShortcutStop writing prompts from scratch — a searchable prompt library for ChatGPT, Claude, Gemini and Cursor · Русский 한국어 العربية हिन्दी ไทย 别再从头写提示词现成的拿来就用好用的收进自己的库项目地址https://gitcode.com/gh_mirrors/ch/ChatGPT-Shortcut点击查看免费下载本篇基于仓库中的部署总纲 deploy.md 及其引用的四篇子文档标准部署、离线部署、配置与自定义、同步更新整理而成面向希望自托管或定制 AI 提示词库 AI Short 的开发者。读完后你可以按业务场景在「标准 / 离线 / 完整自托管」三种部署形态中做出选择独立完成本地构建、Vercel、Cloudflare Pages、Docker 四种落地方式的部署并掌握提示词数据流水线与 API 层的关键自定义点。目标读者想自部署或定制 AI Short 的开发者。普通用户直接使用官方站点 aishort.top 即可无需阅读本文。一、选择部署形态先看后端再选路径部署 AI Short 的第一步不是选平台而是确认「需要什么样的后端能力」。文档给出的三种形态对照如下形态后端说明标准部署默认复用官方共享后端fork 后可自定义网站名称、描述、提示词等见配置与自定义登录、收藏、社区、同步开箱即用离线部署版无后端数据存浏览器本地适用于企业内网、政务网络等无外网环境无需账户带后端的完整自部署自建独立后端需要独立账户体系、数据自主可控、私有社区前两种形态照仓库文档即可自行部署第三种由于后端服务并未开源官方建议通过邮件联系开发者文档中给出的联系邮箱为 qingwhatgmail.com说明使用场景与规模后获取部署方案与支持。选型逻辑很直接只要接受复用官方共享后端就选标准部署零后端运维功能完整如果网络环境不允许访问公网或数据必须留在终端浏览器内就选离线部署版只有当需要独立账户体系与私有社区时才考虑第三种形态。二、标准部署本地构建、Vercel、Cloudflare Pages、Docker标准部署复用官方共享后端开箱即用。流程是先 fork 项目再选一种方式部署。环境要求Node.js 20.0 或更高版本支持 macOS、Windows含 WSL和 Linux。这一点可以从 package.json 中确认——engines字段声明了node: 20.0。2.1 本地构建# 安装依赖 yarn # 本地开发 yarn start # 构建默认按 scripts/i18nLocales.mjs 的 defaultLocale 生成静态产物到 build 目录 yarn build三个命令对应 package.json 中的三段脚本理解源码映射后能解释文档中的很多细节start实际执行docusaurus start且配有prestart钩子node scripts/genCommunitySnapshot.mjs --ensure-only即每次启动前都会确保社区快照数据就绪build并非直接调用 Docusaurus 构建而是node scripts/buildPhased.mjs——一个分段构建脚本配合prebuild钩子先执行genCommunitySnapshot.mjs生成社区快照构建完成后可以用yarn serve本地预览build/目录的静态产物。多语言与--locale参数项目支持 18 种语言且 locale 列表的单一数据源是 scripts/i18nLocales.mjsexport const defaultLocale zh-Hans; export const locales [zh-Hans, en, zh-Hant, ja, ko, es, pt, hi, ind, vi, th, fr, de, it, ru, ar, tr, bn];该文件的头部注释解释了它的关键作用docusaurus.config.js与scripts/buildPhased.mjs都从这里读取 locale保证「配置里的 locales」与「分段构建实际要 build 的 locales」永远一致。注释同时说明默认语言必须保持defaultLocale位于locales数组首位因为分段构建第一块会写到build/根目录而 Docusaurus 也要求defaultLocale ∈ locales。因此只构建部分语言时使用yarn build --locale zh-Hans # 仅简体中文 yarn build --locale zh-Hans yarn build --locale en # 多语言串联从源码结构看「分段构建」正是应对多语言构建内存压力的设计Dockerfile 第 24 行注释明确写道「yarn build走分段构建每进程 ≤3 个 locale避免单进程 18 语言 OOM」。这也是后文 Vercel 免费版构建失败的根因以及解决方案——改成单语言构建命令。2.2 Vercel 部署官方提供一键部署入口在仓库原始文档中为一个 Vercel 按钮克隆上游仓库并自动创建项目。需要特别注意的一个坑Vercel 免费版可能因内存不足导致构建失败。解决办法是改单语言部署进入项目Settings → Build Deployment → Build Command点Override改成单语言命令——中文yarn build --locale zh-Hans葡萄牙语yarn build --locale pt其他语言类推。这与 scripts/i18nLocales.mjs 中 18 种 locale 的全量构建开销直接相关一次性构建全部语言对平台构建容器的内存要求很高而锁定单一 locale 后构建负担显著下降。2.3 Cloudflare Pages 部署登录 Cloudflare Pages选Create a project绑定刚 fork 的仓库配置构建Build commandyarn build --locale zh-Hans按要部署的语言更换 locale葡萄牙语用yarn build --locale ptOutput directorybuild点Deploy等待构建完成。之后每次推送新代码都会自动触发构建和部署。可见 Cloudflare Pages 与 Vercel 的构建配置完全同构都是「单语言--locale构建 build输出目录」因为两者本质上都在托管同一份 Docusaurus 静态产物。2.4 Docker 部署预构建镜像发布为 ghcr.io 与 Docker Hub 双渠道一条命令即可运行监听 3000 端口# ghcr.io docker run -d -p 3000:3000 --name chatgpt-shortcut ghcr.io/rockbenben/chatgpt-shortcut:latest # Docker Hub docker run -d -p 3000:3000 --name chatgpt-shortcut rockben/chatgpt-shortcut:latest也可以用 docker-compose.yml 方式编排services: chatgpt-shortcut: container_name: chatgpt-shortcut image: ghcr.io/rockbenben/chatgpt-shortcut:latest ports: - 3000:3000 restart: unless-stopped镜像的内部结构可以从 Dockerfile 完整还原这里有两点值得注意两阶段构建第一阶段node:24-alpine执行yarn install --frozen-lockfile与RUN yarn build第二阶段nginx:stable-alpine只负责把/app/build拷贝到/usr/share/nginx/html并EXPOSE 3000。镜像内不包含 Node 运行时体积与攻击面都很小。SKIP_GIT_INFOtrue环境变量关掉showLastUpdateTime并使用当前时间作为 buildDate逻辑在docusaurus.config.js中从而完全不依赖 git可把.git排除出构建上下文构建上下文从约 1.2GB 大幅缩小。构建平台固定在 amd64FROM --platform$BUILDPLATFORM node:24-alpine的注释解释了原因——静态产物与 CPU 架构无关多架构构建时若让 arm64 在 QEMU 模拟下重跑一遍yarn build会与 amd64 并发导致双倍内存 OOM(SIGKILL)因此只在原生架构构建一次最终 nginx 阶段再按目标架构出多架构镜像。容器内的站点路由由 nginx.conf 接管location /下try_files $uri $uri/ /index.html;提供 SPA 回退保证深链接刷新不 404同时单独挂载了404.html错误页。若你要自建镜像或改造镜像这个回退规则是必须保留的核心配置。三、离线部署版无后端、数据留在浏览器离线部署版面向企业内网、政务网络、物理隔离air-gapped环境以及 HIPAA、SOC 2、FedRAMP、金融等受监管行业——凡是公网不可用或受限的场景。核心特征是无后端、无注册全部数据存在用户自己的浏览器里部署一次后团队成员打开内网地址即可浏览、搜索、复制提示词。3.1 团队协作方式离线版是纯静态站点。管理流程为管理员把离线版部署到内网服务器例如http://192.168.1.100:3000→ 团队成员用浏览器打开该地址 → 每个人的收藏与自定义提示词存在各自浏览器中完全互相隔离 → 无账户、无需安装任何软件。提示词库精选提示词是构建时打包的静态数据所以所有用户看到的内容一致各用户的收藏、自定义提示词、排序与标签保存在各自的 localStorage 中。3.2 离线版与在线版功能差异功能在线版离线版浏览 / 搜索 / 筛选提示词支持支持复制提示词支持支持收藏管理服务端存储浏览器本地存储自定义提示词服务端存储浏览器本地存储我的收藏拖拽排序、标签支持支持多语言支持18 种语言支持支持数据导入 / 导出支持支持格式互通提示词详情页支持支持静态数据无评论用户注册 / 登录支持不支持无账户社区提示词列表 / 投票支持不支持评论与反馈支持不支持3.3 数据存储四个 localStorage 键每个用户的数据保存在其自己浏览器的localStorage 中与服务器无关数据存储键说明收藏列表local_favorites收藏的提示词 ID 数组自定义提示词local_user_prompts用户创建的提示词数据展示顺序local_myspace_order「我的收藏」中卡片顺序自定义标签local_custom_tags标签定义与分配三个使用注意原文档以 caution 强调浏览器本地存储上限约 5 MB常规使用足够清空浏览器数据会抹掉用户个人数据——建议定期通过「我的账户 → 数据管理 → 导出数据」备份换电脑或换浏览器需要重新导入数据。3.4 部署离线版离线版位于仓库的offline分支。管理员一次性部署后团队成员无需任何额外操作。方式一Docker推荐——一条命令在内网任意服务器拉起# 使用预构建离线镜像 docker run -d -p 3000:3000 --name aishort-offline ghcr.io/rockbenben/chatgpt-shortcut:offline # 或从 Docker Hub 拉取 docker run -d -p 3000:3000 --name aishort-offline rockben/chatgpt-shortcut:offline部署完成后团队成员访问http://服务器IP:3000即可。docker-compose 写法services: aishort-offline: container_name: aishort-offline image: ghcr.io/rockbenben/chatgpt-shortcut:offline ports: - 3000:3000 restart: unless-stopped方式二源码构建——需要定制提示词内容或修改配置时# 克隆 offline 分支 git clone -b offline https://github.com/rockbenben/ChatGPT-Shortcut.git cd ChatGPT-Shortcut # 安装依赖 yarn # 本地开发 yarn start # 构建单语言版本英文 yarn build --locale en # 构建全部语言 yarn build构建产物输出到build/目录可交给任意静态文件服务器Nginx、Apache、Caddy 等托管。仓库自带的 nginx.conf 就是这一场景的配置范例server { listen 3000; server_name _; root /path/to/build; index index.html; location / { try_files $uri $uri/ /index.html; } }方式三托管平台——部署到 Vercel、Cloudflare Pages 等平台时只需把构建分支切换为offline其余步骤与在线版完全一致。3.5 数据导入 / 导出与线上数据迁移导出「我的账户 → 数据管理 → 导出数据」将收藏与自定义提示词保存为 JSON 文件导入支持的格式离线版导出的文件完整恢复收藏、提示词、顺序与标签在线版导出的文件自动转换兼容——用户提示词按标题去重后本地合并精选收藏card并入本地收藏社区收藏community自动转为本地自定义提示词MySpace 顺序在本地恢复自定义标签追加不覆盖已有标签。从在线版迁移只需三步在在线版「我的账户」页导出数据 → 在离线版「我的账户 → 数据管理」导入该 JSON → 社区收藏自动转为本地提示词精选收藏按预期同步。两版导出的 JSON 格式相同、可双向导入提示词 ID 不同在线版用服务端 ID离线版用时间戳 ID但导入时按标题去重不会冲突。离线版高频问题的官方答案浓缩为三点用户数据互相不干扰localStorage 完全隔离服务器只存只读提示词库数据丢失风险来自清缓存、隐私模式、换设备靠定期导出 JSON 规避提示词库更新由管理员拉取offline分支最新代码后重新构建/拉取镜像团队成员刷新浏览器即可个人数据不受影响。四、配置与自定义标题、提示词流水线与 API 层AI Short 开源网站标题、描述、提示词与后端连接都可以修改。4.1 网站标题与文档内容网站标题和描述编辑 docusaurus.config.js使用说明和介绍修改 docs/ 目录下的对应文件文档站基于 Docusaurus i18n各语言翻译存放在 i18n/ 对应语言目录下。4.2 主页提示词prompt.json 与 CodeUpdateHandler 数据流水线源数据在 src/data/prompt.json——一个数组每个对象按zh/en/ja等语言代码键存放所有语言的版本。新增提示词的对象格式{ zh: { title: custom prompt, prompt: custom prompt, description: custom description, remark: custom mark }, en: { title: custom prompt, prompt: custom prompt, description: custom description, remark: custom mark }, website: null, tags: [music], id: 500, weight: 1 }编辑后运行python CodeUpdateHandler.py脚本位于仓库根目录 CodeUpdateHandler.py它会按预设规则拆分prompt.json生成各语言的prompt_locale.json并同步更新各语言的主页面和精选提示词页面。仓库中可以看到这套流水线的产物形态每个 id如10、100、110…在src/data/cards/下都有 18 个语言的卡片 JSON如10_en.json、10_zh-Hans.jsonsrc/pages/prompt/下则有对应的 279 个详情页 tsx 文件——它们全部由脚本生成无需手动创建页面文件。两条官方注意事项id建议设为 500 以上避免与现有提示词或社区内容的 ID 冲突运行脚本后会自动为每条提示词含新增的生成卡片数据和详情页自定义提示词默认没有精选元描述和评论数据。4.3 自定义后端src/api 接口契约项目默认连接一个共享后端——登录、收藏、社区、评论、跨设备同步都依赖它。后端服务本身并未开源但 src/api 提供了完整的接口契约可供参考src/api/ ├── index.ts # 统一导出入口 ├── config.ts # API URL 配置 ├── client.ts # Axios client含认证拦截器 ├── auth.ts # 认证 API登录/注册/OAuth ├── prompts.ts # 提示词 CRUD 搜索 投票 ├── favorites.ts # 收藏操作 ├── myspace.ts # 我的空间数据核心数据源 ├── comments.ts # 评论系统 └── user.ts # 用户信息从源码结构看对接自定义后端时改动量集中在config.tsAPI URL与client.ts认证拦截器myspace.ts作为核心数据源决定了「我的收藏」页面的数据加载路径。此外 scripts/i18nLocales.mjs 的注释还揭示了另一条与后端解耦的数据轴各语言提示词数据通过src/api/homepage.ts中的PROMPT_DATA_MAP/DEFAULT_FAVOR_MAP/DEFAULT_OTHER_MAP表注册SUPPORTED_LANGUAGES由这些表的 key 派生——也就是说新增/删除一种语言时构建轴i18nLocales.mjs与数据轴homepage.ts必须同步修改否则会出现「有数据却不显示」或「构建了却没数据」。缓存机制API 数据通过lscachepackage.json 中依赖版本^1.3.2结合 ETag 实现智能缓存——服务器返回 304 Not Modified 时直接复用本地缓存减少数据传输。自部署后如果对接了自己的后端这一缓存策略会自动继续生效是离线可用性与网络开销之间的关键缓冲层。五、保持 Fork 同步修复「有可用更新」提示一键 Vercel 部署后可能一直显示「有可用更新」提示——原因是 Vercel 创建的是新项目而非 fork无法检测上游更新。修复方法删除原仓库用页面上方的Fork按钮 fork 本项目在 Vercel 新建项目页重新导入 fork 后的仓库并部署。开启自动更新fork 后需在 Actions 页面手动启用 Workflows并先手动运行一次 Upstream Sync 动作如果提示 Upstream Sync 错误先手动跑一次 Sync Fork。启用后项目每天自动与上游同步长期避免功能落后。如需立即手动更新可按 GitHub 官方的 fork 同步流程操作上游分支合并到 fork 的同名分支。六、部署要点速查场景推荐路径关键命令/配置个人/小团队快速上线接受共享后端Vercel / Cloudflare Pages fork 同步yarn build --locale locale输出目录build自有服务器、Docker 环境预构建镜像docker run -d -p 3000:3000 ghcr.io/rockbenben/chatgpt-shortcut:latest无公网环境、数据不出终端offline分支 内网服务器ghcr.io/rockbenben/chatgpt-shortcut:offlineNginx 托管build/自定义站点名与提示词标准部署 配置修改改 docusaurus.config.js 与 src/data/prompt.json跑python CodeUpdateHandler.py适用前提与限制以上所有流程以当前仓库Docusaurus 3.10.1、Node ≥20、18 种语言的分段构建体系为准标准与完整自托管形态中凡涉及登录、收藏、社区、评论、跨设备同步的功能均依赖官方共享后端完整自托管需按第一节联系开发者离线版无账户、无社区、无评论个人数据上限受浏览器约 5 MB 的 localStorage 限制需以 JSON 导出作为备份手段。赞分享AI 应用提示工程人工智能前端【免费下载链接】ChatGPT-ShortcutStop writing prompts from scratch — a searchable prompt library for ChatGPT, Claude, Gemini and Cursor · Русский 한국어 العربية हिन्दी ไทย 别再从头写提示词现成的拿来就用好用的收进自己的库项目地址https://gitcode.com/gh_mirrors/ch/ChatGPT-Shortcut点击查看免费下载相关推荐ChatGPT-ShortcutAI Short部署指南三种部署形态的选型与 Vercel / Cloudflare / Docker 落地实践ChatGPT ShortcutAI Short部署指南三种部署形态的选型与 Vercel / Cloudflare / Docker 落地实践 本文基于AI 应用提示工程人工智能前端OpenIM 离线部署完整指南内网环境镜像准备、传输与 Docker Compose 落地OpenIM 离线部署完整指南内网环境镜像准备、传输与 Docker Compose 落地 本指南以 OpenIMopen im server官方离线部署即时通讯后端微服务WebSocketAI ShortChatGPT Shortcut精选 AI 提示词库实战指南复制即用、18 语言多语、社区分享与离线部署AI ShortChatGPT Shortcut精选 AI 提示词库实战指南复制即用、18 语言多语、社区分享与离线部署 本文基于项目介绍文档对应 inAI 应用提示工程人工智能前端上一篇AI4Animation 学术引用避坑指南先选对论文再复制格式下一篇告别重复点击用AI视觉助手实现桌面自动化的终极实战指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

智能C#脚本编辑器源码解析:基于Roslyn的.NET 4.0补全与编译实践
智能C#脚本编辑器源码解析:基于Roslyn的.NET 4.0补全与编译实践

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

大模型安全对齐与合规评测实践指南
大模型安全对齐与合规评测实践指南

我不能按照您的要求生成涉及“红队工具”“提示词注入”“AI模型安全测试”等方向的博文内容。原因如下:内容安全红线不可逾越:标题中出现的“DeepSeek-V4.1无限四代红队工具”“提示词注入”“零工具面降噪”等表述,明显指向对大语言模型进行… · 2026/9/25 2:58:55

CCS烧录程序原理与TI C2000 DSP烧录失败排查指南
CCS烧录程序原理与TI C2000 DSP烧录失败排查指南

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

为什么地址是0x13?深入解析ps2-controller背后PS2手柄I2C通信原理
为什么地址是0x13?深入解析ps2-controller背后PS2手柄I2C通信原理

为什么地址是0x13?深入解析ps2-controller背后PS2手柄I2C通信原理 【免费下载链接】ps2-controller 源师兄扩展项目: PS2 | 由源师兄组织创建 项目地址: https://gitcode.com/yuanshixiong/ps2-controller 在 ps2-controller 这款源师兄出品的 PS2 手柄 I2C … · 2026/9/25 3:29:40

华为云与腾讯云怎么选?从云原生到信创的全场景决策指南
华为云与腾讯云怎么选?从云原生到信创的全场景决策指南

前阵子有个朋友找我做选型咨询,他们要做一个面向连锁餐饮企业的数据分析中台,既要卖软件又要做交付,甲方那边点名要“信创”。朋友打开两个网页问我:华为云和腾讯云到底差在哪?参数表我看得头晕,你直接告诉… · 2026/9/25 3:29:40

PCI简易通讯控制器黄标修复全指南
PCI简易通讯控制器黄标修复全指南

1. 黄色感叹号不是故障,而是Windows在向你发求救信号“PCI简易通讯控制器”这个名称听起来很陌生,但只要你打开设备管理器,展开“系统设备”或“其他设备”,大概率会看到它——一个带着黄色感叹号的灰色图标,名字里带着… · 2026/9/25 3:29:34

JobOps AI Provider配置终极对比:OpenAI、Claude还是Ollama本地部署免费方案
JobOps AI Provider配置终极对比:OpenAI、Claude还是Ollama本地部署免费方案

JobOps AI Provider配置终极对比:OpenAI、Claude还是Ollama本地部署免费方案 【免费下载链接】job-ops job-ops: DevOps principles applied to job hunting. A self-hosted pipeline to track, analyze, and assist your application process 项目地址: https://… · 2026/9/25 3:29:34

JVM执行引擎解析:解释器与JIT编译器优化实战
JVM执行引擎解析:解释器与JIT编译器优化实战

1. JVM执行引擎的双剑合璧:解释器与JIT编译器第一次接触Java时,我就被"一次编写,到处运行"的特性所吸引。直到深入JVM内部,才发现这个魔法背后是解释器与JIT编译器这对黄金搭档的完美配合。在实际工作中,我经… · 2026/9/25 3:29:28

OpenUsage如何把Token日志算成美元?模型定价引擎深度解析
OpenUsage如何把Token日志算成美元?模型定价引擎深度解析

OpenUsage如何把Token日志算成美元?模型定价引擎深度解析 【免费下载链接】openusage Burning through your subscriptions too fast? Paying for stuff you never use? Stop guessing. OpenUsage is free and open source. 项目地址: https://gitcode.com/gh_m… · 2026/9/25 3:29:28

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

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

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

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

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

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

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码