Skip to main content

CustomChat

Installer tests

A chat app over your documents, set up with one YAML file. Answers cite their sources. Starts in offline Demo mode: no key, account or paid calls.

Start

No Python, Git or uv needed. Open Terminal (macOS/Linux) or PowerShell (Windows) and run:

curl -fsSL https://raw.githubusercontent.com/Harsh23Kashyap/customchat/main/start.sh | sh
& { $f = Join-Path ([IO.Path]::GetTempPath()) ([IO.Path]::GetRandomFileName() + '.ps1'); try { Invoke-WebRequest https://raw.githubusercontent.com/Harsh23Kashyap/customchat/main/start.ps1 -OutFile $f; & powershell -NoProfile -ExecutionPolicy Bypass -File $f } finally { Remove-Item $f -ErrorAction SilentlyContinue } }

The app opens in your browser (or open the printed localhost URL). Ctrl+C stops it. Run the same command in the same folder to come back to your chats. Review start.sh or start.ps1 before running downloaded scripts.

Have uv? uvx customchat-app start

Prefer pip? In an empty folder:

python3 -m venv .venv
.venv/bin/python -m pip install customchat-app
.venv/bin/python -m customchat start

On Windows use py -3 -m venv .venv and .\.venv\Scripts\python.exe. The package is customchat-app; customchat on PyPI is a different project. Both install paths use an isolated environment, so nothing touches your system Python.

macOS with Homebrew Python

From this repository folder, one command installs 0.1.5 in a private environment and opens the app:

python3 start_local.py

This handles Homebrew's externally-managed-environment error without sudo, global pip, activation, or --break-system-packages. Requires Python 3.10+ and internet for installation. It reuses .customchat-venv; it never deletes or resets your app, chats or keys. Ctrl+C stops the app. Run the same command from the same folder to resume.

To reopen a different existing workspace, pass its folder (the one containing app.yaml):

python3 start_local.py --directory /path/to/my-chat

Starts offline Demo for a new workspace. Existing workspaces keep their settings. Add --no-browser or --port 8081 if needed. This installs the published package, not uncommitted source changes in your clone.

Make it yours

uvx customchat-app start --directory my-chat

Edit my-chat/app.yaml, add documents, and open Configuration to pick a model, look and sources. Keep keys in environment variables or the private local store, never in YAML or Git. Add --lock-config for a chat-only app. See the configuration reference.

Features

  • Upload files or add web links. Reads PDF, text/code, DOCX, XLSX, PPTX, ODT and, with Tesseract, images.
  • Quick, Standard and Deep answer modes.
  • Saved chats with bounded history, a temporary chat mode and an optional profile.
  • Themes, light/dark, logo, animated emojis and a live preview.
  • Budget limits, document freshness checks and a portable app export.

Demo is the default. Choose and test a live provider in Configuration to use paid or local models.

Prompts and code helpers

Open Configuration, then Prompts or Code helpers in the sidebar. Both are visible in Simple and Advanced. Prompts can be edited or generated for review. Code helpers generate Python, check compilation and safety, and only run when you press Try it. In offline Demo, generation returns a starter template, not model-written code.

More

Install options · Hosting · Architecture · Tests: python -m unittest discover -s tests

Counterpart of Custom-Nerd. Harsh Kashyap, Shela Wu. Advisor: Dennis Shasha. MIT license.

Load a shared Nerd

Open Configuration → Load and share Nerds. Drop a ZIP or app.yaml, read the readiness check, review any Python connector, then Load and run. A separate workspace opens; the current app stays intact. Keys, accounts and chat history never come with the bundle. Python runs with your local user permissions after your review. Import checks are offline, not a model/network test.

customchat-app run app.yaml opens the browser after the server is ready. Use --no-browser for servers or terminals without a desktop.

Metadata

Release files for customchat-app 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for customchat-app 0.1.6
File Size Uploaded
customchat_app-0.1.6.tar.gz 8.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for customchat-app 0.1.6
File Interpreter ABI Platform
customchat_app-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 16.9 MB

Release files / customchat_app-0.1.6.tar.gz

Download URL customchat_app-0.1.6.tar.gz
Size 8.5 MB
Tags Source
SHA-256 checksum
How to use checksums
b827c26ff5a35bd2f47172cf6bc5db056a344cae2f50390d1a0299428ad5c316
BLAKE2b-256 checksum
How to use checksums
be1b856aa218f797f6bce7aa05b5bebee60df5473bf40cbc41dccb110318152f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / customchat_app-0.1.6-py3-none-any.whl

Download URL customchat_app-0.1.6-py3-none-any.whl
Size 8.5 MB
Tags Python 3
SHA-256 checksum
How to use checksums
3ee743a6393ae206bab672ee33ddc0133dee376da23ffa37282c7e27c572507b
BLAKE2b-256 checksum
How to use checksums
17afb7309d75fb693dac32827aba5dd5d777de354570838eb72bf5d11890b557
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page