Hanzo AI dff9f48c17 fix: force zod@3.24.4→3.25.76 so openai@6 resolves zod/v4 (0.9.21)
Any fresh chat image built after 74954c3f8 (@hanzo/iam 0.13 lockfile regen,
which pulled openai@6.46.0) crashes on boot:

  ERR_PACKAGE_PATH_NOT_EXPORTED: subpath './v4' is not defined by
  "exports" in openai/node_modules/zod/package.json

openai@6.46.0 declares zod '^3.25 || ^4.0' and imports zod/v4, but pnpm
mis-resolved its peer to the older zod@3.24.4 (which has no ./v4 subpath).
The deployed 0.9.19 image predates openai@6 entering the tree, so it never
hit this — 0.9.20 was simply the first rebuild to trip the latent landmine.

Fix: a single pnpm override zod@3.24.4 → 3.25.76 (already in-tree, a
backward-compatible superset that ships the zod/v4 compat subpath),
collapsing to ONE zod. Verified: no other package floated; openai@6.46.0
now pairs zod@3.25.76. Unblocks the whole chat build pipeline, not just
the 0.9.20 usage panel.
2026-07-16 01:04:18 -07:00
2025-07-16 15:26:20 -05:00
2025-06-30 10:45:37 -07:00
2026-02-19 20:36:08 -08:00
2025-07-01 17:24:11 -07:00

Hanzo Chat

Hanzo Chat

The chat surface of the Hanzo AI cloud: multi-model chat with agents, tools, and retrieval, running on Hanzo's backend. Live at hanzo.chat.

Hanzo Chat is a sibling to hanzo.app (the app builder) and the Hanzo console (admin). All inference, code execution, and web search route through the unified Hanzo API at api.hanzo.ai/v1, and sign-in is federated to Hanzo IAM (hanzo.id).

Features

  • Multi-model chat — the Zen model family and other frontier models, served through api.hanzo.ai.
  • Agents — build agents in the thread, or run your Hanzo Cloud agents (/v1/agents) with an /agent command or @mention.
  • MCP tools — connect Model Context Protocol servers for tool use.
  • RAG — chat over your own files and documents.
  • Web search — grounded answers via Hanzo web search.
  • Code interpreter — run code in a sandboxed runtime.
  • Image generation — generate images inline.
  • Guest chat — try a free Zen model with no account (optional, off by default).

Requirements

Quick start (Docker)

git clone https://github.com/hanzoai/chat.git
cd chat
cp .env.example .env        # set HANZO_API_KEY
make up

Open http://localhost:3080. make up starts the full stack (app, MongoDB, Meilisearch) from compose.yml; make down stops it.

Development

pnpm install               # install workspace dependencies
pnpm build:packages        # build the shared workspace packages
pnpm backend:dev           # API server on :3080 (nodemon)
pnpm frontend:dev          # Vite client dev server (second terminal)

Tests and checks:

pnpm test:all              # all workspace tests
pnpm e2e                   # Playwright end-to-end tests
pnpm lint                  # ESLint
pnpm format                # Prettier

Configuration

Secrets live in .env; the model catalog and endpoints live in chat.yaml (copy chat.example.yaml). Key variables:

HANZO_API_KEY=             # Hanzo API key — inference, tools, search
MONGO_URI=                 # MongoDB connection — chat history, users
JWT_SECRET=                # session token signing
CREDS_KEY=                 # credential encryption
CREDS_IV=

Sign-in is federated to Hanzo IAM over OpenID Connect (OPENID_ISSUER=https://hanzo.id, client hanzo-chat).

Workspace

api/           Express backend (:3080) — routes, controllers, Mongoose models
client/        React frontend (Vite)
packages/      data-provider · data-schemas · api · client · agents · mcp

Documentation

License

MIT. Forked from LibreChat (MIT). See LICENSE.

S
Description
Hanzo tenant service — source mirrored from hanzoai/chat
Readme MIT
577 MiB
Languages
TypeScript 68.1%
JavaScript 21.9%
Python 6.8%
HTML 2.2%
CSS 0.4%
Other 0.5%