|
1 | 1 | # `agentexec` |
2 | 2 |
|
3 | | -[](https://codecov.io/gh/Agent-CI/agentexec) |
| 3 | +[](https://pypi.org/project/agentexec/) |
| 4 | +[](https://www.python.org/) |
| 5 | +[](LICENSE) |
| 6 | +[](https://github.com/astral-sh/ty) |
| 7 | +[](https://github.com/astral-sh/ruff) |
4 | 8 |
|
5 | 9 | **Production-ready orchestration for OpenAI Agents SDK** with Redis-backed task queues, SQLAlchemy activity tracking, and multiprocessing worker pools. |
6 | 10 |
|
@@ -38,7 +42,7 @@ uv add agentexec |
38 | 42 | ``` |
39 | 43 |
|
40 | 44 | **Requirements:** |
41 | | -- Python 3.11+ |
| 45 | +- Python 3.12+ |
42 | 46 | - Redis (for task queue) |
43 | 47 | - SQLAlchemy-compatible database (for activity tracking) |
44 | 48 | - Agents that you want to parallelize! |
@@ -68,7 +72,7 @@ class ResearchContext(BaseModel): |
68 | 72 | engine = create_engine("sqlite:///agents.db") |
69 | 73 |
|
70 | 74 | # Create worker pool |
71 | | -pool = ax.WorkerPool(engine=engine) |
| 75 | +pool = ax.Pool(engine=engine) |
72 | 76 |
|
73 | 77 |
|
74 | 78 | @pool.task("research_company") |
@@ -338,7 +342,7 @@ class MyContext(BaseModel): |
338 | 342 | param: str |
339 | 343 |
|
340 | 344 |
|
341 | | -pool = ax.WorkerPool(engine=engine) |
| 345 | +pool = ax.Pool(engine=engine) |
342 | 346 |
|
343 | 347 |
|
344 | 348 | @pool.task("task_name") |
@@ -435,7 +439,7 @@ ENV AGENTEXEC_WORKER_MODULE=src.worker |
435 | 439 | import os |
436 | 440 | import agentexec as ax |
437 | 441 |
|
438 | | -pool = ax.WorkerPool(database_url=os.environ["DATABASE_URL"]) |
| 442 | +pool = ax.Pool(database_url=os.environ["DATABASE_URL"]) |
439 | 443 |
|
440 | 444 | @pool.task("my_task") |
441 | 445 | async def my_task(agent_id, context): |
@@ -472,7 +476,7 @@ uv sync |
472 | 476 | uv run pytest |
473 | 477 |
|
474 | 478 | # Type checking |
475 | | -uv run mypy src/agentexec |
| 479 | +uv run ty check |
476 | 480 |
|
477 | 481 | # Linting |
478 | 482 | uv run ruff check src/ |
|
0 commit comments