OSS-first docs

These docs teach the open system first: contracts, generated surfaces, runtimes, governance, and incremental adoption. Studio shows up as the operating layer on top, not as the source of truth.

template.messaging.core

Real-time messaging primitives for template applications, including conversations, participants, and delivery events.

  • Type: capability (capability)
  • Version: 1.0.0
  • Owners: platform.contractspec-studio
  • field.key.label
    template.messaging.core
    field.version.label
    1.0.0
    field.type.label
    capability (capability)
    field.title.label
    template.messaging.core
    field.description.label

    Real-time messaging primitives for template applications, including conversations, participants, and delivery events.

  • Type: capability (capability)
  • Version: 1.0.0
  • Owners: platform.contractspec-studio
  • field.tags.label
    templates,messaging,realtime
    field.owners.label
    platform.contractspec-studio
    field.stability.label

    Real-time messaging primitives for template applications, including conversations, participants, and delivery events.

    Source Definition

    export const MessagingCapability = defineCapability({
    	meta: {
    		key: 'template.messaging.core',
    		version: '1.0.0',
    		kind: 'api',
    		title: 'Template Messaging Core',
    		description:
    			'Real-time messaging primitives for template applications, including conversations, participants, and delivery events.',
    		domain: 'templates',
    		owners: ['platform.contractspec-studio'],
    		tags: ['templates', 'messaging', 'realtime'],
    		stability: StabilityEnum.Experimental,
    	},
    	provides: [
    		{
    			surface: 'operation',
    			key: 'template.messaging.conversation.create',
    			version: '1.0.0',
    			description:
    				'Create a direct or group conversation scoped to a Studio project.',
    		},
    		{
    			surface: 'operation',
    			key: 'template.messaging.conversation.list',
    			version: '1.0.0',
    			description:
    				'List conversations with pagination, unread counts, and filters.',
    		},
    		{
    			surface: 'operation',
    			key: 'template.messaging.message.send',
    			version: '1.0.0',
    			description:
    				'Send a message with attachments and optimistic delivery state.',
    		},
    		{
    			surface: 'operation',
    			key: 'template.messaging.message.read',
    			version: '1.0.0',
    			description: 'Mark messages as read and update participant cursors.',
    		},
    		{
    			surface: 'event',
    			key: 'template.messaging.message.received',
    			version: '1.0.0',
    			description: 'Emitted when a participant receives a new message.',
    		},
    		{
    			surface: 'event',
    			key: 'template.messaging.typing',
    			version: '1.0.0',
    			description: 'Emitted when a participant is typing in a conversation.',
    		},
    	],
    	requires: [{ key: 'studio.project', version: '1.0.0' }],
    });