# ── Core ──────────────────────────────────────────
openai>=1.30.0
pyyaml>=6.0
numpy>=1.24.0
openpyxl>=3.1.0
azure-identity>=1.15.0
azure-core>=1.30.0
httpx>=0.27.0

# ── Optional: ALFWorld benchmark ──────────────────
# alfworld>=0.4.0
# gymnasium>=0.29.0

# ── Optional: Claude model backend ────────────────
# claude-agent-sdk>=0.1.0

# ── Optional: Qwen local model (via vLLM) ────────
# vllm>=0.4.0

# ── Optional: tolerant JSON repair for free-form output from non-OpenAI
#    backends (Claude/Qwen). Without it extract_json() falls back safely and
#    drops a malformed analyst edit instead of repairing it. Installed by the
#    `claude`, `qwen`, and `all` extras in pyproject.toml.
# json_repair>=0.61.0

# ── Optional: WebUI dashboard ────────────────────
# gradio>=4.0.0

# ── Optional: Documentation site ─────────────────
# mkdocs-material>=9.5.0
# mkdocstrings[python]>=0.24.0
