mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-02-07 05:15:09 -05:00
- feat(backend/executor): Change credential injection mechanism to acquire credentials from `AgentServer` just before execution - Also locks the credentials for the duration of the execution - feat(backend/server): Add thread-safe `IntegrationCredentialsManager` to handle and synchronize credentials-related operations - feat(libs): Add mutexes to `SupabaseIntegrationCredentialsStore` to ensure thread-safety Also: - feat(backend): Added Pydantic model (de)serialization support to `@expose` decorator Refactorings: - refactor(backend, libs): Move `KeyedMutex` to `autogpt_libs.utils.synchronize` - refactor(backend/server): Make `backend.server.integrations` module with `router`, `creds_manager`, and `utils` in it
84 lines
1.8 KiB
TOML
84 lines
1.8 KiB
TOML
[tool.poetry]
|
|
name = "autogpt-platform-backend"
|
|
version = "0.1.0"
|
|
description = "A platform for building AI-powered agentic workflows"
|
|
authors = ["AutoGPT <info@agpt.co>"]
|
|
readme = "README.md"
|
|
packages = [{ include = "backend" }]
|
|
|
|
|
|
[tool.poetry.dependencies]
|
|
python = "^3.10"
|
|
aio-pika = "^9.4.3"
|
|
anthropic = "^0.25.1"
|
|
apscheduler = "^3.10.4"
|
|
autogpt-libs = { path = "../autogpt_libs", develop = true }
|
|
click = "^8.1.7"
|
|
croniter = "^2.0.5"
|
|
discord-py = "^2.4.0"
|
|
fastapi = "^0.109.0"
|
|
feedparser = "^6.0.11"
|
|
flake8 = "^7.0.0"
|
|
google-api-python-client = "^2.142.0"
|
|
google-auth-oauthlib = "^1.2.1"
|
|
groq = "^0.8.0"
|
|
jinja2 = "^3.1.4"
|
|
jsonref = "^1.1.0"
|
|
jsonschema = "^4.22.0"
|
|
ollama = "^0.3.0"
|
|
openai = "^1.35.7"
|
|
praw = "^7.7.1"
|
|
prisma = "^0.13.1"
|
|
psutil = "^5.9.8"
|
|
pydantic = "^2.7.2"
|
|
pydantic-settings = "^2.3.4"
|
|
pyro5 = "^5.15"
|
|
pytest = "^8.2.1"
|
|
pytest-asyncio = "^0.23.7"
|
|
python-dotenv = "^1.0.1"
|
|
redis = "^5.0.8"
|
|
sentry-sdk = "1.45.0"
|
|
supabase = "^2.7.2"
|
|
tenacity = "^8.3.0"
|
|
uvicorn = { extras = ["standard"], version = "^0.30.1" }
|
|
websockets = "^12.0"
|
|
youtube-transcript-api = "^0.6.2"
|
|
googlemaps = "^4.10.0"
|
|
replicate = "^0.34.1"
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
poethepoet = "^0.26.1"
|
|
httpx = "^0.27.0"
|
|
pytest-watcher = "^0.4.2"
|
|
requests = "^2.32.3"
|
|
ruff = "^0.5.2"
|
|
pyright = "^1.1.371"
|
|
isort = "^5.13.2"
|
|
black = "^24.4.2"
|
|
|
|
[build-system]
|
|
requires = ["poetry-core"]
|
|
build-backend = "poetry.core.masonry.api"
|
|
|
|
[tool.poetry.scripts]
|
|
app = "backend.app:main"
|
|
rest = "backend.rest:main"
|
|
ws = "backend.ws:main"
|
|
executor = "backend.exec:main"
|
|
cli = "backend.cli:main"
|
|
format = "linter:format"
|
|
lint = "linter:lint"
|
|
test = "run_tests:test"
|
|
|
|
[tool.pytest-watcher]
|
|
now = false
|
|
clear = true
|
|
delay = 0.2
|
|
runner = "pytest"
|
|
runner_args = []
|
|
patterns = ["*.py"]
|
|
ignore_patterns = []
|
|
|
|
[tool.pytest.ini_options]
|
|
asyncio_mode = "auto"
|