isdscuba/AI-Prompt-Vault-Chrome-Extension
GitHub: isdscuba/AI-Prompt-Vault-Chrome-Extension
一款基于 Chrome 扩展与 Firebase 的提示词 Vault,解决跨设备同步与一键注入 ChatGPT/Claude 的问题。
Stars: 0 | Forks: 0
# 提示 Vault
Chrome 扩展,用于存储和管理 AI 提示词,可通过 Firebase 在设备间同步。
保存一次,即可在 ChatGPT 或 Claude 中一键打开。登录你的 Firebase 账户后,可从任意 Chrome 浏览器访问。
## 功能
- 在 Firebase Firestore 中按标题、分类和标签存储提示词
- 全文搜索:标题、文本、分类、标签
- 一键复制或直接注入到 ChatGPT/Claude
- 快速保存:在任意页面选中文字,按 `Cmd+Shift+S` 自动填充保存表单
- 收藏星标以便快速访问
- 所有数据仅保存在你自己的 Firebase 项目中,不传输给第三方
## 设置
你需要一个 Firebase 项目,大约 10 分钟即可完成。
### 1. 创建 Firebase 项目
1. 访问 [console.firebase.google.com](https://console.firebase.google.com/) 并创建项目
2. 启用 **Authentication**(项目设置 > Authentication > 登录方式 > Google > 启用)
3. 启用 **Firestore**(建议从生产模式开始)
### 2. 设置 Firestore 安全规则
在 Firestore > 规则 中,将默认规则替换为:
```
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /prompts/{promptId} {
allow read, write: if request.auth != null && request.auth.uid == resource.data.userId;
allow create: if request.auth != null && request.auth.uid == request.resource.data.userId;
}
}
}
```
### 3. 获取 Firebase 配置
项目设置(齿轮图标)> General > Your apps > web 图标(`>`)> Register app > 复制 `firebaseConfig` 对象。
在扩展文件夹中创建 `firebase-config.json`(可从示例复制):
```
cp firebase-config.example.json firebase-config.json
```
填入你的值:
```
{
"apiKey": "AIza...",
"authDomain": "your-project.firebaseapp.com",
"projectId": "your-project",
"storageBucket": "your-project.appspot.com",
"messagingSenderId": "123456789",
"appId": "1:123456789:web:abcdef"
}
```
### 4. 在 Chrome 中加载扩展
1. 打开 `chrome://extensions/`
2. 启用开发者模式(右上角切换)
3. 点击“加载已解压的扩展程序”并选择本文件夹
4. 将扩展固定到工具栏
首次使用时使用 Google 登录。
## 使用
| 操作 | 方法 |
|------|------|
| 保存提示词 | 点击图标,选择“+ New Prompt” |
| 快速保存选中文本 | 选中文字,按 `Cmd+Shift+S`(Mac)/ `Ctrl+Shift+S`(Windows) |
| 在 ChatGPT/Claude 中打开 | 点击任意提示词卡片上的 ChatGPT 或 Claude 按钮 |
| 复制到剪贴板 | 点击任意卡片上的复制按钮 |
| 仅显示收藏 | 点击顶部的星标筛选器 |
### 键盘快捷键
在 `chrome://extensions/shortcuts` 中修改 > 找到 Prompt Vault > 编辑。
## 自定义
颜色定义在 `sidebar.css` 中的 CSS 变量:
```
:root {
--primary: #2d5d4f;
--accent: #d97757;
--bg: #faf8f5;
}
```
替换 `icon16.png`、`icon48.png`、`icon128.png` 可更改工具栏图标。
## 文件结构
```
prompt-vault/
├── manifest.json # Extension config (Manifest V3)
├── firebase-config.json # Your Firebase credentials (gitignored)
├── firebase-config.example.json
├── sidebar.html # Extension UI
├── sidebar.css # Styles
├── sidebar.js # Source (edit this)
├── sidebar-bundle.js # Compiled output (gitignored, generated by build)
├── background.js # Service worker
├── content.js # Page injection for ChatGPT/Claude
├── build.js # esbuild config
└── icon*.png # Extension icons
```
## 修改代码
该扩展使用 esbuild 来打包 Firebase SDK(因为 Manifest V3 无法加载远程脚本)。
```
npm install
# 编辑 sidebar.js 或其他源文件
npm run build
# 在 chrome://extensions/ 重新加载扩展
```
修改 `firebase-config.json` 无需重新打包 —— 它会在运行时加载。
## 许可证
MIT
标签:AI提示词管理, ChatGPT, Claude, CVE检测, Firebase, Firestore, Promptflow, SEO: Chrome扩展, SEO: 提示词同步, SEO: 提示词管理工具, 一键注入, 书签收藏, 云同步, 功能: 保存提示词, 功能: 快速检索, 功能: 高亮保存, 快捷键操作, 技术栈: Firebase, 技术栈: Web扩展, 提示词库, 数据可视化, 数据隐私, 智能搜索, 用户认证, 自定义脚本, 跨设备同步