Metadata-Version: 2.4
Name: luicore
Version: 2.1.7
Summary: Agent with toolsets framework for Windows system control base on LLM and Intel OpenVINO
Author: Intel Corporation
License-Expression: LicenseRef-Intel-OBL
Project-URL: Homepage, https://github.com/intel-innersource/os.linux.ubuntu.cloud.baseos.luicore
Project-URL: Documentation, https://github.com/intel-innersource/os.linux.ubuntu.cloud.baseos.luicore/blob/main/README.md
Project-URL: Repository, https://github.com/intel-innersource/os.linux.ubuntu.cloud.baseos.luicore
Project-URL: Issues, https://github.com/intel-innersource/os.linux.ubuntu.cloud.baseos.luicore/issues
Keywords: agent,windows,automation,settings,llm,openvino
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Systems Administration
Requires-Python: ~=3.11.0
Description-Content-Type: text/markdown
Requires-Dist: pydantic>=2.12.5
Requires-Dist: PyYAML>=6.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: requests>=2.30.0
Requires-Dist: httpx>=0.25.0
Requires-Dist: anyio>=4.0.0
Requires-Dist: modelscope>=1.36.2
Requires-Dist: pywin32>=300; sys_platform == "win32"
Requires-Dist: pycaw>=20230407; sys_platform == "win32"
Requires-Dist: WMI>=1.5.0; sys_platform == "win32"
Requires-Dist: screen-brightness-control>=0.20.0; sys_platform == "win32"
Requires-Dist: comtypes>=1.2.0; sys_platform == "win32"
Requires-Dist: colorama>=0.4.6
Requires-Dist: psutil>=5.9.0
Requires-Dist: typer>=0.21.1
Requires-Dist: pyautogui==0.9.54
Requires-Dist: edge-tts==7.2.7
Requires-Dist: screeninfo==0.8.1
Requires-Dist: openvino-genai>=2026.0.0

## Quick start

```shell
# Download qwen3 4B int8 model (recommended) from huggingface and place to local disk:
https://huggingface.co/OpenVINO/Qwen3-4B-int8-ov

# Create and activate Python virtual environment:
conda create -n my_env python=3.11 -y
conda activate my_env
pip install -r ./requirements.txt

# create .env and set envs required:
1. your agent skill tree builer LLM info  (only required if you need to build agent skill tree)
BUILDER_API_KEY="xxx"
BUILDER_API_URL="xxx"
BUILDER_MODEL_ID="xxx"

2. whether to support multi-step actions, if yes, user input can contain multiple actions.(optional, default off)
SUPPORT_MULTIPLE_ACTIONS=False


# Run the example:
python demo.py
# 当前鼠标灵敏度多少？
# 鼠标灵敏度设置为14
```

## Run Test_Script
```shell
cd /path/to/your/luicore
python -m tests.test_script

# We will add a all-in-one test script later.
```

## Release 测试脚本

### test_features.py - 功能点测试

批量测试工具技能，从 `features.xlsx` 加载测试用例。

```shell
cd /path/to/your/luicore
conda activate lui_core

# 默认模式 (base) - 测试基础输入 + 工具执行
python release/test_features.py

# 扩展模式 - 测试扩展输入
python release/test_features.py -m ext

# 意图识别测试 (仅测试意图，不执行工具)
python release/test_features.py --intent-only -m base

# Tool检查测试 (意图识别 + Tool检查，不执行实际工具)
python release/test_features.py --tool-check -m base
```

**参数说明：**
- `-i, --input`: 输入测试用例文件 (默认 features.xlsx)
- `-m, --mode`: 测试模式 `base`(基础) 或 `ext`(扩展)
- `--intent-only`: 仅意图识别测试，不执行工具
- `--tool-check`: 意图识别 + Tool检查，不执行工具

**Excel 格式要求：**
- 第 11 列 (C11): 基础测试输入
- 第 12 列 (C12): 扩展测试输入 (换行分隔)
- `agent_skill_name` 列: 预期 skill 名称 (可选)
- `tool_name` 列: 预期 tool 名称 (可选)

**测试模式：**
1. 默认模式：意图识别 + 工具执行
2. `--intent-only`：仅意图识别（不执行工具）
3. `--tool-check`：意图识别 + Tool检查（不执行工具）

### handle_request.py - 单用例测试

快速测试单个或多个用户请求。

```shell
cd /path/to/your/luicore
conda activate lui_core

# 测试单个请求 (意图识别 + 工具执行)
python release/handle_request.py -i "开启省电模式"

# 意图识别测试 (仅测试意图，不执行工具)
python release/handle_request.py -i "开启省电模式" --intent-only

# Tool检查测试 (意图识别 + Tool检查，不执行工具)
python release/handle_request.py -i "开启省电模式" --tool-check

# 跳过意图验证
python release/handle_request.py -i "开启省电模式" --no-intent-check

# 多个请求 (分号分隔)
python release/handle_request.py -i "开启省电模式;打开设置"
```

**参数说明：**
- `-i, --input`: 测试输入 (分号分隔多用例)
- `-f, --file`: features 文件路径 (默认 features.xlsx)
- `--intent-only`: 仅意图识别测试，不执行工具
- `--tool-check`: 意图识别 + Tool检查，不执行工具
- `--no-intent-check`: 跳过意图验证

## Run lui test script
```shell
cd /path/to/your/luicore
python -m tests.lui.test
```

## Run lib_lui - the interface with Tencent LUI team
```shell
cd /path/to/your/luicore
python -m apps.lui.lib_lui
```

## Build release package
Please install Visual Studio 2022(community version works) first, then select "Desktop development with C++" workload to install the required C++ build tools.
Make sure you MSVC and Windows 11 SDK checked and installed.

Then run the following command in the luicore root directory:
```shell
scripts\build_release.bat
```
It will generate a luicore-x.x.x-[timestamp].zip file in the release direcotry.
The zip file contains other files in the release directory except for itself.

luicore-x.x.x-[timestamp].zip:
---
 - readme.md
 - example.py
 - luicore-x.x.x-....whl
 - patch_pydantic_in_3.14.py
