Prompt Gen Desktop
Prompt Gen Desktop 是一款專為內容創作者打造的桌面提示詞管家。從靈感梳理、關鍵詞治理到版本發佈,全流程都能在幾分鐘內完成;就算離線也能繼續整理 Prompt 資產,並隨時導出備份與日誌。
GitHub:Prompt-Gen GitHub
核心亮點
- 5 分鐘產出 Prompt:輸入場景後即可獲得結構化 Prompt,歷史記錄會自動追蹤,方便隨時複用。
- 關鍵詞隨手調音:正向/負向關鍵詞支持拖拽排序、權重調整與模型推薦,調優過程完全可視化。
- 版本管理不迷路:草稿自動保存,發佈後可回看最近版本並一鍵回滾,適合迭代式創作。
- 離線也能信任:本地 SQLite 存儲與 JSON 備份讓數據牢牢掌握在自己手裏,導入導出只需一鍵。
- 公共 Prompt 透明:公共 Prompt 的發佈與審核記錄都會同步展示,結合操作日誌與導入導出明細,團隊協作更放心。
- 開箱體驗額度:在線模式內置 DeepSeek 免費體驗模型,為未配置憑據的新用户提供每日有限的解析/生成次數,超出後可隨時添加自有模型繼續創作。
界面預覽
發佈形態
|
形態
|
説明
|
|
離線版本 |
已發佈的 Windows / macOS 安裝包存放於倉庫的 |
|
在線版本 |
訪問 https://prompt.ab-in.cn/ 可進行輕度在線體驗;雲端部署計劃中的網絡版接口與控制枱仍在內部籌備階段,正式上線時間會在項目公告中另行通知。 |
發行包的默認配置面向離線體驗,在線部署請等待官方發佈的託管環境;若需自行體驗在線形態,可參照下文的開發者指引自行搭建服務端與前端。
如需將本項目用於二次開發或商業化,請先閲讀並遵守倉庫內的 LICENSE。所有衍生工作需保留版權聲明並遵守協議要求。
項目結構
.
├── backend/ # Go HTTP 服務(cmd、internal、tests)
├── frontend/ # Vite/React 前端源碼與構建腳本
├── main.js / preload.js # Electron 主進程及預加載腳本
├── release/ # 離線安裝包輸出目錄
├── docs/ · design/ # 設計與文檔資料
├── .env.example # 統一環境變量模板
└── README.md # 當前文件
快速體驗(離線安裝包)
- 打開倉庫的 “Releases” 頁面,下載對應平台的最新安裝程序。
- 按安裝嚮導操作,默認會安裝到
%LOCALAPPDATA%\Programs\PromptGen(Windows)或/Applications(macOS)。 - 安裝完成後即可直接啓動客户端。若需要長期保留數據,建議將
LOCAL_SQLITE_PATH配置到個人目錄(如~/.promptgen/),避免因卸載而丟失數據庫和頭像。
托盤與關閉行為
- 窗口關閉策略可自定義:在 Windows 等桌面系統中,首次點擊關閉按鈕會彈出自定義毛玻璃小窗,詢問“最小化到托盤”或“直接退出”,並支持“記住我的選擇”。該偏好會寫入用户數據目錄下的
promptgen-preferences.json,後續按所選策略執行。 - 系統托盤入口:應用默認常駐托盤(任務欄右下角/菜單欄),雙擊或左鍵單擊托盤圖標即可重新喚起主窗口。
- 托盤菜單快捷操作:右鍵托盤圖標可查看當前版本號、切換關閉策略、快速打開主界面或直接退出應用,方便在後台運行時管理實例狀態。
- 後台提醒:首次最小化到托盤後會通過通知氣泡提示“應用已在後台運行”,防止用户誤以為程序退出。
開發者指南
下述步驟適用於希望克隆本倉庫並繼續迭代功能的開發者。請務必先閲讀 LICENSE 與 AGENTS.md 中的協作約定,確保貢獻方式與使用範圍符合協議。Prompt Gen Desktop 採用 Electron + Go + Vite/React 的一體化架構,下面提供給開發者的安裝調試指引。
⭐ 建議同時閲讀《開發與發佈流程指引》,其中涵蓋離線數據導出、版本號管理、
scripts/deploy-online.sh服務器部署等完整流程。
前提依賴
- Node.js ≥ 18(建議使用與
.nvmrc對齊的版本) - Go ≥ 1.24
- pnpm / npm(任選其一,用於安裝前端依賴)
- 可選:MySQL、Redis、Nacos,僅在在線模式或完整功能調試時需要
克隆與安裝
git clone https://github.com/AB-IN-lsy/Prompt-Gen
cd Prompt-Gen
# 安裝 Electron 主程與腳本依賴
npm install
# 安裝前端依賴
npm --prefix frontend install
# 同步 Go 依賴
go mod tidy
環境配置
- 複製
.env.example為.env.local(可根據需要提交.env)。 - 基本字段包括:
APP_MODE、LOCAL_SQLITE_PATH、JWT_SECRET、MODEL_CREDENTIAL_MASTER_KEY(用於 AES-256-GCM 加密模型憑據,需填入 Base64 編碼的 32 字節密鑰)等。 - 若需調試在線模式,可補充 MySQL、Redis、Nacos 等連接參數;否則將
APP_MODE=local即可在完全離線的 SQLite 環境中啓動。 - 前端同樣讀取根目錄
.env(.local)中的VITE_字段,例如VITE_API_BASE_URL、VITE_API_REQUEST_TIMEOUT_MS等。 - 若需要部署到純 Web 環境,可在
.env中設置VITE_PUBLIC_BASE_PATH=/;打包桌面殼保持默認的./即可兼容file://協議。 - 當前版本僅提供本地存儲加手動的 JSON 導入/導出備份能力,不再包含任何遠程同步功能。
詳細參數説明與約束請參考 backend/backend_README.md 與 frontend/frontend_README.md。
本地運行
# 啓動後端 HTTP 服務(默認 9090)
go run ./backend/cmd/server
# 啓動前端 Vite 開發服務器(默認 5173)
npm run dev:frontend
# 啓動 Electron 桌面殼(加載 Vite Dev URL)
npm start
提示:
npm start通過scripts/start-electron.cjs調用本地安裝的 Electron,可避免 Windows 上'electron' 不是內部命令'的報錯;首次運行請確保已執行npm install。
構建生產資源:
npm run build:frontend:web # 生成部署 Web 的前端靜態文件(base=/)
npm run build:frontend # 生成 Electron 殼使用的前端資產(保留相對路徑 base=./)
npm run prepare:offline # 同時構建前端與後端二進制
npm run dist:win # 生成 Windows 安裝包(macOS 對應 dist:mac)
質量檢查
# 前端靜態檢查
npm --prefix frontend run lint
npm --prefix frontend run build
# 後端測試套件
go test ./...
go test -tags=integration ./backend/tests/integration # 需要真實依賴
go test -tags=e2e ./backend/tests/e2e # 命中線上接口時再運行
數據導出 / 導入
POST /api/prompts/export:導出當前用户的 Prompt,Electron 客户端會在“我的 Prompt”頁面提供按鈕並顯示導出路徑。POST /api/prompts/import:上傳導出的 JSON 文件,可合併或覆蓋現有 Prompt;前端會展示導入統計以及失敗條目列表,便於逐項修復。
離線預置數據更新
- 安裝包會隨帶
backend/data/bootstrap/下的public_prompts.json與changelog_entries.json,空表啓動時後端子進程會自動導入這些預置數據。 - 發佈前請執行:
go run ./backend/cmd/export-offline-data -output-dir backend/data/bootstrap
命令會使用 .env(.local) 中的線上數據庫配置導出最新公共 Prompt 與 changelog,並覆蓋目錄內 JSON。
- 如需確認導入效果,可運行:
go run ./backend/cmd/offline-bootstrap -output ./release/assets/promptgen-offline.db
CLI 會根據 JSON 生成一個 SQLite 文件並打印條目統計;將 LOCAL_SQLITE_PATH 指向該文件或清空現有數據庫後重啓客户端即可驗證頁面展示。
- 更新 JSON 後記得納入提交(
.gitignore已放行該目錄),再執行npm run dist:win/npm run dist:mac檢查安裝包內resources/app/backend/data/bootstrap/是否包含最新文件。
常用腳本速查
|
命令
|
作用
|
|
|
啓動前端開發服務器
|
|
|
打開 Electron 客户端(開發模式)
|
|
|
構建離線包所需的前後端資源
|
|
|
打包發佈版安裝程序
|
|
|
啓動 Go API 服務
|
|
|
運行後端單元測試
|
貢獻與支持
- 如有功能建議或缺陷反饋,請通過 Issue 進行描述,並附帶復現步驟或日誌。
- Pull Request 應遵循倉庫現有的提交規範與編碼風格,重要改動需附上相應的測試或截圖。
- 若計劃將本項目用於商業用途或深度定製,請提前閲讀許可證條款,必要時聯繫維護者獲取授權或協助。
許可證
本項目依據倉庫中的 LICENSE 發佈。使用、分發或再次開發時請遵守相關條款,並在文檔、產品頁面及二次發行包中保留原始版權聲明。