Knowledge Bases
How the AI Copilot reaches knowledge — one Knowledge Article object, read with the same record tools as every other object.
Knowledge Bases
Knowledge in HotCRM lives in one place: the Knowledge Article object
(crm_knowledge_article), reachable from Service → Knowledge in the navigation.
The Copilot reads it with the same record tools it uses for accounts, cases and
opportunities. There is no separate retrieval subsystem underneath it, and no
per-team library to choose between.
There are no four knowledge bases
This page used to describe four built-in knowledge bases — Sales Knowledge, Product Information, Support Knowledge and Competitive Intel. HotCRM ships none of them, and never did. No metadata declares a knowledge base under any of those names, no skill binds to one, and there is nothing in Setup to seed. If you went looking for them after reading the old page, that is why you found nothing.
What exists instead is one article object with a Category picklist. Here is where each of the four promises actually lands:
| The old name | What is true today |
|---|---|
| Sales Knowledge — playbooks, objection handling, qualification frameworks | No home in the shipped picklist. The seven categories are written for product and support content; there is no sales-playbook category. Filing a playbook under How-To or Policy works, but it is your convention, not a shipped one. |
| Product Information — datasheets, specs, release notes | Articles under Release Notes, API & Integrations or Billing & Pricing. A product's own Datasheet file stays a file on the product record — see below. |
| Support Knowledge — troubleshooting, runbooks, FAQs | Articles under Troubleshooting, Getting Started or How-To. This is what the picklist was written for, and the one promise the object mostly keeps. |
| Competitive Intel — competitor profiles, battle cards | Nothing. HotCRM has no competitor object: the demo-only crm_competitor module was deleted, and this line is text that outlived it (the same removal #790 cleaned out of the sharing and profile pages). The only competitor data the app carries is the Opportunity's Lost to Competitor closed-lost reason and the free-text Loss Details beside it — the Competitors picklist that used to sit on the opportunity shipped placeholder options nothing read, and #1061 retired it. |
What an article is
One record, with the fields that matter for retrieval:
| Field | What it does |
|---|---|
| Article Number | KA-0001, assigned automatically — this is what the Copilot cites. |
| Title and Summary | Both searchable. The summary is the one-paragraph TL;DR shown in search results and in AI citations. |
| Body | The article itself, in Markdown. |
| Category | Getting Started · How-To · Troubleshooting · Billing & Pricing · API & Integrations · Release Notes · Policy. |
| Tags | Auth · SSO · Mobile · Email · Reports · Performance · Data Import · Webhooks. |
| Status | Draft → In Review → Published → Archived. |
| Audience | Public or Internal. |
| Language | English · Simplified Chinese · Spanish · Japanese. |
Category and tags are the fixed vocabulary the Copilot matches on, so they are the two fields that decide whether an article is findable. See Service › Knowledge Base for how agents write, review and retire articles.
How the Copilot reaches an article
By querying the object, exactly as it queries a case:
- It reads the cases in front of it and takes their category and tags.
- It queries
crm_knowledge_articlefor published articles matching those. - It cites what it used by article number (
KA-0007), so you can open the record and check.
That is a filtered record query, not a semantic search. Matching is on the category and tags a person set, so an article filed under the wrong category is invisible to the Copilot no matter how well its body answers the question.
Which skills actually read articles
| Skill | Reads articles? |
|---|---|
| 🔭 Customer 360° | Yes — step 3 of its instructions queries published articles matched on the category or tags of the cases it just read. It is the only skill that does. |
| 🚦 Case Triage | No. It declares two tools, describe_object and get_record, and has no query tool at all — it cannot search for anything, articles included. |
| ✍️ Email Drafting | No. It could — it carries query_records — but nothing in its instructions reaches for an article, so no draft cites one. |
| 🎯 Lead Qualification · 📈 Revenue Forecasting · 🔄 Live Data | No. None of them has a knowledge step. |
So "ask the Copilot and it will find the article" means Customer 360° specifically. Asking Case Triage for a matching article gets you a priority and nothing else.
Why there is no semantic search
The platform does ship a knowledge-search tool, but it retrieves over a declared knowledge source, and a knowledge source can only be declared on an agent. HotCRM ships skills, not agents, so there is nowhere to declare one — the tool would resolve and return nothing. Querying the object is the honest version of the same thing, and it is what the skills do.
What does not exist
Named plainly, because the old page promised all of it:
- No document ingestion. Nothing uploads PDFs, Word files or Markdown into a knowledge index. An article is a record someone typed or pasted.
- No
/knowledge/...folder. There is no directory of Markdown files anywhere in the app, and nothing watches one. - No embeddings, chunking, retrieval thresholds or caching, and therefore no "top 5 most relevant snippets above a quality threshold". The query returns matching records.
- No nightly re-index and no manual re-index button. A published article is queryable the moment it is saved, because it is a record.
- No connectors to Confluence, Notion, Google Drive or SharePoint.
- No per-skill knowledge binding, so no way to add a knowledge base (a compliance library, say) and wire it to one skill. Adding a Category to the article object is the shipped way to carve out a new body of content, and that is a metadata change.
The product Datasheet field is the one that most looks like an exception: it is a real file field on the product record, holding a PDF up to 20 MB. Nothing reads the file's contents — no skill, no index. It is there for people to download.
Tips for admins
- ✅ Category and tags are the retrieval surface. An article no one can find is usually filed wrong, not written badly. Audit categories before rewriting bodies.
- ✅ Publish it or it does not exist. The query filters on Published; drafts and archived articles are invisible to the Copilot.
- ✅ Mark internal articles Internal. Audience is an authored field, and a customer-facing answer should not quote a runbook.
Tips for knowledge managers
- ✅ Keep articles short and scannable, and put the concrete symptom ("Error 503", "Cannot log in") in the Title and Summary — those two fields plus the article number are what search reads.
- ✅ One question per article. Category matching is coarse, so an article that answers three unrelated questions matches for the wrong one.
- ✅ When Customer 360° matches no article to a case's category or tags, that is a knowledge gap worth writing up.
See Skills for what each skill reads and writes, and Customization › AI Skills for authoring a skill of your own.