一个基于 Flask + SocketIO 的网页管理器。
Project description
🖥️ ClawOS
A web-based management console for Linux systems with file management, system monitoring, and service administration capabilities.
Screenshots
Click to view full size.
Table of Contents
Architecture
┌─────────────────────────────────────────────────────────────────┐
│ ClawOS Architecture │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Web Browser (Client) │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ File Browser│ │ Terminal │ │ System │ │ │
│ │ │ UI │ │ UI │ │ Monitor │ │ │
│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │ │
│ HTTP / WebSocket (REST API) │
│ │ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Flask Server │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ Blueprints │ │ SocketIO │ │ Auth │ │ │
│ │ │ (REST API) │ │ (Terminal) │ │ Middleware │ │ │
│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Service Controllers │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ File │ │ System │ │ Git │ │Docker │ │ │
│ │ │ Manager │ │ Monitor│ │Manager │ │Manager│ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ FRPMgr │ │ClashMgr│ │OpenClaw│ │Terminal │ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌───────────────┼───────────────┐ │
│ ▼ ▼ ▼ │
│ ┌───────────┐ ┌───────────┐ ┌───────────┐ │
│ │ Local File │ │Systemd │ │ External │ │
│ │ System │ │ Services │ │ Services │ │
│ └───────────┘ └───────────┘ └───────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
Technology Stack
┌─────────────────────────────────────────┐
│ Frontend │
├─────────────────────────────────────────┤
│ HTML5 + CSS3 (Responsive) │
│ Vue.js 3 (Reactive UI) │
│ xterm.js (Terminal Emulator) │
│ Monaco Editor (Code Editing) │
│ Socket.IO Client (WebSocket) │
└─────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ Backend │
├─────────────────────────────────────────┤
│ Python 3.8+ │
│ Flask 2.x (REST API) │
│ Flask-SocketIO 5.x (WebSocket) │
│ psutil (System Monitoring) │
│ GitPython (Git Integration) │
└─────────────────────────────────────────┘
Features
📂 File Management
- Browse files with hierarchical navigation
- Upload/download files (drag & drop supported)
- Create folders, rename, move, delete, clone
- Multi-select with checkboxes
- Batch operations (copy/move/delete)
- Trash recovery system
- File search with filters
- Symlink detection and handling
- Broken symlink visualization (black background, red text)
📝 Multi-Format Editors
- JSON Editor: Syntax highlighting, validation, tree/text/table modes
- YAML/TOML Editor: Monaco-based code editor with syntax highlighting
- Markdown Preview: Live preview with rendering
- Code Editor: Multi-language support (Python, JS, HTML, CSS, etc.)
- Config Editors: INI, CONF, XML support
🖥️ Web Terminal
- Full xterm.js terminal emulator
- Socket.IO-based real-time communication
- Command history navigation
- Session persistence
📊 System Monitoring
- CPU usage and memory statistics
- Process list with sorting
- Disk usage information
- Network interface stats
- GPU information (NVIDIA)
- Docker container management
- Systemd service management
🤖 Service Management
FRP Management (frpc)
┌─────────────────────────────────────┐
│ 🌐 FRP 内网穿透 │
├─────────────────────────────────────┤
│ Service Status: ● Running │
│ │
│ Server: your-frp-server:17777 │
│ │
│ Proxies: │
│ - test-tcp (22 → 6022) │
│ - http (80 → 6080) │
│ - 18789 (18789 → 18789) │
│ - 5001 (5001 → 15001) │
│ - 6002 (6002 → 6002) │
│ │
│ [Start] [Stop] [Restart] │
│ [Edit Config] │
└─────────────────────────────────────┘
Clash Management
┌─────────────────────────────────────┐
│ 🌐 Clash 代理 │
├─────────────────────────────────────┤
│ Service Status: ● Running │
│ │
│ Ports: 7890 (Mixed) │
│ │
│ 📡 Subscription │
│ [输入订阅URL] [Update] │
│ │
│ 🎯 Proxy Groups │
│ - 一元机场 → 香港 01 │
│ - 自动选择 → 香港 02 │
│ │
│ 📡 Nodes: 12 │
│ 📊 Rules: 514 │
└─────────────────────────────────────┘
OpenClaw Integration
- Gateway status monitoring
- Agent management
- Channel configuration
- Skills installation tracking
- Health diagnostics
🐙 Git Integration
- Repository browser
- Branch management
- Commit history viewer
- Diff visualization
- Status bar integration
🔐 Security Features
- Password-based authentication
- Session management
- Path traversal protection
- File operation permissions
- Symlink safety checks
Installation
Requirements
- Linux with systemd user services (
systemctl --user) python3,pip3,git,openssl
1. Clone to the expected path
The installer assumes the source code is located at ~/clawos.
git clone https://github.com/mrytsr/clawos.git ~/clawos
cd ~/clawos
2. Run installer
bash install.sh
What the script does:
- Installs Python dependencies when needed (
pip3 install -r ~/clawos/requirements.txtif Flask is missing) - Creates data directory:
~/.local/clawos - Generates random password:
~/.local/clawos/clawos_password.json - Installs CLI to:
/usr/local/bin/clawos - Writes user unit to:
~/.config/systemd/user/clawos.service - Enables and starts service via:
systemctl --user
3. Access & manage
- Web UI:
http://127.0.0.1:6002/ - Password:
clawos statusorcat ~/.local/clawos/clawos_password.json - Logs:
journalctl --user -u clawos -f
clawos start|stop|restart|status|log|enable|disable|password
Notes
- If you cannot write to
/usr/local/bin, changeBIN_FILEininstall.shto~/.local/bin/clawos(and ensure~/.local/binis inPATH), then rerun. - On headless servers, user services may stop after logout; enable linger if you need it:
loginctl enable-linger $USER
API Reference
File Operations
| Endpoint | Method | Description |
|---|---|---|
/api/file/list |
GET | List directory contents |
/api/file/info |
GET | Get file/directory info |
/api/file/read |
GET | Read file content |
/api/file/save |
POST | Write file content |
/api/file/create |
POST | Create file/folder |
/api/file/move |
POST | Move/rename file |
/api/file/delete |
POST | Delete file |
/api/file/copy |
POST | Copy file |
/api/trash/list |
GET | List trash contents |
/api/trash/restore |
POST | Restore from trash |
System Operations
| Endpoint | Method | Description |
|---|---|---|
/api/process/list |
GET | List running processes |
/api/disk/list |
GET | List disk usage |
/api/network/list |
GET | List network interfaces |
/api/gpu/info |
GET | GPU information |
/api/system/exec |
POST | Execute system command |
Service Management
| Endpoint | Method | Description |
|---|---|---|
/api/systemd/list |
GET | List systemd services |
/api/systemd/control |
POST | Control service (start/stop/restart) |
/api/docker/containers |
GET | List Docker containers |
/api/docker/container/start |
POST | Start container |
/api/docker/container/stop |
POST | Stop container |
FRP Management
| Endpoint | Method | Description |
|---|---|---|
/api/frp/config |
GET | Get FRP configuration |
/api/frp/config |
POST | Save FRP configuration |
Clash Management
| Endpoint | Method | Description |
|---|---|---|
/api/clash/state |
GET | Get Clash status |
/api/clash/proxies |
GET | Get proxy list |
/api/clash/subscribe |
POST | Update subscription |
/api/clash/switch |
POST | Switch proxy node |
Git Operations
| Endpoint | Method | Description |
|---|---|---|
/api/git/repos |
GET | List git repositories |
/api/git/status |
GET | Get repository status |
/api/git/log |
GET | Get commit history |
/api/git/diff |
GET | Get diff output |
Project Structure
clawos/
├── app.py # Flask application entry point
├── config.py # Configuration settings
├── requirements.txt # Python dependencies
├── package.json # Node.js dependencies
│
├── ctrl/ # Flask blueprints (controllers)
│ ├── api_ctrl.py # Generic API utilities
│ ├── auth_ctrl.py # Authentication
│ ├── batch_ctrl.py # Batch operations
│ ├── browser_ctrl.py # File browser API
│ ├── clash_ctrl.py # Clash proxy management
│ ├── edit_ctrl.py # File editing
│ ├── file_ctrl.py # File operations
│ ├── frp_ctrl.py # FRP management
│ ├── git_ctrl.py # Git integration
│ ├── openclaw_ctrl.py # OpenClaw integration
│ ├── system_ctrl.py # System monitoring
│ ├── task_ctrl.py # Task management
│ └── term.py # Terminal socket handler
│
├── lib/ # Utility modules
│ ├── ai_client.py # AI assistant client
│ ├── disk_utils.py # Disk utilities
│ ├── docker_utils.py # Docker utilities
│ ├── email_utils.py # Email utilities
│ ├── file_utils.py # File utilities
│ ├── git_utils.py # Git utilities
│ ├── json_utils.py # JSON utilities
│ ├── network_utils.py # Network utilities
│ ├── packages_utils.py # Package management
│ ├── path_utils.py # Path utilities
│ ├── process_utils.py # Process utilities
│ └── systemd_utils.py # Systemd utilities
│
├── static/ # Static assets
│ ├── js/
│ │ ├── bot.js # AI assistant
│ │ ├── file_browser.js # File browser
│ │ ├── file_clipboard.js # Clipboard operations
│ │ ├── globals.js # Global utilities
│ │ ├── git.js # Git integration
│ │ ├── preview.js # File preview
│ │ ├── system_monitor.js # System monitoring
│ │ ├── task_actions.js # Task actions
│ │ ├── task_poller.js # Task polling
│ │ └── terminal.js # Terminal
│ └── css/ # Stylesheets
│
├── templates/ # HTML templates
│ ├── index.html # Main application
│ ├── login.html # Login page
│ ├── trash.html # Trash management
│ ├── json_editor.html # JSON editor
│ ├── yaml_editor.html # YAML/TOML editor
│ ├── markdown.html # Markdown preview
│ ├── code_editor.html # Code editor
│ ├── git_commit.html # Git commit viewer
│ └── ...
│
├── data/ # Runtime data
│ ├── conversations.json # Chat history
│ └── trash/ # Trash directory
│
└── README.md # This file
Security
⚠️ Important Security Notes
- Default Credentials: Change the default password immediately after installation
- Network Exposure: Do not expose directly to the internet
- Use HTTPS: Deploy behind a reverse proxy with HTTPS
- Terminal Access: Web terminal can execute arbitrary commands - use carefully
- File Operations: All file operations are logged
Recommended Deployment
┌─────────────────┐
│ Nginx/Caddy │
│ (HTTPS + Auth) │
└────────┬────────┘
│
┌────────▼────────┐
│ ClawOS (LAN) │
│ http://:6002 │
└─────────────────┘
License
MIT License - See LICENSE file for details.
🖥️ ClawOS
基于 Web 的 Linux 系统管理控制台,提供文件管理、系统监控和服务管理功能。
架构─────────────────────────────────────────────────────────────────┐
┌
│ ClawOS 架构 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ 浏览器客户端 │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ 文件管理 │ │ 终端 │ │ 系统监控 │ │ │
│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │ │
│ HTTP / WebSocket (REST API) │
│ │ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Flask 服务器 │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ Blueprints │ │ SocketIO │ │ 认证 │ │ │
│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ 服务控制器 │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ 文件 │ │ 系统 │ │ Git │ │Docker │ │ │
│ │ │ 管理 │ │ 监控 │ │ 管理 │ │ 管理 │ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ FRP管理│ │Clash管理│ │OpenClaw│ │ 终端 │ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌───────────────┼───────────────┐ │
│ ▼ ▼ ▼ │
│ ┌───────────┐ ┌───────────┐ ┌───────────┐ │
│ │ 本地文件系统 │ │ Systemd │ │ 外部服务 │ │
│ └───────────┘ └───────────┘ └───────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
功能特性
📂 文件管理
- 分层导航浏览文件
- 上传/下载文件(支持拖拽)
- 创建文件夹、重命名、移动、删除、克隆
- 多选操作
- 批量操作(复制/移动/删除)
- 回收站恢复系统
- 文件搜索和过滤
- 软链接检测和处理
- 破损软链接可视化(黑底红字)
📝 多格式编辑器
- JSON 编辑器: 语法高亮、验证、树/文本/表格模式
- YAML/TOML 编辑器: Monaco 代码编辑器
- Markdown 预览: 实时预览渲染
- 代码编辑器: 多语言支持
- 配置文件编辑: INI、CONF、XML 支持
🖥️ Web 终端
- 完整的 xterm.js 终端模拟器
- Socket.IO 实时通信
- 命令历史导航
- 会话持久化
📊 系统监控
- CPU 使用率和内存统计
- 进程列表(支持排序)
- 磁盘使用信息
- 网络接口统计
- GPU 信息(NVIDIA)
- Docker 容器管理
- Systemd 服务管理
🤖 服务管理
FRP 管理
┌─────────────────────────────────────┐
│ 🌐 FRP 内网穿透 │
├─────────────────────────────────────┤
│ 服务状态: ● 运行中 │
│ │
│ 服务端: your-frp-server:17777 │
│ │
│ 代理列表: │
│ - test-tcp (22 → 6022) │
│ - http (80 → 6080) │
│ - 18789 (18789 → 18789) │
│ - 5001 (5001 → 15001) │
│ - 6002 (6002 → 6002) │
│ │
│ [启动] [停止] [重启] │
│ [编辑配置] │
└─────────────────────────────────────┘
Clash 管理
┌─────────────────────────────────────┐
│ 🌐 Clash 代理 │
├─────────────────────────────────────┤
│ 服务状态: ● 运行中 │
│ │
│ 端口: 7890 (混合端口) │
│ │
│ 📡 订阅管理 │
│ [输入订阅URL] [更新] │
│ │
│ 🎯 代理组 │
│ - 一元机场 → 香港 01 │
│ - 自动选择 → 香港 02 │
│ │
│ 📡 节点: 12 个 │
│ 📊 规则: 514 条 │
└─────────────────────────────────────┘
OpenClaw 集成
- Gateway 状态监控
- Agent 管理
- 频道配置
- Skills 安装跟踪
- 健康诊断
🐙 Git 集成
- 仓库浏览器
- 分支管理
- 提交历史查看
- Diff 可视化
- 状态栏集成
🔐 安全特性
- 密码认证
- 会话管理
- 路径遍历保护
- 文件操作权限
- 软链接安全检查
安装
环境要求
- Linux 且支持 systemd 用户服务(
systemctl --user) python3、pip3、git、openssl
1. 按脚本约定路径克隆
安装脚本默认源码目录为 ~/clawos。
git clone https://github.com/mrytsr/clawos.git ~/clawos
cd ~/clawos
2. 运行安装脚本
bash install.sh
脚本会自动:
- 在需要时安装 Python 依赖(若缺少 Flask,则执行
pip3 install -r ~/clawos/requirements.txt) - 创建数据目录:
~/.local/clawos - 生成随机密码:
~/.local/clawos/clawos_password.json - 安装 CLI 到:
/usr/local/bin/clawos - 写入 systemd 用户服务:
~/.config/systemd/user/clawos.service - 通过
systemctl --user启用并启动服务
3. 访问与管理
- Web 地址:
http://127.0.0.1:6002/ - 密码查看:
clawos status或cat ~/.local/clawos/clawos_password.json - 日志查看:
journalctl --user -u clawos -f
clawos start|stop|restart|status|log|enable|disable|password
注意
- 如果
/usr/local/bin无写权限,可把install.sh里的BIN_FILE改为~/.local/bin/clawos(并确保~/.local/bin在PATH中),再重新运行脚本。 - 无桌面/无登录常驻的服务器上,用户服务可能在退出登录后停止;如有需要可启用 linger:
loginctl enable-linger $USER
API 参考
文件操作
| 端点 | 方法 | 描述 |
|---|---|---|
/api/file/list |
GET | 列出目录内容 |
/api/file/info |
GET | 获取文件/目录信息 |
/api/file/read |
GET | 读取文件内容 |
/api/file/save |
POST | 写入文件内容 |
/api/file/create |
POST | 创建文件/文件夹 |
/api/file/move |
POST | 移动/重命名 |
/api/file/delete |
POST | 删除文件 |
/api/file/copy |
POST | 复制文件 |
/api/trash/list |
GET | 列出回收站内容 |
/api/trash/restore |
POST | 从回收站恢复 |
系统操作
| 端点 | 方法 | 描述 |
|---|---|---|
/api/process/list |
GET | 列出运行进程 |
/api/disk/list |
GET | 列出磁盘使用情况 |
/api/network/list |
GET | 列出网络接口 |
/api/gpu/info |
GET | GPU 信息 |
/api/system/exec |
POST | 执行系统命令 |
服务管理
| 端点 | 方法 | 描述 |
|---|---|---|
/api/systemd/list |
GET | 列出 systemd 服务 |
/api/systemd/control |
POST | 控制服务 |
/api/docker/containers |
GET | 列出 Docker 容器 |
/api/docker/container/start |
POST | 启动容器 |
/api/docker/container/stop |
POST | 停止容器 |
FRP 管理
| 端点 | 方法 | 描述 |
|---|---|---|
/api/frp/config |
GET | 获取 FRP 配置 |
/api/frp/config |
POST | 保存 FRP 配置 |
Clash 管理
| 端点 | 方法 | 描述 |
|---|---|---|
/api/clash/state |
GET | 获取 Clash 状态 |
/api/clash/proxies |
GET | 获取代理列表 |
/api/clash/subscribe |
POST | 更新订阅 |
/api/clash/switch |
POST | 切换代理节点 |
Git 操作
| 端点 | 方法 | 描述 |
|---|---|---|
/api/git/repos |
GET | 列出 Git 仓库 |
/api/git/status |
GET | 获取仓库状态 |
/api/git/log |
GET | 获取提交历史 |
/api/git/diff |
GET | 获取差异输出 |
项目结构
clawos/
├── app.py # Flask 应用入口
├── config.py # 配置设置
├── requirements.txt # Python 依赖
├── package.json # Node.js 依赖
│
├── ctrl/ # Flask 蓝图(控制器)
│ ├── api_ctrl.py # 通用 API 工具
│ ├── auth_ctrl.py # 认证
│ ├── batch_ctrl.py # 批量操作
│ ├── browser_ctrl.py # 文件浏览器 API
│ ├── clash_ctrl.py # Clash 代理管理
│ ├── edit_ctrl.py # 文件编辑
│ ├── file_ctrl.py # 文件操作
│ ├── frp_ctrl.py # FRP 管理
│ ├── git_ctrl.py # Git 集成
│ ├── openclaw_ctrl.py # OpenClaw 集成
│ ├── system_ctrl.py # 系统监控
│ ├── task_ctrl.py # 任务管理
│ └── term.py # 终端 Socket 处理器
│
├── lib/ # 工具模块
│ ├── ai_client.py # AI 助手客户端
│ ├── disk_utils.py # 磁盘工具
│ ├── docker_utils.py # Docker 工具
│ ├── email_utils.py # 邮件工具
│ ├── file_utils.py # 文件工具
│ ├── git_utils.py # Git 工具
│ ├── json_utils.py # JSON 工具
│ ├── network_utils.py # 网络工具
│ ├── packages_utils.py # 包管理工具
│ ├── path_utils.py # 路径工具
│ ├── process_utils.py # 进程工具
│ └── systemd_utils.py # Systemd 工具
│
├── static/ # 静态资源
│ ├── js/
│ │ ├── bot.js # AI 助手
│ │ ├── file_browser.js # 文件浏览器
│ │ ├── file_clipboard.js # 剪贴板操作
│ │ ├── globals.js # 全局工具
│ │ ├── git.js # Git 集成
│ │ ├── preview.js # 文件预览
│ │ ├── system_monitor.js # 系统监控
│ │ ├── task_actions.js # 任务操作
│ │ ├── task_poller.js # 任务轮询
│ │ └── terminal.js # 终端
│ └── css/ # 样式表
│
├── templates/ # HTML 模板
│ ├── index.html # 主应用
│ ├── login.html # 登录页面
│ ├── trash.html # 回收站管理
│ ├── json_editor.html # JSON 编辑器
│ ├── yaml_editor.html # YAML/TOML 编辑器
│ ├── markdown.html # Markdown 预览
│ ├── code_editor.html # 代码编辑器
│ ├── git_commit.html # Git 提交查看
│ └── ...
│
├── data/ # 运行时数据
│ ├── conversations.json # 聊天历史
│ └── trash/ # 回收站目录
│
└── README.md # 本文件
安全
⚠️ 重要安全提示
- 默认凭据: 安装后请立即修改默认密码
- 网络暴露: 不要直接暴露到公网
- 使用 HTTPS: 在反向代理后部署并启用 HTTPS
- 终端访问: Web 终端可执行任意命令,请谨慎授权
- 文件操作: 所有文件操作都有日志记录
推荐的部署方式
┌─────────────────┐
│ Nginx/Caddy │
│ (HTTPS + 认证) │
└────────┬────────┘
│
┌────────▼────────┐
│ ClawOS (内网) │
│ http://:6002 │
└─────────────────┘
许可证
MIT License - 详见 LICENSE 文件。
test
test2
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file clawos-263.2.1339.tar.gz.
File metadata
- Download URL: clawos-263.2.1339.tar.gz
- Upload date:
- Size: 2.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50858bcd9d00ed239b1b0b99a374924a761ba0647d5f448f7f09147bd600deeb
|
|
| MD5 |
2e8a2b1451f30a35501bddc18f52685e
|
|
| BLAKE2b-256 |
827a9ea82768c58597fc157fe37e4a47e77fe4f32b78fe7cae7e4a2ea8b96e32
|
File details
Details for the file clawos-263.2.1339-py3-none-any.whl.
File metadata
- Download URL: clawos-263.2.1339-py3-none-any.whl
- Upload date:
- Size: 3.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99357fb8be8f8b54743d363b32543202e46947b0f1b8889164e55d41970433a7
|
|
| MD5 |
24fee4c0bfe274d55a1ee32e094eba46
|
|
| BLAKE2b-256 |
664a192315abf18285bb4ffda2274e3fea705e885b67b63762d1a39472e67c0c
|