KamoCRM

Live Change Log

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

18,397
Total Changes
6,532
Features
5,537
Fixes
30
Projects
Filter by project
All Projects18,397AIService276APIService177BillingService161ConversionService117DaemonService146DocsService240ESigService93EmailService621InitializerService344KBService162KlusterServices769MCPGatewayService277MediaService620RAGService79SecurityService1,995TranslateService62VOIPService265VectorService11kamo-apps26kamo-asterisk-support28kamo-capcha17kamo-capcha-widget4kamo-internal8,693kamo-login342kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,826kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild23CI525Chore794Docs3,286Feature6,532Fix5,537Other1,001Performance174Refactor281Revert23Style45Test175Upgrade1
November 1, 2026
FeatureSecurityService

Pipelines, board, stage moves, dropdown fields and saved views

Rights 661-664. Dark by default: nothing changes for an org with no pipeline or fields. The board shares the grid's permission floor and filters, and each colum...

Kamo·1w ago
FeatureSecurityService

The lead's contact facts, Stop all outreach, and an organization's contact rules

GET **************** and its outcome, stop, resume, consent and check actions, under the same read gate as the Communications tab; /api/security/contact-rules f...

Kamo·1w ago
FeatureDaemonService

Keep the consent proof a lead source sends

An intake mapping can target consent.<key>. The values are written once the lead exists, on a new lead or on the lead the payload merged into, with the payload ...

Kamo·1w ago
FeatureEmailService

A lead's Stop all outreach ends their drips, and an unsubscribe can set it

An unsubscribe is offered to the lead's Stop all outreach, which does nothing unless the organization turned it on. Mail to and from a lead now updates its last...

Kamo·1w ago
Featurekamo-shared-library

A board floor on each pipeline, and an index for a lead's loans

leads_from holds every board column to a range of (ORG_ID, DATE_CREATED): 14 seconds down to 3 ms on a market of 795,919 leads. Column already applied by hand; ...

Kamo·1w ago
Featurekamo-internal

The Automation Streams canvas and list (sales floor M6)

The canvas moves from /tasks to /settings/automation/[id] and /tasks now redirects to the list with a 307. It keeps the spring wires, glow and side panel, split...

Kamo·1w ago
FeatureVOIPService

Feed a lead's last contact from real calls, honestly

Two capabilities say what a provider really reports: whether calls connected and how long they ran. Call evidence is built from those, so a limited provider rec...

Kamo·1w ago
October 31, 2026
Featurekamo-shared-library

Switches for stage and loan sync, and a move's origin

Three lender switches, off by default: a stage follows its loans, loans follow a stage, and a person's stage move may reach a linked external loan. A transition...

Kamo·1w ago
Featurekamo-shared-library

Contact foundation: outcomes, last contact, stop all outreach, consent and the outreach check

Org-named call outcomes on fixed meanings, last attempt and conversation per lead in a new table fed from LeadCommunicationLinker, a lead-level Stop all outreac...

Kamo·1w ago
Featurekamo-internal

A lead's loans, and correcting a loan's deal or lead

The lead page shows the rollup across its deals, with each deal on its own and the least advanced loan on top, never one loan as the lead's. Loans in a deal tha...

Kamo·1w ago
FeatureSecurityService

A lead's loan rollup, and corrections to deals and leads

A lead holds many loans, so stop treating one as the lead's. - The legacy Arive path took the lead's newest application, which could already speak for anothe...

Kamo·1w ago
Featurekamo-shared-library

How a lead reads its loans

A lead shows the least advanced loan still in play. Loans that ended unfunded and unfinished archived loans are ignored, funded loans count, and the answer neve...

Kamo·1w ago
Featurekamo-shared-library

Stream, version, run and outbox tables, rights 665-666, and the lead-change tap

Dark until SecurityService declares the writer bean and an org publishes a stream. The outbox insert runs in its own savepoint so it can never fail the lead tra...

Kamo·1w ago
Featurekamo-shared-library

Pipeline, dropdown field and saved view tables, and rights 661-664

New tables only; leads is unchanged. Positions and dropdown answers use plain lead ids, so they sit in a soft-reference list the lead delete walks, apart from t...

Kamo·1w ago
Docskamo-internal

Launch scope confirmed by the pilot org

Kamo·1w ago
Featurekamo-internal

Optional loan statuses in settings and the pipeline, and the program plan

The mortgage Automation tab gains an Extra loan statuses group. The board shows an optional status only while a loan sits in it, so lenders who never turn one o...

Kamo·1w ago
FixInitializerService

Drop the full status range check on loan_files

