pyproject.toml
Rama main · réplica de lectura del repositorio original.
[project]
name = "openacm"
version = "0.4.7"
description = "OpenACM - Open Automated Computer Manager"
requires-python = ">=3.12"
dependencies = [
# Core LLM
"litellm>=1.84.0",
"pydantic>=2.0",
"pydantic-settings>=2.14.2",
"pyyaml>=6.0",
# Web
"fastapi>=0.115",
"python-multipart>=0.0.31",
"uvicorn[standard]>=0.30",
"websockets>=13.0",
# Channels
"discord.py>=2.4",
"python-telegram-bot>=21.0",
"httpx>=0.27",
# Storage
"aiosqlite>=0.20",
# Tools
"ddgs>=7.0",
"psutil>=6.0",
# Google Services
"google-api-python-client>=2.130",
"google-auth-oauthlib>=1.2",
"google-auth-httplib2>=0.2",
# Utils
"rich>=13.0",
"structlog>=24.0",
"python-dotenv>=1.2.2",
# Multimodal & Crypto
"mss>=9.0",
"Pillow>=12.3.0",
"cryptography>=50.0.0",
"pypdf>=6.16.1",
"markitdown[docx,xlsx,pptx,audio-transcription]>=0.1",
"chonkie[sentence]>=1.0",
"docling>=2.94.0",
"instructor>=1.0",
# Tier-1 Agentic powers
"chromadb>=1.5.9",
"sentence-transformers>=3.3",
"playwright>=1.49",
"jupyter-client>=8.6",
"ipykernel>=6.29",
# PTY support
"pywinpty>=2.0; sys_platform == 'win32'",
# MCP
"mcp>=1.28.1,<2",
# Excel export
"openpyxl>=3.1",
]
[project.optional-dependencies]
dev = [
"pytest>=9.0.3",
"pytest-asyncio>=0.24",
"pytest-mock>=3.14",
"ruff>=0.8",
]
voice = [
"sounddevice>=0.5",
"faster-whisper>=1.0",
"numpy>=1.26",
"pyttsx3>=2.90",
]
[project.scripts]
openacm = "openacm.__main__:main"
openacm-cli = "openacm.core.interactive_repl:main"
openacm-setup = "openacm.cli.setup_wizard:main"
openacm-manage = "openacm.cli.manage:main"
[build-system]
requires = ["setuptools>=68.0", "wheel"]
build-backend = "setuptools.build_meta"
[tool.uv]
# Floors for transitive dependencies with known security advisories.
constraint-dependencies = [
"accelerate>=1.15.0",
"aiohttp>=3.14.3",
"anyio>=4.14.2",
"click>=8.3.3",
"docling-core>=2.74.1",
"httplib2>=0.32.0",
"idna>=3.15",
"pyasn1>=0.6.4",
"pygments>=2.20.0",
"pyjwt>=2.13.0",
"setuptools>=83.0.0",
"soupsieve>=2.9.0",
"starlette>=1.3.1",
"torch>=2.13.0",
"tornado>=6.5.8",
"transformers>=5.10.0",
"urllib3>=2.7.0",
]
[tool.setuptools.packages.find]
where = ["src"]
[tool.ruff]
line-length = 100
target-version = "py312"
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
addopts = "-v --tb=short"