KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

18,407
Total Changes
6,538
Features
5,540
Fixes
30
Projects
Filter by project
All Projects18,407AIService276APIService177BillingService161ConversionService117DaemonService146DocsService240ESigService93EmailService622InitializerService344KBService162KlusterServices769MCPGatewayService277MediaService620RAGService79SecurityService1,997TranslateService62VOIPService265VectorService11kamo-apps26kamo-asterisk-support28kamo-capcha17kamo-capcha-widget4kamo-internal8,700kamo-login342kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,826kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild23CI525Chore794Docs3,286Feature6,538Fix5,540Other1,001Performance174Refactor282Revert23Style45Test175Upgrade1
March 18, 2026
FixAIService

Add response body and request logging to RagClient for debugging

Log the RAG search request URL, orgId, query, and response body on error to diagnose 500 responses from RAGService.

Kamo·7mo ago
FixKlusterServices

Enable auto-truncate on embedding model to prevent 413 errors

Add --auto-truncate flag so inputs exceeding the 256 token limit are silently truncated instead of rejected with a validation error.

Kamo·7mo ago
FixRAGService

Reduce chunk size to fit all-MiniLM-L6-v2 token limit (256 max)

Chunk target was 2000 chars (~512 tokens) but the embedding model only accepts 256 tokens, causing 413 validation errors. Reduce to 800 chars (~200 tokens) with...

Kamo·7mo ago
FixKlusterServices

Load embedding model from local hostPath to prevent HuggingFace download failures

The embedding-model pod was in CrashLoopBackOff because it couldn't download the model from HuggingFace on startup (network/DNS issue). Mount the model from a h...

Kamo·7mo ago
FixRAGService

Use integer match filter for Qdrant searches instead of matchKeyword

The orgId and articleId payload fields are stored as integers via value(Long), but search and delete filters used matchKeyword() which only matches string/keywo...

Kamo·7mo ago
FixRAGService

Index KB articles for RAG on creation, not just when published

Previously the RAG pipeline only indexed PUBLISHED articles, requiring the full review/approval cycle before the AI chat could reference them. Now indexes all a...

Kamo·7mo ago
Fixkamo-internal

Update reviews page to match enriched backend response fields

Use uid as key, articleGuid for navigation, articleTitle for display, and dateSubmitted for date. Matches the new backend response format that includes article ...

kamo·7mo ago
FixKBService

Return article guid/title in pending reviews response

The KbArticleReview entity has @JsonIgnore on article, so the pending reviews endpoint was returning reviews without article details (guid, title). Now uses eag...

Kamo·7mo ago
Featurekamo-shared-library

Add eager-fetch query for pending reviews with article details

Add **************** query that JOIN FETCHes the article entity so review listings can include article guid/title without LazyInitializationException.

Kamo·7mo ago
Fixkamo-internal

Surface actual backend error messages in article create/edit

Read errData.error (matching backend JSON format) instead of errData.message. Fix proxy to forward backend JSON errors directly instead of double-wrapping them ...

kamo·7mo ago
FixKBService

Add error handling to createArticle endpoint

Wrap createArticle call in try-catch to return proper JSON error responses instead of Spring Boot's default HTML error page.

Kamo·7mo ago
Fixkamo-internal

Add missing richTextExtension to enable editor text input

The RichTextPlugin from richTextExtension is required for the Lexical is silently ignored.

kamo·7mo ago
Featurekamo-internal

Add ShadCN-inspired editor theme with visible table borders

Add a comprehensive CSS theme for the LexKit editor with styled typography, visible table cell borders, code block styling, blockquote formatting, and syntax hi...

kamo·7mo ago
Fixkamo-internal

Add shared KB layout with persistent tabs and fix reviews page error

Create app/kb/layout.tsx with KbNavBar tabs shared across Articles, Resources, and Pending Reviews pages. Remove duplicate outer shells and fixed positioning fr...

kamo·7mo ago
CIEmailService

Trigger pipeline

Kamo·7mo ago
CIAIService

Trigger pipeline

Kamo·7mo ago
CISecurityService

Trigger pipeline

Kamo·7mo ago
CIMCPGatewayService

Trigger pipeline

Kamo·7mo ago
CIDocsService

Trigger pipeline

Kamo·7mo ago
CIAIService

Trigger pipeline

Kamo·7mo ago
CIMediaService

Trigger pipeline

Kamo·7mo ago
CIRAGService

Trigger pipeline

Kamo·7mo ago
CISecurityService

Trigger pipeline

Kamo·7mo ago
CIEmailService

Trigger pipeline

Kamo·7mo ago
March 17, 2026
Featurekamo-internal

