chore: tidy root project files

This commit is contained in:
linshen committed 2026-05-17 15:36:52 +08:00
1 parent 74c229a8f5
commit ce73ae0c8c
18 files changed
+52 -115

No files matched your search

-30
View File
@@ -1,30 +0,0 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
# 检查是否存在package-lock.json或yarn.lock文件
if [ -f "package-lock.json" ]; then
echo "错误: 检测到package-lock.json文件。"
echo "本项目强制使用pnpm作为包管理器,请删除package-lock.json并使用pnpm install安装依赖。"
exit 1
fi
if [ -f "yarn.lock" ]; then
echo "错误: 检测到yarn.lock文件。"
echo "本项目强制使用pnpm作为包管理器,请删除yarn.lock并使用pnpm install安装依赖。"
exit 1
fi
# 确保pnpm-lock.yaml存在
if [ ! -f "pnpm-lock.yaml" ]; then
echo "警告: 未检测到pnpm-lock.yaml文件。"
echo "请确保使用pnpm install安装依赖。"
fi
# 测试门禁(可用 SKIP_TEST_GATE=1 跳过,仅用于紧急情况)
if [ "$SKIP_TEST_GATE" = "1" ]; then
echo "跳过测试门禁:检测到 SKIP_TEST_GATE=1"
exit 0
fi
echo "运行测试门禁(fast):pnpm test:gate"
pnpm test:gate
-29
View File
@@ -1,29 +0,0 @@
# PowerShell版本的pre-commit钩子
# 检查是否存在package-lock.json或yarn.lock文件
if (Test-Path "package-lock.json") {
Write-Host "错误: 检测到package-lock.json文件。" -ForegroundColor Red
Write-Host "本项目强制使用pnpm作为包管理器,请删除package-lock.json并使用pnpm install安装依赖。" -ForegroundColor Red
exit 1
}
if (Test-Path "yarn.lock") {
Write-Host "错误: 检测到yarn.lock文件。" -ForegroundColor Red
Write-Host "本项目强制使用pnpm作为包管理器,请删除yarn.lock并使用pnpm install安装依赖。" -ForegroundColor Red
exit 1
}
# 确保pnpm-lock.yaml存在
if (-not (Test-Path "pnpm-lock.yaml")) {
Write-Host "警告: 未检测到pnpm-lock.yaml文件。" -ForegroundColor Yellow
Write-Host "请确保使用pnpm install安装依赖。" -ForegroundColor Yellow
}
# 测试门禁(可用 SKIP_TEST_GATE=1 跳过,仅用于紧急情况)
if ($env:SKIP_TEST_GATE -eq "1") {
Write-Host "跳过测试门禁:检测到 SKIP_TEST_GATE=1" -ForegroundColor Yellow
exit 0
}
Write-Host "运行测试门禁(fast):pnpm test:gate" -ForegroundColor Cyan
pnpm test:gate
-5
View File
@@ -1,5 +0,0 @@
save-workspace-protocol=false
save-prefix='~'
strict-peer-dependencies=false
auto-install-peers=true
resolution-mode=highest
+6 -6
View File
@@ -16,7 +16,7 @@
[Website](https://always200.com) | [Online Optimizer](https://prompt.always200.com) | [Prompt Garden](https://garden.always200.com) | [Docs](https://docs.always200.com) | [Quick Start](#quick-start) | [Chrome Extension](https://chromewebstore.google.com/detail/prompt-optimizer/cakkkhboolfnadechdlgdcnjammejlna) | [💖 Support](https://ko-fi.com/linshenkx)
[Development Docs](dev.md) | [Vercel Deployment Guide](docs/user/deployment/vercel_en.md) | [Cloudflare Pages Deployment Guide](docs/user/deployment/cloudflare-pages_en.md) | [MCP Deployment Guide](docs/user/mcp-server_en.md) | [DeepWiki Docs](https://deepwiki.com/linshenkx/prompt-optimizer) | [ZRead Docs](https://zread.ai/linshenkx/prompt-optimizer)
[Development Docs](docs/developer/development.md) | [Vercel Deployment Guide](docs/user/deployment/vercel_en.md) | [Cloudflare Pages Deployment Guide](docs/user/deployment/cloudflare-pages_en.md) | [MCP Deployment Guide](docs/user/mcp-server_en.md) | [DeepWiki Docs](https://deepwiki.com/linshenkx/prompt-optimizer) | [ZRead Docs](https://zread.ai/linshenkx/prompt-optimizer)
</div>
@@ -172,10 +172,10 @@ ACCESS_PASSWORD=your_password # Set access password
EOF
# 3. Start the service
docker compose up -d
docker compose -f docker/docker-compose.yml up -d
# 4. View logs
docker compose logs -f
docker compose -f docker/docker-compose.yml logs -f
# 5. Access the service
Web Interface: http://localhost:8081
@@ -183,9 +183,9 @@ MCP Server: http://localhost:8081/mcp
```
</details>
You can also directly edit the docker-compose.yml file to customize your configuration:
You can also directly edit the docker/docker-compose.yml file to customize your configuration:
<details>
<summary>Click to view docker-compose.yml example</summary>
<summary>Click to view docker/docker-compose.yml example</summary>
```yaml
services:
@@ -317,7 +317,7 @@ Configure environment variables through the `-e` parameter when deploying with D
</details>
## Local Development
For detailed documentation, see [Development Documentation](dev.md)
For detailed documentation, see [Development Documentation](docs/developer/development.md)
<details>
<summary>Click to view local development commands</summary>
+6 -6
View File
@@ -16,7 +16,7 @@
[官网](https://always200.com) | [在线优化器](https://prompt.always200.com) | [提示词库](https://garden.always200.com) | [文档站](https://docs.always200.com) | [快速开始](#快速开始) | [Chrome插件](https://chromewebstore.google.com/detail/prompt-optimizer/cakkkhboolfnadechdlgdcnjammejlna) | [💖赞助支持](images/other/sponsor_wx.jpg)
[开发文档](dev.md) | [Vercel部署指南](docs/user/deployment/vercel.md) | [Cloudflare Pages部署指南](docs/user/deployment/cloudflare-pages.md) | [MCP部署使用说明](docs/user/mcp-server.md) | [DeepWiki文档](https://deepwiki.com/linshenkx/prompt-optimizer) | [ZRead文档](https://zread.ai/linshenkx/prompt-optimizer)
[开发文档](docs/developer/development.md) | [Vercel部署指南](docs/user/deployment/vercel.md) | [Cloudflare Pages部署指南](docs/user/deployment/cloudflare-pages.md) | [MCP部署使用说明](docs/user/mcp-server.md) | [DeepWiki文档](https://deepwiki.com/linshenkx/prompt-optimizer) | [ZRead文档](https://zread.ai/linshenkx/prompt-optimizer)
</div>
@@ -165,10 +165,10 @@ cp env.local.example .env
# 编辑 .env 文件,填入实际的 API 密钥和配置
# 3. 启动服务
docker compose up -d
docker compose -f docker/docker-compose.yml up -d
# 4. 查看日志
docker compose logs -f
docker compose -f docker/docker-compose.yml logs -f
# 5. 访问服务
Web 界面:http://localhost:8081
@@ -176,9 +176,9 @@ MCP 服务器:http://localhost:8081/mcp
```
</details>
你还可以直接编辑docker-compose.yml文件,自定义配置:
你还可以直接编辑 docker/docker-compose.yml 文件,自定义配置:
<details>
<summary>点击查看 docker-compose.yml 示例</summary>
<summary>点击查看 docker/docker-compose.yml 示例</summary>
```yaml
services:
@@ -313,7 +313,7 @@ Docker部署时通过 `-e` 参数配置环境变量:
</details>
## 本地开发
详细文档可查看 [开发文档](dev.md)
详细文档可查看 [开发文档](docs/developer/development.md)
<details>
<summary>点击查看本地开发命令</summary>
@@ -2,7 +2,7 @@ services:
prompt-optimizer:
# 开发模式:从源码构建
build:
context: .
context: ..
dockerfile: Dockerfile
image: linshen/prompt-optimizer:dev
container_name: prompt-optimizer-dev
@@ -12,7 +12,7 @@ services:
extra_hosts:
- "host.docker.internal:host-gateway" # 允许容器访问宿主机
env_file:
- .env.local # 读取本地环境变量文件
- ../.env.local # 读取仓库根目录的本地环境变量文件
healthcheck:
test: ["CMD", "sh", "-c", "curl -f http://localhost:${NGINX_PORT:-80}/ && curl -f http://localhost:${NGINX_PORT:-80}/mcp"]
interval: 30s
@@ -3,7 +3,7 @@ services:
image: linshen/prompt-optimizer:latest
# Alternatively, you can build from source:
# build:
# context: .
# context: ..
# dockerfile: Dockerfile
container_name: prompt-optimizer
restart: unless-stopped
+12 -12
View File
@@ -53,13 +53,13 @@ MCP_DEFAULT_MODEL_BASE_URL=
### 1. 配置环境变量
```bash
cp .env.docker.example .env
cp env.local.example .env
# 编辑.env文件,填入实际的API密钥
```
### 2. 启动服务
```bash
docker-compose up -d
docker compose -f docker/docker-compose.yml up -d
```
### 3. 访问服务
@@ -71,13 +71,13 @@ docker-compose up -d
### 4. 健康检查
```bash
# 检查容器状态
docker-compose ps
docker compose -f docker/docker-compose.yml ps
# 查看日志
docker-compose logs -f
docker compose -f docker/docker-compose.yml logs -f
# 查看MCP服务器日志
docker-compose exec prompt-optimizer supervisorctl tail -f mcp-server
docker compose -f docker/docker-compose.yml exec prompt-optimizer supervisorctl tail -f mcp-server
```
## MCP服务器API
@@ -111,37 +111,37 @@ curl -X POST http://localhost:8081/mcp \
### 查看服务状态
```bash
docker-compose exec prompt-optimizer supervisorctl status
docker compose -f docker/docker-compose.yml exec prompt-optimizer supervisorctl status
```
### 重启MCP服务器
```bash
docker-compose exec prompt-optimizer supervisorctl restart mcp-server
docker compose -f docker/docker-compose.yml exec prompt-optimizer supervisorctl restart mcp-server
```
### 查看详细日志
```bash
# Nginx日志
docker-compose exec prompt-optimizer tail -f /var/log/nginx/error.log
docker compose -f docker/docker-compose.yml exec prompt-optimizer tail -f /var/log/nginx/error.log
# MCP服务器日志
docker-compose exec prompt-optimizer tail -f /var/log/supervisor/mcp-server.out.log
docker compose -f docker/docker-compose.yml exec prompt-optimizer tail -f /var/log/supervisor/mcp-server.out.log
```
## 开发模式
如果需要在开发模式下运行,可以修改docker-compose.yml:
如果需要在开发模式下运行,可以使用 `docker/docker-compose.dev.yml`:
```yaml
services:
prompt-optimizer:
build:
context: .
context: ..
dockerfile: Dockerfile
# ... 其他配置
```
然后重新构建:
```bash
docker-compose up --build -d
docker compose -f docker/docker-compose.dev.yml up --build -d
```
+1 -1
View File
@@ -4,7 +4,7 @@
## 🚀 快速开始
- 快速开始指南(待创建) - 开发环境搭建和项目启动
- [开发指南](./development.md) - 开发环境搭建、Docker 开发和常用工作流
- [技术开发指南](./technical-development-guide.md) - 完整的技术栈和开发规范
- [项目结构](./project-structure.md) - 项目文件和目录组织说明
- [AI开发流程规范](./ai-development-workflow.md) - AI辅助开发的标准化流程
File renamed without changes.
+4 -3
View File
@@ -18,13 +18,14 @@ prompt-optimizer/
│ │ └── package.json # Web包配置
│ └── extension/ # Chrome插件
├── docs/ # 项目文档
├── tools/ # 工具脚本
├── docker/ # Docker 配置和服务脚本
├── scripts/ # 工具脚本
└── ...配置文件
```
### 1.2 配置文件
- `pnpm-workspace.yaml` - 工作区配置
- `.env.example` - 环境变量示例
- `env.local.example` - 环境变量示例
- `package.json` - 项目配置
- `.vscode/` - VSCode配置目录
- `.gitignore` - Git忽略配置
@@ -36,7 +37,7 @@ prompt-optimizer/
### 1.4 文档目录 (docs/)
- `README.md` - 文档索引
- `development-guidelines.md` - 开发指南
- `developer/development.md` - 开发指南
- `project-status.md` - 项目状态
- `project-structure.md` - 项目结构
- `technical-documentation.md` - 技术文档
+2 -2
View File
@@ -5,7 +5,7 @@
- `pnpm test`
只跑单元测试,适合日常开发的快速反馈。
- `pnpm test:gate`
运行 core/ui 的门禁测试,不含 Playwright E2E,适合 pre-commit。
运行 core/ui 的门禁测试,不含 Playwright E2E,适合提交前快速检查。
- `pnpm test:gate:full`
在 `test:gate` 基础上追加关键 E2E 白名单,适合提交前或 CI。
@@ -15,7 +15,7 @@
# 日常开发:快速反馈
pnpm test
# pre-commit:core/ui 门禁,不含 E2E
# 提交前快速门禁:core/ui,不含 E2E
pnpm test:gate
# 提交前 / CI:门禁 + 关键 E2E
+1 -1
View File
@@ -10,7 +10,7 @@ pnpm test
pnpm test:unit
pnpm test:fast
# pre-commit 门禁:core/ui,不含 Playwright
# 提交前快速门禁:core/ui,不含 Playwright
pnpm test:gate
# 提交前 / CI:门禁 + 关键 E2E 白名单
+1 -1
View File
@@ -227,7 +227,7 @@ docker run -d -p 8081:80 --env-file .env \
#### 方式3:Docker Compose
修改 `docker-compose.yml` 添加 `env_file` 配置:
修改 `docker/docker-compose.yml` 添加 `env_file` 配置:
```yaml
services:
+1 -1
View File
@@ -189,7 +189,7 @@ docker run -d -p 8081:80 --env-file .env \
#### Method 3: Docker Compose
Modify `docker-compose.yml` to add `env_file` configuration:
Modify `docker/docker-compose.yml` to add `env_file` configuration:
```yaml
services:
+1 -1
View File
@@ -123,7 +123,7 @@ docker run -d -p 8081:80 --name prompt-optimizer-local prompt-optimizer:local
## 更适合放进 `.env.local` 的内容
如果你长期在本地开发,建议把这类变量放进 `.env.local`,再配合 `docker-compose.dev.yml`:
如果你长期在本地开发,建议把这类变量放进 `.env.local`,再配合 `docker/docker-compose.dev.yml`:
- 各种 `VITE_*` 模型配置
- `ACCESS_USERNAME`
+5 -5
View File
@@ -49,10 +49,10 @@ docker run -d -p 8081:80 --restart unless-stopped --name prompt-optimizer \
## 使用仓库自带的 Docker Compose
仓库根目录已经带了 `docker-compose.yml`,可以直接使用:
仓库 `docker/` 目录已经带了 `docker-compose.yml`,可以直接使用:
```bash
docker compose up -d
docker compose -f docker/docker-compose.yml up -d
```
默认端口映射是:
@@ -69,8 +69,8 @@ docker compose up -d
常用命令:
```bash
docker compose logs -f
docker compose down
docker compose -f docker/docker-compose.yml logs -f
docker compose -f docker/docker-compose.yml down
```
## 开发用 Compose
@@ -78,7 +78,7 @@ docker compose down
如果你要基于本地源码构建,可以使用:
```bash
docker compose -f docker-compose.dev.yml up -d --build
docker compose -f docker/docker-compose.dev.yml up -d --build
```
这个文件的特点是:
@@ -12,8 +12,8 @@
排查前先分清:
- `docker run -p 8081:80 ...`
- `docker compose up -d` 使用仓库自带 `docker-compose.yml`
- `docker compose -f docker-compose.dev.yml up -d --build`
- `docker compose -f docker/docker-compose.yml up -d` 使用仓库自带 Compose 配置
- `docker compose -f docker/docker-compose.dev.yml up -d --build`
因为三种方式默认端口不一样,很多“服务打不开”其实只是看错了端口。
@@ -41,8 +41,8 @@ docker logs prompt-optimizer
如果你用的是仓库自带 compose,再看:
```bash
docker compose ps
docker compose logs -f
docker compose -f docker/docker-compose.yml ps
docker compose -f docker/docker-compose.yml logs -f
```
常见原因:
@@ -54,8 +54,8 @@ docker compose logs -f
端口对应关系:
- `docker run -p 8081:80` 对外一般是 `8081`
- `docker-compose.yml` 默认是 `28081`
- `docker-compose.dev.yml` 默认是 `28082`
- `docker/docker-compose.yml` 默认是 `28081`
- `docker/docker-compose.dev.yml` 默认是 `28082`
## 常见问题 2:`/mcp` 访问失败
@@ -138,7 +138,7 @@ http://localhost:11434/v1
http://host.docker.internal:11434/v1
```
如果你使用 `docker-compose.dev.yml`,仓库已经帮你加了:
如果你使用 `docker/docker-compose.dev.yml`,仓库已经帮你加了:
```yaml
extra_hosts:
@@ -156,8 +156,8 @@ extra_hosts:
可以按这个顺序试:
```bash
docker compose down
docker compose up -d
docker compose -f docker/docker-compose.yml down
docker compose -f docker/docker-compose.yml up -d
```
或者: