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
July 22, 2026
Fixkamo-internal

Render member photos on avatars inside the chat window

The small avatar icons in a chat popup — the per-message sender avatar (MessageBubble) and the seen-receipt list (SeenIndicator) — all read SessionMember.avatar...

kamo·3mo ago
Fixkamo-internal

Show member avatars in chat tool window title bars

The tool-window title bar renders its icon from the window STORE props — ToolDock passes `avatarSrc={w.toolId === 'chat' ? w.props.avatarSrc : undefined}` and f...

kamo·3mo ago
Fixkamo-internal

Surface real upload errors, sync god mode to session

"Save failed: Full logo upload failed" discarded the status and body, so a 403 from the branding gate read identically to a MinIO outage. The server's own messa...

kamo·3mo ago
Featurekamo-internal

Author eligibility matrices from the catalog panel

Without a matrix covering a scenario's occupancy and purpose, pricing returns NO_COVERAGE — so before this, only a purchase of a primary residence could be pric...

kamo·3mo ago
Featurekamo-internal

Rebuild the agent studio as a full-width workspace

Removing the width cap was not the fix; the layout itself needed to be designed for the space rather than tolerated in it. The studio is now three zones side b...

kamo·3mo ago
Featurekamo-internal

Author lock policies — without one, no rate can be locked at all

RateCommitmentService refuses a lock whenever the priced result carries no lockPolicyVersionId ("lock-policy version is required"), and a result only carries on...

kamo·3mo ago
Fixkamo-internal

Stop the promote preview overcounting rows the server will reject

The "N approved row(s) will publish" caption counted a row whenever an APPROVED note_rate and base_price candidate existed for it, ignoring the values. A price ...

kamo·3mo ago
Fixkamo-internal

Use the full page width; make renaming an agent visible

Two things I got wrong. **Width.** The brief was explicit — use the full width of the page, do not waste real estate — and I capped the studio at a centred 880...

kamo·3mo ago
Fixkamo-internal

Stop the lead view crashing on a lead with no name

