Metadata-Version: 2.4
Name: taskspec
Version: 0.0.9
Summary: A tasks execution service for Python.
License: MIT
License-File: LICENSE
Author: weihong.xu
Author-email: xuweihong.cn@gmail.com
Requires-Python: >=3.10
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: Programming Language :: Python :: 3.14
Requires-Dist: asyncssh (>=2.21.1,<3.0.0)
Requires-Dist: fastapi (>=0.121.2,<0.122.0)
Requires-Dist: fire (>=0.7.1,<0.8.0)
Requires-Dist: pydantic (>=2.12.4,<3.0.0)
Requires-Dist: pyyaml (>=6.0.3,<7.0.0)
Requires-Dist: uvicorn (>=0.38.0,<0.39.0)
Description-Content-Type: text/markdown

# TaskSpec

TaskSpec is a database-less, general-purpose asynchronous task scheduler.

It is designed for workloads that need to be submitted, tracked, and resumed through an API, with a strong focus on running tasks on HPC clusters such as Slurm-backed environments. Task state lives in the task directory and its spec files, so you can operate without a central database while still exposing a simple programmatic interface.

Typical use cases include:

- API-driven task submission and status checks
- HPC batch execution on Slurm or similar job systems
- Lightweight deployments that avoid database operations and extra infrastructure


## Installation

```bash
pip install taskspec
```

## Getting Started

```
taskspec start ./demo
```

For more examples and configuration details, see the demo workspace under `demo/`.
