KamoCRM

Live Change Log

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

17,374
Total Changes
5,891
Features
5,258
Fixes
30
Projects
Filter by project
All Projects17,374AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,822TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,321kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,631kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,891Fix5,258Other993Performance165Refactor278Revert23Style42Test159Upgrade1
October 11, 2026
FeatureMediaService

REQUIRES_APPROVAL needs a CONTACT grant, an SI may answer the person who wrote first, overrides are recorded only when they lift a refusal, and AUDIT no longer blocks attachments (KamoCollab CP04 T13)

The chat chokepoints now ask the grant-aware communication policy. A REQUIRES_APPROVAL rule refuses find-or-create and send until a live CONTACT grant links the...

Kamo·1w ago
FeatureAIService

The brief names team chat and releases only once a charter does (KamoCollab CP05 Task 8, R1-3)

CharterSnapshot.Approval reads the resolved approval's source level (absent reads DEFAULT). CharterCompiler renders no "What needs approval" line for SEND_INTER...

Kamo·1w ago
Featurekamo-shared-library

Knowledge scopes, provenance, decisions, org settings and Confidential markers on the entities (KamoCollab CP05 Task 8)

Shared-lib model for CP05 (spec §5.1-§5.2, §5.15): - disclosure enums KnowledgeScope, LinkRelation, DerivedRecordKind, DecisionStatus, DisclosurePosture, Disc...

Kamo·1w ago
Featurekamo-shared-library

The disclosure ledger types, entities and DisclosureRecorder (KamoCollab CP08 Task 4)

Append-only org_disclosure_events and its recipient and source rows (String columns, no @Enumerated, @PreUpdate/@PreRemove refuse), the five ledger vocabularies...

Kamo·1w ago
FeatureAPIService

