KamoCRM

Live Change Log

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

15,120
Total Changes
5,169
Features
4,935
Fixes
30
Projects
Filter by project
All Projects15,120AIService197APIService161BillingService143ConversionService107DaemonService129DocsService215ESigService88EmailService518InitializerService318KBService105KlusterServices697MCPGatewayService85MediaService546RAGService71SecurityService1,658TranslateService55VOIPService205VectorService11kamo-apps25kamo-asterisk-support24kamo-capcha17kamo-capcha-widget4kamo-internal6,937kamo-login330kamo-marketing625kamo-nowww20kamo-register213kamo-shared-library1,455kamo-signer-monorepo53kamolos108
Filter by type
All TypesBuild11CI523Chore738Docs2,167Feature5,169Fix4,935Other986Performance157Refactor274Revert23Style42Test94Upgrade1
September 28, 2026
Fixkamo-internal

A chat box or tool window no longer takes the wall's keys (SP98 T18)

/notes treated any role="dialog" as a modal, so while the owner's Exec2Exec chat box (or any chat box or tool window, a floating note among them) was open, N, C...

Kamo·5h ago
Fixkamo-internal

Name the image pickers' Scale sliders too (SP98-Q-1)

The harness's axe pass over the image pickers found the Scale slider beside each select unnamed the same way (axe label, critical). Its caption now names it.

Kamo·5h ago
Fixkamo-internal

பட மூலத் தேர்வுகளை பெயரிடுங்கள் (SP98-Q-1)

