mirror of
https://github.com/imartinez/privateGPT.git
synced 2026-07-16 17:00:12 +00:00
* chore: add docs redirects
(cherry picked from commit 29fec7af0e)
* chore: fix links on doc
(cherry picked from commit ba56846b36a0e985e5efe5b38b09c1dfdf3e9acc)
(cherry picked from commit 2f86726aab656f12e809aa2bc83f67d8d08c83d8)
* fix: use current host instead hardcoded
(cherry picked from commit e32cac5afb13d49fba25101bd86afb1694044434)
* docs: fix links of doc
(cherry picked from commit 165f4c1a2abf65ba70ba2ba783ff644badfdf4a2)
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* docs: update index link
---------
Co-authored-by: Alfonso Lozana <alfonsolozana@gmail.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
PrivateGPT Workbench
PrivateGPT Workbench is a lightweight static demo UI for the PrivateGPT API. It lives in ./ui, keeps the implementation in a single index.html, and stores supporting documentation separately so the runtime file stays easy to inspect.
Layout
index.html: the only runtime implementation file.AGENTS.md: Codex and OpenAI-style agent workflow notes.CLAUDE.md: Claude Code workflow notes.docs/PRD.md: product behavior and requirements.docs/STYLE_GUIDE.md: visual and interaction direction.docs/SOURCE_OF_TRUTH.md: canonical paths, API contract, and doc ownership.references/*: visual reference images used by the style guide.
Working Rules
- Keep the app implementation in
index.htmlunless a separate refactor is explicitly requested. - Keep product, design, and architecture guidance in
docs/, not in the top level beside runtime code. - Keep visual reference images in
references/, not mixed with the implementation file. - Keep docs and implementation aligned whenever behavior, visuals, persistence, or API wiring changes.
Validation
For changes to ./ui/index.html, validate that the inline script parses:
node -e "const fs=require('fs'); const html=fs.readFileSync('./ui/index.html','utf8'); const m=html.match(/<script>([\s\S]*)<\/script>/); if(!m) throw new Error('script tag not found'); new Function(m[1]); console.log('script ok')"