Metadata-Version: 2.5
Name: pinecall-runtime
Version: 0.11.11
Summary: The Pinecall runtime: the gateway that answers the API and the worker that runs the calls, on LiveKit.
Project-URL: Homepage, https://pinecall.io
Project-URL: Repository, https://github.com/pinecall/pinecall
Project-URL: Documentation, https://docs.pinecall.io
Author-email: Pinecall <hello@pinecall.io>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Framework :: FastAPI
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: >=3.13
Requires-Dist: alembic-utils<1,>=0.8.8
Requires-Dist: alembic<2,>=1.16
Requires-Dist: apscheduler<4,>=3.11
Requires-Dist: argon2-cffi<26,>=25
Requires-Dist: asyncpg<1,>=0.30
Requires-Dist: av<19,>=15
Requires-Dist: cryptography<51,>=50
Requires-Dist: dnspython<3,>=2.7
Requires-Dist: fastapi<1,>=0.120
Requires-Dist: httpx<1,>=0.28
Requires-Dist: livekit-agents[anthropic,openai]<2,>=1.8.3
Requires-Dist: livekit-api<2,>=1.2
Requires-Dist: numpy<3,>=2
Requires-Dist: opentelemetry-api<2,>=1.30
Requires-Dist: opentelemetry-exporter-otlp-proto-http<2,>=1.30
Requires-Dist: opentelemetry-sdk<2,>=1.30
Requires-Dist: pgvector<1,>=0.4
Requires-Dist: phonenumbers<10,>=9
Requires-Dist: prompt-toolkit<4,>=3.0
Requires-Dist: protobuf<8,>=6
Requires-Dist: pydantic-settings<3,>=2.10
Requires-Dist: pydantic<3,>=2.11
Requires-Dist: pyjwt[crypto]<3,>=2.10
Requires-Dist: python-dotenv<2,>=1.1
Requires-Dist: redis<7,>=6
Requires-Dist: smart-turn-livekit[livekit]<1,>=0.4
Requires-Dist: sqlalchemy[asyncio]<3,>=2.0.43
Requires-Dist: starlette<2,>=0.47
Requires-Dist: structlog<27,>=25
Requires-Dist: typer<1,>=0.15
Requires-Dist: uvicorn[standard]<1,>=0.37
Requires-Dist: websockets<16,>=15
Provides-Extra: voice
Requires-Dist: audioop-lts>=0.2.1; (python_version >= '3.13') and extra == 'voice'
Requires-Dist: livekit-agents[assemblyai,asyncai,aws,azure,baseten,bland,cambai,cartesia,cerebras,clova,deepgram,elevenlabs,fal,fireworksai,fishaudio,gladia,gnani,google,gradium,groq,hume,inworld,lmnt,meta,minimax,mistralai,murf,neuphonic,nvidia,palabra,perplexity,resemble,respeecher,rime,rtzr,sarvam,simplismart,slng,smallestai,soniox,speechify,speechmatics,spitch,upliftai,vakyam,xai]<2,>=1.8.3; extra == 'voice'
Requires-Dist: python-socketio<6,>=5.11; extra == 'voice'
Description-Content-Type: text/markdown

# pinecall-runtime

The Pinecall runtime: one package, two processes. The **gateway** answers the API the SDKs, the
console and the carriers reach, and keeps every call's log. The **worker** runs the calls on
LiveKit. Both read one Postgres and tell each other what just happened over Redis.

```
pinecall-runtime gateway        serve the API
pinecall-runtime worker         run calls for a fleet
pinecall-runtime migrate up     bring the database to this release
```

How the code is organised, and the rules it is held to: `CONTRIBUTING.md`. How to run it on a
cluster or a laptop: the repository's `infra/README.md`.