Replace Plate.js with LexKit editor and add KB resource management

Replace Plate.js editor with LexKit (Lexical-based) including custom Video, Audio, and MediaCard extensions. Add WordPress-style media browser with drag-and-dro...

kamo·7mo ago
FeatureKBService

Add org-level resource management and article-media linking APIs

Rewrite KbMediaService/Controller for org-level media CRUD with paginated listing, search, metadata update, and soft delete. Add article-media link/unlink/sync ...

Kamo·7mo ago
Featurekamo-shared-library

Decouple KB media from articles and add resource management support

Decouple KbMedia from KbArticle (remove article FK), add KbArticleMedia join table for many-to-many article-media links, add title/description/ dateUpdated fiel...

Kamo·7mo ago
Fixkamo-internal

Update navtop email badge when message is marked as read

Dispatch email:folder-changed event after marking a message as read, so MailButton re-fetches the unread count immediately.

kamo·7mo ago
Fixkamo-internal

Revert email WebSocket URL to same-origin Next.js rewrite path

Use /email-ws on same origin, proxied by Next.js rewrites to EmailService via k8s internal DNS. SockJS HTTP fallbacks (xhr-streaming, xhr-polling) work through ...

kamo·7mo ago
FixEmailService

Remove hardcoded WebSocket headers from email middleware

Traefik v3 handles WebSocket Upgrade/Connection headers natively. Hardcoding them broke SockJS fallback transports (xhr-streaming, xhr-polling). Now matches med...

Kamo·7mo ago
Fixkamo-internal

Connect email WebSocket directly to email.{domain} subdomain

Next.js rewrites cannot upgrade HTTP connections to WebSocket, causing the STOMP connection to silently fail after 3 retries. Now uses the same direct subdomain...

kamo·7mo ago
FixKlusterServices

Auto-cert service not renewing expired SSL certificates

The auto-cert service was importing expired certs from shared storage and skipping Certificate CR creation, so cert-manager couldn't manage renewals. Also fixed...

Kamo·7mo ago
Fixkamo-internal

Add 30s polling fallback for real-time email updates when WebSocket is unavailable

The WebSocket connection silently fails after 3 retries, leaving the UI permanently stale. This adds a 30-second polling interval as a reliable fallback across ...

kamo·7mo ago
Fixkamo-internal

Align branch-setup and automation tabs with billing tab design

Standardize layout patterns across settings tabs: consistent padding, shared EmptyState component, matching table structure and header styles.

kamo·7mo ago
Refactorkamo-internal

Move AI to Enabled Apps section and remove settings slideout search/recents

Remove the search bar and recent items section from the settings slideout panel. Move Artificial Intelligence from main topics to the Enabled Apps section so it...

kamo·7mo ago
Fixkamo-internal

Use shared EmailWebSocketContext for real-time unread badge updates

MailButton was creating a duplicate WebSocket connection via useEmailWebSocket() and optimistically incrementing the unread count. Now uses the shared useEmailW...

kamo·7mo ago
Refactorkamo-internal

Simplify apps page with Available/Incubating tabs and list-only view

Remove stats banner, search bar, category filters, grid/list toggle, and features dialog. Apps are now organized into two tabs and "Adjust Features" navigates t...

kamo·7mo ago
Featurekamo-internal

Add Emojis, Character Map, and Text Converter tools to calculator menu

- Emojis: browse all emoji categories with search, select to view code points, copy as emoji/HTML/CSS - Character Map: browse Unicode blocks (Latin, Greek, Cyri...

kamo·7mo ago
Featurekamo-internal

Restyle graphing calculator to light theme and add mode-specific titles and icons

- GraphingMode now uses the same light calcColors scheme as other calculator modes - Graph line colors updated to work on light background - Calculator tool win...

kamo·7mo ago
Featurekamo-internal

Add dropdowns to navtop mail and calculator icons, show unread email badge

- Mail icon now shows red unread count badge and dropdown with "Create New Email" / "View My Emails" - Calculator icon now has dropdown with all 6 modes (adds p...

kamo·7mo ago
Fixkamo-internal

Route media feed WebSocket through media.* subdomain with retry limit

useMediaFeedWebSocket was connecting to same-origin /ws (404) instead of media.kamocrm.com. Fix URL construction to match useChatWebSocket pattern and add MAX_R...

kamo·7mo ago
Fixkamo-internal

Correct KB article field names to match backend entity

Frontend was using wrong field names (dateModified, content, authorName) instead of the actual backend fields (dateUpdated, contentJson, authorMemberId). Also r...

kamo·7mo ago

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing