{"owner":"yangjian102621","repo":"geekai","hasSkills":true,"totalSkillsCount":5,"totalTokensCount":2604,"categories":["root-instruction","claude-rule","mcp-config","marketplace","plugin-manifest"],"hasMcp":true,"mcpConfig":{"mcpServers":{"geekai":{"command":"npx","args":["-y","@modelcontextprotocol/server-geekai"]}}},"found":["AGENTS.md","CLAUDE.md",".cursor/mcp.json",".claude-plugin/marketplace.json",".claude-plugin/plugin.json"],"skills":{"AGENTS.md":"# Repository Guidelines\n\n## 项目结构与模块组织\n- `api/`：Go + Gin 后端，包含 `core/` 业务、`handler/` 控制器、`service/` 接口调用以及 `store/` 数据访问，`config.toml` 存放默认配置，`Makefile` 用于多架构交叉构建。\n- `web/`：Vue3 + Vite 前端，源码集中在 `src/`，`public/` 为静态资源，`dist/` 存放构建结果并可被 `api/static/` 或 `desktop/` 引用。\n- `desktop/`：Electron 客户端入口为 `index.js`，配合 `electron-builder` 可打包 AppImage/DMG/NSIS。\n- `miniprogram/`、`docs/`、`database/` 与 `config/` 分别承载小程序壳、部署文档、SQL 脚本及全局 YAML 配置；`build/` 包含 Dockerfile、安装脚本。\n\n## 构建、测试与开发命令\n- `docker-compose up -d`：根目录拉起全部容器，需提前准备好 MySQL、Redis 与模型密钥。\n- `cd api && go run main.go`：本地热调试；`make amd64` / `make arm64` 生成无 CGO 二进制至 `api/bin/` 便于镜像打包。\n- `cd web && pnpm install && pnpm dev --host`：Vite 开发模式；`pnpm build` 产出静态文件；`pnpm lint` 运行 ESLint 自动修复。\n- `cd desktop && npm install && npm run start`：调试 Electron；`npm run package` 通过 electron-builder 生成多平台安装包。\n\n## 编码风格与命名规范\n- Go 代码必须经过 `gofmt`/`goimports`，保持 tab 缩进与驼峰命名；HTTP 路由遵循 `/api/v1/resources` 模式，与 handler 函数命名 (`ResourceHandler`) 对应。\n- Vue 组件文件使用 PascalCase（如 `ChatPanel.vue`），Pinia store 与工具采用 kebab-case 文件名（如 `chat-session.ts`）；统一通过 ESLint、Tailwind 与 `postcss.config.js` 约束样式。\n\n## 测试指南\n- `cd api && go test ./... -race` 是最低要求，新增 service/handler 需补 `_test.go` 并用 mock 隔离第三方 API；涉及时序逻辑可新增 `Test*Integration` 验证。\n- 前端暂未启用单测框架，至少运行 `pnpm lint` 并在 PR 中附关键页面截图或录屏证明交互可用；桌面端如修改构建脚本，需在 macOS/Linux/Windows 中至少验证一个安装包。\n\n## 提交与 Pull Request 规范\n- 参考历史记录（如“支持腾讯云短信服务”），提交信息使用中文动词开头、聚焦单一变更，并可加子系统前缀：`web: 优化聊天动画`。\n- PR 描述需包含变更背景、实现概述、验证方式（命令、截图或日志）与关联 issue/任务号；涉及配置或部署脚本，还要说明回滚流程并 @ 相关 reviewer。\n\n## 安全与配置提示\n- 禁止提交真实密钥，请复制 `config.sample.toml` 或 `config/config.yaml` 生成私有文件，并用 `git update-index --skip-worktree` 忽略。\n- 对象存储、短信、支付等凭证统一放入 Vault 或 CI Secret，代码中仅引用占位常量；`docs/` 中同步记录新增敏感字段与启用步骤。\n","CLAUDE.md":"# CLAUDE.md\r\n\r\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\r\n\r\n## Build Commands\r\n\r\n### Go Backend (api/)\r\n- **Development**: `cd api && go run main.go` (uses config.toml)\r\n- **Build**: `cd api && make` (builds both amd64 and arm64 binaries)\r\n- **Individual builds**: `make amd64` or `make arm64`\r\n- **Clean**: `make clean`\r\n- **Config**: Copy `config.sample.toml` to `config.toml` and configure\r\n\r\n### Web Frontend (web/)\r\n- **Development**: `cd web && npm run dev` (runs on Vite dev server with --host)\r\n- **Build**: `cd web && npm run build`\r\n- **Lint**: `cd web && npm run lint` (ESLint with auto-fix)\r\n\r\n### Testing\r\n- Backend tests: `cd api/test && bash run_crawler_test.sh`\r\n- No specific frontend test configuration found\r\n\r\n## Project Architecture\r\n\r\n### Backend (Go)\r\n- **Framework**: Gin web framework with dependency injection via uber-go/fx\r\n- **Database**: GORM with MySQL, Redis for caching, LevelDB for local storage\r\n- **Authentication**: JWT tokens with Redis session storage\r\n- **Middleware**: CORS, authorization, parameter handling, static resource serving\r\n- **Structure**:\r\n  - `handler/`: HTTP request handlers (REST API endpoints)\r\n  - `service/`: Business logic services (AI integrations, payments, etc.)\r\n  - `store/`: Database models and data access layer\r\n  - `core/`: Application server and middleware configuration\r\n  - `utils/`: Utility functions and helpers\r\n\r\n### Frontend (Vue.js)\r\n- **Framework**: Vue 3 with Composition API\r\n- **UI Components**: Element Plus + Vant (mobile components)\r\n- **State Management**: Pinia\r\n- **Routing**: Vue Router with nested routes\r\n- **Build Tool**: Vite\r\n- **CSS**: Stylus preprocessor with Tailwind CSS utilities\r\n- **Features**: Responsive design (desktop/mobile views), theme switching (dark/light)\r\n\r\n### Key Features\r\n- **AI Chat**: Multiple chat models and conversation management\r\n- **Image Generation**: MidJourney, Stable Diffusion, DALL-E integration\r\n- **Audio/Video**: Suno music creation, Luma/KeLing video generation\r\n- **User Management**: Authentication, payments, power logs, invitations\r\n- **Admin Panel**: Comprehensive management interface\r\n\r\n### Database Models\r\nKey entities: User, ChatItem, ChatMessage, ChatRole, ChatModel, Order, Product, AdminUser, and various job types for AI services.\r\n\r\n### API Structure\r\n- User APIs: `/api/user/*` (auth, profile, settings)\r\n- Chat APIs: `/api/chat/*` (conversations, messages)\r\n- AI Service APIs: `/api/mj/*`, `/api/dall/*`, `/api/suno/*`, `/api/video/*`\r\n- Admin APIs: `/api/admin/*` (management functions)\r\n\r\n### Configuration\r\n- Backend: TOML configuration file (`config.toml`)\r\n- Database: MySQL with automatic migrations\r\n- Services: Redis, various AI API integrations\r\n- File Storage: Local, Aliyun OSS, MinIO, Qiniu options",".cursor/mcp.json":"# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.cursor/mcp.json)",".claude-plugin/marketplace.json":"# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/marketplace.json)",".claude-plugin/plugin.json":"# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/plugin.json)"},"files":{"AGENTS.md":"# Repository Guidelines\n\n## 项目结构与模块组织\n- `api/`：Go + Gin 后端，包含 `core/` 业务、`handler/` 控制器、`service/` 接口调用以及 `store/` 数据访问，`config.toml` 存放默认配置，`Makefile` 用于多架构交叉构建。\n- `web/`：Vue3 + Vite 前端，源码集中在 `src/`，`public/` 为静态资源，`dist/` 存放构建结果并可被 `api/static/` 或 `desktop/` 引用。\n- `desktop/`：Electron 客户端入口为 `index.js`，配合 `electron-builder` 可打包 AppImage/DMG/NSIS。\n- `miniprogram/`、`docs/`、`database/` 与 `config/` 分别承载小程序壳、部署文档、SQL 脚本及全局 YAML 配置；`build/` 包含 Dockerfile、安装脚本。\n\n## 构建、测试与开发命令\n- `docker-compose up -d`：根目录拉起全部容器，需提前准备好 MySQL、Redis 与模型密钥。\n- `cd api && go run main.go`：本地热调试；`make amd64` / `make arm64` 生成无 CGO 二进制至 `api/bin/` 便于镜像打包。\n- `cd web && pnpm install && pnpm dev --host`：Vite 开发模式；`pnpm build` 产出静态文件；`pnpm lint` 运行 ESLint 自动修复。\n- `cd desktop && npm install && npm run start`：调试 Electron；`npm run package` 通过 electron-builder 生成多平台安装包。\n\n## 编码风格与命名规范\n- Go 代码必须经过 `gofmt`/`goimports`，保持 tab 缩进与驼峰命名；HTTP 路由遵循 `/api/v1/resources` 模式，与 handler 函数命名 (`ResourceHandler`) 对应。\n- Vue 组件文件使用 PascalCase（如 `ChatPanel.vue`），Pinia store 与工具采用 kebab-case 文件名（如 `chat-session.ts`）；统一通过 ESLint、Tailwind 与 `postcss.config.js` 约束样式。\n\n## 测试指南\n- `cd api && go test ./... -race` 是最低要求，新增 service/handler 需补 `_test.go` 并用 mock 隔离第三方 API；涉及时序逻辑可新增 `Test*Integration` 验证。\n- 前端暂未启用单测框架，至少运行 `pnpm lint` 并在 PR 中附关键页面截图或录屏证明交互可用；桌面端如修改构建脚本，需在 macOS/Linux/Windows 中至少验证一个安装包。\n\n## 提交与 Pull Request 规范\n- 参考历史记录（如“支持腾讯云短信服务”），提交信息使用中文动词开头、聚焦单一变更，并可加子系统前缀：`web: 优化聊天动画`。\n- PR 描述需包含变更背景、实现概述、验证方式（命令、截图或日志）与关联 issue/任务号；涉及配置或部署脚本，还要说明回滚流程并 @ 相关 reviewer。\n\n## 安全与配置提示\n- 禁止提交真实密钥，请复制 `config.sample.toml` 或 `config/config.yaml` 生成私有文件，并用 `git update-index --skip-worktree` 忽略。\n- 对象存储、短信、支付等凭证统一放入 Vault 或 CI Secret，代码中仅引用占位常量；`docs/` 中同步记录新增敏感字段与启用步骤。\n","CLAUDE.md":"# CLAUDE.md\r\n\r\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\r\n\r\n## Build Commands\r\n\r\n### Go Backend (api/)\r\n- **Development**: `cd api && go run main.go` (uses config.toml)\r\n- **Build**: `cd api && make` (builds both amd64 and arm64 binaries)\r\n- **Individual builds**: `make amd64` or `make arm64`\r\n- **Clean**: `make clean`\r\n- **Config**: Copy `config.sample.toml` to `config.toml` and configure\r\n\r\n### Web Frontend (web/)\r\n- **Development**: `cd web && npm run dev` (runs on Vite dev server with --host)\r\n- **Build**: `cd web && npm run build`\r\n- **Lint**: `cd web && npm run lint` (ESLint with auto-fix)\r\n\r\n### Testing\r\n- Backend tests: `cd api/test && bash run_crawler_test.sh`\r\n- No specific frontend test configuration found\r\n\r\n## Project Architecture\r\n\r\n### Backend (Go)\r\n- **Framework**: Gin web framework with dependency injection via uber-go/fx\r\n- **Database**: GORM with MySQL, Redis for caching, LevelDB for local storage\r\n- **Authentication**: JWT tokens with Redis session storage\r\n- **Middleware**: CORS, authorization, parameter handling, static resource serving\r\n- **Structure**:\r\n  - `handler/`: HTTP request handlers (REST API endpoints)\r\n  - `service/`: Business logic services (AI integrations, payments, etc.)\r\n  - `store/`: Database models and data access layer\r\n  - `core/`: Application server and middleware configuration\r\n  - `utils/`: Utility functions and helpers\r\n\r\n### Frontend (Vue.js)\r\n- **Framework**: Vue 3 with Composition API\r\n- **UI Components**: Element Plus + Vant (mobile components)\r\n- **State Management**: Pinia\r\n- **Routing**: Vue Router with nested routes\r\n- **Build Tool**: Vite\r\n- **CSS**: Stylus preprocessor with Tailwind CSS utilities\r\n- **Features**: Responsive design (desktop/mobile views), theme switching (dark/light)\r\n\r\n### Key Features\r\n- **AI Chat**: Multiple chat models and conversation management\r\n- **Image Generation**: MidJourney, Stable Diffusion, DALL-E integration\r\n- **Audio/Video**: Suno music creation, Luma/KeLing video generation\r\n- **User Management**: Authentication, payments, power logs, invitations\r\n- **Admin Panel**: Comprehensive management interface\r\n\r\n### Database Models\r\nKey entities: User, ChatItem, ChatMessage, ChatRole, ChatModel, Order, Product, AdminUser, and various job types for AI services.\r\n\r\n### API Structure\r\n- User APIs: `/api/user/*` (auth, profile, settings)\r\n- Chat APIs: `/api/chat/*` (conversations, messages)\r\n- AI Service APIs: `/api/mj/*`, `/api/dall/*`, `/api/suno/*`, `/api/video/*`\r\n- Admin APIs: `/api/admin/*` (management functions)\r\n\r\n### Configuration\r\n- Backend: TOML configuration file (`config.toml`)\r\n- Database: MySQL with automatic migrations\r\n- Services: Redis, various AI API integrations\r\n- File Storage: Local, Aliyun OSS, MinIO, Qiniu options",".cursor/mcp.json":"# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.cursor/mcp.json)",".claude-plugin/marketplace.json":"# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/marketplace.json)",".claude-plugin/plugin.json":"# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/plugin.json)"},"items":[{"name":"AGENTS.md","path":"AGENTS.md","rawUrl":"https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/AGENTS.md","title":"AI Agent Protocol & Instructions","category":"root-instruction","format":"markdown","content":"# Repository Guidelines\n\n## 项目结构与模块组织\n- `api/`：Go + Gin 后端，包含 `core/` 业务、`handler/` 控制器、`service/` 接口调用以及 `store/` 数据访问，`config.toml` 存放默认配置，`Makefile` 用于多架构交叉构建。\n- `web/`：Vue3 + Vite 前端，源码集中在 `src/`，`public/` 为静态资源，`dist/` 存放构建结果并可被 `api/static/` 或 `desktop/` 引用。\n- `desktop/`：Electron 客户端入口为 `index.js`，配合 `electron-builder` 可打包 AppImage/DMG/NSIS。\n- `miniprogram/`、`docs/`、`database/` 与 `config/` 分别承载小程序壳、部署文档、SQL 脚本及全局 YAML 配置；`build/` 包含 Dockerfile、安装脚本。\n\n## 构建、测试与开发命令\n- `docker-compose up -d`：根目录拉起全部容器，需提前准备好 MySQL、Redis 与模型密钥。\n- `cd api && go run main.go`：本地热调试；`make amd64` / `make arm64` 生成无 CGO 二进制至 `api/bin/` 便于镜像打包。\n- `cd web && pnpm install && pnpm dev --host`：Vite 开发模式；`pnpm build` 产出静态文件；`pnpm lint` 运行 ESLint 自动修复。\n- `cd desktop && npm install && npm run start`：调试 Electron；`npm run package` 通过 electron-builder 生成多平台安装包。\n\n## 编码风格与命名规范\n- Go 代码必须经过 `gofmt`/`goimports`，保持 tab 缩进与驼峰命名；HTTP 路由遵循 `/api/v1/resources` 模式，与 handler 函数命名 (`ResourceHandler`) 对应。\n- Vue 组件文件使用 PascalCase（如 `ChatPanel.vue`），Pinia store 与工具采用 kebab-case 文件名（如 `chat-session.ts`）；统一通过 ESLint、Tailwind 与 `postcss.config.js` 约束样式。\n\n## 测试指南\n- `cd api && go test ./... -race` 是最低要求，新增 service/handler 需补 `_test.go` 并用 mock 隔离第三方 API；涉及时序逻辑可新增 `Test*Integration` 验证。\n- 前端暂未启用单测框架，至少运行 `pnpm lint` 并在 PR 中附关键页面截图或录屏证明交互可用；桌面端如修改构建脚本，需在 macOS/Linux/Windows 中至少验证一个安装包。\n\n## 提交与 Pull Request 规范\n- 参考历史记录（如“支持腾讯云短信服务”），提交信息使用中文动词开头、聚焦单一变更，并可加子系统前缀：`web: 优化聊天动画`。\n- PR 描述需包含变更背景、实现概述、验证方式（命令、截图或日志）与关联 issue/任务号；涉及配置或部署脚本，还要说明回滚流程并 @ 相关 reviewer。\n\n## 安全与配置提示\n- 禁止提交真实密钥，请复制 `config.sample.toml` 或 `config/config.yaml` 生成私有文件，并用 `git update-index --skip-worktree` 忽略。\n- 对象存储、短信、支付等凭证统一放入 Vault 或 CI Secret，代码中仅引用占位常量；`docs/` 中同步记录新增敏感字段与启用步骤。\n","isInternal":false,"tokens":1018,"sizeBytes":2887},{"name":"CLAUDE.md","path":"CLAUDE.md","rawUrl":"https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/CLAUDE.md","title":"Claude Agent Guidelines & System Prompt","category":"claude-rule","format":"markdown","content":"# CLAUDE.md\r\n\r\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\r\n\r\n## Build Commands\r\n\r\n### Go Backend (api/)\r\n- **Development**: `cd api && go run main.go` (uses config.toml)\r\n- **Build**: `cd api && make` (builds both amd64 and arm64 binaries)\r\n- **Individual builds**: `make amd64` or `make arm64`\r\n- **Clean**: `make clean`\r\n- **Config**: Copy `config.sample.toml` to `config.toml` and configure\r\n\r\n### Web Frontend (web/)\r\n- **Development**: `cd web && npm run dev` (runs on Vite dev server with --host)\r\n- **Build**: `cd web && npm run build`\r\n- **Lint**: `cd web && npm run lint` (ESLint with auto-fix)\r\n\r\n### Testing\r\n- Backend tests: `cd api/test && bash run_crawler_test.sh`\r\n- No specific frontend test configuration found\r\n\r\n## Project Architecture\r\n\r\n### Backend (Go)\r\n- **Framework**: Gin web framework with dependency injection via uber-go/fx\r\n- **Database**: GORM with MySQL, Redis for caching, LevelDB for local storage\r\n- **Authentication**: JWT tokens with Redis session storage\r\n- **Middleware**: CORS, authorization, parameter handling, static resource serving\r\n- **Structure**:\r\n  - `handler/`: HTTP request handlers (REST API endpoints)\r\n  - `service/`: Business logic services (AI integrations, payments, etc.)\r\n  - `store/`: Database models and data access layer\r\n  - `core/`: Application server and middleware configuration\r\n  - `utils/`: Utility functions and helpers\r\n\r\n### Frontend (Vue.js)\r\n- **Framework**: Vue 3 with Composition API\r\n- **UI Components**: Element Plus + Vant (mobile components)\r\n- **State Management**: Pinia\r\n- **Routing**: Vue Router with nested routes\r\n- **Build Tool**: Vite\r\n- **CSS**: Stylus preprocessor with Tailwind CSS utilities\r\n- **Features**: Responsive design (desktop/mobile views), theme switching (dark/light)\r\n\r\n### Key Features\r\n- **AI Chat**: Multiple chat models and conversation management\r\n- **Image Generation**: MidJourney, Stable Diffusion, DALL-E integration\r\n- **Audio/Video**: Suno music creation, Luma/KeLing video generation\r\n- **User Management**: Authentication, payments, power logs, invitations\r\n- **Admin Panel**: Comprehensive management interface\r\n\r\n### Database Models\r\nKey entities: User, ChatItem, ChatMessage, ChatRole, ChatModel, Order, Product, AdminUser, and various job types for AI services.\r\n\r\n### API Structure\r\n- User APIs: `/api/user/*` (auth, profile, settings)\r\n- Chat APIs: `/api/chat/*` (conversations, messages)\r\n- AI Service APIs: `/api/mj/*`, `/api/dall/*`, `/api/suno/*`, `/api/video/*`\r\n- Admin APIs: `/api/admin/*` (management functions)\r\n\r\n### Configuration\r\n- Backend: TOML configuration file (`config.toml`)\r\n- Database: MySQL with automatic migrations\r\n- Services: Redis, various AI API integrations\r\n- File Storage: Local, Aliyun OSS, MinIO, Qiniu options","isInternal":false,"tokens":686,"sizeBytes":2824},{"name":"marketplace.json","path":".claude-plugin/marketplace.json","rawUrl":"https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/marketplace.json","title":"Claude Plugin Marketplace Catalog","category":"marketplace","format":"json","content":"# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/marketplace.json)","tokens":300,"sizeBytes":200},{"name":"plugin.json","path":".claude-plugin/plugin.json","rawUrl":"https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/plugin.json","title":"claude-plugin Plugin Manifest","category":"plugin-manifest","format":"json","content":"# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/plugin.json)","tokens":300,"sizeBytes":186},{"name":"mcp.json","path":".cursor/mcp.json","rawUrl":"https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.cursor/mcp.json","title":"Model Context Protocol (MCP) Configuration","category":"mcp-config","format":"json","content":"# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.cursor/mcp.json)","tokens":300,"sizeBytes":179}],"systemPromptSnippet":"<yakaai_skills repo=\"yangjian102621/geekai\">\n<!-- File: AGENTS.md (Tokens: ~1018 | Category: root-instruction) -->\n# Repository Guidelines\n\n## 项目结构与模块组织\n- `api/`：Go + Gin 后端，包含 `core/` 业务、`handler/` 控制器、`service/` 接口调用以及 `store/` 数据访问，`config.toml` 存放默认配置，`Makefile` 用于多架构交叉构建。\n- `web/`：Vue3 + Vite 前端，源码集中在 `src/`，`public/` 为静态资源，`dist/` 存放构建结果并可被 `api/static/` 或 `desktop/` 引用。\n- `desktop/`：Electron 客户端入口为 `index.js`，配合 `electron-builder` 可打包 AppImage/DMG/NSIS。\n- `miniprogram/`、`docs/`、`database/` 与 `config/` 分别承载小程序壳、部署文档、SQL 脚本及全局 YAML 配置；`build/` 包含 Dockerfile、安装脚本。\n\n## 构建、测试与开发命令\n- `docker-compose up -d`：根目录拉起全部容器，需提前准备好 MySQL、Redis 与模型密钥。\n- `cd api && go run main.go`：本地热调试；`make amd64` / `make arm64` 生成无 CGO 二进制至 `api/bin/` 便于镜像打包。\n- `cd web && pnpm install && pnpm dev --host`：Vite 开发模式；`pnpm build` 产出静态文件；`pnpm lint` 运行 ESLint 自动修复。\n- `cd desktop && npm install && npm run start`：调试 Electron；`npm run package` 通过 electron-builder 生成多平台安装包。\n\n## 编码风格与命名规范\n- Go 代码必须经过 `gofmt`/`goimports`，保持 tab 缩进与驼峰命名；HTTP 路由遵循 `/api/v1/resources` 模式，与 handler 函数命名 (`ResourceHandler`) 对应。\n- Vue 组件文件使用 PascalCase（如 `ChatPanel.vue`），Pinia store 与工具采用 kebab-case 文件名（如 `chat-session.ts`）；统一通过 ESLint、Tailwind 与 `postcss.config.js` 约束样式。\n\n## 测试指南\n- `cd api && go test ./... -race` 是最低要求，新增 service/handler 需补 `_test.go` 并用 mock 隔离第三方 API；涉及时序逻辑可新增 `Test*Integration` 验证。\n- 前端暂未启用单测框架，至少运行 `pnpm lint` 并在 PR 中附关键页面截图或录屏证明交互可用；桌面端如修改构建脚本，需在 macOS/Linux/Windows 中至少验证一个安装包。\n\n## 提交与 Pull Request 规范\n- 参考历史记录（如“支持腾讯云短信服务”），提交信息使用中文动词开头、聚焦单一变更，并可加子系统前缀：`web: 优化聊天动画`。\n- PR 描述需包含变更背景、实现概述、验证方式（命令、截图或日志）与关联 issue/任务号；涉及配置或部署脚本，还要说明回滚流程并 @ 相关 reviewer。\n\n## 安全与配置提示\n- 禁止提交真实密钥，请复制 `config.sample.toml` 或 `config/config.yaml` 生成私有文件，并用 `git update-index --skip-worktree` 忽略。\n- 对象存储、短信、支付等凭证统一放入 Vault 或 CI Secret，代码中仅引用占位常量；`docs/` 中同步记录新增敏感字段与启用步骤。\n\n<!-- File: CLAUDE.md (Tokens: ~686 | Category: claude-rule) -->\n# CLAUDE.md\r\n\r\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\r\n\r\n## Build Commands\r\n\r\n### Go Backend (api/)\r\n- **Development**: `cd api && go run main.go` (uses config.toml)\r\n- **Build**: `cd api && make` (builds both amd64 and arm64 binaries)\r\n- **Individual builds**: `make amd64` or `make arm64`\r\n- **Clean**: `make clean`\r\n- **Config**: Copy `config.sample.toml` to `config.toml` and configure\r\n\r\n### Web Frontend (web/)\r\n- **Development**: `cd web && npm run dev` (runs on Vite dev server with --host)\r\n- **Build**: `cd web && npm run build`\r\n- **Lint**: `cd web && npm run lint` (ESLint with auto-fix)\r\n\r\n### Testing\r\n- Backend tests: `cd api/test && bash run_crawler_test.sh`\r\n- No specific frontend test configuration found\r\n\r\n## Project Architecture\r\n\r\n### Backend (Go)\r\n- **Framework**: Gin web framework with dependency injection via uber-go/fx\r\n- **Database**: GORM with MySQL, Redis for caching, LevelDB for local storage\r\n- **Authentication**: JWT tokens with Redis session storage\r\n- **Middleware**: CORS, authorization, parameter handling, static resource serving\r\n- **Structure**:\r\n  - `handler/`: HTTP request handlers (REST API endpoints)\r\n  - `service/`: Business logic services (AI integrations, payments, etc.)\r\n  - `store/`: Database models and data access layer\r\n  - `core/`: Application server and middleware configuration\r\n  - `utils/`: Utility functions and helpers\r\n\r\n### Frontend (Vue.js)\r\n- **Framework**: Vue 3 with Composition API\r\n- **UI Components**: Element Plus + Vant (mobile components)\r\n- **State Management**: Pinia\r\n- **Routing**: Vue Router with nested routes\r\n- **Build Tool**: Vite\r\n- **CSS**: Stylus preprocessor with Tailwind CSS utilities\r\n- **Features**: Responsive design (desktop/mobile views), theme switching (dark/light)\r\n\r\n### Key Features\r\n- **AI Chat**: Multiple chat models and conversation management\r\n- **Image Generation**: MidJourney, Stable Diffusion, DALL-E integration\r\n- **Audio/Video**: Suno music creation, Luma/KeLing video generation\r\n- **User Management**: Authentication, payments, power logs, invitations\r\n- **Admin Panel**: Comprehensive management interface\r\n\r\n### Database Models\r\nKey entities: User, ChatItem, ChatMessage, ChatRole, ChatModel, Order, Product, AdminUser, and various job types for AI services.\r\n\r\n### API Structure\r\n- User APIs: `/api/user/*` (auth, profile, settings)\r\n- Chat APIs: `/api/chat/*` (conversations, messages)\r\n- AI Service APIs: `/api/mj/*`, `/api/dall/*`, `/api/suno/*`, `/api/video/*`\r\n- Admin APIs: `/api/admin/*` (management functions)\r\n\r\n### Configuration\r\n- Backend: TOML configuration file (`config.toml`)\r\n- Database: MySQL with automatic migrations\r\n- Services: Redis, various AI API integrations\r\n- File Storage: Local, Aliyun OSS, MinIO, Qiniu options\n\n<!-- File: .claude-plugin/marketplace.json (Tokens: ~300 | Category: marketplace) -->\n# Claude Plugin Marketplace Catalog\n\nPath: `.claude-plugin/marketplace.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/marketplace.json)\n\n<!-- File: .claude-plugin/plugin.json (Tokens: ~300 | Category: plugin-manifest) -->\n# claude-plugin Plugin Manifest\n\nPath: `.claude-plugin/plugin.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.claude-plugin/plugin.json)\n\n<!-- File: .cursor/mcp.json (Tokens: ~300 | Category: mcp-config) -->\n# Model Context Protocol (MCP) Configuration\n\nPath: `.cursor/mcp.json`\n\n[View Raw Content on GitHub](https://raw.githubusercontent.com/yangjian102621/geekai/HEAD/.cursor/mcp.json)\n</yakaai_skills>"}