executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
chatterbotOperate ChatterBot conversational dialog engine workflows, including chatbot setup, training, logic adapters, storage backends, Django integration, and optional LLM adapters.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this skill when a task involves the ChatterBot Python package, the chatterbot import, conversational dialog bots that learn from statements/responses, ChatterBot trainers, ChatterBot storage adapters, built-in logic adapters, the Django extension, or errors from those APIs.
ChatterBot is a Python conversational dialog engine. A ChatBot instance combines:
Statement objects;Public install commands:
python -m pip install chatterbot
python -m pip install -e .
Install optional groups only when the selected workflow needs them:
python -m pip install "chatterbot[dev]" # Pint, PyYAML, chatterbot-corpus, Ollama/OpenAI clients
python -m pip install "chatterbot[redis]" # Redis vector storage and embedding providers
python -m pip install "chatterbot[mongodb]" # MongoDB storage
python -m pip install django # Django integration if you are not using a broader extra
The default ChatBot("name") path uses SQL storage plus the PosLemmaTagger, which requires a compatible spaCy language model such as en_core_web_sm for English. If a quick import-only check is enough, do not instantiate ChatBot until the model requirement is understood.
For a package install, start with:
python - <<'PY'
import chatterbot
from chatterbot import ChatBot
print(chatterbot.__version__)
print(ChatBot)
PY
Run the bundled environment diagnostic when install/import behavior is unclear:
python scripts/check_chatterbot_environment.py --check-spacy-model en_core_web_sm
The only package CLI is a small module entry point:
python -m chatterbot --version
python -m chatterbot --help
Read references/installation-and-extras.md for public install commands, optional extras, spaCy model setup, and service-backend prerequisites. Read references/troubleshooting.md for cross-cutting setup, model, optional dependency, and service failures. Read references/repo-provenance.md before deciding whether this skill matches a newer checkout.
Use core-chatbot when the task is about:
ChatBot or Statement objects;get_response, generate_response, learn_response, conversation IDs, read_only, or persistence behavior;Use training when the task is about:
ListTrainer, ChatterBotCorpusTrainer, CsvFileTrainer, JsonFileTrainer, or UbuntuCorpusTrainer;chatterbot-corpus, dotted corpus paths, custom YAML corpora, or corpus loading;Use logic-adapters when the task is about:
BestMatch, SpecificResponseAdapter, MathematicalEvaluation, TimeLogicAdapter, UnitConversion;default_response, maximum_similarity_threshold, excluded_words, comparison functions, and response selection methods;OllamaLogicAdapter / OpenAILogicAdapter and logic_adapters_as_tools MCP-style tool calling.Use storage-adapters when the task is about:
SQLStorageAdapter, SQLite/SQLAlchemy configuration, SQL pool options, or CRUD/filter behavior;MongoDatabaseAdapter, MongoDB URIs, TLS kwargs, or unavailable MongoDB service errors;RedisVectorStorageAdapter, Redis vector search, embedding model/provider options, or semantic search behavior;StorageAdapter.Use django-integration when the task is about:
chatterbot.ext.django_chatterbot, INSTALLED_APPS, migrations, or Django settings;DjangoStorageAdapter, database aliases, swappable Statement/Tag models;ChatBot("name") works before a spaCy model is installed. Missing model errors usually tell the user to run python -m spacy download <model>.database_uri=None for in-memory SQL smoke tests and database_uri="sqlite:///file.sqlite3" for a persistent SQLite file.UnitConversion needs pint; corpus training needs pyyaml and usually chatterbot-corpus; Django workflows need django.scripts/check_chatterbot_environment.py checks imports, metadata, spaCy models, and optional dependency availability.These helpers are self-contained and do not require the original repository checkout.