← 开源
DrizzleTime

Foxel

A highly extensible private cloud storage solution for individuals and teams, featuring AI-powered semantic search.

ApplicationsSpecialistsPython
在 GitHub 打开
增长势头
+124 小时新增 Star+0.1%
1.09k
Star
99
Fork
+2
本周
4
贡献者
创建于 2025-05-18 · 更新于 2026-10-16 · 今日第 5858 名
主要开发者
DrizzleTimeXiaoQing235davidgao7

DrizzleTime/Foxel 排名第 5,858,有 1,086 个星标。

同类别比较

DrizzleTime/Foxel 排名第 5,858,此处有 8 个同类条目;mittagessen/kraken 排名第 5,860。

同类别比较
名称排名指标
brenpoly/be-more-agent5,835
语言:
Python
星标数:
1,119
分叉数:
217
简介:
Local AI Agent running on Raspberry Pi
stardustai/dataset-viewer5,847
语言:
TypeScript
星标数:
1,100
分叉数:
78
简介:
A sleek dataset viewer built entirely by AI Agent. Supports streaming large files from WebDAV, S3, SSH, Local or Hugging Face.
piotrostr/listen5,853
语言:
TypeScript
星标数:
1,094
分叉数:
165
简介:
DeFAI Swiss Army Knife
K9i-0/ccpocket5,855
语言:
Dart
星标数:
1,091
分叉数:
117
mittagessen/kraken5,860
语言:
Python
星标数:
1,084
分叉数:
176
简介:
OCR engine for all the languages
getrebuild/rebuild5,863
语言:
Java
星标数:
1,081
分叉数:
260
简介:
最新版全面支持AI智能!通过自然语言操作业务数据,支持 Skills/工具/知识库/MCP。高度可配置化的国产企业管理系统,企业内部可免费商用!零代码/低代码快速搭建WMS库存管理、MES生产报工、CRM客户管理、HRM人事管理,以及 TMS/ERP 等
FuJacob/cotabby5,864
语言:
Swift
星标数:
1,080
分叉数:
74
简介:
Cotabby is local AI autocomplete for your entire Mac. Open source. On device. Everywhere you type.
pikpikcu/airecon5,867
语言:
Python
星标数:
1,075
分叉数:
169
关键参数与规格
关键参数与规格
参数值
语言Python
类别Applications
子类别Specialists
星标数1,086
分叉数99
贡献者4
创建日期2025-05-18
更新日期2026-10-16
1 天星标数1
7 天星标数2
排名5,858
上次排名11,605
排名变化5,747
7 天星标排名8,239
上次 7 天星标排名10,244
7 天星标排名变化2,005
总星标排名10,458
上次总星标排名10,448
总星标排名变化-10
国家China
README 摘录

English | 简体中文 Foxel **A highly extensible private cloud storage solution for individuals and teams, featuring AI-powered semantic search. Baidu Netdisk uses OAuth with , , and a matching . Powered by configurable embedding providers and vector databases (Milvus, Qdrant). **Custom Roles**: Create tailored roles with fine-grained system and adapter permissions. **Path-based Rules**: Define read / write / delete / share permissions per path, with support for **wildcards**, **regex patterns**, and **priority-based rule ordering**. **Audit Logging**: Every user action is

recorded with full traceability (user, IP, method, status, duration). 🔗 Sharing Generate public or password-protected share links with configurable expiration dates. Recipients can browse shared files and folders without logging in. 🧩 Plugin System Extend Foxel's capabilities through a manifest-based plugin architecture. Load React frontend components and custom backend routes at runtime, without modifying the core codebase. MCP and Agent boundaries The MCP endpoint is . External clients authenticate with a Foxel Bearer Token and own their confirmation UI; the server

always enforces the authenticated user's path permissions. Set to the public Foxel URL (for example, ) to allow its Host and Origin headers through MCP transport validation. External MCP clients can access file-system and processor tools. and are available only to the built-in AI agent and are not exposed through MCP. Directory listing, metadata, text reads, search, and processor listing can run directly. In the built-in agent, and also run without approval. supports GET/POST/PUT/PATCH/DELETE

