mirror of
https://github.com/arch3rPro/1Panel-Appstore.git
synced 2026-04-15 00:17:12 +08:00
Compare commits
5 Commits
8e5b454640
...
253b0d2005
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
253b0d2005 | ||
|
|
af89dd30a7 | ||
|
|
6ad7b05160 | ||
|
|
354fb12eba | ||
|
|
a3be1dac39 |
@@ -582,7 +582,7 @@ AI驱动的开源代码知识库与文档协作平台,支持多模型、多数
|
|||||||
|
|
||||||
🍥 新一代大模型网关与AI资产管理系统,支持多种模型统一调用
|
🍥 新一代大模型网关与AI资产管理系统,支持多种模型统一调用
|
||||||
|
|
||||||
<kbd>0.12.5</kbd> • [官网链接](https://docs.newapi.pro/)
|
<kbd>0.12.6</kbd> • [官网链接](https://docs.newapi.pro/)
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td width="33%" align="center">
|
<td width="33%" align="center">
|
||||||
|
|||||||
29
apps/craft-agents/0.8.5/data.yml
Normal file
29
apps/craft-agents/0.8.5/data.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 9100
|
||||||
|
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: "Craft-Agents-"
|
||||||
|
edit: true
|
||||||
|
envKey: CRAFT_SERVER_TOKEN
|
||||||
|
labelEn: Server Token
|
||||||
|
labelZh: 服务器令牌
|
||||||
|
random: true
|
||||||
|
required: true
|
||||||
|
rule: paramComplexity
|
||||||
|
type: password
|
||||||
|
label:
|
||||||
|
en: Server Token
|
||||||
|
zh: 服务器令牌
|
||||||
|
ja: サーバートークン
|
||||||
|
ko: 서버 토큰
|
||||||
0
apps/craft-agents/0.8.5/data/.gitkeep
Normal file
0
apps/craft-agents/0.8.5/data/.gitkeep
Normal file
28
apps/craft-agents/0.8.5/docker-compose.yml
Normal file
28
apps/craft-agents/0.8.5/docker-compose.yml
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
services:
|
||||||
|
craft-agents:
|
||||||
|
image: ghcr.io/lukilabs/craft-agents-server:0.8.5
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:9100"
|
||||||
|
volumes:
|
||||||
|
- craft-agents-data:/home/craftagents/.craft-agent
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- CRAFT_SERVER_TOKEN=${CRAFT_SERVER_TOKEN}
|
||||||
|
- CRAFT_RPC_HOST=0.0.0.0
|
||||||
|
command:
|
||||||
|
- bun
|
||||||
|
- run
|
||||||
|
- packages/server/src/index.ts
|
||||||
|
- --allow-insecure-bind
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
volumes:
|
||||||
|
craft-agents-data:
|
||||||
|
driver: local
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
226
apps/craft-agents/README.md
Normal file
226
apps/craft-agents/README.md
Normal file
@@ -0,0 +1,226 @@
|
|||||||
|
# Craft Agents
|
||||||
|
|
||||||
|
Craft Agents 是一个强大的 AI Agent 工作空间,支持多种 LLM 提供商和 MCP 集成。
|
||||||
|
|
||||||
|
## 功能特点
|
||||||
|
|
||||||
|
- **多 LLM 提供商支持**:支持 Anthropic、Google AI Studio、ChatGPT Plus、GitHub Copilot 等多种 AI 提供商
|
||||||
|
- **MCP 集成**:支持连接 MCP 服务器、REST API 和本地文件系统
|
||||||
|
- **多会话管理**:具有收件箱/归档功能,支持会话标记和状态工作流
|
||||||
|
- **权限模式**:三级权限系统(探索、询问编辑、自动),可自定义规则
|
||||||
|
- **动态状态系统**:可自定义会话工作流状态(待办、进行中、完成等)
|
||||||
|
- **自动化**:支持事件驱动的自动化,可基于标签变化、计划任务、工具使用等触发
|
||||||
|
- **无头服务器模式**:可作为远程服务器运行,桌面应用作为瘦客户端连接
|
||||||
|
- **Web UI**:内置 Web 界面,可通过浏览器访问和管理
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
### 默认端口
|
||||||
|
|
||||||
|
- Web 界面/RPC 端口: 9100
|
||||||
|
|
||||||
|
### 配置说明
|
||||||
|
|
||||||
|
#### 必需参数
|
||||||
|
|
||||||
|
- **服务器令牌 (CRAFT_SERVER_TOKEN)**:用于客户端认证的 Bearer 令牌,系统会自动生成格式为 `Craft-Agents-<随机复杂密码>` 的安全令牌,您也可以自定义
|
||||||
|
|
||||||
|
#### 可选参数
|
||||||
|
|
||||||
|
- **Web 端口 (PANEL_APP_PORT_HTTP)**:Web界面访问端口,默认为 `9100`
|
||||||
|
|
||||||
|
#### 安全说明
|
||||||
|
|
||||||
|
⚠️ **重要提示**:本应用默认使用 `--allow-insecure-bind` 参数启动,允许在内网环境下使用非加密的 `ws://` 协议。这适用于以下场景:
|
||||||
|
|
||||||
|
- ✅ **内网环境**:应用运行在受信任的内网环境中
|
||||||
|
- ✅ **反向代理**:通过 Nginx/Caddy 等反向代理处理 TLS
|
||||||
|
- ❌ **公网直接暴露**:不推荐直接暴露到公网
|
||||||
|
|
||||||
|
**生产环境建议**:
|
||||||
|
- 使用反向代理(如 Nginx、Caddy)处理 TLS 加密
|
||||||
|
- 或在容器内配置 TLS 证书(设置环境变量 `CRAFT_RPC_TLS_CERT` 和 `CRAFT_RPC_TLS_KEY`),并移除 `--allow-insecure-bind` 参数
|
||||||
|
|
||||||
|
**数据存储**:应用数据存储在Docker命名卷中,由Docker自动管理权限,无需手动配置。
|
||||||
|
|
||||||
|
### 连接方式
|
||||||
|
|
||||||
|
#### 通过 Web UI 访问
|
||||||
|
|
||||||
|
部署后,通过浏览器访问 `http://<服务器IP>:9100`,使用设置的服务器令牌登录。
|
||||||
|
|
||||||
|
#### 通过桌面应用连接
|
||||||
|
|
||||||
|
在 Craft Agents 桌面应用中,配置远程工作空间:
|
||||||
|
- URL: `ws://<服务器IP>:9100` 或 `wss://<服务器IP>:9100`(启用 TLS 时)
|
||||||
|
- Token: 部署时设置的服务器令牌
|
||||||
|
|
||||||
|
### 数据目录
|
||||||
|
|
||||||
|
应用数据存储在Docker命名卷 `craft-agents-data` 中,映射到容器内的 `/home/craftagents/.craft-agent` 目录,包括:
|
||||||
|
- 配置文件
|
||||||
|
- 会话数据
|
||||||
|
- 工作空间设置
|
||||||
|
- 技能和源配置
|
||||||
|
|
||||||
|
**数据管理**:
|
||||||
|
- 数据卷由Docker自动管理,无需手动设置权限
|
||||||
|
- 数据会持久化保存,即使容器删除也不会丢失
|
||||||
|
- 可以通过 `docker volume inspect craft-agents-data` 查看数据位置
|
||||||
|
|
||||||
|
### 安全访问方式
|
||||||
|
|
||||||
|
根据官方文档,推荐以下几种安全访问方式:
|
||||||
|
|
||||||
|
#### 方式1:Tailscale(推荐)
|
||||||
|
|
||||||
|
Tailscale 创建设备间的私有网格网络,无需端口转发、证书或防火墙规则。
|
||||||
|
|
||||||
|
**优势**:
|
||||||
|
- ✅ 无需配置TLS证书
|
||||||
|
- ✅ 端到端加密
|
||||||
|
- ✅ 服务器只能从您的Tailscale网络访问
|
||||||
|
|
||||||
|
**配置方法**:
|
||||||
|
```yaml
|
||||||
|
environment:
|
||||||
|
- CRAFT_RPC_HOST=100.x.y.z # Tailscale IP
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方式2:反向代理(nginx, Caddy)
|
||||||
|
|
||||||
|
标准的生产部署方式,反向代理处理TLS终止和访问控制。
|
||||||
|
|
||||||
|
**Caddy 示例**(自动HTTPS):
|
||||||
|
```
|
||||||
|
craft.example.com {
|
||||||
|
reverse_proxy localhost:9100
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Nginx 示例**:
|
||||||
|
```nginx
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name craft.example.com;
|
||||||
|
|
||||||
|
ssl_certificate /path/to/cert.pem;
|
||||||
|
ssl_certificate_key /path/to/key.pem;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://localhost:9100;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection "upgrade";
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
使用反向代理时,应用绑定到 localhost:
|
||||||
|
```yaml
|
||||||
|
environment:
|
||||||
|
- CRAFT_RPC_HOST=127.0.0.1
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方式3:Cloudflare Tunnel
|
||||||
|
|
||||||
|
无需开放端口或管理证书,通过HTTPS暴露服务。
|
||||||
|
|
||||||
|
**快速隧道**(即时HTTPS URL):
|
||||||
|
```bash
|
||||||
|
cloudflared tunnel --url http://localhost:9100
|
||||||
|
```
|
||||||
|
|
||||||
|
会生成一个 `https://<random>.trycloudflare.com` URL。
|
||||||
|
|
||||||
|
**永久自定义域名**:
|
||||||
|
```bash
|
||||||
|
# 一次性设置
|
||||||
|
cloudflared tunnel login
|
||||||
|
cloudflared tunnel create craft-agents
|
||||||
|
cloudflared tunnel route dns craft-agents agents.yourdomain.com
|
||||||
|
|
||||||
|
# 运行隧道
|
||||||
|
cloudflared tunnel run --url http://localhost:9100 craft-agents
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方式4:SSH隧道
|
||||||
|
|
||||||
|
快速临时访问,无需任何设置:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 在客户端:转发本地端口9100到远程服务器
|
||||||
|
ssh -L 9100:localhost:9100 user@your-server
|
||||||
|
```
|
||||||
|
|
||||||
|
然后从桌面应用或浏览器连接到 `ws://localhost:9100`。
|
||||||
|
|
||||||
|
#### 方式5:直接配置TLS证书
|
||||||
|
|
||||||
|
如需直接在应用中启用TLS,需要:
|
||||||
|
|
||||||
|
1. **生成证书**(参考官方文档):
|
||||||
|
```bash
|
||||||
|
# 使用官方脚本生成开发证书
|
||||||
|
./scripts/generate-dev-cert.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **修改 docker-compose.yml**:
|
||||||
|
```yaml
|
||||||
|
volumes:
|
||||||
|
- craft-agents-data:/home/craftagents/.craft-agent
|
||||||
|
- ./certs:/certs:ro # 挂载证书目录
|
||||||
|
|
||||||
|
environment:
|
||||||
|
- CRAFT_SERVER_TOKEN=${CRAFT_SERVER_TOKEN}
|
||||||
|
- CRAFT_RPC_HOST=0.0.0.0
|
||||||
|
- CRAFT_RPC_TLS_CERT=/certs/cert.pem
|
||||||
|
- CRAFT_RPC_TLS_KEY=/certs/key.pem
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **移除 `--allow-insecure-bind` 参数**
|
||||||
|
|
||||||
|
#### 访问方式
|
||||||
|
|
||||||
|
- **启用TLS后**:
|
||||||
|
- Web UI: `https://192.168.123.201:9100`
|
||||||
|
- 桌面客户端: `wss://192.168.123.201:9100`
|
||||||
|
|
||||||
|
- **不启用TLS(仅内网测试)**:
|
||||||
|
- Web UI: `http://192.168.123.201:9100`
|
||||||
|
- 桌面客户端: 可能无法连接(浏览器API限制)
|
||||||
|
|
||||||
|
**推荐顺序**:
|
||||||
|
1. Tailscale(最简单安全)
|
||||||
|
2. 反向代理(标准生产方案)
|
||||||
|
3. Cloudflare Tunnel(无需端口转发)
|
||||||
|
4. SSH隧道(临时访问)
|
||||||
|
5. 直接TLS配置(不推荐)
|
||||||
|
|
||||||
|
## 支持的 LLM 提供商
|
||||||
|
|
||||||
|
### 直接连接
|
||||||
|
|
||||||
|
- **Anthropic**:API 密钥或 Claude Max/Pro OAuth
|
||||||
|
- **Google AI Studio**:API 密钥
|
||||||
|
- **ChatGPT Plus / Pro**:Codex OAuth
|
||||||
|
- **GitHub Copilot**:OAuth(设备代码)
|
||||||
|
|
||||||
|
### 第三方提供商
|
||||||
|
|
||||||
|
通过自定义端点支持:
|
||||||
|
- OpenRouter
|
||||||
|
- Vercel AI Gateway
|
||||||
|
- Ollama(本地模型)
|
||||||
|
- 其他 OpenAI 兼容端点
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
|
||||||
|
- 官方网站: https://agents.craft.do
|
||||||
|
- GitHub: https://github.com/lukilabs/craft-agents-oss
|
||||||
|
- 文档: https://github.com/lukilabs/craft-agents-oss#readme
|
||||||
|
|
||||||
|
## 许可证
|
||||||
|
|
||||||
|
Apache License 2.0
|
||||||
31
apps/craft-agents/data.yml
Normal file
31
apps/craft-agents/data.yml
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
name: Craft Agents
|
||||||
|
tags:
|
||||||
|
- 开发工具
|
||||||
|
- AI助手
|
||||||
|
title: AI Agent工作空间,支持多LLM提供商和MCP集成
|
||||||
|
description: AI Agent工作空间,支持多LLM提供商和MCP集成
|
||||||
|
additionalProperties:
|
||||||
|
key: craft-agents
|
||||||
|
name: Craft Agents
|
||||||
|
tags:
|
||||||
|
- DevTool
|
||||||
|
- AI
|
||||||
|
shortDescZh: AI Agent工作空间,支持多LLM提供商和MCP集成
|
||||||
|
shortDescEn: AI Agent workspace with multi-LLM provider support and MCP integration
|
||||||
|
type: website
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://agents.craft.do
|
||||||
|
github: https://github.com/lukilabs/craft-agents-oss
|
||||||
|
document: https://github.com/lukilabs/craft-agents-oss#readme
|
||||||
|
architectures:
|
||||||
|
- amd64
|
||||||
|
- arm64
|
||||||
|
description:
|
||||||
|
en: Craft Agents is an AI agent workspace that supports multiple LLM providers (Anthropic, Google AI Studio, ChatGPT Plus, GitHub Copilot) and MCP integration. It features multi-session management, dynamic status workflow, and can run as a headless server.
|
||||||
|
zh: Craft Agents是一个AI Agent工作空间,支持多种LLM提供商(Anthropic、Google AI Studio、ChatGPT Plus、GitHub Copilot)和MCP集成。它具有多会话管理、动态状态工作流等功能,可以作为无头服务器运行。
|
||||||
|
zh-Hant: Craft Agents是一個AI Agent工作空間,支持多種LLM提供商(Anthropic、Google AI Studio、ChatGPT Plus、GitHub Copilot)和MCP集成。它具有多會話管理、動態狀態工作流等功能,可以作為無頭服務器運行。
|
||||||
|
ja: Craft Agentsは、複数のLLMプロバイダー(Anthropic、Google AI Studio、ChatGPT Plus、GitHub Copilot)とMCP統合をサポートするAIエージェントワークスペースです。マルチセッション管理、動的ステータスワークフローなどの機能を備え、ヘッドレスサーバーとして実行できます。
|
||||||
|
ko: Craft Agents는 여러 LLM 제공자(Anthropic, Google AI Studio, ChatGPT Plus, GitHub Copilot)와 MCP 통합을 지원하는 AI 에이전트 워크스페이스입니다. 다중 세션 관리, 동적 상태 워크플로 등의 기능을 갖추고 있으며 헤드리스 서버로 실행할 수 있습니다.
|
||||||
|
memoryRequired: 512
|
||||||
29
apps/craft-agents/latest/data.yml
Normal file
29
apps/craft-agents/latest/data.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 9100
|
||||||
|
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: "Craft-Agents-"
|
||||||
|
edit: true
|
||||||
|
envKey: CRAFT_SERVER_TOKEN
|
||||||
|
labelEn: Server Token
|
||||||
|
labelZh: 服务器令牌
|
||||||
|
random: true
|
||||||
|
required: true
|
||||||
|
rule: paramComplexity
|
||||||
|
type: password
|
||||||
|
label:
|
||||||
|
en: Server Token
|
||||||
|
zh: 服务器令牌
|
||||||
|
ja: サーバートークン
|
||||||
|
ko: 서버 토큰
|
||||||
0
apps/craft-agents/latest/data/.gitkeep
Normal file
0
apps/craft-agents/latest/data/.gitkeep
Normal file
28
apps/craft-agents/latest/docker-compose.yml
Normal file
28
apps/craft-agents/latest/docker-compose.yml
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
services:
|
||||||
|
craft-agents:
|
||||||
|
image: ghcr.io/lukilabs/craft-agents-server:latest
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:9100"
|
||||||
|
volumes:
|
||||||
|
- craft-agents-data:/home/craftagents/.craft-agent
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
- CRAFT_SERVER_TOKEN=${CRAFT_SERVER_TOKEN}
|
||||||
|
- CRAFT_RPC_HOST=0.0.0.0
|
||||||
|
command:
|
||||||
|
- bun
|
||||||
|
- run
|
||||||
|
- packages/server/src/index.ts
|
||||||
|
- --allow-insecure-bind
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
volumes:
|
||||||
|
craft-agents-data:
|
||||||
|
driver: local
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
||||||
BIN
apps/craft-agents/logo.png
Normal file
BIN
apps/craft-agents/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
new-api:
|
new-api:
|
||||||
image: calciumion/new-api:v0.12.0
|
image: calciumion/new-api:v0.12.6
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
new-api:
|
new-api:
|
||||||
image: calciumion/new-api:v0.12.5
|
image: calciumion/new-api:v0.12.6
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
Reference in New Issue
Block a user