- Python 77.5%
- TypeScript 18.4%
- CSS 2.2%
- Shell 1.3%
- JavaScript 0.3%
- Other 0.3%
| backend | ||
| docs | ||
| frontend | ||
| inference | ||
| packaging | ||
| scripts | ||
| tests | ||
| tools | ||
| var | ||
| .env.example | ||
| .gitignore | ||
| AGENTS.md | ||
| alembic.ini | ||
| CONTINUATION.md | ||
| pylock.toml | ||
| pyproject.toml | ||
| README.md | ||
| requirements.lock | ||
calhta AI
calhta AI is a private, self-hosted AI API platform for adding targeted AI capabilities to calhta and LOUD applications. It is not intended to replace ChatGPT or provide a general public chatbot.
Applications integrate with calhta AI through either an OpenAI-compatible API or a native asynchronous jobs API. Inference runtimes such as Ollama are private implementation details and may be replaced without changing client integrations.
Initial deployment
- Host: Debian 13 server at
10.76.50.162 - Public URL:
https://ai.calhta.com - Reverse proxy: Nginx Proxy Manager at
10.76.50.254 - GPU: NVIDIA RTX A400, 4 GB VRAM
- Repository path:
/opt/calhta-ai
Repository layout
| Path | Purpose |
|---|---|
backend/ |
FastAPI application, migrations and backend tests |
frontend/ |
React/TypeScript web application |
inference/ |
Runtime-neutral inference adapters |
packaging/systemd/ |
Debian systemd units |
scripts/ |
Installation, maintenance and operational scripts |
docs/ |
Product and engineering documentation |
tests/ |
Cross-component and integration tests |
tools/ |
Developer tools |
var/ |
Local runtime data; ignored by Git |
Documentation
Start with Product Requirements, Architecture, and Roadmap. Contributors and coding agents must read AGENTS.md before making changes.
Project status
Version 0.1.1 is deployed at https://ai.calhta.com from application commit
22b1291d81927952cb8db302cb28d1361f9fa375, with live database revision
20260722_0005. The React operator UI, native identity and job APIs, durable result handling,
private Ollama adapter, model scheduler and independent GPU telemetry are active behind NPM/TLS.
Phase 5.1 corrected result persistence, structured-output validation, finish/truncation metadata and GPU rolling-peak visibility. Its dashboard SSE implementation is not accepted as complete: the owner still sees a visible refresh/glitch every few seconds. Phase 5.2 must make monitoring and job state update in place without flashes, panel replacement or layout movement before Phase 6.