Metadata-Version: 2.4
Name: nwtools
Version: 3.0.1
Summary: 一个用于负优化系统性能的Python包 (仅供测试使用)
Home-page: https://github.com/ruin321/nwtools
Author: ruin321
Author-email: 
Project-URL: Bug Reports, https://github.com/ruin321/nwtools/issues
Project-URL: Source, https://github.com/ruin321/nwtools
Keywords: system performance testing stress benchmark
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: psutil>=5.8.0
Requires-Dist: colorama>=0.4.4
Requires-Dist: requests>=2.25.0
Requires-Dist: pyyaml>=5.4.0
Provides-Extra: ui
Requires-Dist: pyautogui>=0.9.52; extra == "ui"
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: black>=21.0; extra == "dev"
Requires-Dist: flake8>=3.9; extra == "dev"
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license-file
Dynamic: project-url
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# nwtools

一个用于"负优化"系统性能的Python包。这个包主要用于**演示、测试和教育目的**，展示如何降低系统性能的各种方法。

⚠️ **警告**：请谨慎使用！仅在测试环境或虚拟机中使用！

## 安装

```bash
pip install nwtools
```

## 功能特性

| 功能 | 说明 |
|------|------|
| **CPU负优化** | 创建大量计算密集型任务消耗CPU资源 |
| **内存负优化** | 分配大量内存但不释放 |
| **磁盘负优化** | 频繁读写磁盘，创建大量临时文件 |
| **网络负优化** | 发送大量网络请求，消耗带宽 |
| **进程负优化** | 创建大量子进程 |
| **UI干扰** | 干扰用户界面（需要pyautogui） |
| **安全模式** | 所有操作都是可逆的，有安全限制 |

## 跨平台支持

- ✅ **Windows** - 完全支持
- ✅ **Linux** - 完全支持，可选dialog TUI
- ✅ **macOS** - 基本支持

## 使用方法

### 命令行界面 (CLI)

```bash
# 显示帮助信息
nwtools --help

# 运行所有负优化功能（默认强度）
nwtools run

# 运行特定强度的负优化
nwtools run --intensity high

# 只运行CPU负优化
nwtools cpu --duration 30

# 运行内存负优化
nwtools memory --size 1024

# 运行磁盘负优化
nwtools disk --files 100

# 运行网络负优化
nwtools network --requests 50

# 运行进程负优化
nwtools process --count 20

# 停止所有负优化任务
nwtools stop

# 显示系统状态
nwtools status
```

### Python API

```python
from nwtools import NegativeOptimizer

# 创建优化器实例
optimizer = NegativeOptimizer()

# 运行CPU负优化
optimizer.optimize_cpu(duration=30, intensity="medium")

# 运行内存负优化
optimizer.optimize_memory(size_mb=512, duration=60)

# 运行磁盘负优化
optimizer.optimize_disk(num_files=50, file_size_kb=1024)

# 运行网络负优化
optimizer.optimize_network(num_requests=100, target_url="http://example.com")

# 运行进程负优化
optimizer.optimize_process(num_processes=10)

# 停止所有优化
optimizer.stop_all()

# 获取系统状态
status = optimizer.get_system_status()
print(f"CPU使用率: {status['cpu_percent']}%")
print(f"内存使用率: {status['memory_percent']}%")
```

### TUI界面

| TUI类型 | 命令 | 特点 |
|---------|------|------|
| **稳定TUI（推荐）** | `nwtools-stable-tui` | 纯Python实现，跨平台稳定，无需外部依赖 |
| **DIALOG TUI（仅Linux）** | `nwtools-tui` | 使用dialog工具，支持鼠标点击 |
| **简单TUI** | `nwtools-simple-tui` | 使用curses库（Linux/Mac） |

> 💡 **推荐**：使用稳定TUI界面，因为它在所有平台上都能工作，不会崩溃，无需额外工具。

## 配置文件

可创建配置文件 `~/.nwtools/config.yaml` 进行自定义设置：

```yaml
defaults:
  intensity: medium
  duration: 60
  auto_cleanup: true
  
limits:
  max_cpu_percent: 80
  max_memory_mb: 2048
  max_disk_files: 100
  max_processes: 20
  
safety:
  require_confirmation: true
  max_total_duration: 300
```

## 依赖

- Python >= 3.6
- psutil >= 5.8.0
- colorama >= 0.4.4
- requests >= 2.25.0
- pyyaml >= 5.4.0

可选依赖：
- pyautogui >= 0.9.52 (用于UI干扰功能)
- dialog (Linux系统，用于dialog TUI)

## 更新日志

### v3.0.1 (2026-04-13)
- 🔧 修复Windows兼容性问题
- 🔧 修复`psutil.disk_usage('/')`在Windows上的错误
- 🔧 修复进程创建在Windows上的参数问题
- ✅ 添加跨平台TUI支持
- ✅ 改进错误处理和依赖检查

### v3.0.0 (2026-01-09)
- 🎉 初始版本发布

## 免责声明

> ⚠️ **重要提示**：
> - 本软件仅供**测试、演示和教育目的**使用
> - 作者不对使用本软件造成的任何损害负责
> - **请勿在生产环境或重要系统上使用**
> - 使用风险自负！

## 许可证

MIT License