0-19 was exactly full, and the next LoanFileStatus is ordinal 20. Applied by hand on 2026-10-31; listed here so a rebuilt database loses it too.

Kamo·1w ago
Featurekamo-shared-library

Optional Need Docs, Ready for Submission and Closing Scheduled statuses

Three more stops a lender can add to its pipeline, each off until the organization turns it on, so no other lender sees them and no loan row can carry the new o...

Kamo·1w ago
Fixkamo-shared-library

Canonical templates draw spacers without zero-size text

38 templates drew colour bands and gaps as font-size:0 cells holding &nbsp;, which spam filters score as hidden text. EmailService rewrites these at send time f...

Kamo·1w ago
Fixkamo-internal

Add an alias domain through the mail-only door

The card posted to /api/security/domains, which refuses any organization that already has a domain, so adding one failed for everybody. It now uses ************...

Kamo·1w ago
FeatureSecurityService

A mail-only domain, exempt from the one-domain rule

An organization that already has a domain could not add an alias domain: POST /domains refuses a second root (ONE_DOMAIN_PER_ORG), and that is every organizatio...

Kamo·1w ago
FixEmailService

Sign calendar invitations from an org domain as well

EmailSmtpService.send carried no domain signer, only sendAsMember did, so an invitation sent from an alias domain left unsigned while the member's ordinary mail...

Kamo·1w ago
FixKlusterServices

An alias domain's senders may relay, and drop the dead Mailgun password

EmailService sends over port 25 from mynetworks without signing in, and relay_sender_domains refuses anything but kamocrm.com and kamouniverse.com with a 451. E...

Kamo·1w ago
October 30, 2026
Featurekamo-internal

Call and meeting notices settings; no "automated assistant" copy left in SI settings (TPNODISCLOSE)

Owner order 2026-10-29: SIs no longer introduce themselves up front. - Settings > Super Intelligence > Call and meeting notices (tab + menu entry + landing ca...

Kamo·1w ago
FeatureAIService

The website chat never volunteers that it is an SI and answers a sincere ask honestly (TPNODISCLOSE)

Owner order 2026-10-29, with the controller's rule: on the website chat the SI (or persona) never brings up what it is and never calls itself an SI or an AI; th...

Kamo·1w ago
Featurekamo-shared-library

An organization's call and meeting notices, declared for KamoInitializer (TPNODISCLOSE)

ai_org_voice_notices: the neutral recording notice (default ON) and whether SIs introduce themselves up front as virtual assistants (default OFF), one row per o...

Kamo·1w ago
October 29, 2026
FixSecurityService

Forget an invoice's expired card payment page

An abandoned Stripe Checkout page (it expires unpaid after 24 hours) stayed on the invoice for good, so the invoice looked mid-payment: it could not be updated ...

Kamo·1w ago
Featurekamo-internal

Add a seat change to the customer's unpaid bill, and show updated invoices

- Change dialog: a third billing choice, "Add it to their unpaid bill", with the preview saying which invoice it updates and its new total, or that there is n...

Kamo·1w ago
FeatureSecurityService

Send an updated invoice, and show the customer everything they owe

- Sending an invoice updated since it last went out uses the new commerce.invoice_updated email: what changed, the old and new amounts, the new due date, an...

Kamo·1w ago
ChoreEmailService

Rebuild for the updated-invoice template

Kamo·1w ago
Featurekamo-shared-library

The updated-invoice email, and what else the customer owes

commerce.invoice_updated tells a customer their invoice was updated, what changed, the old and new amounts and the new due date, with the updated PDF. Both invo...

Kamo·1w ago
Featurekamo-shared-library

Updated invoices — later charges go onto the customer's unpaid bill

A seat or license change can now be billed OPEN_INVOICE: when it takes effect its prorated charge is added to the customer's sent, unpaid invoice, which is then...

Kamo·1w ago
FixEmailService

Outbound mail stops looking like spam: a plain-text part, a real Message-ID, no unreachable Reply-To, no zero-font spacers

rspamd's scan of 76 recent kamouniverse.com messages, fixed where each is built: - MIME_HTML_ONLY (75/76): every body is now multipart/alternative with a text/...

Kamo·1w ago
FixEmailService

An explicit alias at the default alias domain keeps the member on it

personalMailboxes() leaves out the primary mailbox's copy on an alias domain when the member holds an explicit alias at that address. When that copy was the org...

Kamo·1w ago
Featurekamo-internal

Add an alias domain end to end, guided for a non-technical owner

Settings -> Email -> Domains -> Alias domains: - Adding a domain the organization hasn't proved yet now adds it to the organization's domains and shows the on...

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