Skip to main content

dotchatbot

PyPI - Version PyPI - Python Version

A simple file-based interface for chatbots

Demo of dotchatbot


Table of Contents

Features

  • File-based sessions
  • Markdown output rendering via rich
  • Session history and session resuming by just passing -
  • Automatic filenames via prompting

Installation

uv tool install dotchatbot

Usage

Usage: dotchatbot [OPTIONS] [FILENAME]

  Starts a session with the chatbot, resume by providing FILENAME. Provide -
  for FILENAME to use the previous session (stored in SESSION_HISTORY_FILE).

Options:
  -p, --system-prompt TEXT      The default system prompt to use  [default: You
                                are a helpful assistant.]
  --no-pager                    Do not output using pager
  --no-rich                     Do not output using rich
  -r, --reverse                 Reverse the conversation in the editor
  -y, --assume-yes              Automatic yes to prompts; assume "yes" as
                                answer to all prompts and run non-
                                interactively.
  -n, --assume-no               Automatic no to prompts; assume "no" as answer
                                to all prompts and run non-interactively.
  -c, --current-directory       Use the current directory as the session file
                                location
  --session-history-file TEXT   The file where the session history is stored
  --session-file-location TEXT  The location where session files are stored
  --session-file-ext TEXT       The extension to use for session files
                                [default: .dcb]
  --summary-prompt TEXT         The prompt to use for the summary (for building
                                the filename for the session)  [default: Given
                                the conversation so far, summarize it in just 4
                                words. Only respond with these 4 words]
  -s, --service-name [OpenAI|Anthropic|Google]
                                The chatbot provider service name  [default:
                                OpenAI]
  --summary-service-name [OpenAI|Anthropic|Google]
                                The chatbot provider service name for filename
                                generation  [default: OpenAI]
  --quick-service-name TEXT     Call this model first, then the main model.
  --quick-system-prompt TEXT    System prompt for the quick response model
                                [default: You are a queryable information
                                engine that returns a max of 5 bullet-points.
                                Do not respond with a summary. Only respond
                                with a list of bullet-points. Be succinct and
                                use less bullet points when possible. Include
                                examples.]
  -H, --history                 Print history of sessions

OpenAI options:
  --openai-model TEXT          [default: gpt-4o]
  --quick-openai-model TEXT    [default: gpt-4o]
  --summary-openai-model TEXT  [default: gpt-4o]

Anthropic options:
  --anthropic-model TEXT          [default: claude-3-7-sonnet-latest]
  --quick-anthropic-model TEXT    [default: claude-3-sonnet-latest]
  --summary-anthropic-model TEXT  [default: claude-3-sonnet-latest]
  --anthropic-max-tokens INTEGER  [default: 16384]

Google options:
  --google-model TEXT          [default: gemini-2.5-pro]
  --quick-google-model TEXT    [default: gemini-2.5-flash-lite]
  --summary-google-model TEXT  [default: gemini-2.5-flash-lite]

Markdown options:
  --markdown-justify [default|left|center|right|full]
                                [default: default]
  --markdown-code-theme TEXT    [default: monokai]
  --markdown-hyperlinks
  --markdown-inline-code-lexer TEXT
  --markdown-inline-code-theme TEXT
  --markdown-max-width INTEGER  Maximum width of the output  [default: 125]

Other options:
  --config CONFIG_PATH  Location of the configuration file. Supports local path
                        with glob patterns or remote URL.  [default:
                        ~/.config/dotchatbot/*.toml|*.json|*.ini]
  --show-params         Show all CLI parameters, their provenance, defaults and
                        value, then exit.
  --color, --ansi / --no-color, --no-ansi
                        Strip out all colors and all ANSI codes from output.
                        [default: color]
  --verbosity LEVEL     Either CRITICAL, ERROR, WARNING, INFO, DEBUG.
                        [default: WARNING]
  -v, --verbose         Increase the default WARNING verbosity by one level for
                        each additional repetition of the option.  [default: 0]
  -h, --help            Show this message and exit.

License

dotchatbot is distributed under the terms of the MIT license.

Metadata

Release files for dotchatbot 0.11.0

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

Source distribution (sdist)

Source distribution for dotchatbot 0.11.0
File Size Uploaded
dotchatbot-0.11.0.tar.gz 15.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dotchatbot 0.11.0
File Interpreter ABI Platform
dotchatbot-0.11.0-py3-none-any.whl Python 3 none any Details

Total release size: 30.5 kB

Release files / dotchatbot-0.11.0.tar.gz

Download URL dotchatbot-0.11.0.tar.gz
Size 15.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d275821107aba12ef404c51dcc5bc08894a36747a7f21faff4846933a4f34682
BLAKE2b-256 checksum
How to use checksums
f40f758e7e0ac0f653c1dfc53b492bb861998eaf13753049ebe812ddb50c535e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / dotchatbot-0.11.0-py3-none-any.whl

Download URL dotchatbot-0.11.0-py3-none-any.whl
Size 15.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
096b4a3939989343ee9ddcc05e94c1893406977ce9c105514b09d5450e899226
BLAKE2b-256 checksum
How to use checksums
6a2109ffaf3933812a5d3132b76658ef1efc2a9899b26f2b68a624409c96e5bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.11.0 This release

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

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