KamoCRM

实时变更日志

每个功能、修复和改进都会在发布时发布。 没有任何东西会在发布时被搁置。

17,662
变动共计
6,080
特点
5,341
固定
30
项目
按项目筛选
所有项目17,662AIService261APIService174BillingService158ConversionService110DaemonService138DocsService223ESigService91EmailService587InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,874TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,413kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,682kamo-signer-monorepo57kamolos114
按类型筛选
所有类型Build16CI523Chore776Docs3,257Feature6,080Fix5,341Other998Performance165Refactor278Revert23Style42Test162Upgrade1
March 20, 2026
Featurekamo-internal

Add modern recipient fields with chips, autocomplete, and contact picker

Replace basic text inputs in email compose To/CC/BCC fields with rich recipient components: chip-based display with remove buttons, debounced autocomplete searc...

kamo·7mo ago
Featurekamo-internal

Add sync toggle, source management, and WebSocket status

- Overhaul ContactsLeftPanel with 3 display modes: org-only books, sources with nested books (sync off), and flat org books (sync on) - Add SyncFooter with re...

kamo·7mo ago
FeatureDaemonService

Include memberId in sync complete NATS messages

SyncCompletePublisher now accepts optional memberId parameter, and ContactSyncJob passes it from the integration's member reference. This enables EmailService t...

Kamo·7mo ago
FeatureEmailService

Add member-level sync toggle and WebSocket sync status

- Add PUT /member/sync-toggle endpoint to batch-toggle syncEnabled on all member integrations at once - Add ContactSyncWebSocketController broadcasting aggreg...

Kamo·7mo ago
Featurekamo-internal

Add Create Contact dialog with multi-tab form

Adds a fully-featured Create Contact dialog accessible via a "New" chip in the contacts toolbar. The dialog supports all contact sub-entities (emails, phones, a...

kamo·7mo ago
Featurekamo-internal

Send and display image attachments in chat

- SmsChatTab: read file as base64 via FileReader, pass to API, render <img> in message bubble - voipApi: add attachment params to sendSms

kamo·7mo ago
FeatureInitializerService

Add attachment_url column to voip_messages

Kamo·7mo ago
Featurekamo-shared-library

向 VoipMessage 实体添加附件Url 字段

Kamo·7mo ago
FeatureVOIPService

Add MMS attachment support — multipart send, base64 storage, image display

- RingCentralProvider: override sendSms with multipart/form-data MMS path - VoipMessageService: accept attachment bytes, store base64 data URL in attachmentUrl ...

Kamo·7mo ago
Featurekamo-shared-library

在 OrgOAuth 仓库中添加查找 AllByProvider

Kamo·7mo ago
March 19, 2026
FeatureAPIService

Add OAuth callback forwarding with no-redirect RestTemplate

- Add noRedirectRestTemplate bean (HttpClient.Redirect.NEVER) so the 302 from VOIPService's OAuth callback is passed through to the browser instead of being...

Kamo·7mo ago
Featurekamo-internal

Replace JWT config with OAuth connect UI for RingCentral

- RingCentralConfig: OAuth connect/disconnect button with status indicator, main phone number field, test connection (only when connected) - voipApi: add getO...

kamo·7mo ago
FeatureVOIPService

Refactor RingCentral to OAuth 2.0 Authorization Code flow

- New OAuthController: /oauth/start (returns authUrl), /oauth/callback (exchanges code, saves tokens), /oauth/status, DELETE /oauth/token - OTKValidationFilte...

Kamo·7mo ago
FeatureInitializerService

Create KamoTokens schema and org_oauth_token table

- CREATE SCHEMA IF NOT EXISTS kamotokens - CREATE TABLE kamotokens.org_oauth_token with unique (org_id, provider) - DROP COLUMN jwt_key from voip_provider_confi...

Kamo·7mo ago
Featurekamo-shared-library

为 OAuth 2.0 令牌存储添加 OrgOAuthToken 实体

- 在卡莫托肯斯计划(kamotokens.org oauth token)中添加 OrgOAuthToken实体 - 添加 OrgOuth Token 存储器, 并找到 ByOrgIdAnd Provider / 删除 ByOrgIdAndProvider - 从VoipProviderConfig(由OAuth流取...

Kamo·7mo ago
Featurekamo-internal

Equal-height feature cards and Kazoo-aware provider descriptions

- Set height: 100% on FeatureCard motion wrapper so cards in the same row match the tallest card - Update KamoPBX description to highlight Kazoo as a carrier-gr...

kamo·7mo ago
Featurekamo-internal

Add SmsTemplatesTab and SmsCrmTab

kamo·7mo ago
Featurekamo-internal

Add SmsNewConversation dialpad component

kamo·7mo ago
Featurekamo-internal

Add shared template data

kamo·7mo ago
Featurekamo-internal

Redesign phone provider setup to match email provider format with logos, help tips, and correct nav tabs

- Rewrite PhoneProviderSetup to match EmailProviderSetup pattern: list/config view split, AnimatePresence transitions, back button with provider name in header,...

kamo·7mo ago
Featurekamo-internal

Add CalDav/CardDav tab to email settings page

kamo·7mo ago
FeatureEmailService

Add ProviderRegistry

Kamo·7mo ago
Featurekamo-shared-library

在联系集成仓库中添加基于ID的查询方法

Kamo·7mo ago
FeatureEmailService

Add GroupwareProvider interface, ProviderContext, and model classes

- GroupwareProvider interface defines calendar and contact book operations - ProviderContext carries runtime context for provider invocations - Model classes: P...

Kamo·7mo ago
FeatureInitializerService

CalDav/CardDav Part 4 — schema indexes and email repo scan

- Add supplemental indexes on **************** and **************** via SchemaCleanupRunner (Hibernate ddl-auto:update adds the FK columns; indexes are extr...

Kamo·7mo ago
Featurekamo-shared-library

CalDav/CardDav 第4部分——共享库库和实体添加

- 添加联系人整合 FK 到联系人Book 实体 - 添加查找ByContact集成Id到用户算法仓库 - 添加查找ByContact集成Id到联系文件库 - 添加 findByStatusIsNull 到联系人同步日志存储库 - 以 QQ 创建日历晚报存储器

Kamo·7mo ago

“你看见了什么 ? ”

所有这些都会自动到达您的工作空间。 开始使用免费计划,一个月后再阅读此页面。

开始免费永远查看定价