KamoCRM

Live Change Log

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

17,374
Total Changes
5,891
Features
5,258
Fixes
30
Projects
Filter by project
All Projects17,374AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,822TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,321kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,631kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,891Fix5,258Other993Performance165Refactor278Revert23Style42Test159Upgrade1
March 20, 2026
Featurekamo-internal

Add help components for bulk text providers

kamo·7mo ago
Featurekamo-internal

Add bulk text proxy route and API client

kamo·7mo ago
Featurekamo-internal

Inline Add to Contacts dialog from recipient popover

Replace the old behavior (navigating to /contacts page, losing the composer) with a lightweight inline dialog that: - Pre-fills first/last name from the recipi...

kamo·7mo ago
Chorekamo-internal

Remove old Third-Party Integrations tab and unused code

- Delete ThirdPartyIntegrationsTab component (old calendar sync UI, replaced by new CalDAV/CardDAV system) - Delete /api/integrations proxy route (only used b...

kamo·7mo ago
Fixkamo-internal

Prevent recipient popover from flashing at top-left corner

The popover initialized at position {0,0} and repositioned in a useEffect (after paint), causing a visible fly-in from the top-left. Fixed by using useLayoutEf...

kamo·7mo ago
Fixkamo-internal

Portal all overlays out of tool window stacking context

ToolWindowShell applies `transform: translateY(0)` which creates a CSS stacking context. This caused all `position: fixed` overlays (autocomplete dropdown, popo...

kamo·7mo ago
Fixkamo-internal

Fix autocomplete — infinite loop, missing API, auth

Three root causes fixed: 1. Infinite re-render loop: existingEmails was a new array reference every render, causing the search useEffect to re-fire endlessl...

kamo·7mo ago
Fixkamo-internal

Fix untyped recipient inputs and match Subject field styling

- Fixed drag handler blocking input focus by skipping preventDefault when clicking on INPUT elements or buttons - Rewired RecipientField from Tailwind classes...

kamo·7mo ago
Chorekamo-internal

Remove unused legacy MessageComposer and Manager

These components were superseded by the tool window MessageTool.tsx and are no longer imported anywhere in the codebase.

kamo·7mo ago
Fixkamo-internal

Integrate recipient fields into tool window composer

The previous commit added the recipient components but modified the wrong composer (MessageComposer.tsx). This integrates RecipientField into MessageTool.tsx — ...

kamo·7mo ago
Fixkamo-internal

Add book buttons per source, remove redundant manage icon

- Remove redundant "+" manage sources icon from sources view header (already accessible via bottom "Manage Contact Sources" button) - Add "Add book" icon butt...

kamo·7mo ago
Featurekamo-internal

Add edit mode, title field, and live status to source management

- ManageSourcesDialog now has edit button per source for editing title and credentials (CalDAV/CardDAV URL, username, password) - Add title field when adding ...

kamo·7mo ago
Refactorkamo-internal

Replace Add Source with Manage Contact Sources dialog

- Rename AddSourceDialog → ManageSourcesDialog with full CRUD (list existing sources with status + remove, plus inline add form) - Move "Manage Contact Source...

kamo·7mo ago
Featurekamo-internal

Add modern recipient fields with chips, autocomplete, and contact picker

Replace basic text inputs in email compose To/CC/BCC fields with rich recipient components: chip-based display with remove buttons, debounced autocomplete searc...

kamo·7mo ago
Featurekamo-internal

Add sync toggle, source management, and WebSocket status

- Overhaul ContactsLeftPanel with 3 display modes: org-only books, sources with nested books (sync off), and flat org books (sync on) - Add SyncFooter with re...

kamo·7mo ago
Featurekamo-internal

Add Create Contact dialog with multi-tab form

Adds a fully-featured Create Contact dialog accessible via a "New" chip in the contacts toolbar. The dialog supports all contact sub-entities (emails, phones, a...

kamo·7mo ago
Featurekamo-internal

Send and display image attachments in chat

- SmsChatTab: read file as base64 via FileReader, pass to API, render <img> in message bubble - voipApi: add attachment params to sendSms

kamo·7mo ago
March 19, 2026
Fixkamo-internal

Use string conversationId throughout SMS tool to handle 64-bit IDs

Backend now serializes Long as string; update all conversationId types from number to string to match. Also enable send button when an attachment is present wit...

kamo·7mo ago
Fixkamo-internal

Remove duplicate Back button from RingCentralConfig

Parent PhoneProviderSetup already renders an IconButton with ArrowLeft in the config view header, making the Back button inside RingCentralConfig a duplicate.

kamo·7mo ago
Featurekamo-internal

Replace JWT config with OAuth connect UI for RingCentral

- RingCentralConfig: OAuth connect/disconnect button with status indicator, main phone number field, test connection (only when connected) - voipApi: add getO...

kamo·7mo ago
Featurekamo-internal

Equal-height feature cards and Kazoo-aware provider descriptions

- Set height: 100% on FeatureCard motion wrapper so cards in the same row match the tallest card - Update KamoPBX description to highlight Kazoo as a carrier-gr...

kamo·7mo ago
Chorekamo-internal

Add RingCentral and FreePBX SVG logos

kamo·7mo ago
Fixkamo-internal

Use plain img tags for local SVG provider logos

next/image does not reliably serve local SVGs without unoptimized flag. Plain img tags load /public assets directly with no issues.

kamo·7mo ago
Featurekamo-internal

Add SmsTemplatesTab and SmsCrmTab

kamo·7mo ago
Featurekamo-internal

Add SmsNewConversation dialpad component

kamo·7mo ago
Featurekamo-internal

Add shared template data

kamo·7mo ago
Refactorkamo-internal

Remove Client ID and Secret fields from RingCentral UI

These are platform-level credentials set once in the K8s secret. Customers only need to provide their JWT Key and main phone number.

kamo·7mo ago
Fixkamo-internal

Always show softphone and SMS buttons in NavTop

Removed isVoip gate so the buttons are always visible regardless of feature flag state.

kamo·7mo ago
Fixkamo-internal

Use feature type name as key before numeric id in org feature preprocessing

Java returns features with `type: "VOIP"` and a numeric `id`. The preprocessing chain had `obj.id` before `obj.type`, causing all features to get numeric string...

kamo·7mo ago
Featurekamo-internal

Redesign phone provider setup to match email provider format with logos, help tips, and correct nav tabs

- Rewrite PhoneProviderSetup to match EmailProviderSetup pattern: list/config view split, AnimatePresence transitions, back button with provider name in header,...

kamo·7mo ago
Fixkamo-internal

Show Phone System(s) settings unconditionally so orgs can configure VOIP before enabling it

- Remove isVoip gate from phone section on /settings page — Provider Setup card has no condition so it always appears; Agents and Dial Plans still gated by isVo...

kamo·7mo ago
Fixkamo-internal

Guard against non-array API responses in useContacts hook

setBooks, fetchContacts, and searchContacts now safely handle error objects and Spring paginated wrappers instead of crashing with 'e.map is not a function'.

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