{"id":37190564,"url":"https://github.com/DEKVIW/prompt-manager","last_synced_at":"2026-01-22T02:01:16.869Z","repository":{"id":286525450,"uuid":"961296207","full_name":"DEKVIW/prompt-manager","owner":"DEKVIW","description":"一个用于创建、管理和共享 AI 提示词的平台，支持多用户协作、版本控制和分类管理。","archived":false,"fork":false,"pushed_at":"2025-11-27T07:45:19.000Z","size":1929,"stargazers_count":40,"open_issues_count":2,"forks_count":10,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-30T01:35:51.597Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://prompt.yilanbk.me/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DEKVIW.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-06T07:48:45.000Z","updated_at":"2025-11-27T07:45:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"d2ef747c-2026-4290-af36-2665216a5060","html_url":"https://github.com/DEKVIW/prompt-manager","commit_stats":null,"previous_names":["dekviw/prompt-manager"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/DEKVIW/prompt-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEKVIW%2Fprompt-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEKVIW%2Fprompt-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEKVIW%2Fprompt-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEKVIW%2Fprompt-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DEKVIW","download_url":"https://codeload.github.com/DEKVIW/prompt-manager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEKVIW%2Fprompt-manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28650557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-14T22:00:30.229Z","updated_at":"2026-01-22T02:01:16.860Z","avatar_url":"https://github.com/DEKVIW.png","language":"HTML","funding_links":[],"categories":["HTML"],"sub_categories":[],"readme":"# 提示词管理平台\n\n一个用于创建、管理和共享 AI 提示词的平台，支持多用户协作、版本控制和分类管理。\n\n## 功能特性\n\n- **AI 自动填充**：一键生成提示词标题、描述和标签，提升创建效率\n- **提示词管理**：创建、编辑、删除和分享 AI 提示词\n- **用户系统**：支持用户注册和登录，需要邀请码\n- **标签分类**：通过标签组织和分类提示词\n- **收藏功能**：收藏常用提示词便于快速访问\n- **公开与私有**：设置提示词为公开或私有模式\n- **搜索功能**：按标题、描述和标签搜索提示词\n- **响应式设计**：适配电脑、平板和手机等各种设备屏幕\n- **管理员面板**：管理用户和邀请码\n\n## 技术栈\n\n- **后端**：Flask (Python)\n- **前端**：Bootstrap 5, JavaScript\n- **数据库**：SQLite (可扩展到其他数据库)\n- **AI 集成**：OpenAI API、自定义 API（兼容 OpenAI 格式）\n\n## 本地开发环境设置\n\n### 前提条件\n\n- Python 3.6+\n- pip (Python 包管理器)\n\n### 安装步骤\n\n1. 克隆仓库:\n\n   ```bash\n   git clone https://github.com/DEKVIW/prompt-manager.git\n   cd prompt-manager\n   ```\n\n2. 创建并激活虚拟环境:\n\n   ```bash\n   # 在Linux/macOS上\n   python -m venv venv\n   source venv/bin/activate\n\n   # 在Windows上\n   python -m venv venv\n   venv\\Scripts\\activate\n   ```\n\n3. 安装依赖:\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n4. 初始化数据库:\n\n   ```bash\n   python init_db.py\n   ```\n\n5. 启动应用:\n\n   ```bash\n   python run.py\n   ```\n\n6. 访问应用:\n   打开浏览器访问 `http://127.0.0.1:5000`\n\n7. 配置 AI 自动填充（可选）:\n   - 登录后进入\"个人资料\" → \"AI 设置\"\n   - 配置您的 OpenAI API Key 或自定义 API\n   - 保存后即可在创建提示词时使用 AI 自动填充功能\n\n## Docker 部署\n\n### 使用 Docker Compose（推荐）\n\n#### 1. 配置环境变量\n\n创建 `.env` 文件（可选，如不创建将使用默认值）：\n\n```env\nSECRET_KEY=your-secret-key-here-change-this\nFLASK_DEBUG=false\n```\n\n#### 2. 构建并启动\n\n```bash\ndocker-compose up -d\n```\n\n#### 3. 查看日志\n\n```bash\ndocker-compose logs -f\n```\n\n#### 4. 停止服务\n\n```bash\ndocker-compose down\n```\n\n#### 5. 访问应用\n\n打开浏览器访问 `http://localhost:5000`\n\n#### 6. 配置 AI 自动填充（可选）\n\n- 登录后进入\"个人资料\" → \"AI 设置\"\n- 配置您的 OpenAI API Key 或自定义 API\n- 保存后即可在创建提示词时使用 AI 自动填充功能\n\n### 手动 Docker 部署\n\n#### 1. 构建镜像\n\n```bash\ndocker build -t prompt-manager:latest .\n```\n\n#### 2. 运行容器\n\n```bash\ndocker run -d \\\n  --name prompt-manager \\\n  -p 5000:80 \\\n  -v $(pwd)/instance:/app/instance \\\n  -v $(pwd)/logs:/app/logs \\\n  -v $(pwd)/uploads:/app/app/static/img/avatars \\\n  -e SECRET_KEY=your-secret-key-here \\\n  prompt-manager:latest\n```\n\n### Docker 配置说明\n\n- **端口映射**：容器内部 80 端口映射到主机 5000 端口\n- **数据持久化**：\n  - `./instance` → `/app/instance` (数据库文件)\n  - `./logs` → `/app/logs` (日志文件)\n  - `./uploads` → `/app/app/static/img/avatars` (上传的头像)\n- **健康检查**：容器包含健康检查端点 `/health`\n\n## 项目结构\n\n```\nprompt-manager/\n├── app/                  # 应用主包\n│   ├── __init__.py      # 应用工厂函数\n│   ├── config.py        # 配置文件\n│   ├── extensions.py    # 扩展初始化\n│   ├── database/        # 数据库层\n│   │   └── db.py        # 数据库连接和操作\n│   ├── routes/          # 路由层（蓝图）\n│   │   ├── __init__.py  # 蓝图注册\n│   │   ├── main.py      # 主页面路由\n│   │   ├── auth.py      # 认证路由\n│   │   ├── prompts.py   # 提示词路由\n│   │   ├── admin.py     # 管理路由\n│   │   ├── user.py      # 用户路由\n│   │   └── ai.py        # AI 相关路由\n│   ├── services/        # 业务逻辑层\n│   │   ├── __init__.py\n│   │   ├── prompt_service.py\n│   │   ├── user_service.py\n│   │   ├── admin_service.py\n│   │   ├── tag_service.py\n│   │   └── ai_service.py # AI 服务\n│   ├── services/ai/     # AI 客户端\n│   │   ├── base_client.py\n│   │   ├── openai_client.py\n│   │   ├── custom_client.py\n│   │   └── factory.py\n│   ├── utils/           # 工具函数\n│   │   ├── __init__.py\n│   │   ├── decorators.py\n│   │   ├── helpers.py\n│   │   ├── file_upload.py\n│   │   └── encryption.py # 加密工具（用于 API Key 加密）\n│   ├── templates/       # HTML模板\n│   └── static/          # 静态资源（CSS, JS, 图片）\n├── instance/             # 实例数据（SQLite数据库，自动创建）\n├── logs/                 # 日志文件（自动创建）\n├── requirements.txt      # Python依赖\n├── init_db.py           # 数据库初始化脚本\n├── migrations/          # 数据库迁移脚本\n│   └── add_ai_configs_table.py\n├── run.py               # 开发环境运行入口\n├── wsgi.py              # WSGI入口（生产环境）\n├── Dockerfile           # Docker 镜像构建文件\n├── docker-compose.yml   # Docker Compose 配置\n├── docker-entrypoint.sh # Docker 容器启动脚本\n├── nginx.conf           # Nginx 配置文件\n└── README.md            # 项目说明\n```\n\n## 默认账户\n\n- **管理员账户**:\n  - 邮箱: admin@example.com\n  - 密码: admin123\n\n**重要**: 首次登录后请立即修改默认密码!\n\n## AI 自动填充使用说明\n\n### 配置步骤\n\n1. **获取 API Key**\n\n   - OpenAI: 访问 [OpenAI Platform](https://platform.openai.com/api-keys) 获取 API Key\n   - 自定义 API: 使用兼容 OpenAI 格式的 API 服务\n\n2. **配置 API**\n\n   - 登录后，点击右上角用户头像 → \"编辑个人资料\"\n   - 切换到 \"AI 设置\" 标签页\n   - 选择 AI 提供商（OpenAI 或自定义 API）\n   - 输入 API Key 和模型名称\n   - 可选：配置基础 URL（自定义 API 需要）\n   - 点击\"测试连接\"验证配置是否正确\n   - 保存设置\n\n3. **使用自动填充**\n   - 创建新提示词时，输入提示词内容\n   - 点击\"AI 自动填充\"按钮\n   - 系统将自动生成标题、描述和标签\n   - 可根据需要调整生成的内容\n\n### 支持的 AI 提供商\n\n- **OpenAI**: GPT-3.5-turbo, GPT-4, GPT-4-turbo 等\n- **自定义 API**: 任何兼容 OpenAI 格式的 API 服务\n\n### 安全说明\n\n- API Key 采用加密存储，确保安全性\n- 支持 API Key 更新，无需重新输入即可保留原配置\n\n## 贡献指南\n\n欢迎贡献代码、报告问题或提出功能建议！请遵循以下步骤:\n\n1. Fork 仓库\n2. 创建功能分支 (`git checkout -b feature/amazing-feature`)\n3. 提交更改 (`git commit -m 'Add amazing feature'`)\n4. 推送到分支 (`git push origin feature/amazing-feature`)\n5. 创建 Pull Request\n\n## 许可证\n\n本项目采用 MIT 许可证 - 详情参见 [LICENSE](LICENSE) 文件\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDEKVIW%2Fprompt-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDEKVIW%2Fprompt-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDEKVIW%2Fprompt-manager/lists"}