/HEAD/OPTIONS, including external write requests, without an additional Foxel approval step. Agent writes, creates, deletes, moves, copies, renames, and calls create database-backed approval batches. Approval requests must include the returned ; execution uses the server-stored arguments, rejects expired or cross-user requests, and does not re-execute repeated confirmations. Recursive changes and directory processing validate all enumerated children before starting. Any denied or unverifiable path rejects the batch; queued work rechecks permissions and stops after a scope change

. Tools return structured error codes such as , , , , , and without exposing internal exceptions or credentials. Agent conversations currently support OpenAI, Anthropic, and Ollama interfaces, with at most eight tool-call rounds per request. Processor task IDs can be tracked in the task queue. 14+, FastAPI, Tortoise ORM, SQLite | | **Frontend** | React 19, TypeScript, Vite, Ant Design | | **Auth** | JWT (OAuth2), bcrypt | | **Vector DB** | Milvus Lite / Server, Qdrant | | **Deployment** | Docker, Gunicorn + Uvicorn | | **Package Managers** | uv (Python), Bun (JS) | 🚀 Quick Start Using Docker Compose is

the most recommended way to start Foxel. Create Data Directories Create a folder for persistent data: 2. Download Docker Compose File After downloading, it is **strongly recommended** to modify the environment variables in the file to ensure security: Modify and : Replace the default keys with randomly generated strong keys. Access the Application Once the services are running, open the page in your browser. On the first launch, please follow the setup guide to initialize the administrator account. 🤝 How to Contribute

We welcome contributions from the community! Whether it's submitting bugs, suggesting new features, or contributing code directly. Before you start

常见问题

记录了多少星标和分叉?

DrizzleTime/Foxel 有 1,086 个星标和 99 个分叉。

仓库排名是多少?

DrizzleTime/Foxel 排名第 5,858。

记录的语言和类别是什么?

DrizzleTime/Foxel 有 1,086 个星标,语言为 Python,类别为 Applications。

哪个仓库排名最接近?

DrizzleTime/Foxel 与 mittagessen/kraken 比较,后者排名第 5,860,有 1,084 个星标。

README

English | 简体中文

Foxel

A highly extensible private cloud storage solution for individuals and teams, featuring AI-powered semantic search.


The ocean of data is boundless, let the eye of insight guide the voyage, yet its intricate connections lie deep, not fully discernible from the surface.

👀 Online Demo

https://demo.foxel.cc

Account/Password: admin / admin

✨ Core Features

📁 Unified File Management

Centralize management of files distributed across different storage backends. Browse, upload, download, move, copy, and delete — all through a single, unified interface.

🔌 Pluggable Storage Backends

Utilizes an extensible adapter pattern to easily integrate various storage types:

Category Adapters
Standard Protocols Local, S3-compatible, WebDAV, SFTP, FTP, SMB
Cloud Drives Google Drive, OneDrive, Dropbox, Baidu Netdisk, Quark, UC, 123Pan, 115, 189
Special Telegram, AList, Foxel-to-Foxel, Seafile, Cloudreve V4

The UC, 123Pan, 115, 189, SMB, Seafile, and Cloudreve V4 adapters use account or server credentials rather than developer SDK keys. See configuration notes.

Baidu Netdisk uses OAuth with client_id, client_secret, and a matching refresh_token. See setup and limits.

🔍 AI-Powered Semantic Search

Go beyond filename matching — search by natural language descriptions to find content within images, documents, and other unstructured data. Powered by configurable embedding providers and vector databases (Milvus, Qdrant).

👁️ Built-in File Preview

Preview images, videos, PDFs, Office documents, text, and code files directly in the browser — no downloads required.

🔐 Permissions & Access Control

A full-featured Role-Based Access Control (RBAC) system to secure your data:

  • Built-in Roles: Three system roles — Admin (full access), User (configurable access), and Viewer (read-only).
  • Custom Roles: Create tailored roles with fine-grained system and adapter permissions.
  • Path-based Rules: Define read / write / delete / share permissions per path, with support for wildcards, regex patterns, and priority-based rule ordering.
  • Audit Logging: Every user action is recorded with full traceability (user, IP, method, status, duration).