/leads/view/{id} died with "Cannot read properties of null (reading 'preferredName')". LeadDTO.toDTO() only builds primaryContact inside `if (lead.getName() != ...

kamo·3mo ago
Featurekamo-internal

Show how each agent is doing

Adds a performance section to the top of the agent studio: conversations, how often a person took over and what triggered it, outreach outcomes, and cost. Writ...

kamo·3mo ago
Fixkamo-internal

Retry an upload with the MIME type the server actually detected

The upload validates the multipart part's Content-Type against the type the server detects from the bytes, and that part type comes from the browser's File.type...

kamo·3mo ago
July 19, 2026
Featurekamo-internal

Edit what each model costs

Adds per-model price editing to the provider setup screen. Prices are seeded from each vendor's published list price where we know it, and blank where we do not...

kamo·3mo ago
Featurekamo-internal

Show the AI handoff context to the agent taking over

Renders an AI_HANDOFF system event as a card with the reason, the AI's summary, and a collapsible transcript of the conversation so far - so the borrower does n...

kamo·3mo ago
Featurekamo-internal

Required-text editor; dedupe AI general settings; fix model toggle

Adds an editor for org-wide required opening/closing text - the compiler and columns existed but nothing could set them, so the capability was dead. Copy states...

kamo·3mo ago
Featurekamo-internal

Full-page AI Sales Agent studio, replacing the modals

The agent editor was a ~800px MUI Dialog whose entire surface was a 10-row textarea, on the one AI tab that used a dialog at all. It is now a dedicated route, a...

kamo·3mo ago
Fixkamo-internal

Correct the CATALOG_SOURCE ordinal — every rate-sheet upload was rejected

ImageAssocType.CATALOG_SOURCE is id 14 but ordinal 12: the ids skip 6, so id is not ordinal+1 past SYSTEM_WIDE. The panel sent 13, which is out of range for a 1...

kamo·3mo ago
July 18, 2026
Featurekamo-internal

AI Sales Agents tab + per-channel agent assignment

Builds out /settings/ai?tab=sales-agents (was a stub): orgs create agents for their sales industry, either from a built-in template or by writing the training c...

kamo·3mo ago
Refactorkamo-internal

Translate the steward console panels; drop the label escape hatch

Catalog, Identifiers, Ingestion, Loan Sale Desk and the Pipeline table rendered hardcoded English inside a console whose other screens were fully translated. Al...

kamo·3mo ago
Fixkamo-internal

Resolve the k1m1 npm registry host inside the build container

kamo-internal has not deployed since 2026-07-16: every build died in npm ci with ENOTFOUND k1m1 while fetching the private @kamo/* packages, which package-lock....

kamo·3mo ago
Refactorkamo-internal

Use next-intl keys for the Mobile Devices strings

Swaps the literal labels added with the Devices sub-tabs for **************** and .mobileDevices.* keys, now published in the translation dictionary (CI fans th...

kamo·3mo ago
Refactorkamo-internal

Fold Document QC into Documents & Conditions; PDF ingest notices

Document QC had its own steward screen for work that is the same documents, on the same loans, done by the same reviewer. Splitting it across two tabs made some...

kamo·3mo ago
Featurekamo-internal

Split Devices into "Phone System(s) Devices" + "Mobile Devices"

The Devices tab now has two sub-tabs. The existing PBX/softphone hardware table moves under "Phone System(s) Devices" unchanged; the new "Mobile Devices" tab M...

kamo·3mo ago
Featurekamo-internal

Ingestion panel accepts spreadsheets, not just CSV

The extractor now reads .xlsx/.xls and sniffs the format from the file itself, so the picker no longer restricts to CSV and the copy says plainly what is readab...

kamo·3mo ago
Featurekamo-internal

Steward Ingestion tab + the Catalog/Identifier proxy routes that were missing

Rate-sheet ingestion existed end-to-end in the backend and none of it was reachable. This adds the one surface that walks the whole chain: upload an investor's ...

kamo·3mo ago
Featurekamo-internal

Steward Identifiers tab — resolve an external number to its loan

New Identifiers tab in the mortgage steward console: paste an external number (loan number, MERS MIN, DU/LP/GUS case file, e-sign envelope...) and resolve it ba...

kamo·3mo ago
July 17, 2026
Fixkamo-internal

Filter non-ACTIVE members from live-participant pickers

Defense-in-depth behind the SecurityService gates: never render a non-ACTIVE team member as a selectable/live participant. Add teamMembershipStatus to the membe...

kamo·3mo ago
Featurekamo-internal

View third-party (loan) documents in the steward requirements review

A steward reviewing a THIRD_PARTY requirement (appraisal/title/flood) can now open the satisfying document. New binary Next.js route streams the per-loan authz'...

kamo·3mo ago
Featurekamo-internal

View/Download vault documents in the account docs tab

Turns the conditions/docs stage into a real review loop. The member-documents proxy route now passes through non-JSON (binary) upstream responses instead of tex...

kamo·3mo ago
Featurekamo-internal

Steward Catalog tab — seed a priceable bundle + inspect the catalog

New Catalog tab in the mortgage steward console: seed a tenant's first priceable bundle with REAL investor + product identities (unblocks pricing), and inspect ...

kamo·3mo ago
Featurekamo-internal

Loan-sale desk UI — the terminal capital-markets steward screen

LoanSaleDeskPanel in the Capital & Risk Command Center: list investor delivery commitments (status filter), open a commitment **************** and per-commitmen...

kamo·3mo ago
Featurekamo-internal

Per-loan lock recommendation on the lock desk

Surfaces the RCE lock-vs-wait recommendation (Lock / Lock-with-steward-override / Do-not-lock) with rationale + a 'model uncalibrated -> steward decides' note w...

kamo·3mo ago
Featurekamo-internal

EClose vendor categories on the integrations tab (RON/eNote/eVault/MERS)

Surfaces the four notarized-leg categories with their vendor options (Proof/ DocuSign Notary, DocMagic/Snapdocs, eOriginal/DocMagic, MERS eRegistry/DocMagic) so...

kamo·3mo ago
Featurekamo-internal

Steward audit/write surfaces — signed-doc download, delegation chips, vendor event timeline, AUS waiver/validation, non-QM stipulations, eligible-investor board, funding histogram, closing audit trail, catalog provenance, composer catalog

Residual-sweep UI: executed-PDF Download + delegation display + vendor-order event timeline; Offer-waiver/Record-validation actions on the AUS drawer; non-QM de...

kamo·3mo ago
Featurekamo-internal

Product picker for the non-QM run trigger

Replaces the plain productId input with a product selector populated from the org's active catalog (non-QM products first, NON-QM chip), falling back to the pla...

kamo·3mo ago
Featurekamo-internal

Disclosure void/sync/resend UI, workflow-template authoring, non-QM run, non-doc vendor orders, in-place config edit

Steward console UI for the remaining audited gaps: - #3/#8/#12/#17 DisclosuresSection: Void live native envelopes; 'Refresh status' hydrates per-recipient sta...

kamo·3mo ago
July 16, 2026
Refactorkamo-internal

Consume @kamo/* shared libs, delete duplicated web copies

kamo-internal now imports the shared TS packages it originally seeded (one - avatarUrlTransform → re-exports @kamo/media-core (getAvatarSizedUrl, transformAva...

kamo·3mo ago
Refactorkamo-internal

I18n the LabelManager software-identity labels via next-intl

Replace literal strings with **************** keys (added to the translation dictionary). English fallback covers locales pending translation.

kamo·3mo ago
Featurekamo-internal

Add install-QR (self-hosted APK) to Setup Mobile App tab

Install/Sign-in toggle: "Install" shows a QR to the signed release APK on the new phone can download+sideload it; "Sign in" keeps the password-gated OTK flow.

kamo·3mo ago
Featurekamo-internal

Web Chat Integration design customizer + live preview

Adds a Customize dialog to the Web Chat Integration tab: an editor form (colors, copy, layout, behavior, AI prompt) on the left and an instant, non-interactive ...

kamo·3mo ago
Featurekamo-internal

Web Chat Integration tab — list, create, snippet (BFF + UI)

Phase 2 core of the Web Chat Integration settings tab: BFF routes proxying to the Phase-1a MediaService CRUD, a typed client, and the /settings/features/chat ta...

kamo·3mo ago
Featurekamo-internal

LabelManager software identity UI + internal tab title

- Company Info: software name/short-name + login/register name + tab-title selectors - Branding: software full/simple logo uploads, override toggles, and per-su...

kamo·3mo ago
Featurekamo-internal

3-stage org onboarding guidance (create → finish DNS → enter)

Generalize the first-org hero into a single stage-aware guidance panel keyed on the member's owned-org count + DNS status (from /api/security/org/my-networks): ...

kamo·3mo ago
Featurekamo-internal

Dual company/software resolver + delivery + consumption

- Organization.ts: deliver software identity + per-surface selectors via OrgContext - brand.ts: **************** (+ vitest, 8 cases) - ThemeLogo: logoSoftware/l...

kamo·3mo ago
Featurekamo-internal

First-org CTA hero for members on the platform org

Show an onboarding hero at the top of the home launchpad inviting a KamoCRM-platform member (not a team member) who hasn't yet created a child org to spin up th...

kamo·3mo ago
Fixkamo-internal

Tightly-cropped Copilot icon + bare NavPri entry

Added a trimmed icon.png (glyph fills ~82% of the frame) and pointed the home pill, NavPri entry, Interaction Center tab, and QR center at it. Stripped the NavP...

kamo·3mo ago
Featurekamo-internal

Add "Access Copilot Mobile App" entry points on home + NavPri

Both surfaces dispatch an `open-interaction-center` event that NavTop listens for to open the Interaction Center on the Setup Mobile App tab. Home shows a label...

kamo·3mo ago
Featurekamo-internal

Password-gate the QR, single-line tab, logo-left header, 10-min code

- Member must re-enter their password (server-verified via /api/mobile-access-otk, which mints the OTK only on success) before the QR is revealed — prevents s...

kamo·3mo ago
Featurekamo-internal

Setup Mobile Access tab — QR to install + auto-configure Mobile Copilot

New 3rd tab in NavTopPanel (gated by ALLOW_MOBILE_ACCESS right): shows a branded QR encoding a short-lived OTK deep link (kamocopilot://configure) that signs th...

kamo·3mo ago
July 15, 2026
Featurekamo-internal

Closed-loan auto-trainer panel on the platform Document AI tab

Top-level owners can run + monitor the MeridianLink closed-loan trainer across every tenant from Settings → Platform → Document AI. Per-org rows show status, lo...

kamo·3mo 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