Dependencies and Extras#
Core Install#
pip install design-research-agents
Editable contributor setup:
git clone https://github.com/cmudrc/design-research-agents.git
cd design-research-agents
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -e ".[dev]"
Or use:
make dev
Maintainer release baseline#
Use this when preparing a tagged release:
Use Python
3.12(from.python-version).Install maintainer dependencies:
make dev.Verify full checks:
make ci.Build release artifacts and validate metadata:
make release-check.Commit dependency spec changes, then tag and publish.
make release-check builds both the source distribution and wheel into dist/
and runs twine check against the generated artifacts.
Extras matrix#
Extra |
Purpose |
|---|---|
|
Contributor tooling |
|
OpenAI-family hosted SDK backends |
|
Anthropic hosted backend |
|
Gemini hosted backend |
|
Groq hosted backend |
|
Optional ChromaDB-backed vector memory store |
|
Optional NetworkX-backed graph memory store |
|
Managed llama.cpp backend |
|
In-process transformers backend |
|
Apple MLX backend |
|
vLLM server backend (Linux) |
|
SGLang server backend (Linux) |
|
Local-backend convenience bundle |
|
Hosted-provider convenience bundle |
|
Providers + local backends |
Hosted clients are the fastest path for onboarding and benchmark iteration, but they require network access and data egress. Local in-process clients are often preferable for privacy-sensitive studies and single-machine experimentation, but they are more hardware-sensitive. Server-backed local clients improve deployment flexibility and throughput isolation, but they add service-management overhead.
Recommended install profiles:
hosted OpenAI-family studies:
pip install -e ".[dev,openai]"hosted provider comparisons:
pip install -e ".[dev,providers]"Chroma-backed memory experiments:
pip install -e ".[dev,memory_chroma]"graph-memory experiments:
pip install -e ".[dev,memory_graph]"local-only studies:
pip install -e ".[dev,local]"broad backend validation:
pip install -e ".[dev,full]"
Release validation is exposed via make release-check.