diff --git a/apps/axonhub/0.6.10/data.yml b/apps/axonhub/0.6.10/data.yml new file mode 100644 index 000000000..cc9f669c7 --- /dev/null +++ b/apps/axonhub/0.6.10/data.yml @@ -0,0 +1,254 @@ +additionalProperties: + formFields: + - default: 8090 + envKey: PANEL_APP_PORT_HTTP + labelZh: HTTP 端口 + labelEn: HTTP Port + label: + zh: HTTP 端口 + zh-Hant: HTTP 連接埠 + en: HTTP Port + ja: HTTP ポート + ko: HTTP 포트 + ms: Port HTTP + pt-br: Porta HTTP + ru: HTTP Порт + tr: HTTP Portu + description: + zh: "设置应用的 HTTP 访问端口,有效范围: 1-65535" + zh-Hant: "設定應用程式的 HTTP 存取連接埠,有效範圍: 1-65535" + en: "Set the HTTP access port for the application, valid range: 1-65535" + ja: "アプリケーションのHTTPアクセスポートを設定します。有効範囲: 1-65535" + ko: "애플리케이션의 HTTP 접근 포트를 설정합니다. 유효 범위: 1-65535" + ms: "Tetapkan port akses HTTP untuk aplikasi, julat sah: 1-65535" + pt-br: "Defina a porta de acesso HTTP para o aplicativo, intervalo válido: 1-65535" + ru: "Установите порт доступа HTTP для приложения, допустимый диапазон: 1-65535" + tr: "Uygulama için HTTP erişim portunu ayarlayın, geçerli aralık: 1-65535" + required: true + type: number + edit: true + rule: paramPort + - default: ./data + envKey: DATA_PATH + labelZh: 数据存储位置 + labelEn: Data Storage Location + label: + zh: 数据存储位置 + zh-Hant: 數據儲存位置 + en: Data Storage Location + ja: データ保存場所 + ko: 데이터 저장 위치 + ms: Lokasi Penyimpanan Data + pt-br: Local de Armazenamento de Dados + ru: Местоположение хранилища данных + tr: Veri Saklama Konumu + required: true + type: text + edit: true + - default: "" + envKey: PANEL_DB_HOST + labelZh: 数据库 + labelEn: Database + label: + zh: 数据库 + zh-Hant: 資料庫 + en: Database + ja: データベース + ko: 데이터베이스 + ms: Pangkalan Data + pt-br: Banco de Dados + ru: База данных + tr: Veritabanı + required: true + type: service + key: postgres + - default: axonhub + envKey: PANEL_DB_USER + labelZh: 数据库用户名 + labelEn: Database Username + label: + zh: 数据库用户名 + zh-Hant: 資料庫使用者名稱 + en: Database Username + ja: データベースユーザー名 + ko: 데이터베이스 사용자 이름 + ms: Nama Pengguna Pangkalan Data + pt-br: Nome de Usuário do Banco de Dados + ru: Имя пользователя базы данных + tr: Veritabanı Kullanıcı Adı + required: true + type: text + rule: paramCommon + random: true + - default: axonhub_pwd + envKey: PANEL_DB_USER_PASSWORD + labelZh: 数据库密码 + labelEn: Database Password + label: + zh: 数据库密码 + zh-Hant: 資料庫密碼 + en: Database Password + ja: データベースパスワード + ko: 데이터베이스 비밀번호 + ms: Kata Laluan Pangkalan Data + pt-br: Senha do Banco de Dados + ru: Пароль базы данных + tr: Veritabanı Parolası + required: true + type: password + rule: paramComplexity + random: true + - default: axonhub + envKey: PANEL_DB_NAME + labelZh: 数据库名 + labelEn: Database Name + label: + zh: 数据库名 + zh-Hant: 資料庫名稱 + en: Database Name + ja: データベース名 + ko: 데이터베이스 이름 + ms: Nama Pangkalan Data + pt-br: Nome do Banco de Dados + ru: Имя базы данных + tr: Veritabanı Adı + required: true + type: text + rule: paramCommon + random: true + - default: memory + envKey: AXONHUB_CACHE_MODE + labelZh: 缓存模式 + labelEn: Cache Mode + label: + zh: 缓存模式 + zh-Hant: 快取模式 + en: Cache Mode + ja: キャッシュモード + ko: 캐시 모드 + ms: Mod Cache + pt-br: Modo Cache + ru: Режим кэширования + tr: Önbellek Modu + required: true + type: select + edit: true + values: + - label: 内存 / Memory + value: memory + - label: Redis + value: redis + - label: Memory + Redis + value: two-level + - default: "" + envKey: PANEL_REDIS_HOST + labelZh: Redis 服务 + labelEn: Redis Service + label: + zh: Redis 服务 + zh-Hant: Redis 服务 + en: Redis Service + ja: Redisサービス + ko: Redis 서비스 + ms: Perkhidmatan Redis + pt-br: Serviço Redis + ru: Сервис Redis + tr: Redis Hizmeti + required: false + type: service + edit: true + key: redis + - default: "" + envKey: PANEL_REDIS_ROOT_PASSWORD + labelZh: Redis 服务密码 + labelEn: Redis Service Password + label: + zh: Redis 服务密码 + zh-Hant: Redis 服務密碼 + en: Redis Service Password + ja: Redis サービスパスワード + ko: Redis 서비스 비밀번호 + ms: Kata Laluan Perkhidmatan Redis + pt-br: Senha do Serviço Redis + ru: Пароль службы Redis + tr: Redis Hizmet Parolası + required: false + type: password + edit: true + rule: paramComplexity + - default: "" + envKey: AXONHUB_SERVER_TRACE_EXTRA_TRACE_HEADERS + labelZh: 额外的追踪请求头 + labelEn: Extra Trace Headers + label: + zh: 额外的追踪请求头 + zh-Hant: 額外的追蹤標頭 + en: Extra Trace Headers + ja: 追加のトレースヘッダー + ko: 추적 헤더 추가 + ms: Tajuk Jejakan Tambahan + pt-br: Cabeçalhos de Rastreamento Adicionais + ru: Дополнительные заголовки трассировки + tr: Ek İzleme Başlıkları + description: + en: "Reference: https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md" + zh: "参考: https://github.com/looplj/axonhub/blob/unstable/docs/zh/guides/tracing.md" + ja: 参考:https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md + zh-Hant: "参考: https://github.com/looplj/axonhub/blob/unstable/docs/zh/guides/tracing.md" + ko: "참조: https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md" + ms: "Rujukan: https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md" + pt-br: "Referência: https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md" + ru: "Ссылка: https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md" + tr: "Referans: https://github.com/looplj/axonhub/blob/unstable/docs/en/guides/tracing.md" + required: false + type: text + edit: true + - default: "true" + envKey: AXONHUB_SERVER_TRACE_CLAUDE_CODE_TRACE_ENABLED + labelZh: 启用 Claude Code 追踪 + labelEn: Claude Code Trace Enabled + label: + zh: 启用 Claude Code 追踪 + zh-Hant: 啟用 Claude Code 追蹤 + en: Claude Code Trace Enabled + ja: Claude Code トラッキングを有効化 + ko: Claude Code 추적 활성화 + ms: Dayakan Penjejakan Claude Code + pt-br: Ativar Rastreamento do Claude Code + ru: Включить отслеживание Claude Code + tr: Claude Code İzlemeyi Etkinleştir + description: + en: Enable extracting trace IDs from Claude Code request metadata + zh: 启用从 Claude Code 请求元数据中提取追踪 ID + zh-Hant: 啟用從 Claude Code 請求元資料中提取追蹤 ID + ja: Claude Code リクエストメタデータからのトレース ID 抽出を有効にする + ko: Claude Code 요청 메타데이터에서 추적 ID 추출 활성화 + ms: Dayakan pengekstrakan ID jejak daripada metadata permintaan Claude Code + pt-br: Ativar extração de IDs de rastreamento dos metadados da solicitação do Claude Code + ru: Включить извлечение идентификаторов трассировки из метаданных запроса Claude Code + tr: Claude Code istek meta verilerinden iz kimliklerinin çıkarılmasını etkinleştir + required: false + type: select + edit: true + values: + - label: 启用 / Enabled + value: "true" + - label: 禁用 / Disabled + value: "false" + - default: 0 2 * * * + envKey: AXONHUB_GC_CRON + labelZh: 垃圾回收 Cron 表达式 + labelEn: GC Cron Expression + label: + zh: 垃圾回收 Cron 表达式 + zh-Hant: 垃圾回收 Cron 表達式 + en: GC Cron Expression + ja: GC実行用のCron式 + ko: 가비지 컬렉션 실행용 Cron 표현식 + ms: Ungkapan Cron untuk pelaksanaan Pengumpulan Sampah + pt-br: Expressão Cron para execução da Coleta de Lixo + ru: Cron-выражение для выполнения сборки мусора + tr: Çöp Toplama yürütmesi için Cron ifadesi + required: false + type: text + edit: true diff --git a/apps/axonhub/0.6.10/docker-compose.yml b/apps/axonhub/0.6.10/docker-compose.yml new file mode 100644 index 000000000..1629aad23 --- /dev/null +++ b/apps/axonhub/0.6.10/docker-compose.yml @@ -0,0 +1,25 @@ +services: + axonhub: + image: looplj/axonhub:v0.6.10 + container_name: ${CONTAINER_NAME} + restart: always + ports: + - ${PANEL_APP_PORT_HTTP}:8090 + environment: + AXONHUB_DB_DIALECT: postgres + AXONHUB_DB_DSN: postgres://${PANEL_DB_USER}:${PANEL_DB_USER_PASSWORD}@${PANEL_DB_HOST}:${PANEL_DB_PORT}/${PANEL_DB_NAME}?sslmode=disable + AXONHUB_SERVER_TRACE_EXTRA_TRACE_HEADERS: ${AXONHUB_SERVER_TRACE_EXTRA_TRACE_HEADERS} + AXONHUB_SERVER_TRACE_CLAUDE_CODE_TRACE_ENABLED: ${AXONHUB_SERVER_TRACE_CLAUDE_CODE_TRACE_ENABLED} + AXONHUB_CACHE_MODE: ${AXONHUB_CACHE_MODE} + AXONHUB_CACHE_REDIS_URL: redis://default:${PANEL_REDIS_ROOT_PASSWORD}@${PANEL_REDIS_HOST}:6379 + AXONHUB_GC_CRON: ${AXONHUB_GC_CRON} + volumes: + - ${DATA_PATH}/data:/app/data + - ${DATA_PATH}/logs:/app/logs + labels: + createdBy: Apps + networks: + - 1panel-network +networks: + 1panel-network: + external: true diff --git a/apps/axonhub/README.md b/apps/axonhub/README.md new file mode 100644 index 000000000..c3cb4dcaf --- /dev/null +++ b/apps/axonhub/README.md @@ -0,0 +1,10 @@ +## 产品介绍 + +现代化的多合一 AI 开发平台 + +## 主要功能 + +- **统一 API**: 兼容 OpenAI 与 Anthropic 的接口,配合转换管线实现模型互换与映射,无需改动现有代码。 +- **追踪 / 线程**: 线程级追踪实时记录完整调用链路,提升可观测性与问题定位效率。 +- **细粒度权限**: 基于 RBAC 的权限策略,帮助团队精细管理访问控制、配额与数据隔离。 +- **自适应负载均衡**: 智能多策略负载均衡,自动选择最优 AI 通道,确保高可用性和最佳性能。 \ No newline at end of file diff --git a/apps/axonhub/README_en.md b/apps/axonhub/README_en.md new file mode 100644 index 000000000..3b98790de --- /dev/null +++ b/apps/axonhub/README_en.md @@ -0,0 +1,10 @@ +## Introduction + +Modern All-in-one AI Development Platform + +## Features + +- **Unified API**: OpenAI- and Anthropic-compatible interface with automatic API translation lets you use one API format to access any supported model provider. +- **Tracing / Threads**: Thread-aware tracing captures full request timelines for deep observability and faster debugging. +- **Fine-grained Permission**: RBAC-based policies help teams govern access, usage, 和 data segregation precisely. +- **Adaptive Load Balancing**: Intelligent multi-strategy load balancing automatically selects optimal AI channels based on health, performance, 和 session consistency. \ No newline at end of file diff --git a/apps/axonhub/data.yml b/apps/axonhub/data.yml new file mode 100644 index 000000000..389ac7ee6 --- /dev/null +++ b/apps/axonhub/data.yml @@ -0,0 +1,30 @@ +name: axonhub +tags: + - AI +title: 现代化的多合一 AI 开发平台 +description: 现代化的多合一 AI 开发平台 +additionalProperties: + key: axonhub + name: axonhub + tags: + - AI + shortDescZh: 现代化的多合一 AI 开发平台 + shortDescEn: Modern All-in-one AI Development Platform + description: + en: Modern All-in-one AI Development Platform + zh: 现代化的多合一 AI 开发平台 + zh-Hant: 現代化的一體化 AI 開發平台 + ja: モダンなオールインワンAI開発プラットフォーム + ms: Platform Pembangunan AI All-in-One Moden + pt-br: Plataforma de Desenvolvimento em IA Tudo-em-Um Moderna + ru: Современная всеобъемлющая платформа для разработки ИИ + ko: 현대적인 올인원 AI 개발 플랫폼 + type: website + crossVersionUpdate: true + limit: 0 + website: https://axonhub.onrender.com + github: https://github.com/looplj/axonhub + document: https://github.com/looplj/axonhub/blob/unstable/README.zh-CN.md + architectures: + - amd64 + - arm64 diff --git a/apps/axonhub/logo.png b/apps/axonhub/logo.png new file mode 100644 index 000000000..63207017b Binary files /dev/null and b/apps/axonhub/logo.png differ diff --git a/apps/sub-store/latest/.env.sample b/apps/sub-store/latest/.env.sample new file mode 100644 index 000000000..965972f52 --- /dev/null +++ b/apps/sub-store/latest/.env.sample @@ -0,0 +1,6 @@ +CONTAINER_NAME="sub-store" +PANEL_APP_PORT_HTTP="40232" +DATA_PATH="./data" +SUB_STORE_CRON="55 23 * * *" +SUB_STORE_FRONTEND_BACKEND_PATH="/2cXaAxRGfddmGz2yx1wA" +SUB_STORE_PUSH_SERVICE="https://api.day.app/XXXXXXXXXXXX/[推送标题]/[推送内容]?group=SubStore&autoCopy=1&isArchive=1&sound=shake&level=timeSensitive&icon=https%3A%2F%2Fraw.githubusercontent.com%2F58xinian%2Ficon%2Fmaster%2FSub-Store1.png" diff --git a/apps/sub-store/latest/data.yml b/apps/sub-store/latest/data.yml new file mode 100644 index 000000000..e5f9e2a01 --- /dev/null +++ b/apps/sub-store/latest/data.yml @@ -0,0 +1,53 @@ +additionalProperties: + formFields: + - default: 40232 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + label: + en: Port + zh: 端口 + required: true + rule: paramPort + type: number + - default: 'https://api.day.app/XXXXXXXXXXXX/[推送标题]/[推送内容]?group=SubStore&autoCopy=1&isArchive=1&sound=shake&level=timeSensitive&icon=https%3A%2F%2Fraw.githubusercontent.com%2F58xinian%2Ficon%2Fmaster%2FSub-Store1.png' + edit: true + envKey: SUB_STORE_PUSH_SERVICE + labelEn: Push Service URL + labelZh: 推送服务 URL + label: + en: Push Service URL + zh: 推送服务 URL + required: true + type: text + - default: "55 23 * * *" + edit: true + envKey: SUB_STORE_CRON + labelEn: Cron Schedule + labelZh: Cron 定时任务 + label: + en: Cron Schedule + zh: Cron 定时任务 + required: true + type: text + - default: "/2cXaAxRGfddmGz2yx1wA" + edit: true + envKey: SUB_STORE_FRONTEND_BACKEND_PATH + labelEn: Frontend Backend Path + labelZh: 前端后端路径 + label: + en: Frontend Backend Path + zh: 前端后端路径 + required: true + type: text + - default: "./data" + edit: true + envKey: DATA_PATH + labelEn: Data Directory + labelZh: 数据目录 + label: + en: Data Directory + zh: 数据目录 + required: true + type: text diff --git a/apps/sub-store/latest/docker-compose.yml b/apps/sub-store/latest/docker-compose.yml new file mode 100644 index 000000000..cfabd4ba0 --- /dev/null +++ b/apps/sub-store/latest/docker-compose.yml @@ -0,0 +1,22 @@ +services: + sub-store: + image: xream/sub-store:latest + pull_policy: always + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:3001" + environment: + - SUB_STORE_PUSH_SERVICE=${SUB_STORE_PUSH_SERVICE} + - SUB_STORE_BACKEND_SYNC_CRON=${SUB_STORE_CRON} + - SUB_STORE_FRONTEND_BACKEND_PATH=${SUB_STORE_FRONTEND_BACKEND_PATH} + volumes: + - ${DATA_PATH}:/opt/app/data + labels: + createdBy: "Apps" + +networks: + 1panel-network: + external: true