Carve out /api/docs/internal/** for the disclosure label endpoint

KamoCollab CP05 Task 23. DocsService gains POST **************** guarded only by the KamoAI internal secret and called in-cluster, so the public gateway ends th...

Kamo·1w ago
FeatureMCPGatewayService

A team chat line is SEND_INTERNAL_MESSAGE, free while no charter layer names it (KamoCollab CP04 Task 20)

Defect 5: ChatPack plans a CHAT post as SEND_INTERNAL_MESSAGE (support stays SEND_WEBCHAT_MESSAGE), chat_send/chat_mention declare it in alsoClasses, and chat_f...

Kamo·1w ago
FeatureAIService

The brief's words for team chat, SEND_INTERNAL_MESSAGE (KamoCollab CP04 Task 12)

An SI's brief now reads "Messaging colleagues in team chat" for the new action class in its approvals and escalation sections, instead of the default arm's "Sen...

Kamo·1w ago
FeatureRAGService

Note points carry their disclosure label, and note.rag.label updates it in place

KamoCollab CP07 Task 11 (spec §5.17). An upsert may carry the note's label (scope, scopeRefs, allowedMembers, sensitivity/sensitivityLevel, confidential, teamMe...

Kamo·1w ago
FeatureKBService

The DDL for checklist_items.blocked_at, pinned by a contract test (KamoCollab CP13 Task 1)

When an SI's task became BLOCKED, for the stuck-work check. Re-runnable, additive, nullable, no CHECK, no backfill; applied by hand before the shared-lib entity...

Kamo·1w ago
Featurekamo-shared-library

Grants, approvers and overseers in ChatPolicyService; channels in the loader; the analyzer learns channels (KamoCollab CP04 Task 7)

ChatPolicyService(loader, grants, graphs) answers interaction()/interactions(): a live CONTACT grant turns REQUIRES_APPROVAL into ALLOW (CONTACT_GRANT), the app...

Kamo·1w ago
Featurekamo-shared-library

The compile vocabulary: phrase tables and the outline (KamoCollab CP06 Task 4)

PersonalityCompile (VERSION cp06-1, Band, band), TraitPhrases (every table of CP06 spec §5.2.1 as EnumMaps) and PersonalityOutline.build (spec §5.2.2): the arch...

Kamo·1w ago
Featurekamo-internal

Your turn is impossible to miss

When the board becomes yours, a wave runs out from the piece your opponent just set down and lights each of your movable pieces as it passes them. The board's e...

Kamo·1w ago
Featurekamo-internal

Your turn is impossible to miss

When the board becomes yours, a wave runs out from the piece your opponent just set down and lights each of your movable pieces as it passes them. The board's e...

Kamo·1w ago
FeatureEmailService

The two contact notification kinds, and which members an internal address reaches (KamoCollab CP04 Task 11)

CONTACT_REQUESTED and CONTACT_DECIDED are gated on ACCESS_CHAT and listed after MENTIONED. POST **************** ({orgId, addresses[]}, at most 100, KAMOAI_INTE...

Kamo·1w ago
Featurekamo-shared-library

Member facts from the graph, and the channel-aware evaluator (KamoCollab CP04 Task 6)

MemberFacts gains the SI facts (intelligence type, teams, roles, SI supervisor, headed departments), filled by MemberFactsFromGraph. The evaluator learns channe...

Kamo·1w ago
FeatureVOIPService

The CP05 DDL for Confidential markers on calls

KamoCollab CP05 Task 5 (spec 5.1, D8, D27): recordings and phone_call_log each gain is_confidential, confidential_set_by_member_id and confidential_set_at. Hand...

Kamo·1w ago
FeatureEmailService

The CP05 DDL for per-thread Confidential markers and the thread_id indexes

KamoCollab CP05 Task 4 (spec 5.1): public.email_thread_labels keyed by (org_id, thread_key), ix_thread_messages_thread and the partial ix_search_index_thread. H...

Kamo·1w ago
FeatureSecurityService

The DDL for org disclosure settings and the two lead communication label indexes (KamoCollab CP05 T1)

org_disclosure_settings (eight columns, a missing row means the defaults, AUDIT by default) and ix_leadcomm_org_source / ix_leadcomm_org_email_thread, which the...

Kamo·1w ago
FeatureMCPGatewayService

DDL for the SI tool-call policy verdict columns (KamoCollab CP08 T2)

Three nullable ADD COLUMN IF NOT EXISTS on mcp_tool_call_audit: policy_decision, policy_rule, disclosure_event_id (spec §5.1, D11; master §6.10). Hand-applied b...

Kamo·1w ago
Featurekamo-shared-library

The communication-policy entities and repositories (KamoCollab CP04 Task 5)

Rule channels, initiator-only rules and named approvers, the event channel, CONTACT grants beside REPLY grants, contact requests and session supervisors, and th...

Kamo·1w ago
FeatureSecurityService

The DDL for the three append-only disclosure ledger tables (KamoCollab CP08 T1)

The hand-applied DDL of spec §5.1: org_disclosure_events, its recipients and sources, seven org-and-time indexes, and a closing REVOKE that takes UPDATE, DELETE...

Kamo·1w ago
Featurekamo-shared-library

The interaction vocabulary (KamoCollab CP04 Task 4)

Six InteractionChannels; TEAM, ROLE and INTELLIGENCE_TYPE selectors; six SI-aware qualifiers; InteractionApproverKind, ChatGrantKind, ContactRequestStatus and A...

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

'cameras' joins SecurityService's org-change domains

Kamo·1w ago
Featurekamo-shared-library

KamoCameras app (39) and its four rights (333-336)

VIEW_CAMERAS is the hub; MANAGE_CAMERAS, MANAGE_CAMERA_SITES and ACCESS_ALL_CAMERAS hang off it. PHI module CAMERAS is BLOCKED_PENDING_WORK until a per-view aud...

Kamo·1w ago
Featurekamo-internal

The pager counts from the server's own total

EmailService now sends each listing's size in X-Total-Count (emailservice 12926f6) beside the bare array it always returned. The email proxy carries that header...

kamo·1w ago
Featurekamo-internal

The pager counts from the server's own total

EmailService now sends each listing's size in X-Total-Count (emailservice 12926f6) beside the bare array it always returned. The email proxy carries that header...

kamo·1w ago
FeatureEmailService

Message listings say how many messages they hold (X-Total-Count)

The message list in kamo-internal can now be browsed by pages, and its pager needs the listing's size for "51-100 of 1,240" and a Last button. Every listing ans...

Kamo·1w ago
Featurekamo-internal

Members choose to scroll the message list or browse it by pages

The second column only ever loaded more mail as it was scrolled. A member can now pick Scroll or Pages under Filters ("Browse the list"). The choice is kept per...

kamo·1w ago
Featurekamo-internal

Members choose to scroll the message list or browse it by pages

The second column only ever loaded more mail as it was scrolled. A member can now pick Scroll or Pages under Filters ("Browse the list"). The choice is kept per...

kamo·1w ago
Featurekamo-internal

Chess and Hold'em background music loops while their window is in use

Three new Games sound events — Chess Background, Holdem Background and Holdem Lobby — played on repeat with startLoopingEventSound. Chess loops whenever a chess...

kamo·2w ago
Featurekamo-internal

Chess and Hold'em background music loops while their window is in use

Three new Games sound events — Chess Background, Holdem Background and Holdem Lobby — played on repeat with startLoopingEventSound. Chess loops whenever a chess...

kamo·2w ago
Featurekamo-internal

Picture frame says when an upload lands, plays videos once or on repeat, and opens full screen

- Uploads show the file, its place in the batch and byte progress, then a toast when it is in. - A frame's videos play on repeat (loop while showing, held for w...

kamo·2w ago
Featurekamo-internal

Picture frame says when an upload lands, plays videos once or on repeat, and opens full screen

- Uploads show the file, its place in the batch and byte progress, then a toast when it is in. - A frame's videos play on repeat (loop while showing, held for w...

kamo·2w ago
Featurekamo-internal

Onboarding panel for a market with no vendors yet

A market with no vendor products can never show a lead (a lead needs a product), so /leads now replaces the grid for that market with the same onboarding panel ...

kamo·2w ago
Featurekamo-internal

Onboarding panel for a market with no vendors yet

A market with no vendor products can never show a lead (a lead needs a product), so /leads now replaces the grid for that market with the same onboarding panel ...

kamo·2w ago
October 9, 2026
FeatureEmailService

A composed message carries its meeting, and calendar edits ask before telling guests

- /api/email/send takes meetingInvite: the event is filed on the sender's calendar in the same transaction, its ics rides on the composed message with an X-...

Kamo·2w ago
Featurekamo-internal

Composer meetings ride on the email, edits ask before emailing guests, mail links to its event

- The composer sends its meeting with the message instead of a second invite. - Saving an edit to an event with invited guests asks whether to send them an up...

kamo·2w ago
Featurekamo-shared-library

Branded meeting invitation and update letters for calendar guests

Adds calendar.meeting_invite and calendar.meeting_updated canonical templates and MeetingInviteEmail, the variable builder EmailService fills them from.

Kamo·2w ago
October 6, 2026
Featurekamo-internal

Team-member assignment in lead mappings; automated imports on the mapping canvas

Assignment. Manual and automated imports get an "Assigned Team Member" target (replacing "Assigned User", which no importer ever honoured). Its dialog sets a sp...

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