Metadata-Version: 2.4
Name: agent-flowpilot
Version: 0.4.3
Summary: A modern typed Python package
Project-URL: Homepage, https://github.com/deepissue
Project-URL: Repository, https://github.com/deepissue/flowpilot
Author-email: Your Name <your.email@example.com>
License: MIT License
        
        Copyright (c) 2025 Your Name
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights  
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in
        all copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
        THE SOFTWARE.
License-File: LICENSE
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: asyncio
Provides-Extra: dev
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: mypy>=1.5.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Description-Content-Type: text/markdown


# AgentFlowPilot

AgentFlowPilot 是一个智能代理任务处理 SDK，具备以下核心功能：

- ✨ 意图识别
- 🛠️ 工具判断
- 📋 任务编排
- 🚀 任务执行

## 安装

### 通过 PyPI 安装

```bash
pip install agent_flowpilot
```

### 通过源码安装

1. 克隆仓库：

```bash
git clone https://github.com/deepissue/flowpilot.git
cd flowpilot
```

2. 安装依赖：

```bash
pip install -e ".[test]"
```

这将以可编辑模式安装 `agent_flowpilot` 包，并同时安装测试依赖。

## 结构说明

- `core.py`：统一流程入口，负责启动和管理任务执行流程。
- `intent.py`：意图识别器，基于输入的提示词进行意图分析，返回任务定义信息。
- `scheduler.py`：任务编排调度，负责任务的顺序和依赖关系管理。
- `executor.py`：任务执行器抽象类，具体任务执行逻辑的实现。
- `tools.py`：工具注解生成，提供辅助功能的工具接口。

## 使用示例

可以在 `test/demo.py` 中找到具体的使用示例。

## 任务定义是整个 SDK 的核心，结构如下

```python
# 任务定义示例
task_definitions = [
    {
        "name": "create_vm",
        "description": "创建虚拟机",
        "parameters": {"vm_name": "myvm"},  # 从用户输入中提取的参数
        "required_parameters": [],
        "optional_parameters": ["vm_name"],
        "execution_mode": "sequential",
        "depends_on": [],
    }
]
```

## 测试

运行测试，可以使用以下命令：

```bash
pytest tests/
```

## 贡献

欢迎提交 PR 或 issue！任何问题或建议都可以提到 issue。

## License

MIT License