இமேஜ் சோர்ஸ் செலக்ட்-இன் மிதக்கும் லேபிள் ஒன்றுமில்லாமல் கட்டப்பட்டிருந்தது, எனவே இரண்டிலும் ஒவ்வொன்றும் பிக்கர்ஸ் என்பது பெயரிடப்படாத ஒரு காம்போபாக்ஸ் (கோடாரி ...

Kamo·5h ago
Fixkamo-internal

கையொப்பமிட்டவுடன் வரும் எஸ்எம்எஸ் மற்றும் குரல் அஞ்சல் இணைப்புகளைத் திறக்கவும் (SP98-Q-2)

? openSms = and? OpenVoicemail = இப்போது முன்-கையொப்பம்-இன் சேமிப்பில் செல்லுங்கள் (@kamo கருவி-கோர் 0. 1. 7 அவர்களைக் கொண்டு செல்கிறது), மற்றும் பூட்ஸ்ட்ராப் ப...

Kamo·5h ago
Fixkamo-internal

Name a card's conversation past the newest 300 (SP98-Q-4)

A window opened from an SMS card by conversation id looked its number up in the newest 300 conversations, so an older one opened under a blank header. When that...

Kamo·5h ago
Fixkamo-internal

The persona Quick Tip describes the charter and the on/off switch, not publishing (SP98 T17)

The AI Sales Agent Setup tab's Quick Tips still said to publish an agent and that publishing saves a copy. Personas have no saved copies: the charter is saved a...

Kamo·6h ago
Fixkamo-internal

The persona Quick Tip describes the charter and the on/off switch, not publishing (SP98 T17)

The AI Sales Agent Setup tab's Quick Tips still said to publish an agent and that publishing saves a copy. Personas have no saved copies: the charter is saved a...

Kamo·6h ago
Fixkamo-internal

Tasks, notes and calendar polish (SP98 T18)

- /notes: a new note or checklist made from My tasks brings the wall back (P-1) - Checklist rows leave out the assignee when it is the viewer (P-2) - Lead Tasks...

Kamo·6h ago
Fixkamo-internal

AI settings, workforce and platform polish (SP98 T17)

- Platform admins: every right chip's label reads at AA on its wash (its own hue, darkened only as far as needed); the pinned hues stay on icon, border and ha...

Kamo·7h ago
Fixkamo-internal

AI settings, workforce and platform polish (SP98 T17)

- Platform admins: every right chip's label reads at AA on its wash (its own hue, darkened only as far as needed); the pinned hues stay on icon, border and ha...

Kamo·7h ago
Fixkamo-internal

The email template editor's fallback logo is KamoUniverse

When an org has no theme folder, the email template editor showed /img/kamocrmfull.png and /img/kamocrm.png, the retired KamoCRM wordmark and mark. They now fal...

Kamo·8h ago
Fixkamo-internal

The email template editor's fallback logo is KamoUniverse

When an org has no theme folder, the email template editor showed /img/kamocrmfull.png and /img/kamocrm.png, the retired KamoCRM wordmark and mark. They now fal...

Kamo·8h ago
Fixkamo-internal

An AI in a meeting is shown as such, and the console offers only to take it out

A meeting is heard only by its participants (SP14 D9), and kamoai-service now refuses listening, talking, whispering and taking over a meeting call (409 MEETING...

Kamo·9h ago
Fixkamo-internal

An AI in a meeting is shown as such, and the console offers only to take it out

A meeting is heard only by its participants (SP14 D9), and kamoai-service now refuses listening, talking, whispering and taking over a meeting call (409 MEETING...

Kamo·9h ago
Fixkamo-internal

The setup page opens on kamouniverse.com and no longer offers to delete a platform domain

"Change domain" on /setup/dns for the platform organization showed only "SecurityService error". The button deletes the domain in use and then asks for a new on...

Kamo·9h ago
Fixkamo-internal

The setup page opens on kamouniverse.com and no longer offers to delete a platform domain

"Change domain" on /setup/dns for the platform organization showed only "SecurityService error". The button deletes the domain in use and then asks for a new on...

Kamo·9h ago
Fixkamo-internal

A post or note is edited, liked and deleted by its own id

Every item of a feed (the Clubhouse, a lead's or a pipeline record's notes) carries its stream's guid, so PostCard's edit, like and delete went to /posts/<strea...

Kamo·10h ago
Fixkamo-internal

Add Lead goes to the list when its creator may not open the new lead

A lead created with "Auto Assign / Unassigned" joins the assignment pool, owned by nobody, and the lead page refuses a member without VIEW_UNASSIGNED_LEADS on a...

Kamo·10h ago
Fixkamo-internal

A post or note is edited, liked and deleted by its own id

Every item of a feed (the Clubhouse, a lead's or a pipeline record's notes) carries its stream's guid, so PostCard's edit, like and delete went to /posts/<strea...

Kamo·10h ago
Fixkamo-internal

Add Lead goes to the list when its creator may not open the new lead

A lead created with "Auto Assign / Unassigned" joins the assignment pool, owned by nobody, and the lead page refuses a member without VIEW_UNASSIGNED_LEADS on a...

Kamo·10h ago
Fixkamo-internal

A lead's Notes tab goes live — the feed listens on the shared media socket

The Hot Reassign ship check showed a note reaching the lead's All tab live but not its Notes tab. MediaStream (a lead's Notes, a pipeline record's notes, the Cl...

Kamo·13h ago
Fixkamo-internal

A lead's Notes tab goes live — the feed listens on the shared media socket

The Hot Reassign ship check showed a note reaching the lead's All tab live but not its Notes tab. MediaStream (a lead's Notes, a pipeline record's notes, the Cl...

Kamo·13h ago
Fixkamo-internal

Say what a VoIP API key can do

The FreePBX helper's uploads key now also rings members' mobiles (only on this organization's phone servers) and already pulled the managed dial plan; the API M...

Kamo·14h ago
Fixkamo-internal

Say what a VoIP API key can do

The FreePBX helper's uploads key now also rings members' mobiles (only on this organization's phone servers) and already pulled the managed dial plan; the API M...

Kamo·14h ago
Fixkamo-internal

A Watch waits out the wake the server announced

An AI workstation's wake is now estimated at 600 seconds (one resume took 9 min 19 s), and the launch tab's ring counts that down, but the tab still gave up at ...

Kamo·15h ago
Fixkamo-internal

Keep the OTK route's CRLF line endings

The previous commit rewrote them; only its one comment line changes. SP99-T10.

Kamo·17h ago
Fixkamo-internal

A retired AI's hiring checklist says Retired, not "Everything is set up"

A retire skips every open hire step and adds TASK_HANDOFF, so by the server's count the hire is COMPLETE and the checklist read "Complete — Everything is set up...

Kamo·19h ago
Fixkamo-internal

The confirmation dialog and the landings' empty state follow a dark theme

ConfirmationDialog was drawn in fixed Tailwind greys: a #1f2937 title, #6b7280 small print, a #f9fafb well and a #f3f4f6 disabled button, so on a dark paper the...

Kamo·19h ago
Fixkamo-internal

Hosted Computers on the App Shelf, and a pinned band that opens it

The launchpad's sectionsForTool had no case for hostedComputers and fell through a default to an empty list. A parent tool with no sections is dropped from the ...

Kamo·19h ago
Fixkamo-internal

The rest of the red on a clean install — registry mocks, shared-lib lookup, a typed fetch mock

- ToolDock and MaximizedTabStrip mocked ../registry/tools without windowIcon, which both now call for every window (af879443f), so 36 tests threw on the fir...

Kamo·19h ago
Fixkamo-internal

Render the dev machine menu hook in a real root, and cover the cloud session row

devMachineSections.test.tsx called useDevMachineSections() bare, outside any render. It worked while useTranslations (mocked) was the hook's only React dependen...

Kamo·19h ago
Fixkamo-internal

The DNS page opens on the org's primary domain, not whichever row came first

The domains list comes back in database order. The platform organization has three roots (kamocrm.com, kamouniverse.com, localhost), and each of the last two pa...

Kamo·19h ago
Fixkamo-internal

The MCP server form refuses an Expect header while it is typed

AIService's McpServerConfigs has refused an Expect header since SP05 Task 15, but the form's copy of that list (which says it is the same) lacked it, so the nam...

Kamo·23h ago
September 27, 2026
Fixkamo-internal

A computer can be removed from the Computers tab

The remove dialog pins its challenge to the computer's own name ('Workstation'), and ConfirmationDialog upper-cased only what was typed before comparing, so no ...

Kamo·1d ago
Fixkamo-internal

Keep the heading outline in order: section titles are h5, template names are not headings

The screenshot harness's axe pass found two heading-order faults. A job or persona template's name was an h6 inside its card's button (a heading may not sit ins...

Kamo·1d ago
Fixkamo-internal

The AI workstation panel says what is on screen only after the screen was read

ComputeService answers screen-state with 200 {state:'WAKING'} while the guest restarts after a wake or refuses the read, and {state:'ASLEEP'} just after a sleep...

Kamo·1d ago
Fixkamo-internal

AA text colours and named progress bars on the Computers and Capacity tabs

The state chip's "Ready" was --commerce-success as text (2.2:1) and the error text --commerce-error (3.8:1); they now use the AA colours the AI workstation pane...

Kamo·1d ago
Fixkamo-internal

Filter approval changes before the org-change debounce (SP10)

useOrgChanges coalesces a burst and hands onChange only its last frame, so testing isApprovalChange on that frame lost an APPROVAL followed within 400 ms by the...

Kamo·1d ago
Fixkamo-internal

A message that did not go stays in the box and says why

A failed send was swallowed in useChatConversation.onSend ("matching the old ChatBox"). The core removed the optimistic bubble, the Composer took the resolved p...

Kamo·1d ago
Fixkamo-internal

Caption a producer's button from the whole dictionary, not as its key path

KBService's task notifications name their button with the full dictionary path **************** (SP06 spec 4.11). The deck and the notification centre read prod...

Kamo·1d ago
Fixkamo-internal

A dry run through the web proxy stays a dry run

The /api/email/** proxy builds its own headers for the hop to EmailService and relayed only Range, so X-Kamo-Dry-Run never arrived: a member's dry run of a send...

Kamo·1d ago
Fixkamo-internal

A composer names its last draft only through the mailbox that holds it

The composer kept the last saved draft as {folder, uid} and sent it as replacesDraft with whatever mailboxId the From was on at the time. EmailService expunges ...

Kamo·1d ago
September 25, 2026
Fixkamo-internal

A create Arive refused offers Resend at once, with Arive's reason

When the Create Loan Zap reports loan_create_failed the server keeps Arive's reason as the link's error and clears its pending clock. The header no longer spins...

Kamo·3d ago
Fixkamo-internal

The member rights tab never offers to make an AI member an owner

SecurityService now answers 400 AI_NOT_OWNER when PATCH **************** sets isOrganizationOwner on an ARTIFICIAL member (SP02 final fix). The Organization Own...

Kamo·3d ago
Fixkamo-internal

The Repeat field says what a series save does; no repeat for a lead callback

The repeat now follows a move of the start's date, as the calendar service moves a series: a weekly repeat's days move with it, and an existing series' end date...

Kamo·3d ago
Fixkamo-internal

Member initials in the ink that reads on their fill, and My tasks' scope toggle at 4.5:1

axe on the SP06 task screens (drawer, My tasks, lead Tasks tab) found white initials on memberColor's 55%-lightness fills at 2:1 (cyan) and 4.1:1 (magenta) - wh...

Kamo·3d ago
Fixkamo-internal

The Repeat field wears the event dialog's field style

The Repeat select, the interval and unit fields and the end date and count fields were stock MUI outlined fields (16px on white, square) inside a dialog whose e...

Kamo·3d ago
Fixkamo-internal

The grids' empty sticky-row strips are no Tab stop on a phone

Chrome makes a scroller with nothing focusable inside a Tab stop of its own; at phone width ag-Grid's sticky-top strip (these grids have no sticky rows) took th...

Kamo·3d ago
Fixkamo-internal

The filter rail fits the screen with twenty kinds

The rail beside the notification history is sticky on wide screens. With the nine KamoAI kinds it lists up to twenty kinds (848px), taller than the 608px a 1440...

Kamo·3d ago
Fixkamo-internal

What the screens showed — readable chips and filters, labels clear of units, whole rail tabs, grids a keyboard can use

Found by rendering every SP01 screen at 1280 and 390 px with axe (Task 35): - warning chips (Degraded, Missing, Available, not verified) in amber ink, 5.0:1 - m...

Kamo·3d 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