Built-in entity types

The substrate ships a small vocabulary, split into groups by subsystem the way Kubernetes splits API groups. Extensions install their own groups beside it and point at it; nothing installed ever redefines a shipped type. Every declaration is queryable (ssctl types, or GET …/core.teild.dev/entitytypes), descriptions included, so this page is the map, not the source of truth.

people.teild.dev

Entity typeWhat it is
personOne human, one entity: every edge that means "a person" lands here. What a single source holds about them is its own entity, mapped on.
organizationAn org a person belongs to: employer, workspace, publisher.

The built-in person carries a two-state prominence machine: utility at birth, known once something promotes it (an address-book sync, or you). Search ranks utility people below every known match (search).

messaging.teild.dev

Entity typeWhat it is
conversationA DM, a group chat, or a channel.
conversationmessageOne message in a conversation; outbound ones walk the delivery states.
emailthreadOne mail thread.
emailmessageOne mail message in a thread.

calendar.teild.dev

Entity typeWhat it is
calendarOne provider calendar.
calendareventAlways a concrete occurrence; integrations explode series into these.
calendareventseriesThe recurring definition, RRULE and exceptions, never on the timeline.
transcriptA meeting transcript, pointed at the instance that actually happened.

tasks.teild.dev

Entity typeWhat it is
taskSomething to do.
projectWhat tasks group under.

media.teild.dev

Entity typeWhat it is
bookThe work: what an author wrote, independent of any edition you hold.
bookeditionOne edition: the paperback on the shelf, the epub, the audiobook.
bookseriesAn ordered collection a book belongs to, in any format.
movieOne film.
moviecollectionA franchise, not a shelf.
musicalbumOne album or release: the pressing you have.
musictrackOne track on an album: the recording itself.
podcastOne podcast feed.
podcastepisodeOne episode; its point on the timeline is the publish date.
tvseriesOne television series.
tvseasonOne season of a series; season 0 is where specials go.
tvepisodeOne episode; its point on the timeline is the air date.

automation.teild.dev

The delivery machinery, declared as data entities so a trigger is console-editable and changelog-visible like anything else (functions):

Entity typeWhat it is
triggerOne binding of a source (an entity subscription, a schedule, or a webhook) to one callable, owning the delivery cursor.
runOne settled trigger delivery attempt, the run ledger's row.

core.teild.dev

The substrate's own machinery, declared as types so it lists, reads, and filters exactly like vocabulary:

Entity typeWhat it is
tenantOne tenant: its Postgres schema and its bootstrap credential.
tokenOne bearer credential and the actors it may write as.
actorOne declared actor, the name writes are attributed to.
agentOne declared agent: an LLM-loop callable (agents).
blobOne content-addressed blob: the manifest is the metadata, the bytes live in the byte store; the digest is the id.
entitymergeOne performed merge and what it moved (merges).
entitysplitThe undo of one merge, likewise performed on creation.
entitymergerequestA proposed merge, performed when its decision is accepted.
entitypatchrequestA proposed create, patch, or delete, applied when its decision is accepted (the patch request sibling).

The nine schema resources (schemagroup, entitytype, propertytype, trait, entitymapping, function, agent, bundle, actor) live in core too, and so do the four shipped traits: temporal, which puts an entity on the timeline, and the bundleconfig, accountconfig, and oauth2 interfaces the OAuth facility recognizes.

ai.teild.dev

The agent runtime vocabulary is consolidated into one AI group. Agents are alpha, so this group is a preview, unfrozen at v1 and not part of the frozen core. Its full type identities are llm.ai.teild.dev, thread.ai.teild.dev, and message.ai.teild.dev. (The agent kind itself stays a first-class core kind, agent.core.teild.dev, listed above.)

Entity typeWhat it is
llmOne model row: provider, base URL, model, pricing, optional key.
threadOne agent run's conversation state, written as the loop runs.
messageOne turn in a thread, with its tool-call audit.

Back to teild.dev, or reread the introduction with the pieces in place.