KamoCRM

Live Change Log

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

17,659
Total Changes
6,077
Features
5,341
Fixes
30
Projects
Filter by project
All Projects17,659AIService260APIService174BillingService158ConversionService110DaemonService138DocsService223ESigService91EmailService587InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,874TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,412kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,681kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild16CI523Chore776Docs3,257Feature6,077Fix5,341Other998Performance165Refactor278Revert23Style42Test162Upgrade1
December 4, 2025
OtherKlusterServices

Use Dovecot 2.4 with proper configuration

- Use Alpine latest (has Dovecot 2.4) - Add dovecot_config_version = 2.4 as FIRST setting (required) - Fix Dovecot SQL user_query to include mail location - Ver...

snadjafinia·10mo ago
OtherKlusterServices

Add dict block as first setting for Dovecot config

snadjafinia·10mo ago
OtherKlusterServices

Add config version comment to Dovecot config

snadjafinia·10mo ago
OtherKlusterServices

WORKING SOLUTION: Alpine-based Dovecot with MySQL backend

- Use Alpine Linux base image with Dovecot installed from packages - Dovecot config created inline - no Docker image restrictions - Full control over configurat...

snadjafinia·10mo ago
OtherKlusterServices

Add initial accounts to postfix-accounts.cf for docker-mailserver

- docker-mailserver requires at least one account in postfix-accounts.cf - Added sage@, support@, sysadmin@kamocrm.com with hashed passwords - Password hash gen...

snadjafinia·10mo ago
OtherKlusterServices

Replace separate Postfix/Dovecot with docker-mailserver integrated solution

- Deploy docker-mailserver **************** - Integrated Postfix + Dovecot in single proven container - Configure MySQL backend for virtual mailboxes/domains/al...

snadjafinia·10mo ago
OtherKlusterServices

Try older Dovecot Alpine image to avoid strict config requirements

- Switch from dovecot/dovecot:latest to dovecot/dovecot:2.3.21-alpine - Older version may not have strict dovecot_config_version requirement - Keeps all databas...

snadjafinia·10mo ago
OtherKlusterServices

Dovecot config iteration - simplified further

- Removed problematic includes and dict blocks - Simplified to minimal configuration - Note: The official dovecot/dovecot image has strict config requirements

snadjafinia·10mo ago
OtherKlusterServices

Simplify Dovecot config - remove problematic version include

- Remove dovecot-version include that was causing errors - Use simpler configuration with just protocols and protocol includes - Restarted Roundcube pod to trig...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot version requirement and create roundcubemail database

- Dovecot: Add dovecot-version.conf.ext include (required as first setting) - MySQL Job: CREATE DATABASE roundcubemail before granting permissions - Fixes 'The ...

snadjafinia·10mo ago
OtherKlusterServices

Simplify Dovecot config and fix MySQL permissions job

- Dovecot: Use single complete dovecot.conf instead of conf.d fragments - Dovecot: Simplified configuration with minimal working setup - MySQL Job: Use root cre...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot configuration and add permissions job to CI/CD

- Dovecot: Move passdb/userdb config directly into 10-auth.conf - Dovecot: Remove problematic auth-sql.conf.ext include - CI/CD: Add mysql-permissions-job.yaml ...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot auth syntax and Roundcube database permissions

- Dovecot: Fix auth-sql.conf.ext syntax - passdb/userdb need section names - MySQL: Grant ALL PRIVILEGES on roundcubemail database to kamo user - Add mysql-perm...

snadjafinia·10mo ago
OtherKlusterServices

Fix Dovecot and Postfix configurations to resolve CrashLoopBackOff

- Dovecot: Use conf.d structure with official Dovecot image defaults - Dovecot: Split config into individual files (10-auth, 10-mail, 10-master, 10-ssl) - Postf...

snadjafinia·10mo ago
OtherKlusterServices

Trigger deployment after WireGuard fix

snadjafinia·10mo ago
OtherKlusterServices

Fix kubeconfig setup in CI/CD to use Tailscale IPs directly

- Replace sed commands with kubectl config set-cluster for reliable connection - Use 100.64.1.1 for K1M1 and 100.64.2.1 for K2M1 directly - Fixes 'dial tcp 100....

snadjafinia·10mo ago
OtherKlusterServices

Add complete mail server infrastructure with Postfix, Dovecot, Roundcube, and MySQL

