SymorvaDocs
Modules

AI & creator studio

An AI assistant, image generation, AI short dramas and product ad creation inside the community, with explicit, revocable member grants for conversation access.

Developer preview· Interface published, subject to change

The AI & creator studio brings AI tools into the community app: an assistant, image generation, AI short-drama production and product ad creation. Projects, prompts, generated assets and publishing rules live in the operator's deployment on the studio-service component. Inference runs on the shared AI service.

The module is in developer preview. Its building blocks exist in the reference stack — an AI control plane that routes model traffic through a gateway with quota enforcement, an AI creation pipeline with idempotent paid commands, and a consent-gated contract for summarising and replying to selected messages — but the member-facing studio is not yet generally available there.

Capabilities

CapabilityManifest optionStatus
AI assistantassistantPreview
Image generationimageGenerationPreview
AI short dramas — scripts, episodes, mediashortDramaPreview
Product ad creationproductAdsPreview
Conversation summary and reply suggestions with member grantchatContentAccessPreview

Configuration

symorva.config.json (excerpt)
{
  "modules": {
    "aiStudio": {
      "enabled": true,
      "assistant": true,
      "imageGeneration": true,
      "shortDrama": true,
      "productAds": false,
      "chatContentAccess": "member-grant"
    }
  }
}

Prop

Type

Validation rules for this block:

  • service.ai-required (error) if the studio is enabled while sharedServices.ai is none.
  • module.empty (warning) if the studio is enabled with assistant, imageGeneration, shortDrama and productAds all false.
  • privacy.ai-grant (info) if chatContentAccess is member-grant while chat end-to-end encryption is on.

Chat content access

The assistant never reads chat content by default.

chatContentAccessBehaviour
noneThe assistant cannot be given access to any conversation. It works only on what the member types or uploads into the studio.
member-grantA member can grant the assistant access to a conversation, or to selected messages in it, from their own device. The grant is scoped, visible to the member, and revocable at any time.

How a grant works:

  1. The member selects a conversation or messages and chooses an AI action — for example summarise or suggest a reply.
  2. The app asks for consent before anything is uploaded or any AI request is made.
  3. With encryption on, the member's device decrypts the selected content locally and sends only that content, for that request, through the studio service to the AI service.
  4. Revoking the grant stops future access. Content already processed for a completed request is not recalled.

Operators cannot create grants on a member's behalf, and the Server API exposes grant metadata for audit — never granted content.

Chat encryption does not make AI inference end-to-end encrypted. Content a member sends to the assistant is processed by the AI service in plaintext for that request.

Generation jobs and billing

Generation is asynchronous. A job moves through queued, running, and then completed or failed; results are delivered to the studio service and stored in the operator's object storage.

Where an operator charges members for generation, the studio follows the sequence the reference creation pipeline uses: a server-side quote, then admission — which reserves the job, checks the quote and balance, and debits the member in one database transaction — then settlement when the result arrives. Replaying the same command returns the same job without a second charge. Prices are set by the operator; the client never supplies an amount.

Publishing

Generated assets are private to their creator until published. Publishing follows the operator's rules — who may publish, where, and whether publication passes moderation first. Published short dramas and ads can be distributed in the community's own surfaces.

Events

Preview webhook events. Payloads never include prompts, inputs or generated content.

EventFired whenKey fields
ai.grant.createdA member grants conversation accessgrantId, memberId, conversationId, scope
ai.grant.revokedA member revokes a grantgrantId, memberId
ai.job.createdA generation job is admittedjobId, memberId, kind
ai.job.completedA job produces its resultjobId, kind, units
ai.job.failedA job failsjobId, kind, reason
ai.asset.publishedA generated asset is publishedassetId, memberId, kind

Privacy scope

AI never reads chat content by default. Access to a conversation requires an explicit, revocable grant.

Shared services and metering

Shared serviceUnitMeasures
AI inference & generationai-tokensModel tokens processed for assistant and text requests
AI inference & generationimagesImages generated
AI inference & generationvideo-secondsSeconds of video generated

Quotas are enforced per community by the AI service and can be subdivided per member by the operator.

Limits

The manifest has no numeric fields for the studio. Throughput and quotas are set per community on the shared AI service.

On this page