KamoCRM

Live Change Log

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

17,395
Total Changes
5,910
Features
5,260
Fixes
30
Projects
Filter by project
All Projects17,395AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,830TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,328kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,637kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,910Fix5,260Other993Performance165Refactor278Revert23Style42Test159Upgrade1
September 28, 2026
Featurekamo-apps

The application pages fall back to the kamouniverse.com theme host

kamouniverse.com is now the platform's primary apex (kamocrm.com stays a fully served legacy apex). The platform's application host that actually resolves is ap...

Kamo·3w 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·3w 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·3w 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·3w 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·3w ago
FixTranslateService

Guard ampersands for every spelling of Spanish, keyed on the resolved language

guardAmpersands compared the caller's raw targetLang with {"es"}, so "ES", "es-419" or "es_MX" reached the same en->es model without the guard and came back wit...

Kamo·3w ago
FixVOIPService

Phone OAuth hops return the platform's members to internal.kamouniverse.com

kamouniverse.com is the platform's primary apex (kamo-shared-library 0e8cf90f). Sign-in ranks it first for the platform organization, the one organization holdi...

Kamo·3w ago
FixMediaService

The bridge dials the room Meet uses; an AI joins a future meeting at its start; an AI that heard nobody is dialled again

- The dial-in resolver (I1), KM2's roomName and M1's join.roomName name the room Meet uses (the Kamo Meet provider's own room, else the typed name cleaned the...

Kamo·3w ago
FixMediaService

OAuth return URLs accept both platform consoles; webinar cancel links keep the page that exists

kamouniverse.com is now the platform's primary apex (kamo-shared-library 0e8cf90f): OrgLinkHosts falls back to it, and ROOT_PREFERENCE makes it the platform org...

Kamo·3w ago
FixSecurityService

Edit, like and delete one post or note by its own id, never the whole stream

A feed, the organization's (the Clubhouse) or a lead's notes, is ONE POST session and every post or note is a message in it, so every item the feed lists carrie...

Kamo·3w ago
FixKlusterServices

Never ban k3m1 — its node network joins the fail2ban allowlist

FreePBX runs with hostNetwork on k1m1. A pod on k3m1 reaches it SNATed to k3m1's InternalIP, 10.0.50.1, which none of the [DEFAULT] ignoreip ranges covered (the...

Kamo·3w ago
FeatureSecurityService

New authenticator enrollments are labelled KamoUniverse

The otpauth issuer was the literal "KamoCRM". Only new enrollments change. An existing authenticator entry keeps its label and keeps working, because the code c...

Kamo·3w ago
FixKlusterServices

A lone call waits five minutes for company, not thirty seconds

Jigasi hangs up a call that nobody else joins within JIGASI_JVB_TIMEOUT (the image's default 30 s): Jicofo invites a participant only once there are two. An AI ...

Kamo·3w ago
ChoreInitializerService

Delete the org-domain ownership backfill; it finished, and it verified second claims

**************** was a one-off (2026-08-28) that marked live org_domains roots ownership_verified when host routing started to require it. It ran again on every...

Kamo·3w ago
FeatureEmailService

EmailService sends, links and names the platform as kamouniverse.com

The platform's primary apex is kamouniverse.com; kamocrm.com stays served in full. What EmailService writes today now names the primary apex, and what it recogn...

Kamo·3w ago
FixSecurityService

SPF advice recognises kamouniverse.com; the brand's aliases are reserved on both apexes

SPF: kamouniverse.com publishes the same record as spf.kamocrm.com (v=spf1 ip4:47.181.8.84 mx -all), so a customer who wrote include:kamouniverse.com has alread...

Kamo·3w ago
FixSecurityService

Platform fallbacks name the primary apex, not a kamocrm.com literal

Four places kept their own "kamocrm.com" literal as the platform host they fall back to, so they could never follow the brand to kamouniverse.com. Each now read...

Kamo·3w ago
Featurekamo-internal

The help center's source speaks as KamoUniverse

tools/help-center/content: "KamoCRM" becomes "KamoUniverse" in 70 articles — 105 places, three of them titles (What KamoUniverse Is, How to Search Across KamoUn...

Kamo·3w ago
Featurekamo-internal

The help center's source speaks as KamoUniverse

tools/help-center/content: "KamoCRM" becomes "KamoUniverse" in 70 articles — 105 places, three of them titles (What KamoUniverse Is, How to Search Across KamoUn...

Kamo·3w ago
Featurekamo-internal

Platform links on the primary apex, and the platform named KamoUniverse

Links the app generates for the platform are built from PLATFORM_APEX, so they follow the primary apex (kamouniverse.com). Every kamocrm.com link already handed...

Kamo·3w ago
Featurekamo-internal

Platform links on the primary apex, and the platform named KamoUniverse

Links the app generates for the platform are built from PLATFORM_APEX, so they follow the primary apex (kamouniverse.com). Every kamocrm.com link already handed...

Kamo·3w ago
Featurekamo-internal

Recognise both platform apexes wherever the app tells a platform host from a tenant's

kamouniverse.com is now the platform's primary apex and kamocrm.com stays fully served, so every check that asks "is this one of the platform's hosts?" has to a...

Kamo·3w ago
Featurekamo-internal

Recognise both platform apexes wherever the app tells a platform host from a tenant's

kamouniverse.com is now the platform's primary apex and kamocrm.com stays fully served, so every check that asks "is this one of the platform's hosts?" has to a...

Kamo·3w ago
FeatureDocsService

The platform's careers site is careers.kamouniverse.com, and careers.kamocrm.com keeps its board

kamouniverse.com is the platform's primary apex; kamocrm.com stays a fully served legacy apex. - careers.platform-apex (where a job advert, an applicant's rece...

Kamo·3w ago
Fixkamo-shared-library

A quote's letterhead falls back to the primary platform apex

QuoteMapper kept its own "kamocrm.com" literal as the theme host of last resort, so a quote for an organization with no live domain still named the old brand's ...

Kamo·3w ago
FeatureSecurityService

Kamouniverse.com is the primary apex, and a domain is verified by where it resolves

"Changed the domain from kamocrm.com to kamouniverse.com on /setup/dns. It said it set it but could not verify anything, and after a refresh it still said kamoc...

Kamo·3w ago
Fixkamo-marketing

Send Careers and the LLM registration link to kamouniverse.com

kamouniverse.com is now the platform's primary apex. Two links on the legacy www.kamocrm.com site that send visitors into the platform, and carry nothing tied t...

Kamo·3w ago
FixVOIPService

Read JustCall voicemail with INCOMING_VOICEMAIL, and file each under its agent

JustCall answers call_type=VOICEMAIL with 400 ("call_type must be one of ... INCOMING_VOICEMAIL"), so not one of the 241 voicemails on the JustCall account ever...

Kamo·3w ago
ChoreKlusterServices

Probe the kamouniverse.com surfaces next to the kamocrm.com ones

kamouniverse.com is the platform's primary apex, so the availability probe lists its internal, login, register, media, api, apply, careers and www endpoints. Al...

Kamo·3w ago
FeatureKlusterServices

Auto-cert pre-issues analytics, desktop and myloan on kamouniverse.com

- STATIC_DOMAINS gains analytics.kamouniverse.com, desktop.kamouniverse.com and myloan.kamouniverse.com, twins of kamocrm.com hosts that are reached only th...

Kamo·3w ago
FeatureKlusterServices

Serve desktop.kamouniverse.com, and bounce a bare computers.kamouniverse.com to its login

desktop.kamouniverse.com had DNS but no route, so it answered Traefik's 404 behind the default certificate. It now serves KamoDesktop through desktop-https-kamo...

Kamo·3w ago
FixKlusterServices

Docs trusts api.kamouniverse.com as a WOPI host

A member signed in on internal.kamouniverse.com (the platform's primary apex since 2026-09-28) opens documents with **************** DocsService takes the last ...

Kamo·3w ago
FixDocsService

Docs trusts api.kamouniverse.com and serves docs.kamouniverse.com

A member signed in on internal.kamouniverse.com (the platform's primary apex since 2026-09-28) opens a document with **************** because DocumentController...

Kamo·3w ago
Featurekamo-shared-library

Kamouniverse.com is the platform's primary apex

The brand moved from kamocrm.com to kamouniverse.com, but nothing the platform generates could follow it. Every "which of this org's domains" rule ranked by few...

Kamo·3w ago
Featurekamo-register

The sign-up screens credit KamoUniverse and fall back to its apex

kamouniverse.com is now the platform's primary apex (kamocrm.com stays a fully served legacy apex): - Theme.tsx: PLATFORM_APEX, the theme host used before the ...

Kamo·3w ago
Otherkamo-internal

Merge kamoai/program: KamoAI ledger

Kamo·3w ago
Featurekamo-login

The sign-in screen credits KamoUniverse and falls back to its apex

kamouniverse.com is now the platform's primary apex (kamocrm.com stays a fully served legacy apex): - Theme.tsx: PLATFORM_APEX, the theme host used before the ...

Kamo·3w ago
FixKlusterServices

Kamouniverse.com refuses unknown recipients at RCPT instead of bouncing them

kamouniverse.com, the platform's primary apex, is an alias domain of kamocrm.com: every <x>@kamouniverse.com is the <x>@kamocrm.com mailbox. It was mapped by a ...

Kamo·3w ago
ChoreConversionService

Rebuild on the shared library that routes voip.recording.received

ConversionService still ran a kamo-shared-library older than 9e9357c9, whose NatsMessageService pinned every publish to CHAT_MESSAGES. Its voip.recording.receiv...

Kamo·3w ago
Docskamo-internal

Ledger — 1 entries

Kamo·3w ago
Docskamo-internal

Ledger — 1 entries

Kamo·3w ago
Otherkamo-internal

Merge kamoai/program: KamoAI ledger

Kamo·3w ago
Docskamo-internal

SP99 final fixes — rulings SP99-FINAL-a..d and the master §11 row

Guid-addressed posts keep the lead's per-lead rule (narrows SP98-T3-2), the email provider needs MANAGE_EMAIL_SETTINGS and KamoMail binds only owned domains, pl...

Kamo·3w ago
FixKlusterServices

The desktop-ws route reaches only the terminal socket, not every SecurityService path

**************** matched PathPrefix(`/desktop-ws`) on internal.* and stripped the prefix, so **************** reached ANY SecurityService path from the internet...

Kamo·3w ago
FixEmailService

KamoMail binds only an address on a domain the organization holds; the provider needs its right

The cross-tenant read path parked as SP99-T1-f. A self-registered organization could point its provider at its own IceWarp or Exchange (PUT /api/email/provider ...

Kamo·3w ago
FixSecurityService

One organization can no longer take another's <alias>.kamocrm.com routing

Any member of an organization with no root could add the root victim.kamocrm.com (POST /api/security/domains checked no right). Listing the domains then self-he...

Kamo·3w ago
FixSecurityService

A lead's notes stream, addressed by its guid, keeps the lead's own read rule

Every note on a lead now sends the lead stream's guid on /topic/media/feed/<orgId> (SP99-T3), which any member of the organization may subscribe to. The guid-ad...

Kamo·3w ago
Otherkamo-internal

Merge kamoai/program: KamoAI ledger

Kamo·3w ago
Docskamo-internal

Ledger — 1 entries

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