🔗 Sharing

Generate public or password-protected share links with configurable expiration dates. Recipients can browse shared files and folders without logging in.

🧩 Plugin System

Extend Foxel's capabilities through a manifest-based plugin architecture. Load React frontend components and custom backend routes at runtime, without modifying the core codebase.

⚙️ Task Processing Center

Run asynchronous background tasks — file indexing, data backups, scheduled jobs — without impacting the main application.

🤖 AI Agent

An integrated AI agent with built-in tools for VFS operations, web fetching, and file processing — bringing intelligent automation directly into your cloud storage.

MCP and Agent boundaries

  • The MCP endpoint is /api/mcp/. External clients authenticate with a Foxel Bearer Token and own their confirmation UI; the server always enforces the authenticated user's path permissions.
  • Set APP_DOMAIN to the public Foxel URL (for example, https://my.foxel.cc) to allow its Host and Origin headers through MCP transport validation. Loopback access remains available.
  • External MCP clients can access file-system and processor tools. time and web_fetch are available only to the built-in AI agent and are not exposed through MCP.
  • Directory listing, metadata, text reads, search, and processor listing can run directly. In the built-in agent, time and web_fetch also run without approval. web_fetch supports GET/POST/PUT/PATCH/DELETE/HEAD/OPTIONS, including external write requests, without an additional Foxel approval step.
  • Agent writes, creates, deletes, moves, copies, renames, and processors_run calls create database-backed approval batches. Approval requests must include the returned approval_batch_id; execution uses the server-stored arguments, rejects expired or cross-user requests, and does not re-execute repeated confirmations.
  • Recursive changes and directory processing validate all enumerated children before starting. Any denied or unverifiable path rejects the batch; queued work rechecks permissions and stops after a scope change.
  • Tools return structured error codes such as permission_denied, invalid_arguments, permission_scope_unverifiable, approval_expired, request_timeout, and execution_failed without exposing internal exceptions or credentials.
  • Agent conversations currently support OpenAI, Anthropic, and Ollama interfaces, with at most eight tool-call rounds per request. Processor task IDs can be tracked in the task queue.

🌐 Protocol Mappings

Access your files through familiar protocols:

  • S3 API — S3-compatible endpoint for programmatic access, with multiple buckets mapped to virtual directories
  • WebDAV — Mount as a network drive in your OS file manager
  • Direct Links — Temporary signed URLs for direct file access

🛠️ Tech Stack

Layer Technologies
Backend Python 3.14+, FastAPI, Tortoise ORM, SQLite
Frontend React 19, TypeScript, Vite, Ant Design
Auth JWT (OAuth2), bcrypt
Vector DB Milvus Lite / Server, Qdrant
Deployment Docker, Gunicorn + Uvicorn
Package Managers uv (Python), Bun (JS)

🚀 Quick Start

Using Docker Compose is the most recommended way to start Foxel.

1. Create Data Directories

Create a data folder for persistent data:

mkdir -p data/db data/mount
chmod 777 data/db data/mount

2. Download Docker Compose File

curl -L -O https://github.com/DrizzleTime/Foxel/raw/main/compose.yaml

After downloading, it is strongly recommended to modify the environment variables in the compose.yaml file to ensure security:

  • Modify SECRET_KEY and TEMP_LINK_SECRET_KEY: Replace the default keys with randomly generated strong keys.

3. Start the Services

docker-compose up -d

4. Access the Application

Once the services are running, open the page in your browser.

On the first launch, please follow the setup guide to initialize the administrator account.

🤝 How to Contribute

We welcome contributions from the community! Whether it's submitting bugs, suggesting new features, or contributing code directly.

Before you start, please read our CONTRIBUTING.md file, which explains the development environment and submission process. A Simplified Chinese translation is available in CONTRIBUTING_zh.md.

🌐 Community

Join our community on Telegram to discuss with developers and other users!

You can also join our WeChat group for more real-time communication and support. Please scan the QR code below to join:

If the QR code is invalid, please add WeChat ID drizzle2001, and we will invite you to the group.

📄 License

Foxel is open-sourced under the MIT License.

排名相邻
同类项目