Metadata-Version: 2.4
Name: psi6
Version: 0.1.1
Summary: PySide6 desktop SDK: App runtime, batch jobs, theme tokens, and window chrome.
Keywords: pyside6,qt,desktop,gui,theme,tray
Author: modaye
Author-email: modaye <flywacool@gmail.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: X11 Applications :: Qt
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: User Interfaces
Requires-Dist: pydantic>=2.11
Requires-Dist: pyside6>=6.8
Requires-Dist: pytest>=8.3 ; extra == 'dev'
Requires-Dist: pytest-qt>=4.4 ; extra == 'dev'
Requires-Dist: pyyaml>=6 ; extra == 'dev'
Requires-Dist: pyyaml>=6 ; extra == 'yaml'
Requires-Python: >=3.13
Project-URL: Homepage, https://github.com/modaye/psi6
Project-URL: Repository, https://github.com/modaye/psi6
Project-URL: Issues, https://github.com/modaye/psi6/issues
Project-URL: Changelog, https://github.com/modaye/psi6/releases
Provides-Extra: dev
Provides-Extra: yaml
Description-Content-Type: text/markdown

# psi6

PySide6 桌面 SDK：应用运行时、后台批处理、主题 token、自定义标题栏与系统托盘。

不提供 Excel/PDF 等业务模板，也不为某个产品堆叠首页主键。业务写在应用仓库。

## 安装

```powershell
pip install psi6
```

YAML 主题：`pip install psi6[yaml]`。

## 示例

```python
from psi6 import App
from psi6.ui.desktop_window import DesktopWindow

app = App("demo")
window = DesktopWindow(title="Demo")
raise SystemExit(app.run(window, tray=True))
```

## 能力

- **运行时** `App`：主题 `light` / `dark` / `auto` / 文件或目录；`run(..., tray=True)` 托盘；默认防多开、记住窗口位置
- **批处理** `TaskRunner` / `BatchToolWindow`：`exclusive` 单飞、`is_busy`、`JobOutcome`
- **主题** token 覆盖色与尺寸；图标用主题旁同名 `icons/*.svg`
- **窗壳** `DesktopWindow`、`TitleBar`、`TrayIcon`

组件预览：`python -m psi6 kit`。Agent 约定见 [`AGENTS.md`](AGENTS.md) 与 [`skills/psi6-desktop/SKILL.md`](skills/psi6-desktop/SKILL.md)。

## 开发

```powershell
uv sync --extra dev
uv run pytest
```