- Deploy mail server (MySQL, Postfix, Dovecot, Roundcube) to K1M1 only - Configure HTTPS access via Traefik at https://mail.kamocrm.com - Set up multi-domain su...

snadjafinia·10mo ago
December 1, 2025
Otherkamo-internal

@ info/ rich

snadjafinia·11mo ago
November 30, 2025
November 27, 2025
Otherkamo-login

Thêm nhật ký để nhớ giá trị của tôi và gõ chuyển đổi

- Thêm chuyển đổi kiểu để nhớ I để xử lý chuỗi/boolin/số - Thêm ghi chép chi tiết để theo dõi thiết lập cookie logic - Bản ghi nhớ giá trị của tôi và gõ để gỡ l...

snadjafinia·11mo ago
Otherkamo-login

Thêm nhật ký toàn diện cho thao tác cookie USERNAME OF TRANSLATORS

- Thêm chi tiết ghi nhật ký để đọc cookie trên trang tải - Thêm nhật ký để kiểm tra các cookie được đặt sau khi trả lời đăng nhập - Thêm nhật ký đầu trang Set-C...

snadjafinia·11mo ago
November 26, 2025
Otherkamo-login

Cập nhật trường tên người dùng cần dùng để lắp lại

- Thêm phím để ẩn nhập tên người dùng để ép buộc lắp lại sau khi đăng xuất - Bảo đảm tất cả các trường liên quan đến tên người dùng đều hoàn toàn mới sau khi đă...

snadjafinia·11mo ago
Otherkamo-login

Buộc đơn lắp lại sau khi đăng xuất để ngăn chặn tự động đổ rác lên trình duyệt

- Thêm hình thứcKey trạng thái mà thay đổi sau khi đăng xuất để ép buộc thành phần remount - Thay đổi phím Văn bản để bao gồm dưới dạng Key - Thay đổi chuyển độ...

snadjafinia·11mo ago
Otherkamo-login

Dùng tên trường ngẫu nhiên để ngăn cản khả năng nhận diện tự động trình duyệt

- Tạo ra hậu tố ngẫu nhiên cho tên trường tên người dùng trên mỗi trang tải - Ngăn chặn trình duyệt nhận ra lĩnh vực giống như một trong cùng một trên trang tải...

snadjafinia·11mo ago
Otherkamo-login

Ngăn cản trình duyệt tự động đổ rác vào máy phục hồi tên người dùng cũ sau khi đăng xuất

- Thay đổi tự động hoàn thành từ tên người dùng thành 'off' trên trường tên người dùng - Thay đổi hình thức hoàn chỉnh từ 'on' đến 'off' - Xoá tên người dùng và...

snadjafinia·11mo ago
Otherkamo-login

Xoá & Sổ tay cookie

- Xoá mọi cookie trên trang đăng nhập kamo-login (bên khách hàng) - Xoá mọi cookie trên kamo-login logout API (bên máy chủ) - Dọn sạch các kho tàng địa phương v...

snadjafinia·11mo ago
Otherkamo-internal

Delete ALL cookies indiscriminately during logout

- Delete all cookies on kamo-internal logout page (client-side) - Delete all cookies on kamo-internal logout API (server-side) - Clear localStorage and sessionS...

snadjafinia·11mo ago
Otherkamo-internal

Invalidate existing session before validating OTK

- Check for existing *** cookie in validate request - Clear and delete any existing session before validating OTK - Verify session data is not empty JSON (clear...

snadjafinia·11mo ago
OtherSecurityService

Invalidate existing session before creating new one during login

- Check for existing *** cookie in login request - Delete/invalidate existing session before creating new one - Prevents reusing old session cookies when loggin...

snadjafinia·11mo ago
Otherkamo-internal

Disable activity tracking and session extension during logout

- Add disableClientActivityTracker() function to stop activity tracking - Stop session monitor when logout is initiated - Prevent screen movement/activity from ...

snadjafinia·11mo ago
Otherkamo-login

Xoá dữ liệu phiên chạy trước khi xóa khóa trong điểm đăng xuất

- Đặt dữ liệu phiên chạy để trống JSON trước khi xoá khóa - Phiên họp bảo mật là không thể chấp nhận được ngay cả khi việc xoá không thành công hoặc bị lỗi sao ...

snadjafinia·11mo ago
Otherkamo-internal

Clear session data before deleting key in logout endpoint

- Set session data to empty JSON before deleting the key - Ensures session is unusable even if deletion fails or there's replication lag - Add error handling wi...

snadjafinia·11mo 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