AI settings Workforce controls tab — pause and resume every AI member
Tasks across lists — create, reassign and move, status, delete, links
A move re-seals the task's words under its own label, since the fallback key is the list owner's and the move changes the owner. A due time sent again unchanged...
Real model discovery for OpenAI-style, Anthropic, Google, Hugging Face, Ollama and catalogue-only vendors
The 29 header layouts as Handlebars templates, held to the legacy goldens
Registry home — providers grid, Add provider, Provided by Kamo, coverage
The grid's switch and order arrows own their clicks (gridOwnClick): ag-Grid fires rowClicked from a native listener, so stopPropagation could not keep them from...
Find a time — colleagues' busy time, working hours and suggested slots
The event dialog's GUESTS section gains the scheduling assistant: the event's day from 06:00 to 22:00 in its own zone, one track per person (you and up to 20 ch...
Mention rows
MediaObjMsgMention maps media_obj_msg_mentions (composite key obj_id + member_id). deleteByObjId is a derived delete, not a JPQL bulk DELETE, so an edit that ke...
Tasks carry status, priority, due, assignee and links; the Inbox keeps its rules
AI status and hiring checklist on the member profile; Person-or-AI is one-way
Known-model catalogue (hints + unchanged prices) and name-hint classifier
The 29 signature layouts as Handlebars templates, held to the legacy goldens
My tasks — scope, filters, a grid, and a composer that assigns
The grid ticks a task off without opening it, keeps each column's sort and width across renders, sorts due time, priority and status by meaning, says when a fil...
Announce new voicemails — live panel, phone push and a card
A voicemail the sweep writes for the first time, on an extension with an assigned member and received in the last 24 hours (spec D17), now publishes voip.voicem...
Grant-all session rights honour member NUKEs and model FORCE rules
An ARTIFICIAL member is refused with the same IllegalStateException, so a caller's fallback applies the supervisor ceiling and never-grantable floor.
Kamo Speech's registry facts and its registration through AIService's internal registry
The last wait needs VERIFIED to hold for 120 s. An attestation itself writes VERIFIED and #36 carries no probe time, so a first VERIFIED read cannot tell SP01's...
Task notifications after commit, and the org-change signal for internal writes
Compose template engine, view models, helpers, partials and wrapper
Empty ineligible members on every write path and notify rights-change listeners
A chunk notifies its AI members before its humans, so a supervisor cascade's fresher recalculation of an AI is that AI's last notification.
A live probe of every Kamo Speech capability, with a four-stream load check
The probe runs inside the pod and prints one JSON document for register.py: a TTS round trip per voice and language (recall >= 0.8), the batch STT row, a realti...
Who a task can be given to, who supervises whom, and the names tasks show
Capability and provider-type catalogs, typed attribute codec
The codec also refuses, as invalid_attribute, a null list item (a bare NullPointerException before), a list or object where text belongs (stored as the text "[e...
Catalog-driven connection form, status chips, rail, draft and error helpers
A test verdict shows only while the form still holds the values it tested, and a refusal that names a visible field sits under that field. The rail flags unsave...
Compose manifest, JavaScript text semantics and icon URIs
ComposeText also ports logoVariants.ts (PNG logo rungs, SizedLogo) and badges.ts (uploaded-badge ?h= scaling), and follows JavaScript exactly where Java differs...
Live task lists, task chips with zone-correct due times, record link chips
Bound AI members by their supervisor's applied rights and the never-grantable floor
BFF passes AIService answers through unchanged and publishes registry changes
Registry entities, capability/value/price/opt-out rows, repositories
AiProvider and AiModel gain the registry columns (scope, hosting, auth, facts, platform key, lifecycle, origin); provider type and cost tier map through the dig...
Repeat, window, free/busy and reminder-method logic; a 204 is not a 500
Hire an AI member from Add Team Member, with seat checks and a hiring checklist
Kamo Speech on k3m1 — pinned Speaches, read-only models, DNS-only egress
Keys and NetworkPolicies on in-cluster inference; Kamo reranker and Kamo Local LLM
TEI embeddings and the new cross-encoder reranker require TEI_API_KEY; bergamot, LibreTranslate and the new Kamo-owned Ollama (qwen3:4b) sit behind the Kamo aut...
ARTIFICIAL template resolution and the rights-change listener seam
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.
