Initial commit: SenSu Alpha 0.2.0

- 13-service async plugin framework
- Textual TUI with CLI fallback
- Plugin hot-reload + permission system
- Web management panel (aiohttp)
- Bridge-based inter-module communication
- 10 regression tests

Fixes applied:
- PBKDF2-SHA256 auth (was plain SHA256)
- Auth bypass removed (was allow-all on fail)
- Bare excepts replaced with logged errors
- CatFramework/DreamSu -> SenSu naming unified
- ServiceManager: health checks + startup_order
- Env var credentials (SENSU_ADMIN_PASSWORD etc)
This commit is contained in:
2026-06-10 12:27:14 +08:00
commit e6875f0b4b
78 changed files with 14843 additions and 0 deletions
+145
View File
@@ -0,0 +1,145 @@
# 🐱 SenSu
一个功能强大的Python后端框架,具有插件化架构和丰富的功能集。
## ✨ 特性
- 🎨 **TUI界面**: 基于Textual的终端用户界面
- 📝 **强大日志系统**: 多输出、文件切割、实时日志流
- 🔌 **插件化架构**: 热加载、权限管理、插件隔离
- 🌐 **网络服务**: WebSocket、HTTP API、反向代理
- 🔐 **认证系统**: 用户认证、令牌管理、权限验证
- 🔄 **消息桥接**: 模块间通信、插件间通信
-**高性能**: 异步架构、协程支持
- 🛡️ **安全**: 权限验证、输入验证、错误隔离
## 🚀 快速开始
### 安装依赖
```bash
pip install -r requirements.txt
```
### 运行框架
```bash
python main.py
```
### 基本命令
在TUI底部输入框中输入命令:
- `help` - 显示帮助信息
- `status` - 显示框架状态
- `history` - 显示命令历史
## 📁 项目结构
```
project_root/
├── main.py # 框架主入口
├── service_manager.py # 服务管理器
├── requirements.txt # 依赖包列表
├── README.md # 项目说明
├── config/ # 运行时生成的配置文件
│ ├── framework/ # 框架核心配置
│ ├── plugins/ # 插件配置
│ ├── services/ # 服务配置
│ └── permissions/ # 权限配置
├── logs/ # 日志文件目录
│ ├── debug/ # debug级别日志
│ └── runtime/ # 运行时日志
├── services/ # 核心服务模块
│ ├── init_service.py # 初始化服务
│ ├── log_service.py # 日志服务
│ ├── tui_service.py # TUI服务
│ ├── command_service.py # 指令服务
│ ├── auth_service.py # 认证服务
│ ├── internet_service.py # 互联网服务
│ ├── plugin_service.py # 插件服务
│ ├── permission_service.py # 权限服务
│ ├── api_service.py # API服务
│ └── shutdown_service.py # 关闭服务
├── bridges/ # 桥接模块
│ ├── core_bridge.py # 核心桥接
│ └── plugin_bridge.py # 插件桥接
├── fmfuncs/ # 框架功能集
│ ├── file_utils.py # 文件操作工具
│ ├── config_utils.py # 配置工具
│ ├── validation_utils.py # 验证工具
│ ├── network_utils.py # 网络工具
│ └── plugin_utils.py # 插件工具
├── plugins/ # 插件目录
│ └── example_plugin/ # 示例插件
└── gui/ # GUI接口
└── api.py # GUI操作接口
```
## 🔌 插件开发
### 创建插件
1.`plugins/` 目录下创建插件文件夹
2. 创建必要的配置文件:
- `__init__.py` - 插件主模块
- `config.yaml` - 插件配置
- `permissions.yaml` - 权限申请
### 插件示例
参考 `plugins/example_plugin/` 目录中的示例插件。
## 🔧 配置说明
框架配置位于 `config/framework/` 目录:
- `base_config.yaml` - 基础框架配置
- `permission_rules.yaml` - 权限规则配置
## 📡 API接口
框架提供以下API接口:
- WebSocket服务: `ws://localhost:8765`
- HTTP API服务: `http://localhost:8000`
- GUI API服务: `http://localhost:8080`
## 🐛 问题排查
查看 `logs/` 目录中的日志文件获取详细错误信息。
## 📄 许可证
MIT License
## 🤝 贡献
欢迎提交Issue和Pull Request
```
这个完整的Python后端框架包含了这些功能:
- ✅ TUI渲染界面(三部分布局)
- ✅ 强大的日志处理模块
- ✅ 初始化系统和指令模块
- ✅ 核心桥接和插件桥接
- ✅ 互联网模块集(WebSocket、HTTP API
- ✅ 插件管理器(热加载、错误隔离)
- ✅ 权限管理器(权限申请和验证)
- ✅ API管理器
- ✅ 优雅的关闭方法
- ✅ 丰富的debug日志
- ✅ GUI API接口
- ✅ 清晰的目录结构
每个文件都有完整的错误处理和详细的日志记录 可以直接运行 `python main.py` 来启动框架
```