mirror of
https://github.com/arch3rPro/1Panel-Appstore.git
synced 2026-06-11 17:47:18 +08:00
Compare commits
232 Commits
778c2e8c27
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 682533f4ac | |||
| 3addf323b3 | |||
| 98931cae99 | |||
| da76e20972 | |||
| 26db34c6c0 | |||
| 63f7938050 | |||
| c590dd478a | |||
| 36b7464b6b | |||
| 487be95ec5 | |||
| ff943d342e | |||
| b787a007a7 | |||
| f257c285cb | |||
| 7845f547fc | |||
| 74787292de | |||
| 7d618c6da0 | |||
| bec2d11cec | |||
| c3605c7b99 | |||
| 47e7e3394f | |||
| 33cf7fb610 | |||
| 6b9dc52d5b | |||
| 08e5264680 | |||
| 2a22d768b2 | |||
| cc887860ac | |||
| 4f4aa6d91d | |||
| 59c75d6a10 | |||
| 4263be75ae | |||
| 3022f0c6ff | |||
| 9a6972e846 | |||
| 9218b854df | |||
| 148a41f21e | |||
| b8a32d0018 | |||
| 9f43049fb8 | |||
| bd2e75549c | |||
| 4dadf9a4c3 | |||
| 1d6cd922a3 | |||
| a4a3361911 | |||
| 9eda3721b2 | |||
| b6a3d48fe7 | |||
| 25bcb1fa42 | |||
| cdf98b2e13 | |||
| ecf2ab7d8e | |||
| 940c835f28 | |||
| c474f5f6e2 | |||
| 40041c482c | |||
| fbd0372843 | |||
| f12575d941 | |||
| 0b24397e26 | |||
| 99158dfe09 | |||
| cab3c46ba0 | |||
| 7c059b93f5 | |||
| e1c587bad3 | |||
| 69d8baceba | |||
| e9f3948fe7 | |||
| c4899abf01 | |||
| b8a44e4a25 | |||
| e928229ee3 | |||
| f25eed1aac | |||
| 0ebfbdf733 | |||
| 9b8db2d81b | |||
| 845ea14ef7 | |||
| 2eba376cdd | |||
| 668439820f | |||
| fd10b5c2b4 | |||
| cd30230bf0 | |||
| 9f84a8ace0 | |||
| 66db697868 | |||
| 2091dcc4d3 | |||
| 563eaf7c04 | |||
| 1001cb51a8 | |||
| 01f628b02e | |||
| c70d5f8dac | |||
| 5445a28bd7 | |||
| cd1d0d6ef6 | |||
| cd103d50aa | |||
| 9823863186 | |||
| 2da3ad1adc | |||
| e12fefaac1 | |||
| 4c09850cfb | |||
| ec3559a4a0 | |||
| f7f1d02b84 | |||
| d3c8b1aa38 | |||
| 680055843a | |||
| cf76b5f99b | |||
| edd4fb9ce1 | |||
| 8486c8a545 | |||
| 188e11e789 | |||
| 95cbb4b42f | |||
| ccd88efb2a | |||
| 93c6ecf44b | |||
| 50cd99e08d | |||
| 010555d732 | |||
| d71200b377 | |||
| ac095731bd | |||
| 0a4e97ef82 | |||
| 57dd5d2146 | |||
| 3167ad0c84 | |||
| 5800fd08d6 | |||
| a7c5ee6790 | |||
| aaa36432de | |||
| 011ce2e7b2 | |||
| e6f782ec52 | |||
| 6ab4eb8845 | |||
| 7c4517e192 | |||
| 5b1988a895 | |||
| fbf47cfd60 | |||
| e6ee97698b | |||
| 0ecf5f478a | |||
| 6dde71ab93 | |||
| 99076dca58 | |||
| c4d1b19d92 | |||
| 4092625c30 | |||
| 155cc17d2c | |||
| b282772441 | |||
| ad56689664 | |||
| d41450b25d | |||
| 5a08b3739b | |||
| 0e4409dc61 | |||
| dbff3fae09 | |||
| c6804e216f | |||
| 75bcb4d774 | |||
| 01e24ef58e | |||
| d34821bd6c | |||
| b078d49988 | |||
| dba3c2d189 | |||
| bbc9d5d2e2 | |||
| ef7580224c | |||
| 1fc4afba12 | |||
| 48957da119 | |||
| e76c8cdb04 | |||
| 407966ecff | |||
| ee1324a506 | |||
| cf9472a2ca | |||
| cf5e3c016c | |||
| 157504bb71 | |||
| 6e50551931 | |||
| e6982a335b | |||
| 790bfc6623 | |||
| d90c8125ce | |||
| 19975afdd4 | |||
| 2c12569b09 | |||
| d8d8d4e372 | |||
| 8e610447c7 | |||
| f52f2879bb | |||
| 64573a6fad | |||
| fd63aef505 | |||
| 495d24b7c9 | |||
| 5c5a655e0a | |||
| df44dbe2d1 | |||
| 668b2eef44 | |||
| c22980ae83 | |||
| 14a860c11f | |||
| c73dc556ea | |||
| 402f1290a4 | |||
| e97f8b7a79 | |||
| 9e18ea4d6f | |||
| e98811cd04 | |||
| 87bc4e7f86 | |||
| b3e968644e | |||
| 581a3613a0 | |||
| d648fb025b | |||
| 22e3644631 | |||
| ac410cc889 | |||
| 4d477d73e9 | |||
| 5b59c4f7c2 | |||
| 032bb52d73 | |||
| 49223e488b | |||
| 92eb31ca0c | |||
| ecb201548a | |||
| 2e51774a8c | |||
| f3140aa3c6 | |||
| 10da6c91a3 | |||
| 52169b7023 | |||
| 0b5c0f0254 | |||
| f8a0e6bc20 | |||
| 26e7a985ff | |||
| edc8efcdce | |||
| e07e6ac8e9 | |||
| c1012200ad | |||
| 7d6e56c51c | |||
| 3e42fbeff1 | |||
| 9a88ac43f2 | |||
| 9b71c569ac | |||
| a040d017d3 | |||
| 58c1588abc | |||
| 5b4ad2cac3 | |||
| 7dd542c436 | |||
| 12b719c7be | |||
| 859bf90472 | |||
| c8eacf6387 | |||
| 9bce5519d8 | |||
| 5830e57e44 | |||
| bac0625eb9 | |||
| 7da105f639 | |||
| 2c0af68037 | |||
| 82bd1246ab | |||
| 7e47371ffc | |||
| b0b057f082 | |||
| 5d684ad7ec | |||
| 985b903f7b | |||
| ea316bc761 | |||
| 8e5e2f2d4b | |||
| 9f51b5884f | |||
| e823c655bb | |||
| e407eddbbf | |||
| 2be2397480 | |||
| bf234f5e55 | |||
| ef4bd07ca5 | |||
| fac23bbe09 | |||
| 6b4adff64f | |||
| 91a18d7b1b | |||
| 33d888975b | |||
| 96b7f17477 | |||
| 0655a03b30 | |||
| a853f59c1b | |||
| 802bf4137f | |||
| 76aa89e727 | |||
| cd7e85aa91 | |||
| e253a37835 | |||
| 88e3d0a529 | |||
| bf6feaf885 | |||
| d2ec9f7a61 | |||
| 2a3e8d2860 | |||
| 553011624c | |||
| 956f7fb035 | |||
| 944c75ec14 | |||
| fa1ef26e5d | |||
| 99c1b99814 | |||
| 981b52e6aa | |||
| 6ecbf6e9d8 | |||
| 5bdbad56f0 | |||
| 8c40b4218a | |||
| 73a67fcdf1 |
@@ -12,3 +12,9 @@
|
|||||||
|
|
||||||
# Skills
|
# Skills
|
||||||
.trae
|
.trae
|
||||||
|
|
||||||
|
# Codex
|
||||||
|
.codex
|
||||||
|
|
||||||
|
# superpowers
|
||||||
|
/docs
|
||||||
@@ -0,0 +1,99 @@
|
|||||||
|
# Repository Guidelines
|
||||||
|
|
||||||
|
## Project Shape
|
||||||
|
|
||||||
|
This repository is a third-party 1Panel local app store. It is mostly YAML,
|
||||||
|
Docker Compose files, READMEs, icons, and helper shell scripts. There is no
|
||||||
|
central application build step.
|
||||||
|
|
||||||
|
Top-level files:
|
||||||
|
|
||||||
|
- `data.yaml`: app store metadata and category/tag definitions.
|
||||||
|
- `apps/<app-key>/`: one app package per directory.
|
||||||
|
- `skills/`: app-generation guidance, templates, and helper scripts.
|
||||||
|
- `update/`: update-detection and README-version sync scripts.
|
||||||
|
|
||||||
|
## App Package Layout
|
||||||
|
|
||||||
|
Use this structure for each app:
|
||||||
|
|
||||||
|
```text
|
||||||
|
apps/<app-key>/
|
||||||
|
├── data.yml
|
||||||
|
├── logo.png
|
||||||
|
├── README.md
|
||||||
|
├── README_en.md
|
||||||
|
└── <version>/
|
||||||
|
├── data.yml
|
||||||
|
├── docker-compose.yml
|
||||||
|
└── data/
|
||||||
|
```
|
||||||
|
|
||||||
|
Some apps also include `latest/`. When both `latest/` and a concrete version
|
||||||
|
exist, `latest/` should use an image tagged `latest`, and the concrete version
|
||||||
|
directory should use the pinned image tag.
|
||||||
|
|
||||||
|
## 1Panel Conventions
|
||||||
|
|
||||||
|
- App keys are lowercase and hyphenated, and must match the app directory name.
|
||||||
|
- Top-level `apps/<app-key>/data.yml` contains display metadata.
|
||||||
|
- Version-level `data.yml` contains `additionalProperties.formFields`.
|
||||||
|
- Prefer standard port variables such as `PANEL_APP_PORT_HTTP`,
|
||||||
|
`PANEL_APP_PORT_HTTPS`, `PANEL_APP_PORT_API`, `PANEL_APP_PORT_ADMIN`,
|
||||||
|
`PANEL_APP_PORT_PROXY`, `PANEL_APP_PORT_DB`, `PANEL_APP_PORT_SSH`,
|
||||||
|
`PANEL_APP_PORT_S3`, and `PANEL_APP_PORT_SYNC`.
|
||||||
|
- Each `PANEL_APP_PORT_*` used in `docker-compose.yml` should have a matching
|
||||||
|
form field in the version `data.yml`.
|
||||||
|
- Compose services should use `container_name: ${CONTAINER_NAME}`,
|
||||||
|
`restart: always`, the external `1panel-network`, relative `./data/` volume
|
||||||
|
paths for persistence, and `labels: createdBy: "Apps"`.
|
||||||
|
- Use `./data/...` mounts instead of host absolute paths unless the app
|
||||||
|
genuinely requires host integration.
|
||||||
|
- Keep app metadata tags aligned with `data.yaml`.
|
||||||
|
|
||||||
|
## App Creation Workflow
|
||||||
|
|
||||||
|
Before adding or changing app packages, read `skills/SKILL.md`. It documents
|
||||||
|
the expected 1Panel packaging workflow, metadata fields, compose conversion
|
||||||
|
rules, README shape, and icon lookup order.
|
||||||
|
|
||||||
|
Useful helper scripts:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /root/github/1Panel-Appstore/skills
|
||||||
|
./scripts/generate-app.sh <github-url-or-compose-or-docker-run>
|
||||||
|
./scripts/download-icon.sh <app-name> <output-path> 200
|
||||||
|
./scripts/validate-app.sh ../apps/<app-key>
|
||||||
|
```
|
||||||
|
|
||||||
|
The generator is a starting point. Review and adjust generated metadata,
|
||||||
|
ports, volumes, environment variables, README content, and icons before
|
||||||
|
considering the app complete.
|
||||||
|
|
||||||
|
## Validation
|
||||||
|
|
||||||
|
For a changed app, run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /root/github/1Panel-Appstore
|
||||||
|
./skills/scripts/validate-app.sh ./apps/<app-key>
|
||||||
|
```
|
||||||
|
|
||||||
|
For YAML or Compose edits, also inspect the affected files directly. The
|
||||||
|
validator is shell/grep based and catches common structural problems, not every
|
||||||
|
semantic issue.
|
||||||
|
|
||||||
|
## Update Scripts
|
||||||
|
|
||||||
|
The scripts in `update/` may perform network requests and `git pull`. Do not run
|
||||||
|
them casually while making focused app edits. If using them, inspect the script
|
||||||
|
and current worktree first.
|
||||||
|
|
||||||
|
## Editing Notes
|
||||||
|
|
||||||
|
- Preserve existing YAML indentation style within the file being edited.
|
||||||
|
- Keep READMEs concise and app-focused; many apps include both Chinese and
|
||||||
|
English README files.
|
||||||
|
- Do not replace real logos with placeholders. If an icon cannot be found, call
|
||||||
|
that out instead of inventing an inaccurate asset.
|
||||||
|
- Treat unrelated changes in the worktree as user-owned and leave them alone.
|
||||||
@@ -110,7 +110,6 @@ docker run -d --name=nginx -p 80:80 nginx:latest
|
|||||||
- 支持一键部署AI免费API接口,使用方式请参考应用内**README介绍**
|
- 支持一键部署AI免费API接口,使用方式请参考应用内**README介绍**
|
||||||
- **Free-API系列应用已下架,原项目由于供应链投毒,被植入恶意代码,请及时停止运行并删除这些服务!!!**
|
- **Free-API系列应用已下架,原项目由于供应链投毒,被植入恶意代码,请及时停止运行并删除这些服务!!!**
|
||||||
- 经过几天的排查和重构,已重新上架[GLM-Free-API](https://github.com/xiaoY233/GLM-Free-API)、[MiniMax-Free-API](https://github.com/xiaoY233/MiniMax-Free-API)、[Qwen-Free-API](https://github.com/xiaoY233/Qwen-Free-API)、[Kimi-Free-API](https://github.com/xiaoY233/Kimi-Free-API),[DeepSeek-Free-API](https://github.com/xiaoY233/DeepSeek-Free-API),欢迎各位对源码进行审查,如果不放心,建议还是暂停使用!
|
- 经过几天的排查和重构,已重新上架[GLM-Free-API](https://github.com/xiaoY233/GLM-Free-API)、[MiniMax-Free-API](https://github.com/xiaoY233/MiniMax-Free-API)、[Qwen-Free-API](https://github.com/xiaoY233/Qwen-Free-API)、[Kimi-Free-API](https://github.com/xiaoY233/Kimi-Free-API),[DeepSeek-Free-API](https://github.com/xiaoY233/DeepSeek-Free-API),欢迎各位对源码进行审查,如果不放心,建议还是暂停使用!
|
||||||
- LiteLLM应用原项目又出现了供应链投毒事件,**请及时停止运行并删除该服务,友情提示:为了避免泄漏的API密钥被滥用,请从你的AI供应商中删除或禁止使用相关密钥!!!**
|
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -246,7 +245,7 @@ docker run -d --name=nginx -p 80:80 nginx:latest
|
|||||||
|
|
||||||
🚀 免费的GPT-4和其他大语言模型API接口
|
🚀 免费的GPT-4和其他大语言模型API接口
|
||||||
|
|
||||||
<kbd>7.5.0-slim</kbd> • [官网链接](https://github.com/xtekky/gpt4free)
|
<kbd>7.6.0-slim</kbd> • [官网链接](https://github.com/xtekky/gpt4free)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -289,7 +288,7 @@ docker run -d --name=nginx -p 80:80 nginx:latest
|
|||||||
|
|
||||||
轻量级文档管理系统,支持多人协作编辑与版本控制
|
轻量级文档管理系统,支持多人协作编辑与版本控制
|
||||||
|
|
||||||
<kbd>0.80.0</kbd> • [官网链接](https://github.com/docmost/docmost)
|
<kbd>0.90.1</kbd> • [官网链接](https://github.com/docmost/docmost)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -301,7 +300,7 @@ docker run -d --name=nginx -p 80:80 nginx:latest
|
|||||||
|
|
||||||
快速静态博客框架,支持Markdown编写,丰富的插件和主题
|
快速静态博客框架,支持Markdown编写,丰富的插件和主题
|
||||||
|
|
||||||
<kbd>stable-25-05-01</kbd> • [官网链接](https://github.com/hexojs/hexo)
|
<kbd>stable-26-06-04</kbd> • [官网链接](https://github.com/hexojs/hexo)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -313,7 +312,7 @@ docker run -d --name=nginx -p 80:80 nginx:latest
|
|||||||
|
|
||||||
美观强大的在线静态博客管理器,支持多种平台
|
美观强大的在线静态博客管理器,支持多种平台
|
||||||
|
|
||||||
<kbd>4.1.1</kbd> • [官网链接](https://github.com/Qexo/Qexo)
|
<kbd>4.2.0</kbd> • [官网链接](https://github.com/Qexo/Qexo)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -342,7 +341,7 @@ docker run -d --name=nginx -p 80:80 nginx:latest
|
|||||||
|
|
||||||
自托管全能书签管理工具,支持AI自动标签功能
|
自托管全能书签管理工具,支持AI自动标签功能
|
||||||
|
|
||||||
<kbd>0.31.0</kbd> • [官网链接](https://github.com/karakeep-app/karakeep)
|
<kbd>0.32.0</kbd> • [官网链接](https://github.com/karakeep-app/karakeep)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -412,7 +411,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
更优雅的微信公众号订阅方式,支持RSS输出和全文内容
|
更优雅的微信公众号订阅方式,支持RSS输出和全文内容
|
||||||
|
|
||||||
<kbd>2.6.1-sqlite</kbd> • [官网链接](https://github.com/cooderl/wewe-rss)
|
<kbd>2.6.1</kbd> • [官网链接](https://github.com/cooderl/wewe-rss)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -424,7 +423,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
开源Airtable替代品,将任何数据库转换为智能电子表格
|
开源Airtable替代品,将任何数据库转换为智能电子表格
|
||||||
|
|
||||||
<kbd>2026.04.3</kbd> • [官网链接](https://github.com/nocodb/nocodb)
|
<kbd>2026.06.0</kbd> • [官网链接](https://github.com/nocodb/nocodb)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -455,7 +454,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🌐 简单安全去中心化的内网穿透 VPN 组网方案
|
🌐 简单安全去中心化的内网穿透 VPN 组网方案
|
||||||
|
|
||||||
<kbd>2.6.1</kbd> • [官网链接](https://github.com/EasyTier/Easytier)
|
<kbd>2.6.4</kbd> • [官网链接](https://github.com/EasyTier/Easytier)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -496,7 +495,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🛡️ 简单好用的Web应用防火墙(WAF)
|
🛡️ 简单好用的Web应用防火墙(WAF)
|
||||||
|
|
||||||
<kbd>9.3.6</kbd> • [官网链接](https://github.com/chaitin/SafeLine)
|
<kbd>9.3.7</kbd> • [官网链接](https://github.com/chaitin/SafeLine)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
@@ -528,6 +527,35 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/tailscale/README.md">
|
||||||
|
<img src="./apps/tailscale/logo.png" width="60" height="60" alt="Tailscale">
|
||||||
|
<br><b>Tailscale</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🔐 私有 WireGuard 网络组网工具
|
||||||
|
|
||||||
|
<kbd>1.98.4</kbd> • [官网链接](https://tailscale.com)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/tailscale-derp/README.md">
|
||||||
|
<img src="./apps/tailscale-derp/logo.png" width="60" height="60" alt="Tailscale DERP">
|
||||||
|
<br><b>Tailscale DERP</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🛰️ Tailscale DERP 中继服务器,无需域名即可使用
|
||||||
|
|
||||||
|
<kbd>latest</kbd> • [官网链接](https://tailscale.com)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
#### 🤖 AI 与智能应用
|
#### 🤖 AI 与智能应用
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
@@ -553,7 +581,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🤖 开源LLM应用开发平台,支持AI工作流和RAG管道
|
🤖 开源LLM应用开发平台,支持AI工作流和RAG管道
|
||||||
|
|
||||||
<kbd>1.13.3</kbd> • [官网链接](https://github.com/langgenius/dify)
|
<kbd>1.14.2</kbd> • [官网链接](https://github.com/langgenius/dify)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -565,7 +593,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🚀 强大的AI提示词优化工具,支持多种主流大语言模型
|
🚀 强大的AI提示词优化工具,支持多种主流大语言模型
|
||||||
|
|
||||||
<kbd>2.9.5</kbd> • [官网链接](https://github.com/arch3rPro/Prompt-Optimizer)
|
<kbd>2.11.6</kbd> • [官网链接](https://github.com/arch3rPro/Prompt-Optimizer)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -582,7 +610,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🍥 新一代大模型网关与AI资产管理系统,支持多种模型统一调用
|
🍥 新一代大模型网关与AI资产管理系统,支持多种模型统一调用
|
||||||
|
|
||||||
<kbd>0.13.1-allinone</kbd> • [官网链接](https://docs.newapi.pro/)
|
<kbd>0.13.2</kbd> • [官网链接](https://docs.newapi.pro/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -606,7 +634,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🚀 智能密钥轮询的多渠道AI代理,高性能企业级AI接口透明代理服务
|
🚀 智能密钥轮询的多渠道AI代理,高性能企业级AI接口透明代理服务
|
||||||
|
|
||||||
<kbd>1.4.6</kbd> • [官网链接](https://github.com/tbphp/gpt-load)
|
<kbd>1.4.8</kbd> • [官网链接](https://github.com/tbphp/gpt-load)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -635,7 +663,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🔍 模型上下文协议调试工具,支持MCP服务器测试与开发
|
🔍 模型上下文协议调试工具,支持MCP服务器测试与开发
|
||||||
|
|
||||||
<kbd>0.21.2</kbd> • [官网链接](https://github.com/modelcontextprotocol/inspector)
|
<kbd>0.22.0</kbd> • [官网链接](https://github.com/modelcontextprotocol/inspector)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -676,7 +704,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🔍 开源无广告元搜索引擎,保护隐私无追踪,支持自建部署
|
🔍 开源无广告元搜索引擎,保护隐私无追踪,支持自建部署
|
||||||
|
|
||||||
<kbd>2025.12.3-1f6ea4127</kbd> • [官网链接](https://docs.searxng.org/)
|
<kbd>2026.6.10-f4c63c8eb</kbd> • [官网链接](https://docs.searxng.org/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -705,19 +733,19 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🔮 强大的AI应用构建平台,可视化设计AI驱动的工作流和代理
|
🔮 强大的AI应用构建平台,可视化设计AI驱动的工作流和代理
|
||||||
|
|
||||||
<kbd>1.9.1</kbd> • [官网链接](https://langflow.org/)
|
<kbd>1.10.0</kbd> • [官网链接](https://langflow.org/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
|
|
||||||
<!-- <a href="">
|
<a href="./apps/litellm/README.md">
|
||||||
<img src="./apps/litellm/logo.png" width="60" height="60" alt="LiteLLM"> -->
|
<img src="./apps/litellm/logo.png" width="60" height="60" alt="LiteLLM">
|
||||||
<br><b>LiteLLM</b>
|
<br><b>LiteLLM</b>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
🔧 使用OpenAI格式统一调用所有LLM API,支持多种云服务商
|
🔧 使用OpenAI格式统一调用所有LLM API,支持多种云服务商
|
||||||
|
|
||||||
<kbd>已下架</kbd> • [官网链接](https://github.com/BerriAI/litellm)
|
<kbd>1.88.1</kbd> • [官网链接](https://github.com/BerriAI/litellm)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -729,7 +757,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🔄 n8n汉化版,具有原生AI能力的Fair-code工作流自动化平台
|
🔄 n8n汉化版,具有原生AI能力的Fair-code工作流自动化平台
|
||||||
|
|
||||||
<kbd>2.18.3</kbd> • [官网链接](https://n8n.io/)
|
<kbd>2.26.2</kbd> • [官网链接](https://n8n.io/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -758,7 +786,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
📝 私有的、多模型的Google Notebook LM替代方案,支持多模态内容和AI播客生成
|
📝 私有的、多模型的Google Notebook LM替代方案,支持多模态内容和AI播客生成
|
||||||
|
|
||||||
<kbd>1.2.4</kbd> • [官网链接](https://www.open-notebook.ai/)
|
<kbd>1.9.0</kbd> • [官网链接](https://www.open-notebook.ai/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -775,7 +803,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🍥 AI API 网关平台,支持订阅配额分发、API Key 管理、计费和负载均衡
|
🍥 AI API 网关平台,支持订阅配额分发、API Key 管理、计费和负载均衡
|
||||||
|
|
||||||
<kbd>0.1.106</kbd> • [官网链接](https://sub2api.org)
|
<kbd>0.1.136</kbd> • [官网链接](https://sub2api.org)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -805,6 +833,158 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/9router/README.md">
|
||||||
|
<img src="./apps/9router/logo.png" width="60" height="60" alt="9Router">
|
||||||
|
<br><b>9Router</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🚀 免费 AI 路由器和 Token 节省工具
|
||||||
|
|
||||||
|
<kbd>0.4.71</kbd> • [官网链接](https://9router.com)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/apipark/README.md">
|
||||||
|
<img src="./apps/apipark/logo.png" width="60" height="60" alt="APIPark">
|
||||||
|
<br><b>APIPark</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🌐 开源企业级 API 全生命周期管理平台
|
||||||
|
|
||||||
|
<kbd>1.9.6-beta</kbd> • [官网链接](https://apipark.com)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/axonhub/README.md">
|
||||||
|
<img src="./apps/axonhub/logo.png" width="60" height="60" alt="AxonHub">
|
||||||
|
<br><b>AxonHub</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🤖 一站式AI开发平台 - 统一API网关
|
||||||
|
|
||||||
|
<kbd>0.9.43</kbd> • [官网链接](https://github.com/looplj/axonhub)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/browser-use/README.md">
|
||||||
|
<img src="./apps/browser-use/logo.png" width="60" height="60" alt="Browser Use">
|
||||||
|
<br><b>Browser Use</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🌐 让 AI 代理可以访问网站,轻松实现在线任务自动化
|
||||||
|
|
||||||
|
<kbd>latest</kbd> • [官网链接](https://browser-use.com/)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/claude-code-hub/README.md">
|
||||||
|
<img src="./apps/claude-code-hub/logo.png" width="60" height="60" alt="Claude Code Hub">
|
||||||
|
<br><b>Claude Code Hub</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🔗 智能 AI API 代理中转服务平台
|
||||||
|
|
||||||
|
<kbd>0.7.4</kbd> • [官网链接](https://github.com/ding113/claude-code-hub)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/craft-agents/README.md">
|
||||||
|
<img src="./apps/craft-agents/logo.png" width="60" height="60" alt="Craft Agents">
|
||||||
|
<br><b>Craft Agents</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🤖 AI Agent工作空间,支持多LLM提供商和MCP集成
|
||||||
|
|
||||||
|
<kbd>0.9.2</kbd> • [官网链接](https://github.com/lukilabs/craft-agents-oss)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/firecrawl/README.md">
|
||||||
|
<img src="./apps/firecrawl/logo.png" width="60" height="60" alt="Firecrawl">
|
||||||
|
<br><b>Firecrawl</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🔥 将任意网站转换为适合大语言模型的结构化数据
|
||||||
|
|
||||||
|
<kbd>v2.10.0</kbd> • [官网链接](https://www.firecrawl.dev)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/hermes-web-ui/README.md">
|
||||||
|
<img src="./apps/hermes-web-ui/logo.png" width="60" height="60" alt="Hermes Web UI">
|
||||||
|
<br><b>Hermes Web UI</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🧭 Hermes Agent 的全功能 Web 管理面板
|
||||||
|
|
||||||
|
<kbd>0.6.13</kbd> • [官网链接](https://github.com/EKKOLearnAI/hermes-web-ui)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/mcphub/README.md">
|
||||||
|
<img src="./apps/mcphub/logo.png" width="60" height="60" alt="MCPHub">
|
||||||
|
<br><b>MCPHub</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🔌 MCP 服务器统一管理中心
|
||||||
|
|
||||||
|
<kbd>1.0.13</kbd> • [官网链接](https://docs.mcphub.app)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/playwright-mcp/README.md">
|
||||||
|
<img src="./apps/playwright-mcp/logo.png" width="60" height="60" alt="Playwright MCP">
|
||||||
|
<br><b>Playwright MCP</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🎭 提供浏览器自动化功能的 MCP 服务器
|
||||||
|
|
||||||
|
<kbd>0.0.76</kbd> • [官网链接](https://github.com/microsoft/playwright-mcp)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/vane/README.md">
|
||||||
|
<img src="./apps/vane/logo.png" width="60" height="60" alt="Vane">
|
||||||
|
<br><b>Vane</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🔍 专注于隐私的 AI 问答搜索引擎
|
||||||
|
|
||||||
|
<kbd>v1.12.2</kbd> • [官网链接](https://github.com/ItzCrazyKns/Vane)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
#### 🎵 多媒体管理
|
#### 🎵 多媒体管理
|
||||||
|
|
||||||
<table>
|
<table>
|
||||||
@@ -818,7 +998,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🎵 使用小爱/红米音箱播放音乐,支持yt-dlp下载
|
🎵 使用小爱/红米音箱播放音乐,支持yt-dlp下载
|
||||||
|
|
||||||
<kbd>0.3.83</kbd> • [官网链接](https://github.com/hanxi/xiaomusic)
|
<kbd>0.6.1</kbd> • [官网链接](https://github.com/hanxi/xiaomusic)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -830,7 +1010,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
📁 开源支持多存储的文件列表程序和私人网盘
|
📁 开源支持多存储的文件列表程序和私人网盘
|
||||||
|
|
||||||
<kbd>4.1.0</kbd> • [官网链接](https://github.com/OpenListTeam/OpenList)
|
<kbd>4.2.2-ffmpeg</kbd> • [官网链接](https://github.com/OpenListTeam/OpenList)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -842,7 +1022,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🖼️ 高效云存储和图床平台管理工具
|
🖼️ 高效云存储和图床平台管理工具
|
||||||
|
|
||||||
<kbd>2.3.5</kbd> • [官网链接](https://github.com/Kuingsmile/PicList)
|
<kbd>2.4.1</kbd> • [官网链接](https://github.com/Kuingsmile/PicList)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -871,7 +1051,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🌱 开源高性能BT/PT下载工具,支持Web界面
|
🌱 开源高性能BT/PT下载工具,支持Web界面
|
||||||
|
|
||||||
<kbd>4.1.1</kbd> • [官网链接](https://transmissionbt.com/)
|
<kbd>2021.11.18</kbd> • [官网链接](https://transmissionbt.com/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -883,7 +1063,24 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🎬 开箱即用的跨平台影视聚合播放器,支持多源搜索和在线播放
|
🎬 开箱即用的跨平台影视聚合播放器,支持多源搜索和在线播放
|
||||||
|
|
||||||
<kbd>100.1.2</kbd> • [官网链接](https://github.com/MoonTechLab/LunaTV)
|
<kbd>100.1.3</kbd> • [官网链接](https://github.com/MoonTechLab/LunaTV)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/lxserver/README.md">
|
||||||
|
<img src="./apps/lxserver/logo.png" width="60" height="60" alt="LXServer">
|
||||||
|
<br><b>LXServer</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🎵 LX Music 数据同步服务器与 Web 播放器
|
||||||
|
|
||||||
|
<kbd>1.9.4</kbd> • [官网链接](https://xcq0607.github.io/lxserver/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -902,7 +1099,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
📊 开源轻量易用的服务器监控运维工具
|
📊 开源轻量易用的服务器监控运维工具
|
||||||
|
|
||||||
<kbd>2.0.7</kbd> • [官网链接](https://github.com/naiba/nezha/)
|
<kbd>2.0.12</kbd> • [官网链接](https://github.com/naiba/nezha/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -914,7 +1111,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
👁️ 轻量级可视化综合服务器监控方案
|
👁️ 轻量级可视化综合服务器监控方案
|
||||||
|
|
||||||
<kbd>latest</kbd> • [官网链接](https://github.com/arch3rPro/Glance-Monitor)
|
<kbd>0.1.0</kbd> • [官网链接](https://github.com/arch3rPro/Glance-Monitor)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -926,7 +1123,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🖥️ 简单好用安全的开源交互审计系统
|
🖥️ 简单好用安全的开源交互审计系统
|
||||||
|
|
||||||
<kbd>3.1.1</kbd> • [官网链接](https://github.com/dushixiang/next-terminal)
|
<kbd>3.3.5</kbd> • [官网链接](https://github.com/dushixiang/next-terminal)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -984,7 +1181,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
📊 开源 all-in-one 数据洞察中心,集成网站分析、服务监控、服务器状态监控
|
📊 开源 all-in-one 数据洞察中心,集成网站分析、服务监控、服务器状态监控
|
||||||
|
|
||||||
<kbd>1.31.22</kbd> • [官网链接](https://tianji.msgbyte.com/)
|
<kbd>1.31.29</kbd> • [官网链接](https://tianji.msgbyte.com/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -1092,7 +1289,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🌌 简单易用的自托管VPN服务,支持多平台和Docker快速部署
|
🌌 简单易用的自托管VPN服务,支持多平台和Docker快速部署
|
||||||
|
|
||||||
<kbd>5.1.5</kbd> • [官网链接](https://github.com/starvpn/starvpn)
|
<kbd>6.0.6</kbd> • [官网链接](https://github.com/starvpn/starvpn)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -1203,7 +1400,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🛠️ 功能强大的日常任务网络工具,自托管无广告追踪
|
🛠️ 功能强大的日常任务网络工具,自托管无广告追踪
|
||||||
|
|
||||||
<kbd>latest</kbd> • [官网链接](https://omnitools.app/)
|
<kbd>0.6.0</kbd> • [官网链接](https://omnitools.app/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -1215,7 +1412,36 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🎭 专业的 Web 应用自动化测试环境,支持多浏览器
|
🎭 专业的 Web 应用自动化测试环境,支持多浏览器
|
||||||
|
|
||||||
<kbd>6.6.7</kbd> • [官网链接](https://playwright.dev/)
|
<kbd>1.55.0-noble</kbd> • [官网链接](https://playwright.dev/)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/fast-note-sync-service/README.md">
|
||||||
|
<img src="./apps/fast-note-sync-service/logo.png" width="60" height="60" alt="Fast Note Sync Service">
|
||||||
|
<br><b>Fast Note Sync Service</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
📝 高性能低延迟的 Obsidian 笔记同步服务
|
||||||
|
|
||||||
|
<kbd>3.3.1</kbd> • [官网链接](https://github.com/haierkeys/fast-note-sync-service)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/trendradar/README.md">
|
||||||
|
<img src="./apps/trendradar/logo.png" width="60" height="60" alt="TrendRadar">
|
||||||
|
<br><b>TrendRadar</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
📡 多平台热点推送
|
||||||
|
|
||||||
|
<kbd>6.9.1</kbd> • [官网链接](https://github.com/sansan0/TrendRadar)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -1287,7 +1513,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🔔 Docker镜像更新监控和通知工具
|
🔔 Docker镜像更新监控和通知工具
|
||||||
|
|
||||||
<kbd>4.31.0</kbd> • [官网链接](https://github.com/crazy-max/diun)
|
<kbd>4.33.0</kbd> • [官网链接](https://github.com/crazy-max/diun)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
@@ -1305,6 +1531,23 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td width="33%" align="center">
|
||||||
|
|
||||||
|
<a href="./apps/dpanel/README.md">
|
||||||
|
<img src="./apps/dpanel/logo.png" width="60" height="60" alt="DPanel">
|
||||||
|
<br><b>DPanel</b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
🐳 轻量化 docker 可视化管理面板
|
||||||
|
|
||||||
|
<kbd>1.10.3</kbd> • [官网链接](https://dpanel.cc/)
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
<!-- 橙色风格 -->
|
<!-- 橙色风格 -->
|
||||||
|
|
||||||
!\[Copyright-arch3rPro]\(<https://img.shields.io/badge/Copyright-arch3rPro-ff9800?style=flat&logo=github&logoColor=white> null)
|
!\[Copyright-arch3rPro]\(<https://img.shields.io/badge/Copyright-arch3rPro-ff9800?style=flat&logo=github&logoColor=white> null)
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 20128
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Web Port
|
||||||
|
labelZh: Web 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Web Port
|
||||||
|
zh: Web 端口
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
services:
|
||||||
|
9router:
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:20128"
|
||||||
|
volumes:
|
||||||
|
- ./data:/app/data
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- DATA_DIR=/app/data
|
||||||
|
- PORT=20128
|
||||||
|
- HOSTNAME=0.0.0.0
|
||||||
|
image: decolua/9router:0.4.71
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
# 9Router
|
||||||
|
|
||||||
|
免费 AI 路由器和 Token 节省工具。连接 40+ AI 提供商和 100+ 模型,支持 Claude Code、Cursor、Codex、Copilot、Cline 等 AI 编码工具。
|
||||||
|
|
||||||
|
## 功能特点
|
||||||
|
|
||||||
|
- RTK Token 节省 - 自动压缩工具输出内容,每次请求节省 20-40% token
|
||||||
|
- 智能 3 层降级 - 自动路由:订阅 → 廉价 → 免费模型,零停机
|
||||||
|
- 实时配额跟踪 - 实时 token 计数和重置倒计时
|
||||||
|
- 多账户支持 - 每个提供商支持多个账户,负载均衡
|
||||||
|
- 格式转换 - OpenAI ↔ Claude ↔ Gemini 格式互相转换
|
||||||
|
- 支持 40+ 提供商和 100+ 模型
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
### 默认端口
|
||||||
|
|
||||||
|
- Web 界面: 20128
|
||||||
|
|
||||||
|
### 访问地址
|
||||||
|
|
||||||
|
- Dashboard: http://localhost:20128/dashboard
|
||||||
|
- OpenAI 兼容 API: http://localhost:20128/v1
|
||||||
|
|
||||||
|
### 数据目录
|
||||||
|
|
||||||
|
应用数据存储在 `./data` 目录,包含 SQLite 数据库和自动备份。
|
||||||
|
|
||||||
|
### 环境变量
|
||||||
|
|
||||||
|
- `DATA_DIR` - 数据目录路径(容器内固定为 /app/data)
|
||||||
|
- `PORT` - 服务端口(默认 20128)
|
||||||
|
- `HOSTNAME` - 监听地址(默认 0.0.0.0)
|
||||||
|
- `DEBUG` - 调试模式(可选,设为 true 启用)
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
|
||||||
|
- 官方网站: https://9router.com
|
||||||
|
- GitHub: https://github.com/decolua/9router
|
||||||
|
- 文档: https://github.com/decolua/9router/blob/master/README.md
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
# 9Router
|
||||||
|
|
||||||
|
FREE AI Router & Token Saver. Connect to 40+ AI providers and 100+ models, works with Claude Code, Cursor, Codex, Copilot, Cline and more AI coding tools.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- RTK Token Saver - Auto-compress tool outputs, save 20-40% tokens per request
|
||||||
|
- Smart 3-Tier Fallback - Auto-route: Subscription → Cheap → Free, zero downtime
|
||||||
|
- Real-Time Quota Tracking - Live token count and reset countdown
|
||||||
|
- Multi-Account Support - Multiple accounts per provider for load balancing
|
||||||
|
- Format Translation - OpenAI ↔ Claude ↔ Gemini format conversion
|
||||||
|
- Support 40+ providers and 100+ models
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Default Port
|
||||||
|
|
||||||
|
- Web UI: 20128
|
||||||
|
|
||||||
|
### URLs
|
||||||
|
|
||||||
|
- Dashboard: http://localhost:20128/dashboard
|
||||||
|
- OpenAI-compatible API: http://localhost:20128/v1
|
||||||
|
|
||||||
|
### Data Directory
|
||||||
|
|
||||||
|
Application data is stored in the `./data` directory, including SQLite database and automatic backups.
|
||||||
|
|
||||||
|
### Environment Variables
|
||||||
|
|
||||||
|
- `DATA_DIR` - Data directory path (fixed to /app/data in container)
|
||||||
|
- `PORT` - Service port (default 20128)
|
||||||
|
- `HOSTNAME` - Listen address (default 0.0.0.0)
|
||||||
|
- `DEBUG` - Debug mode (optional, set to true to enable)
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
- Website: https://9router.com
|
||||||
|
- GitHub: https://github.com/decolua/9router
|
||||||
|
- Documentation: https://github.com/decolua/9router/blob/master/README.md
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
name: 9Router
|
||||||
|
tags:
|
||||||
|
- 开发工具
|
||||||
|
- AI
|
||||||
|
- API网关
|
||||||
|
title: 免费 AI 路由器和 Token 节省工具
|
||||||
|
description: 免费 AI 路由器和 Token 节省工具
|
||||||
|
additionalProperties:
|
||||||
|
key: 9router
|
||||||
|
name: 9Router
|
||||||
|
tags:
|
||||||
|
- DevTool
|
||||||
|
- AI
|
||||||
|
- APIGateway
|
||||||
|
shortDescZh: 免费 AI 路由器和 Token 节省工具
|
||||||
|
shortDescEn: FREE AI Router & Token Saver
|
||||||
|
description:
|
||||||
|
en: 9Router is a free AI router that provides unified access to 40+ AI providers and 100+ models. Features RTK token saver (20-40% token savings), auto fallback from subscription to cheap to free models, quota tracking, and multi-account support. Works with Claude Code, Cursor, Codex, Copilot, Cline, and more.
|
||||||
|
zh: 9Router 是一个免费的 AI 路由器,提供对 40+ AI 提供商和 100+ 模型的统一访问。具有 RTK Token 节省功能(节省 20-40% 的 token),从订阅到廉价再到免费模型的自动降级,配额跟踪和多账户支持。兼容 Claude Code、Cursor、Codex、Copilot、Cline 等工具。
|
||||||
|
type: website
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://9router.com
|
||||||
|
github: https://github.com/decolua/9router
|
||||||
|
document: https://github.com/decolua/9router/blob/master/README.md
|
||||||
|
architectures:
|
||||||
|
- amd64
|
||||||
|
- arm64
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 20128
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Web Port
|
||||||
|
labelZh: Web 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Web Port
|
||||||
|
zh: Web 端口
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
services:
|
||||||
|
9router:
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:20128"
|
||||||
|
volumes:
|
||||||
|
- ./data:/app/data
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- DATA_DIR=/app/data
|
||||||
|
- PORT=20128
|
||||||
|
- HOSTNAME=0.0.0.0
|
||||||
|
image: decolua/9router:latest
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 203 KiB |
@@ -14,10 +14,9 @@ services:
|
|||||||
- PUID=0
|
- PUID=0
|
||||||
- PGID=0
|
- PGID=0
|
||||||
- UMASK=022
|
- UMASK=022
|
||||||
image: xhofe/alist:v3.45.0
|
image: xhofe/alist:v3.61.0
|
||||||
labels:
|
labels:
|
||||||
createdBy: "Apps"
|
createdBy: "Apps"
|
||||||
networks:
|
networks:
|
||||||
1panel-network:
|
1panel-network:
|
||||||
external: true
|
external: true
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
axonhub:
|
axonhub:
|
||||||
image: looplj/axonhub:v0.9.37
|
image: looplj/axonhub:v0.9.43
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
restart: always
|
restart: always
|
||||||
networks:
|
networks:
|
||||||
@@ -0,0 +1,131 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 23000
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Web Port
|
||||||
|
labelZh: Web端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Web Port
|
||||||
|
zh: Web端口
|
||||||
|
ja: Webポート
|
||||||
|
ko: Web 포트
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: ADMIN_TOKEN
|
||||||
|
labelEn: Admin Token
|
||||||
|
labelZh: 管理员令牌
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: password
|
||||||
|
label:
|
||||||
|
en: Admin Token
|
||||||
|
zh: 管理员令牌
|
||||||
|
ja: 管理者トークン
|
||||||
|
ko: 관리자 토큰
|
||||||
|
- default: postgres
|
||||||
|
edit: true
|
||||||
|
envKey: DB_USER
|
||||||
|
labelEn: Database User
|
||||||
|
labelZh: 数据库用户名
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: text
|
||||||
|
label:
|
||||||
|
en: Database User
|
||||||
|
zh: 数据库用户名
|
||||||
|
ja: データベースユーザー
|
||||||
|
ko: 데이터베이스 사용자
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: DB_PASSWORD
|
||||||
|
labelEn: Database Password
|
||||||
|
labelZh: 数据库密码
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: password
|
||||||
|
label:
|
||||||
|
en: Database Password
|
||||||
|
zh: 数据库密码
|
||||||
|
ja: データベースパスワード
|
||||||
|
ko: 데이터베이스 비밀번호
|
||||||
|
- default: claude_code_hub
|
||||||
|
edit: true
|
||||||
|
envKey: DB_NAME
|
||||||
|
labelEn: Database Name
|
||||||
|
labelZh: 数据库名称
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: text
|
||||||
|
label:
|
||||||
|
en: Database Name
|
||||||
|
zh: 数据库名称
|
||||||
|
ja: データベース名
|
||||||
|
ko: 데이터베이스 이름
|
||||||
|
- default: "true"
|
||||||
|
edit: true
|
||||||
|
envKey: ENABLE_RATE_LIMIT
|
||||||
|
labelEn: Enable Rate Limit
|
||||||
|
labelZh: 启用限流
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: Enable
|
||||||
|
value: "true"
|
||||||
|
- label: Disable
|
||||||
|
value: "false"
|
||||||
|
label:
|
||||||
|
en: Enable Rate Limit
|
||||||
|
zh: 启用限流
|
||||||
|
ja: レート制限を有効化
|
||||||
|
ko: 속도 제한 활성화
|
||||||
|
- default: "300"
|
||||||
|
edit: true
|
||||||
|
envKey: SESSION_TTL
|
||||||
|
labelEn: Session TTL (seconds)
|
||||||
|
labelZh: 会话过期时间(秒)
|
||||||
|
required: false
|
||||||
|
rule: paramCommon
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Session TTL (seconds)
|
||||||
|
zh: 会话过期时间(秒)
|
||||||
|
ja: セッションTTL(秒)
|
||||||
|
ko: 세션 TTL (초)
|
||||||
|
- default: "true"
|
||||||
|
edit: true
|
||||||
|
envKey: AUTO_MIGRATE
|
||||||
|
labelEn: Auto Database Migration
|
||||||
|
labelZh: 自动数据库迁移
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: Enable
|
||||||
|
value: "true"
|
||||||
|
- label: Disable
|
||||||
|
value: "false"
|
||||||
|
label:
|
||||||
|
en: Auto Database Migration
|
||||||
|
zh: 自动数据库迁移
|
||||||
|
ja: 自動データベース移行
|
||||||
|
ko: 자동 데이터베이스 마이그레이션
|
||||||
|
- default: "false"
|
||||||
|
edit: true
|
||||||
|
envKey: ENABLE_SECURE_COOKIES
|
||||||
|
labelEn: Enable Secure Cookies (HTTPS only)
|
||||||
|
labelZh: 启用安全Cookie(仅HTTPS)
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: Enable (HTTPS only)
|
||||||
|
value: "true"
|
||||||
|
- label: Disable (HTTP/HTTPS)
|
||||||
|
value: "false"
|
||||||
|
label:
|
||||||
|
en: Enable Secure Cookies (HTTPS only)
|
||||||
|
zh: 启用安全Cookie(仅HTTPS)
|
||||||
|
ja: セキュアCookieを有効化(HTTPSのみ)
|
||||||
|
ko: 보안 쿠키 활성화 (HTTPS만)
|
||||||
@@ -0,0 +1,83 @@
|
|||||||
|
name: ${COMPOSE_PROJECT_NAME:-claude-code-hub}
|
||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:18
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file:
|
||||||
|
- ./.env
|
||||||
|
environment:
|
||||||
|
POSTGRES_USER: ${DB_USER:-postgres}
|
||||||
|
POSTGRES_PASSWORD: ${DB_PASSWORD:-postgres}
|
||||||
|
POSTGRES_DB: ${DB_NAME:-claude_code_hub}
|
||||||
|
PGDATA: /data/pgdata
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
PGTZ: Asia/Shanghai
|
||||||
|
volumes:
|
||||||
|
- ./data/postgres:/data
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-postgres} -d ${DB_NAME:-claude_code_hub}"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 10
|
||||||
|
start_period: 10s
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
redis:
|
||||||
|
image: redis:7-alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- ./data/redis:/data
|
||||||
|
command: redis-server --appendonly yes
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "redis-cli", "ping"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 3s
|
||||||
|
retries: 5
|
||||||
|
start_period: 5s
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
app:
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
image: ghcr.io/ding113/claude-code-hub:v0.7.4
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
|
redis:
|
||||||
|
condition: service_healthy
|
||||||
|
env_file:
|
||||||
|
- ./.env
|
||||||
|
environment:
|
||||||
|
NODE_ENV: production
|
||||||
|
DSN: postgresql://${DB_USER:-postgres}:${DB_PASSWORD:-postgres}@postgres:5432/${DB_NAME:-claude_code_hub}
|
||||||
|
REDIS_URL: redis://redis:6379
|
||||||
|
AUTO_MIGRATE: ${AUTO_MIGRATE:-true}
|
||||||
|
ENABLE_RATE_LIMIT: ${ENABLE_RATE_LIMIT:-true}
|
||||||
|
ENABLE_SECURE_COOKIES: ${ENABLE_SECURE_COOKIES:-false}
|
||||||
|
SESSION_TTL: ${SESSION_TTL:-300}
|
||||||
|
DB_POOL_IDLE_TIMEOUT: ${DB_POOL_IDLE_TIMEOUT:-20}
|
||||||
|
DB_POOL_CONNECT_TIMEOUT: ${DB_POOL_CONNECT_TIMEOUT:-10}
|
||||||
|
MAX_RETRY_ATTEMPTS_DEFAULT: ${MAX_RETRY_ATTEMPTS_DEFAULT:-2}
|
||||||
|
LANGFUSE_SAMPLE_RATE: ${LANGFUSE_SAMPLE_RATE:-1.0}
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:3000"
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test:
|
||||||
|
[
|
||||||
|
"CMD",
|
||||||
|
"node",
|
||||||
|
"-e",
|
||||||
|
"fetch('http://' + (process.env.HOSTNAME || '127.0.0.1') + ':3000/api/actions/health').then((r)=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))",
|
||||||
|
]
|
||||||
|
interval: 30s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 3
|
||||||
|
start_period: 30s
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
# Claude Code Hub
|
||||||
|
|
||||||
|
智能 AI API 代理中转服务平台,面向团队的多供应商统一接入、弹性调度与精细化运营中心。
|
||||||
|
|
||||||
|
## 功能特点
|
||||||
|
|
||||||
|
- 🤖 **智能负载均衡**:权重 + 优先级 + 分组调度,内置熔断保护与最多 3 次故障转移,保障请求稳定
|
||||||
|
- 🧩 **多供应商管理**:同时接入 Claude、Codex、Gemini CLI、OpenAI Compatible,自定义模型重定向与 HTTP/HTTPS/SOCKS 代理
|
||||||
|
- 🛡️ **限流与并发控制**:RPM、金额(5 小时/周/月)、并发 Session 多维限制,Redis Lua 脚本确保原子性与 Fail-Open 降级
|
||||||
|
- 📘 **自动化 OpenAPI 文档**:39 个 REST 端点由 Server Actions 自动生成 OpenAPI 3.1.0,Swagger + Scalar UI 双界面即刻试用
|
||||||
|
- 📊 **实时监控与统计**:仪表盘、活跃 Session、消耗排行榜、决策链记录、代理状态追踪,秒级掌控运行态势
|
||||||
|
- 💰 **价格表管理**:分页查询 + SQL 优化,支持搜索防抖、LiteLLM 同步,千级模型也能快速检索
|
||||||
|
- 🔁 **Session 管理**:5 分钟上下文缓存,记录决策链,避免频繁切换供应商并保留全链路审计
|
||||||
|
- 🔄 **OpenAI 兼容端点**:支持 `/v1/chat/completions`(OpenAI 兼容格式),工具调用与 reasoning 字段透传
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
### 默认端口
|
||||||
|
|
||||||
|
- Web 界面: 23000
|
||||||
|
|
||||||
|
### 默认账号密码
|
||||||
|
|
||||||
|
- 管理员令牌: 请在部署时设置 `ADMIN_TOKEN` 环境变量(必须修改)
|
||||||
|
|
||||||
|
### 数据目录
|
||||||
|
|
||||||
|
应用数据存储在 `./data` 目录:
|
||||||
|
|
||||||
|
- PostgreSQL 数据: `./data/postgres`
|
||||||
|
- Redis 数据: `./data/redis`
|
||||||
|
|
||||||
|
### 环境变量说明
|
||||||
|
|
||||||
|
#### 必需配置
|
||||||
|
|
||||||
|
- `ADMIN_TOKEN`: 管理员登录令牌(必须修改)
|
||||||
|
- `DB_USER`: 数据库用户名
|
||||||
|
- `DB_PASSWORD`: 数据库密码
|
||||||
|
- `DB_NAME`: 数据库名称
|
||||||
|
|
||||||
|
#### 可选配置
|
||||||
|
|
||||||
|
- `ENABLE_RATE_LIMIT`: 是否启用限流(默认:true)
|
||||||
|
- `SESSION_TTL`: 会话过期时间,单位秒(默认:300)
|
||||||
|
- `AUTO_MIGRATE`: 是否自动执行数据库迁移(默认:true)
|
||||||
|
- `ENABLE_SECURE_COOKIES`: 是否启用安全 Cookie(默认:false)
|
||||||
|
- **重要**:如果使用 HTTP 部署(非 HTTPS),请保持为 `false`
|
||||||
|
- 如果使用 HTTPS 部署,建议设置为 `true` 以提高安全性
|
||||||
|
- 设置为 `true` 时,浏览器将拒绝在 HTTP 连接下设置 Cookie,导致无法登录
|
||||||
|
|
||||||
|
### 访问应用
|
||||||
|
|
||||||
|
部署成功后,可以通过以下地址访问:
|
||||||
|
|
||||||
|
- **管理后台**:`http://localhost:23000`(使用 `ADMIN_TOKEN` 登录)
|
||||||
|
- **API 文档(Scalar UI)**:`http://localhost:23000/api/actions/scalar`
|
||||||
|
- **API 文档(Swagger UI)**:`http://localhost:23000/api/actions/docs`
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
|
||||||
|
- 官方网站: https://github.com/ding113/claude-code-hub
|
||||||
|
- GitHub: https://github.com/ding113/claude-code-hub
|
||||||
|
- 文档: https://github.com/ding113/claude-code-hub/blob/main/README.md
|
||||||
|
|
||||||
|
## 技术栈
|
||||||
|
|
||||||
|
- **框架**: Next.js 15 + Hono
|
||||||
|
- **数据库**: PostgreSQL 18
|
||||||
|
- **缓存**: Redis 7
|
||||||
|
- **运行时**: Node.js / Bun
|
||||||
|
- **语言**: TypeScript
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
# Claude Code Hub
|
||||||
|
|
||||||
|
Intelligent AI API Gateway and Management Platform for unified multi-provider access, elastic scheduling, and refined operations.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- 🤖 **Intelligent Load Balancing**: Weight + priority + group scheduling with built-in circuit breaker protection and up to 3 failover attempts
|
||||||
|
- 🧩 **Multi-Provider Management**: Support for Claude, Codex, Gemini CLI, OpenAI Compatible with custom model redirection and HTTP/HTTPS/SOCKS proxy
|
||||||
|
- 🛡️ **Rate Limiting & Concurrency Control**: Multi-dimensional limits including RPM, cost (5h/weekly/monthly), concurrent sessions with Redis Lua scripts for atomic operations
|
||||||
|
- 📘 **Auto-generated OpenAPI Documentation**: 39 REST endpoints with OpenAPI 3.1.0, Swagger + Scalar UI interfaces
|
||||||
|
- 📊 **Real-time Monitoring & Statistics**: Dashboard, active sessions, consumption leaderboard, decision chain records, proxy status tracking
|
||||||
|
- 💰 **Price Table Management**: Paginated queries with SQL optimization, search debouncing, LiteLLM sync support
|
||||||
|
- 🔁 **Session Management**: 5-minute context cache with decision chain recording for full audit trail
|
||||||
|
- 🔄 **OpenAI Compatible Endpoints**: Support for `/v1/chat/completions` with tool calling and reasoning field passthrough
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Default Port
|
||||||
|
|
||||||
|
- Web UI: 23000
|
||||||
|
|
||||||
|
### Default Credentials
|
||||||
|
|
||||||
|
- Admin Token: Set the `ADMIN_TOKEN` environment variable during deployment (must be changed)
|
||||||
|
|
||||||
|
### Data Directory
|
||||||
|
|
||||||
|
Application data is stored in the `./data` directory:
|
||||||
|
|
||||||
|
- PostgreSQL data: `./data/postgres`
|
||||||
|
- Redis data: `./data/redis`
|
||||||
|
|
||||||
|
### Environment Variables
|
||||||
|
|
||||||
|
#### Required Configuration
|
||||||
|
|
||||||
|
- `ADMIN_TOKEN`: Admin login token (must be changed)
|
||||||
|
- `DB_USER`: Database username
|
||||||
|
- `DB_PASSWORD`: Database password
|
||||||
|
- `DB_NAME`: Database name
|
||||||
|
|
||||||
|
#### Optional Configuration
|
||||||
|
|
||||||
|
- `ENABLE_RATE_LIMIT`: Enable rate limiting (default: true)
|
||||||
|
- `SESSION_TTL`: Session TTL in seconds (default: 300)
|
||||||
|
- `AUTO_MIGRATE`: Auto-execute database migrations (default: true)
|
||||||
|
- `ENABLE_SECURE_COOKIES`: Enable secure cookies (default: false)
|
||||||
|
- **Important**: Keep as `false` if deploying with HTTP (not HTTPS)
|
||||||
|
- If deploying with HTTPS, it's recommended to set to `true` for better security
|
||||||
|
- When set to `true`, browsers will refuse to set cookies over HTTP connections, preventing login
|
||||||
|
|
||||||
|
### Access the Application
|
||||||
|
|
||||||
|
After successful deployment, access the application at:
|
||||||
|
|
||||||
|
- **Dashboard**: `http://localhost:23000` (login with `ADMIN_TOKEN`)
|
||||||
|
- **API Docs (Scalar UI)**: `http://localhost:23000/api/actions/scalar`
|
||||||
|
- **API Docs (Swagger UI)**: `http://localhost:23000/api/actions/docs`
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
- Website: https://github.com/ding113/claude-code-hub
|
||||||
|
- GitHub: https://github.com/ding113/claude-code-hub
|
||||||
|
- Documentation: https://github.com/ding113/claude-code-hub/blob/main/README.md
|
||||||
|
|
||||||
|
## Tech Stack
|
||||||
|
|
||||||
|
- **Framework**: Next.js 15 + Hono
|
||||||
|
- **Database**: PostgreSQL 18
|
||||||
|
- **Cache**: Redis 7
|
||||||
|
- **Runtime**: Node.js / Bun
|
||||||
|
- **Language**: TypeScript
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
name: Claude Code Hub
|
||||||
|
tags:
|
||||||
|
- 开发工具
|
||||||
|
- AI
|
||||||
|
- API网关
|
||||||
|
title: 智能 AI API 代理中转服务平台
|
||||||
|
description: 智能 AI API 代理中转服务平台
|
||||||
|
additionalProperties:
|
||||||
|
key: claude-code-hub
|
||||||
|
name: Claude Code Hub
|
||||||
|
tags:
|
||||||
|
- DevTool
|
||||||
|
- AI
|
||||||
|
- APIGateway
|
||||||
|
shortDescZh: 智能 AI API 代理中转服务平台
|
||||||
|
shortDescEn: Intelligent AI API Gateway and Management Platform
|
||||||
|
description:
|
||||||
|
en: Claude Code Hub is an intelligent AI API gateway that provides unified access to multiple AI providers (Claude, OpenAI, Gemini, Codex) with load balancing, rate limiting, monitoring, and comprehensive management features.
|
||||||
|
zh: Claude Code Hub 是一个智能 AI API 代理中转服务平台,提供多供应商统一接入、智能负载均衡、限流控制、实时监控和精细化管理功能。
|
||||||
|
type: website
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://github.com/ding113/claude-code-hub
|
||||||
|
github: https://github.com/ding113/claude-code-hub
|
||||||
|
document: https://github.com/ding113/claude-code-hub/blob/main/README.md
|
||||||
|
architectures:
|
||||||
|
- amd64
|
||||||
|
- arm64
|
||||||
@@ -0,0 +1,131 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 23000
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Web Port
|
||||||
|
labelZh: Web端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Web Port
|
||||||
|
zh: Web端口
|
||||||
|
ja: Webポート
|
||||||
|
ko: Web 포트
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: ADMIN_TOKEN
|
||||||
|
labelEn: Admin Token
|
||||||
|
labelZh: 管理员令牌
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: password
|
||||||
|
label:
|
||||||
|
en: Admin Token
|
||||||
|
zh: 管理员令牌
|
||||||
|
ja: 管理者トークン
|
||||||
|
ko: 관리자 토큰
|
||||||
|
- default: postgres
|
||||||
|
edit: true
|
||||||
|
envKey: DB_USER
|
||||||
|
labelEn: Database User
|
||||||
|
labelZh: 数据库用户名
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: text
|
||||||
|
label:
|
||||||
|
en: Database User
|
||||||
|
zh: 数据库用户名
|
||||||
|
ja: データベースユーザー
|
||||||
|
ko: 데이터베이스 사용자
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: DB_PASSWORD
|
||||||
|
labelEn: Database Password
|
||||||
|
labelZh: 数据库密码
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: password
|
||||||
|
label:
|
||||||
|
en: Database Password
|
||||||
|
zh: 数据库密码
|
||||||
|
ja: データベースパスワード
|
||||||
|
ko: 데이터베이스 비밀번호
|
||||||
|
- default: claude_code_hub
|
||||||
|
edit: true
|
||||||
|
envKey: DB_NAME
|
||||||
|
labelEn: Database Name
|
||||||
|
labelZh: 数据库名称
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: text
|
||||||
|
label:
|
||||||
|
en: Database Name
|
||||||
|
zh: 数据库名称
|
||||||
|
ja: データベース名
|
||||||
|
ko: 데이터베이스 이름
|
||||||
|
- default: "true"
|
||||||
|
edit: true
|
||||||
|
envKey: ENABLE_RATE_LIMIT
|
||||||
|
labelEn: Enable Rate Limit
|
||||||
|
labelZh: 启用限流
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: Enable
|
||||||
|
value: "true"
|
||||||
|
- label: Disable
|
||||||
|
value: "false"
|
||||||
|
label:
|
||||||
|
en: Enable Rate Limit
|
||||||
|
zh: 启用限流
|
||||||
|
ja: レート制限を有効化
|
||||||
|
ko: 속도 제한 활성화
|
||||||
|
- default: "300"
|
||||||
|
edit: true
|
||||||
|
envKey: SESSION_TTL
|
||||||
|
labelEn: Session TTL (seconds)
|
||||||
|
labelZh: 会话过期时间(秒)
|
||||||
|
required: false
|
||||||
|
rule: paramCommon
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Session TTL (seconds)
|
||||||
|
zh: 会话过期时间(秒)
|
||||||
|
ja: セッションTTL(秒)
|
||||||
|
ko: 세션 TTL (초)
|
||||||
|
- default: "true"
|
||||||
|
edit: true
|
||||||
|
envKey: AUTO_MIGRATE
|
||||||
|
labelEn: Auto Database Migration
|
||||||
|
labelZh: 自动数据库迁移
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: Enable
|
||||||
|
value: "true"
|
||||||
|
- label: Disable
|
||||||
|
value: "false"
|
||||||
|
label:
|
||||||
|
en: Auto Database Migration
|
||||||
|
zh: 自动数据库迁移
|
||||||
|
ja: 自動データベース移行
|
||||||
|
ko: 자동 데이터베이스 마이그레이션
|
||||||
|
- default: "false"
|
||||||
|
edit: true
|
||||||
|
envKey: ENABLE_SECURE_COOKIES
|
||||||
|
labelEn: Enable Secure Cookies (HTTPS only)
|
||||||
|
labelZh: 启用安全Cookie(仅HTTPS)
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: Enable (HTTPS only)
|
||||||
|
value: "true"
|
||||||
|
- label: Disable (HTTP/HTTPS)
|
||||||
|
value: "false"
|
||||||
|
label:
|
||||||
|
en: Enable Secure Cookies (HTTPS only)
|
||||||
|
zh: 启用安全Cookie(仅HTTPS)
|
||||||
|
ja: セキュアCookieを有効化(HTTPSのみ)
|
||||||
|
ko: 보안 쿠키 활성화 (HTTPS만)
|
||||||
@@ -0,0 +1,83 @@
|
|||||||
|
name: ${COMPOSE_PROJECT_NAME:-claude-code-hub}
|
||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:18
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file:
|
||||||
|
- ./.env
|
||||||
|
environment:
|
||||||
|
POSTGRES_USER: ${DB_USER:-postgres}
|
||||||
|
POSTGRES_PASSWORD: ${DB_PASSWORD:-postgres}
|
||||||
|
POSTGRES_DB: ${DB_NAME:-claude_code_hub}
|
||||||
|
PGDATA: /data/pgdata
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
PGTZ: Asia/Shanghai
|
||||||
|
volumes:
|
||||||
|
- ./data/postgres:/data
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-postgres} -d ${DB_NAME:-claude_code_hub}"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 10
|
||||||
|
start_period: 10s
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
redis:
|
||||||
|
image: redis:7-alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- ./data/redis:/data
|
||||||
|
command: redis-server --appendonly yes
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "redis-cli", "ping"]
|
||||||
|
interval: 5s
|
||||||
|
timeout: 3s
|
||||||
|
retries: 5
|
||||||
|
start_period: 5s
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
app:
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
image: ghcr.io/ding113/claude-code-hub:latest
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
|
redis:
|
||||||
|
condition: service_healthy
|
||||||
|
env_file:
|
||||||
|
- ./.env
|
||||||
|
environment:
|
||||||
|
NODE_ENV: production
|
||||||
|
DSN: postgresql://${DB_USER:-postgres}:${DB_PASSWORD:-postgres}@postgres:5432/${DB_NAME:-claude_code_hub}
|
||||||
|
REDIS_URL: redis://redis:6379
|
||||||
|
AUTO_MIGRATE: ${AUTO_MIGRATE:-true}
|
||||||
|
ENABLE_RATE_LIMIT: ${ENABLE_RATE_LIMIT:-true}
|
||||||
|
ENABLE_SECURE_COOKIES: ${ENABLE_SECURE_COOKIES:-false}
|
||||||
|
SESSION_TTL: ${SESSION_TTL:-300}
|
||||||
|
DB_POOL_IDLE_TIMEOUT: ${DB_POOL_IDLE_TIMEOUT:-20}
|
||||||
|
DB_POOL_CONNECT_TIMEOUT: ${DB_POOL_CONNECT_TIMEOUT:-10}
|
||||||
|
MAX_RETRY_ATTEMPTS_DEFAULT: ${MAX_RETRY_ATTEMPTS_DEFAULT:-2}
|
||||||
|
LANGFUSE_SAMPLE_RATE: ${LANGFUSE_SAMPLE_RATE:-1.0}
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:3000"
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test:
|
||||||
|
[
|
||||||
|
"CMD",
|
||||||
|
"node",
|
||||||
|
"-e",
|
||||||
|
"fetch('http://' + (process.env.HOSTNAME || '127.0.0.1') + ':3000/api/actions/health').then((r)=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))",
|
||||||
|
]
|
||||||
|
interval: 30s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 3
|
||||||
|
start_period: 30s
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 9.1 KiB |
@@ -0,0 +1,55 @@
|
|||||||
|
# Codex Universal
|
||||||
|
|
||||||
|
OpenAI Codex 的基础 Docker 镜像,提供完整的开发环境。
|
||||||
|
|
||||||
|
## 功能特点
|
||||||
|
|
||||||
|
- **多语言支持**:内置 Python、Node.js、Rust、Go、Swift、Ruby、PHP、Java 等多种编程语言运行时
|
||||||
|
- **开发工具**:预配置 pyenv、poetry、uv、ruff、black、mypy、pyright、isort、corepack、yarn、pnpm、npm 等常用开发工具
|
||||||
|
- **额外工具**:包含 bun、bazelisk/bazel、erlang、elixir 等工具
|
||||||
|
- **灵活配置**:通过环境变量轻松配置各语言版本
|
||||||
|
- **跨平台**:支持 linux/amd64 和 linux/arm64 架构
|
||||||
|
|
||||||
|
## 支持的语言版本
|
||||||
|
|
||||||
|
### Python
|
||||||
|
- 3.14.0, 3.13, 3.12, 3.11.12, 3.10
|
||||||
|
|
||||||
|
### Node.js
|
||||||
|
- 22, 20, 18
|
||||||
|
|
||||||
|
### Rust
|
||||||
|
- 1.93.0, 1.92.0, 1.91.1, 1.90, 1.89.0, 1.88.0, 1.87.0, 1.86.0, 1.85.1, 1.84.1, 1.83.0
|
||||||
|
|
||||||
|
### Go
|
||||||
|
- 1.25.1, 1.24.3, 1.23.8, 1.22.12
|
||||||
|
|
||||||
|
### Swift
|
||||||
|
- 6.2, 6.1, 5.10
|
||||||
|
|
||||||
|
### Ruby
|
||||||
|
- 3.4.4, 3.3.8, 3.2.3
|
||||||
|
|
||||||
|
### PHP
|
||||||
|
- 8.4, 8.3, 8.2
|
||||||
|
|
||||||
|
### Java
|
||||||
|
- 25, 24, 23, 22, 21, 17, 11
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
### 数据目录
|
||||||
|
|
||||||
|
- 应用工作目录挂载在 `./data`,可以在这里存放项目代码
|
||||||
|
- 容器默认工作目录为 `/workspace`
|
||||||
|
|
||||||
|
### 如何使用
|
||||||
|
|
||||||
|
1. 部署容器后,可以通过 1Panel 的终端功能进入容器
|
||||||
|
2. 或者使用命令 `docker exec -it <容器名> bash` 进入容器
|
||||||
|
3. 在容器内进行开发工作
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
|
||||||
|
- 官方网站: https://github.com/openai/codex-universal
|
||||||
|
- GitHub: https://github.com/openai/codex-universal
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
# Codex Universal
|
||||||
|
|
||||||
|
Base Docker image used in OpenAI Codex environments.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Multi-language support**: Built-in Python, Node.js, Rust, Go, Swift, Ruby, PHP, Java and more programming language runtimes
|
||||||
|
- **Development tools**: Pre-configured with pyenv, poetry, uv, ruff, black, mypy, pyright, isort, corepack, yarn, pnpm, npm and other common development tools
|
||||||
|
- **Additional tools**: Includes bun, bazelisk/bazel, erlang, elixir and more
|
||||||
|
- **Flexible configuration**: Easily configure language versions via environment variables
|
||||||
|
- **Cross-platform**: Supports linux/amd64 and linux/arm64 architectures
|
||||||
|
|
||||||
|
## Supported Language Versions
|
||||||
|
|
||||||
|
### Python
|
||||||
|
- 3.14.0, 3.13, 3.12, 3.11.12, 3.10
|
||||||
|
|
||||||
|
### Node.js
|
||||||
|
- 22, 20, 18
|
||||||
|
|
||||||
|
### Rust
|
||||||
|
- 1.93.0, 1.92.0, 1.91.1, 1.90, 1.89.0, 1.88.0, 1.87.0, 1.86.0, 1.85.1, 1.84.1, 1.83.0
|
||||||
|
|
||||||
|
### Go
|
||||||
|
- 1.25.1, 1.24.3, 1.23.8, 1.22.12
|
||||||
|
|
||||||
|
### Swift
|
||||||
|
- 6.2, 6.1, 5.10
|
||||||
|
|
||||||
|
### Ruby
|
||||||
|
- 3.4.4, 3.3.8, 3.2.3
|
||||||
|
|
||||||
|
### PHP
|
||||||
|
- 8.4, 8.3, 8.2
|
||||||
|
|
||||||
|
### Java
|
||||||
|
- 25, 24, 23, 22, 21, 17, 11
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Data Directory
|
||||||
|
|
||||||
|
- Application workspace is mounted at `./data`, you can store project code here
|
||||||
|
- Container default working directory is `/workspace`
|
||||||
|
|
||||||
|
### How to Use
|
||||||
|
|
||||||
|
1. After deploying the container, you can access it via 1Panel's terminal feature
|
||||||
|
2. Or use the command `docker exec -it <container-name> bash` to enter the container
|
||||||
|
3. Perform development work inside the container
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
- Website: https://github.com/openai/codex-universal
|
||||||
|
- GitHub: https://github.com/openai/codex-universal
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Codex Universal
|
||||||
|
tags:
|
||||||
|
- 开发工具
|
||||||
|
- 开发环境
|
||||||
|
title: OpenAI Codex 的基础 Docker 镜像,提供完整的开发环境
|
||||||
|
description: OpenAI Codex 的基础 Docker 镜像,提供完整的开发环境
|
||||||
|
additionalProperties:
|
||||||
|
key: codex-universal
|
||||||
|
name: Codex Universal
|
||||||
|
tags:
|
||||||
|
- DevTool
|
||||||
|
- DevEnv
|
||||||
|
shortDescZh: OpenAI Codex 的基础 Docker 镜像,提供完整的开发环境
|
||||||
|
shortDescEn: Base Docker image used in OpenAI Codex environments
|
||||||
|
description:
|
||||||
|
en: codex-universal is a reference implementation of the base Docker image available in OpenAI Codex. This repository is intended to help developers customize environments in Codex, by providing a similar image that can be pulled and run locally.
|
||||||
|
ja: OpenAI Codex 環境で使用されるベース Docker イメージ
|
||||||
|
ms: Imej Docker asas yang digunakan dalam persekitaran OpenAI Codex
|
||||||
|
pt-br: Imagem Docker base usada em ambientes OpenAI Codex
|
||||||
|
ru: Базовый Docker-образ, используемый в средах OpenAI Codex
|
||||||
|
ko: OpenAI Codex 환경에서 사용되는 기본 Docker 이미지
|
||||||
|
zh-Hant: OpenAI Codex 的基礎 Docker 鏡像,提供完整的開發環境
|
||||||
|
zh: codex-universal 是 OpenAI Codex 中可用的基础 Docker 镜像的参考实现。该仓库旨在帮助开发者自定义 Codex 中的环境,提供一个可以拉取并在本地运行的类似镜像。
|
||||||
|
type: runtime
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://github.com/openai/codex-universal
|
||||||
|
github: https://github.com/openai/codex-universal
|
||||||
|
document: https://github.com/openai/codex-universal
|
||||||
|
architectures:
|
||||||
|
- amd64
|
||||||
|
- arm64
|
||||||
@@ -0,0 +1,216 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: "3.12"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_PYTHON_VERSION
|
||||||
|
labelEn: Python Version
|
||||||
|
labelZh: Python 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "3.14.0"
|
||||||
|
value: "3.14.0"
|
||||||
|
- label: "3.13"
|
||||||
|
value: "3.13"
|
||||||
|
- label: "3.12"
|
||||||
|
value: "3.12"
|
||||||
|
- label: "3.11.12"
|
||||||
|
value: "3.11.12"
|
||||||
|
- label: "3.10"
|
||||||
|
value: "3.10"
|
||||||
|
label:
|
||||||
|
en: Python Version
|
||||||
|
ja: Python バージョン
|
||||||
|
ms: Versi Python
|
||||||
|
pt-br: Versão do Python
|
||||||
|
ru: Версия Python
|
||||||
|
ko: Python 버전
|
||||||
|
zh-Hant: Python 版本
|
||||||
|
zh: Python 版本
|
||||||
|
- default: "20"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_NODE_VERSION
|
||||||
|
labelEn: Node.js Version
|
||||||
|
labelZh: Node.js 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "22"
|
||||||
|
value: "22"
|
||||||
|
- label: "20"
|
||||||
|
value: "20"
|
||||||
|
- label: "18"
|
||||||
|
value: "18"
|
||||||
|
label:
|
||||||
|
en: Node.js Version
|
||||||
|
ja: Node.js バージョン
|
||||||
|
ms: Versi Node.js
|
||||||
|
pt-br: Versão do Node.js
|
||||||
|
ru: Версия Node.js
|
||||||
|
ko: Node.js 버전
|
||||||
|
zh-Hant: Node.js 版本
|
||||||
|
zh: Node.js 版本
|
||||||
|
- default: "1.87.0"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_RUST_VERSION
|
||||||
|
labelEn: Rust Version
|
||||||
|
labelZh: Rust 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "1.93.0"
|
||||||
|
value: "1.93.0"
|
||||||
|
- label: "1.92.0"
|
||||||
|
value: "1.92.0"
|
||||||
|
- label: "1.91.1"
|
||||||
|
value: "1.91.1"
|
||||||
|
- label: "1.90"
|
||||||
|
value: "1.90"
|
||||||
|
- label: "1.89.0"
|
||||||
|
value: "1.89.0"
|
||||||
|
- label: "1.88.0"
|
||||||
|
value: "1.88.0"
|
||||||
|
- label: "1.87.0"
|
||||||
|
value: "1.87.0"
|
||||||
|
- label: "1.86.0"
|
||||||
|
value: "1.86.0"
|
||||||
|
- label: "1.85.1"
|
||||||
|
value: "1.85.1"
|
||||||
|
- label: "1.84.1"
|
||||||
|
value: "1.84.1"
|
||||||
|
- label: "1.83.0"
|
||||||
|
value: "1.83.0"
|
||||||
|
label:
|
||||||
|
en: Rust Version
|
||||||
|
ja: Rust バージョン
|
||||||
|
ms: Versi Rust
|
||||||
|
pt-br: Versão do Rust
|
||||||
|
ru: Версия Rust
|
||||||
|
ko: Rust 버전
|
||||||
|
zh-Hant: Rust 版本
|
||||||
|
zh: Rust 版本
|
||||||
|
- default: "1.23.8"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_GO_VERSION
|
||||||
|
labelEn: Go Version
|
||||||
|
labelZh: Go 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "1.25.1"
|
||||||
|
value: "1.25.1"
|
||||||
|
- label: "1.24.3"
|
||||||
|
value: "1.24.3"
|
||||||
|
- label: "1.23.8"
|
||||||
|
value: "1.23.8"
|
||||||
|
- label: "1.22.12"
|
||||||
|
value: "1.22.12"
|
||||||
|
label:
|
||||||
|
en: Go Version
|
||||||
|
ja: Go バージョン
|
||||||
|
ms: Versi Go
|
||||||
|
pt-br: Versão do Go
|
||||||
|
ru: Версия Go
|
||||||
|
ko: Go 버전
|
||||||
|
zh-Hant: Go 版本
|
||||||
|
zh: Go 版本
|
||||||
|
- default: "6.2"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_SWIFT_VERSION
|
||||||
|
labelEn: Swift Version
|
||||||
|
labelZh: Swift 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "6.2"
|
||||||
|
value: "6.2"
|
||||||
|
- label: "6.1"
|
||||||
|
value: "6.1"
|
||||||
|
- label: "5.10"
|
||||||
|
value: "5.10"
|
||||||
|
label:
|
||||||
|
en: Swift Version
|
||||||
|
ja: Swift バージョン
|
||||||
|
ms: Versi Swift
|
||||||
|
pt-br: Versão do Swift
|
||||||
|
ru: Версия Swift
|
||||||
|
ko: Swift 버전
|
||||||
|
zh-Hant: Swift 版本
|
||||||
|
zh: Swift 版本
|
||||||
|
- default: "3.4.4"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_RUBY_VERSION
|
||||||
|
labelEn: Ruby Version
|
||||||
|
labelZh: Ruby 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "3.4.4"
|
||||||
|
value: "3.4.4"
|
||||||
|
- label: "3.3.8"
|
||||||
|
value: "3.3.8"
|
||||||
|
- label: "3.2.3"
|
||||||
|
value: "3.2.3"
|
||||||
|
label:
|
||||||
|
en: Ruby Version
|
||||||
|
ja: Ruby バージョン
|
||||||
|
ms: Versi Ruby
|
||||||
|
pt-br: Versão do Ruby
|
||||||
|
ru: Версия Ruby
|
||||||
|
ko: Ruby 버전
|
||||||
|
zh-Hant: Ruby 版本
|
||||||
|
zh: Ruby 版本
|
||||||
|
- default: "8.4"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_PHP_VERSION
|
||||||
|
labelEn: PHP Version
|
||||||
|
labelZh: PHP 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "8.4"
|
||||||
|
value: "8.4"
|
||||||
|
- label: "8.3"
|
||||||
|
value: "8.3"
|
||||||
|
- label: "8.2"
|
||||||
|
value: "8.2"
|
||||||
|
label:
|
||||||
|
en: PHP Version
|
||||||
|
ja: PHP バージョン
|
||||||
|
ms: Versi PHP
|
||||||
|
pt-br: Versão do PHP
|
||||||
|
ru: Версия PHP
|
||||||
|
ko: PHP 버전
|
||||||
|
zh-Hant: PHP 版本
|
||||||
|
zh: PHP 版本
|
||||||
|
- default: "21"
|
||||||
|
edit: true
|
||||||
|
envKey: CODEX_ENV_JAVA_VERSION
|
||||||
|
labelEn: Java Version
|
||||||
|
labelZh: Java 版本
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "25"
|
||||||
|
value: "25"
|
||||||
|
- label: "24"
|
||||||
|
value: "24"
|
||||||
|
- label: "23"
|
||||||
|
value: "23"
|
||||||
|
- label: "22"
|
||||||
|
value: "22"
|
||||||
|
- label: "21"
|
||||||
|
value: "21"
|
||||||
|
- label: "17"
|
||||||
|
value: "17"
|
||||||
|
- label: "11"
|
||||||
|
value: "11"
|
||||||
|
label:
|
||||||
|
en: Java Version
|
||||||
|
ja: Java バージョン
|
||||||
|
ms: Versi Java
|
||||||
|
pt-br: Versão do Java
|
||||||
|
ru: Версия Java
|
||||||
|
ko: Java 버전
|
||||||
|
zh-Hant: Java 版本
|
||||||
|
zh: Java 版本
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
services:
|
||||||
|
codex-universal:
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
tty: true
|
||||||
|
stdin_open: true
|
||||||
|
volumes:
|
||||||
|
- ./data:/workspace
|
||||||
|
working_dir: /workspace
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- CODEX_ENV_PYTHON_VERSION=${CODEX_ENV_PYTHON_VERSION}
|
||||||
|
- CODEX_ENV_NODE_VERSION=${CODEX_ENV_NODE_VERSION}
|
||||||
|
- CODEX_ENV_RUST_VERSION=${CODEX_ENV_RUST_VERSION}
|
||||||
|
- CODEX_ENV_GO_VERSION=${CODEX_ENV_GO_VERSION}
|
||||||
|
- CODEX_ENV_SWIFT_VERSION=${CODEX_ENV_SWIFT_VERSION}
|
||||||
|
- CODEX_ENV_RUBY_VERSION=${CODEX_ENV_RUBY_VERSION}
|
||||||
|
- CODEX_ENV_PHP_VERSION=${CODEX_ENV_PHP_VERSION}
|
||||||
|
- CODEX_ENV_JAVA_VERSION=${CODEX_ENV_JAVA_VERSION}
|
||||||
|
image: ghcr.io/openai/codex-universal:latest
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 7.4 KiB |
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
craft-agents:
|
craft-agents:
|
||||||
image: ghcr.io/lukilabs/craft-agents-server:0.8.12
|
image: ghcr.io/lukilabs/craft-agents-server:0.9.2
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
restart: always
|
restart: always
|
||||||
networks:
|
networks:
|
||||||
@@ -510,7 +510,7 @@ x-shared-env:
|
|||||||
QUEUE_MONITOR_INTERVAL: ${QUEUE_MONITOR_INTERVAL:-30}
|
QUEUE_MONITOR_INTERVAL: ${QUEUE_MONITOR_INTERVAL:-30}
|
||||||
services:
|
services:
|
||||||
api:
|
api:
|
||||||
image: langgenius/dify-api:1.13.3
|
image: langgenius/dify-api:1.14.2
|
||||||
env_file:
|
env_file:
|
||||||
- dify.env
|
- dify.env
|
||||||
restart: always
|
restart: always
|
||||||
@@ -1041,7 +1041,7 @@ services:
|
|||||||
- ssrf_proxy_network
|
- ssrf_proxy_network
|
||||||
- default
|
- default
|
||||||
worker:
|
worker:
|
||||||
image: langgenius/dify-api:1.13.3
|
image: langgenius/dify-api:1.14.2
|
||||||
env_file:
|
env_file:
|
||||||
- dify.env
|
- dify.env
|
||||||
restart: always
|
restart: always
|
||||||
@@ -1570,7 +1570,7 @@ services:
|
|||||||
- ssrf_proxy_network
|
- ssrf_proxy_network
|
||||||
- default
|
- default
|
||||||
web:
|
web:
|
||||||
image: langgenius/dify-web:1.13.3
|
image: langgenius/dify-web:1.14.2
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
env_file:
|
env_file:
|
||||||
- dify.env
|
- dify.env
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
services:
|
services:
|
||||||
diun:
|
diun:
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
image: crazymax/diun:4.31.0
|
image: crazymax/diun:4.33.0
|
||||||
command: serve
|
command: serve
|
||||||
restart: always
|
restart: always
|
||||||
networks:
|
networks:
|
||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
APP_SECRET: 52f235dee223c92a83a934ada13b83075c9855fe966b3cbf9dd86810e2b742ee
|
APP_SECRET: 52f235dee223c92a83a934ada13b83075c9855fe966b3cbf9dd86810e2b742ee
|
||||||
DATABASE_URL: postgresql://docmost:${PANEL_DB_USER_PASSWORD}@db:5432/docmost?schema=public
|
DATABASE_URL: postgresql://docmost:${PANEL_DB_USER_PASSWORD}@db:5432/docmost?schema=public
|
||||||
REDIS_URL: redis://redis:6379
|
REDIS_URL: redis://redis:6379
|
||||||
image: docmost/docmost:0.80.0
|
image: docmost/docmost:0.90.1
|
||||||
labels:
|
labels:
|
||||||
createdBy: Apps
|
createdBy: Apps
|
||||||
depends_on:
|
depends_on:
|
||||||
+1
-2
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
dpanel:
|
dpanel:
|
||||||
image: "dpanel/dpanel:1.9.1.3-lite"
|
image: "dpanel/dpanel:1.10.3-lite"
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
restart: always
|
restart: always
|
||||||
networks:
|
networks:
|
||||||
@@ -14,7 +14,6 @@ services:
|
|||||||
- APP_NAME=${APP_NAME}
|
- APP_NAME=${APP_NAME}
|
||||||
labels:
|
labels:
|
||||||
createdBy: "Apps"
|
createdBy: "Apps"
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
1panel-network:
|
1panel-network:
|
||||||
external: true
|
external: true
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
dpanel:
|
dpanel:
|
||||||
image: dpanel/dpanel:1.9.1.3
|
image: dpanel/dpanel:1.10.3
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
labels:
|
labels:
|
||||||
createdBy: "Apps"
|
createdBy: "Apps"
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
easytier:
|
easytier:
|
||||||
image: easytier/easytier:v2.6.1
|
image: easytier/easytier:v2.6.4
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
restart: always
|
restart: always
|
||||||
network_mode: host
|
network_mode: host
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 9000
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Web/API Port
|
||||||
|
labelZh: Web/API 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Web/API Port
|
||||||
|
zh: Web/API 端口
|
||||||
|
zh-Hant: Web/API 連接埠
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
services:
|
||||||
|
fast-note-sync-service:
|
||||||
|
image: haierkeys/fast-note-sync-service:3.3.1
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:9000"
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
volumes:
|
||||||
|
- ./data/storage:/fast-note-sync/storage
|
||||||
|
- ./data/config:/fast-note-sync/config
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# Fast Note Sync Service
|
||||||
|
|
||||||
|
Fast Note Sync Service 是一个高性能、低延迟的 Obsidian 笔记同步、在线管理与 REST API 服务平台,基于 Go、WebSocket 和 React 构建。
|
||||||
|
|
||||||
|
## 功能特点
|
||||||
|
|
||||||
|
- 支持 Obsidian 笔记、目录、配置和附件同步
|
||||||
|
- 提供 Web 管理面板,可创建用户、管理仓库并查看笔记内容
|
||||||
|
- 支持 REST API、MCP、分享、历史版本、回收站和多存储备份
|
||||||
|
- 支持 SQLite、MySQL 和 PostgreSQL 等数据库配置
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
### 默认端口
|
||||||
|
|
||||||
|
- Web 管理面板 / API / WebSocket: 9000
|
||||||
|
|
||||||
|
### 初始账号
|
||||||
|
|
||||||
|
- 首次访问 `http://服务器IP:9000` 后注册第一个账号
|
||||||
|
- 如需关闭公开注册,请在配置文件中设置 `user.register-is-enable: false`
|
||||||
|
|
||||||
|
### 数据目录
|
||||||
|
|
||||||
|
- 笔记与附件数据: `./data/storage`
|
||||||
|
- 配置文件: `./data/config`
|
||||||
|
|
||||||
|
### 客户端配置
|
||||||
|
|
||||||
|
登录 Web 管理面板后,点击“复制 API 配置”,并粘贴到 Obsidian Fast Note Sync 插件设置中。
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
|
||||||
|
- GitHub: https://github.com/haierkeys/fast-note-sync-service
|
||||||
|
- Obsidian 插件: https://github.com/haierkeys/obsidian-fast-note-sync
|
||||||
|
- REST API 文档: https://github.com/haierkeys/fast-note-sync-service/blob/master/docs/REST_API.md
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# Fast Note Sync Service
|
||||||
|
|
||||||
|
Fast Note Sync Service is a high-performance, low-latency note synchronization, online management, and REST API service platform for Obsidian, built with Go, WebSocket, and React.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- Sync Obsidian notes, folders, configuration, and attachments
|
||||||
|
- Web administration panel for users, vaults, and note browsing
|
||||||
|
- REST API, MCP, sharing, history, trash, and multi-storage backup support
|
||||||
|
- Configurable SQLite, MySQL, and PostgreSQL database support
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Default Port
|
||||||
|
|
||||||
|
- Web admin panel / API / WebSocket: 9000
|
||||||
|
|
||||||
|
### Initial Account
|
||||||
|
|
||||||
|
- Open `http://SERVER_IP:9000` and register the first account
|
||||||
|
- To disable public registration, set `user.register-is-enable: false` in the configuration file
|
||||||
|
|
||||||
|
### Data Directories
|
||||||
|
|
||||||
|
- Notes and attachments: `./data/storage`
|
||||||
|
- Configuration files: `./data/config`
|
||||||
|
|
||||||
|
### Client Setup
|
||||||
|
|
||||||
|
Log in to the web admin panel, click "Copy API Configuration", and paste it into the Obsidian Fast Note Sync plugin settings.
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
- GitHub: https://github.com/haierkeys/fast-note-sync-service
|
||||||
|
- Obsidian plugin: https://github.com/haierkeys/obsidian-fast-note-sync
|
||||||
|
- REST API docs: https://github.com/haierkeys/fast-note-sync-service/blob/master/docs/REST_API.md
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
name: Fast Note Sync Service
|
||||||
|
tags:
|
||||||
|
- 实用工具
|
||||||
|
- 云存储
|
||||||
|
title: 高性能低延迟的 Obsidian 笔记同步服务
|
||||||
|
description: Fast Note Sync Service 是一个基于 Go、WebSocket 和 React 的笔记同步、在线管理与 REST API 服务平台。
|
||||||
|
additionalProperties:
|
||||||
|
key: fast-note-sync-service
|
||||||
|
name: Fast Note Sync Service
|
||||||
|
tags:
|
||||||
|
- Tool
|
||||||
|
- Storage
|
||||||
|
shortDescZh: 高性能低延迟的 Obsidian 笔记同步服务
|
||||||
|
shortDescEn: High-performance low-latency note synchronization service for Obsidian.
|
||||||
|
description:
|
||||||
|
zh: Fast Note Sync Service 是一个基于 Go、WebSocket 和 React 的笔记同步、在线管理与 REST API 服务平台,支持 Obsidian 客户端同步、附件同步、历史版本、分享、备份和 MCP 接入。
|
||||||
|
en: Fast Note Sync Service is a Go, WebSocket, and React based platform for note synchronization, online management, and REST APIs, supporting Obsidian client sync, attachments, history, sharing, backups, and MCP integration.
|
||||||
|
zh-Hant: Fast Note Sync Service 是一個基於 Go、WebSocket 和 React 的筆記同步、線上管理與 REST API 服務平台,支援 Obsidian 客戶端同步、附件同步、歷史版本、分享、備份和 MCP 接入。
|
||||||
|
type: website
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://github.com/haierkeys/fast-note-sync-service
|
||||||
|
github: https://github.com/haierkeys/fast-note-sync-service
|
||||||
|
document: https://github.com/haierkeys/fast-note-sync-service/blob/master/README.md
|
||||||
|
architectures:
|
||||||
|
- amd64
|
||||||
|
- arm64
|
||||||
|
- arm/v7
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 9000
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Web/API Port
|
||||||
|
labelZh: Web/API 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
label:
|
||||||
|
en: Web/API Port
|
||||||
|
zh: Web/API 端口
|
||||||
|
zh-Hant: Web/API 連接埠
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
services:
|
||||||
|
fast-note-sync-service:
|
||||||
|
image: haierkeys/fast-note-sync-service:latest
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:9000"
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
volumes:
|
||||||
|
- ./data/storage:/fast-note-sync/storage
|
||||||
|
- ./data/config:/fast-note-sync/config
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 2.6 KiB |
@@ -0,0 +1,65 @@
|
|||||||
|
# Firecrawl
|
||||||
|
|
||||||
|
将任意网站转换为适合大语言模型(LLM)的结构化数据。强大的网页抓取、爬取、搜索和数据提取平台。
|
||||||
|
|
||||||
|
## 功能特点
|
||||||
|
|
||||||
|
- **单页抓取**:将任意 URL 转换为 Markdown、HTML、截图或结构化 JSON
|
||||||
|
- **全站爬取**:递归抓取整个网站,智能过滤链接
|
||||||
|
- **URL 发现**:通过站点地图、索引查询或搜索快速发现网站所有 URL
|
||||||
|
- **网络搜索**:搜索网络并一次性获取结果的完整页面内容
|
||||||
|
- **AI 提取**:基于 LLM 的结构化数据提取,支持 Schema 验证
|
||||||
|
- **智能代理**:自主研究代理,自动导航并提取数据
|
||||||
|
- **远程浏览器**:支持远程浏览器会话,提供 CDP 访问和代码执行能力
|
||||||
|
- **批量操作**:异步批量抓取多个 URL
|
||||||
|
- **自托管支持**:完全开源,支持本地部署,数据掌握在自己手中
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
### 默认端口
|
||||||
|
|
||||||
|
- API服务: 3002
|
||||||
|
- 队列管理界面: http://your-ip:3002/admin/YOUR_BULL_AUTH_KEY/queues
|
||||||
|
|
||||||
|
### API 访问
|
||||||
|
|
||||||
|
部署后可以通过 `http://your-ip:3002` 访问 API 服务。
|
||||||
|
|
||||||
|
测试爬取端点:
|
||||||
|
```bash
|
||||||
|
curl -X POST http://localhost:3002/v1/crawl \
|
||||||
|
-H 'Content-Type: application/json' \
|
||||||
|
-d '{
|
||||||
|
"url": "https://firecrawl.dev"
|
||||||
|
}'
|
||||||
|
```
|
||||||
|
|
||||||
|
### 数据目录
|
||||||
|
|
||||||
|
应用数据存储在以下目录:
|
||||||
|
- `./data/api` - API 服务数据
|
||||||
|
- `./data/postgres` - PostgreSQL 数据库数据
|
||||||
|
- `./data/redis` - Redis 缓存数据
|
||||||
|
- `./data/playwright` - Playwright 浏览器缓存
|
||||||
|
|
||||||
|
### 环境变量
|
||||||
|
|
||||||
|
- `POSTGRES_USER` / `POSTGRES_PASSWORD`:PostgreSQL 数据库凭据
|
||||||
|
- `BULL_AUTH_KEY`:队列管理界面的访问密钥
|
||||||
|
- `OPENAI_API_KEY`:OpenAI API 密钥(用于 AI 相关功能,可选)
|
||||||
|
|
||||||
|
### 架构说明
|
||||||
|
|
||||||
|
Firecrawl 自托管版本包含以下服务组件:
|
||||||
|
- **API 服务**:主 API 服务器,处理所有请求(4核CPU,8GB内存限制)
|
||||||
|
- **Playwright 服务**:浏览器自动化服务(2核CPU,4GB内存限制)
|
||||||
|
- **Redis**:任务队列和缓存后端
|
||||||
|
- **RabbitMQ**:NuQ 消息代理
|
||||||
|
- **PostgreSQL**:任务状态管理数据库
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
|
||||||
|
- 官方网站: https://www.firecrawl.dev
|
||||||
|
- GitHub: https://github.com/firecrawl/firecrawl
|
||||||
|
- 文档: https://docs.firecrawl.dev
|
||||||
|
- Discord社区: https://discord.gg/firecrawl
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
# Firecrawl
|
||||||
|
|
||||||
|
Turn any website into LLM-ready structured data. A powerful web scraping, crawling, search and data extraction platform.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Single Page Scraping**: Convert any URL to Markdown, HTML, screenshots, or structured JSON
|
||||||
|
- **Multi-Page Crawling**: Recursively scrape entire websites with intelligent link filtering
|
||||||
|
- **URL Discovery**: Discover all URLs on a website instantly via sitemaps, index queries, or search
|
||||||
|
- **Web Search**: Search the web and get full page content from results in a single call
|
||||||
|
- **AI Extraction**: LLM-powered structured data extraction with schema validation
|
||||||
|
- **Autonomous Agent**: AI research agent that automatically navigates and extracts data
|
||||||
|
- **Remote Browser**: Remote browser sessions with CDP access and code execution
|
||||||
|
- **Batch Operations**: Asynchronous bulk scraping of multiple URLs
|
||||||
|
- **Self-Hosted**: Fully open source, supports local deployment with complete data control
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Default Port
|
||||||
|
|
||||||
|
- API Service: 3002
|
||||||
|
- Queue Admin UI: http://your-ip:3002/admin/YOUR_BULL_AUTH_KEY/queues
|
||||||
|
|
||||||
|
### API Access
|
||||||
|
|
||||||
|
After deployment, access the API at `http://your-ip:3002`.
|
||||||
|
|
||||||
|
Test the crawl endpoint:
|
||||||
|
```bash
|
||||||
|
curl -X POST http://localhost:3002/v1/crawl \
|
||||||
|
-H 'Content-Type: application/json' \
|
||||||
|
-d '{
|
||||||
|
"url": "https://firecrawl.dev"
|
||||||
|
}'
|
||||||
|
```
|
||||||
|
|
||||||
|
### Data Directories
|
||||||
|
|
||||||
|
Application data is stored in the following directories:
|
||||||
|
- `./data/api` - API service data
|
||||||
|
- `./data/postgres` - PostgreSQL database data
|
||||||
|
- `./data/redis` - Redis cache data
|
||||||
|
- `./data/playwright` - Playwright browser cache
|
||||||
|
|
||||||
|
### Environment Variables
|
||||||
|
|
||||||
|
- `POSTGRES_USER` / `POSTGRES_PASSWORD`: PostgreSQL database credentials
|
||||||
|
- `BULL_AUTH_KEY`: Access key for the queue admin UI
|
||||||
|
- `OPENAI_API_KEY`: OpenAI API key for AI-powered features (optional)
|
||||||
|
|
||||||
|
### Architecture
|
||||||
|
|
||||||
|
The self-hosted version includes the following service components:
|
||||||
|
- **API Service**: Main API server handling all requests (4 CPU cores, 8GB RAM limit)
|
||||||
|
- **Playwright Service**: Browser automation service (2 CPU cores, 4GB RAM limit)
|
||||||
|
- **Redis**: Job queue and cache backend
|
||||||
|
- **RabbitMQ**: NuQ message broker
|
||||||
|
- **PostgreSQL**: Job state management database
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
- Website: https://www.firecrawl.dev
|
||||||
|
- GitHub: https://github.com/firecrawl/firecrawl
|
||||||
|
- Documentation: https://docs.firecrawl.dev
|
||||||
|
- Discord: https://discord.gg/firecrawl
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
name: Firecrawl
|
||||||
|
tags:
|
||||||
|
- 开发工具
|
||||||
|
- AI
|
||||||
|
- 爬虫
|
||||||
|
title: 将任意网站转换为适合大语言模型的结构化数据
|
||||||
|
description:
|
||||||
|
en: Turn any website into LLM-ready structured data. Scrape, crawl, search and extract clean markdown, structured JSON or screenshots from websites
|
||||||
|
zh: 将任意网站转换为适合大语言模型的结构化数据。支持抓取、爬取、搜索和提取干净的 Markdown、结构化 JSON 或截图
|
||||||
|
additionalProperties:
|
||||||
|
key: firecrawl
|
||||||
|
name: Firecrawl
|
||||||
|
tags:
|
||||||
|
- DevTool
|
||||||
|
- AI
|
||||||
|
- Crawler
|
||||||
|
shortDescZh: 将任意网站转换为适合大语言模型的结构化数据
|
||||||
|
shortDescEn: Turn any website into LLM-ready structured data
|
||||||
|
type: website
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://www.firecrawl.dev
|
||||||
|
github: https://github.com/firecrawl/firecrawl
|
||||||
|
document: https://docs.firecrawl.dev
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: "3002"
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
label:
|
||||||
|
en: API Port
|
||||||
|
zh: API端口
|
||||||
|
required: true
|
||||||
|
type: number
|
||||||
|
edit: true
|
||||||
|
rule: paramPort
|
||||||
|
- default: "CHANGEME"
|
||||||
|
envKey: BULL_AUTH_KEY
|
||||||
|
label:
|
||||||
|
en: Bull Queue Admin Key
|
||||||
|
zh: 队列管理密钥
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
edit: true
|
||||||
|
rule: paramCommon
|
||||||
|
- default: "firecrawl"
|
||||||
|
envKey: POSTGRES_USER
|
||||||
|
label:
|
||||||
|
en: PostgreSQL Username
|
||||||
|
zh: 数据库用户名
|
||||||
|
required: true
|
||||||
|
type: text
|
||||||
|
edit: true
|
||||||
|
rule: paramCommon
|
||||||
|
- default: ""
|
||||||
|
envKey: POSTGRES_PASSWORD
|
||||||
|
label:
|
||||||
|
en: PostgreSQL Password
|
||||||
|
zh: 数据库密码
|
||||||
|
required: true
|
||||||
|
type: password
|
||||||
|
edit: true
|
||||||
|
rule: paramCommon
|
||||||
|
- default: ""
|
||||||
|
envKey: OPENAI_API_KEY
|
||||||
|
label:
|
||||||
|
en: OpenAI API Key (Optional)
|
||||||
|
zh: OpenAI API密钥(可选)
|
||||||
|
required: false
|
||||||
|
type: text
|
||||||
|
edit: true
|
||||||
|
rule: ""
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user