Skip to main content

Interface: IPersonaDefinition

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:370

The primary interface defining a complete Persona for a Generalized Mind Instance (GMI). IPersonaDefinition

Properties

activationKeywords?

optional activationKeywords: string[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:451

Natural language keywords enabling auto-activation in multi-persona environments.


allowedCapabilities?

optional allowedCapabilities: string[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:408

Abstract capability flags enabling conditional UI / workflow features (e.g., 'web_search').


allowedInputModalities?

optional allowedInputModalities: ("text" | "audio_transcription" | "vision_image_url" | "vision_image_base64")[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:413

Whitelisted input modalities persona accepts (driver for validation in interaction layer).


allowedOutputModalities?

optional allowedOutputModalities: ("text" | "audio_tts" | "image_generation_tool_result")[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:415

Output modalities persona can produce (text, TTS synthesized, image generation results).


avatarConfig?

optional avatarConfig: PersonaAvatarConfig

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:419

Visual avatar / representation metadata (image URL, animation style).


baseSystemPrompt

baseSystemPrompt: string | { template: string; variables?: string[]; } | object[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:389

Base system prompt (or structured template) establishing foundational directives. Supports:

  • Raw string
  • Templated object { template, variables[] }
  • Ordered array of prompt fragments with priority for deterministic merging.

contextualPromptElements?

optional contextualPromptElements: ContextualPromptElement[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:444

Dynamic contextual prompt elements evaluated per turn for fine-grained adaptation.


conversationContextConfig?

optional conversationContextConfig: PersonaConversationContextConfig

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:433

Conversation context override strategy (message importance heuristics, summarization triggers).


costSavingStrategy?

optional costSavingStrategy: "always_cheapest" | "balance_quality_cost" | "prioritize_quality" | "user_preference"

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:400

High-level cost strategy guiding router decisions.


customFields?

optional customFields: Record<string, any> & object

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:460

Arbitrary extension fields and structured defaults for user/task contexts.

Type Declaration

defaultWorkingMemoryConfig?

optional defaultWorkingMemoryConfig: any

Working memory default config attached at GMI instantiation time.

initialTaskContext?

optional initialTaskContext: Partial<PersonaTaskContextDefaults>

Initial task framing values (e.g., domain, complexity baseline).

initialUserContext?

optional initialUserContext: Partial<PersonaUserContextDefaults>

Initial inferred or declared user context values.


defaultLanguage?

optional defaultLanguage: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:426

Default output language (BCP‑47) used when user preference unspecified.


defaultModelCompletionOptions?

optional defaultModelCompletionOptions: Partial<ModelCompletionOptions>

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:396

Baseline completion option overrides (temperature, maxTokens, presence penalties, etc.).


defaultModelId?

optional defaultModelId: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:392

Default model id to target for this persona's typical tasks (can be routed or overridden).


defaultProviderId?

optional defaultProviderId: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:394

Preferred provider if same model family exists across vendors (helps routing heuristics).


description

description: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:378

Rich description of goals, domain focus, and behavioral nuance.


embeddedTools?

optional embeddedTools: ITool<any, any>[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:410

Inline tool instances embedded directly (rare; typically tools live in registry).


id

id: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:372

Stable unique identifier for the persona (used for activation & persistence).


initialMemoryImprints?

optional initialMemoryImprints: object[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:458

Seed working memory imprints establishing initial context (preferences, calibration data).

description?

optional description: string

key

key: string

value

value: any


isCreatorPersona?

optional isCreatorPersona: boolean

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:447

Allows persona to perform privileged creation/update of other personas.


isPublic?

optional isPublic: boolean

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:449

If true persona is globally discoverable subject to subscription tier gating.


label?

optional label: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:376

Optional short label (e.g., abbreviation) for compact UI contexts.


memoryConfig?

optional memoryConfig: PersonaMemoryConfig

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:431

Memory subsystem tuning (retention horizons, summarization cadence, pinning rules).


metaPrompts?

optional metaPrompts: MetaPromptDefinition[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:436

System or self-reflective prompts guiding meta-cognition, self-correction, or planning loops.


minSubscriptionTier?

optional minSubscriptionTier: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:455

Minimum subscription tier required to access persona (e.g., 'pro', 'enterprise').


modelTargetPreferences?

optional modelTargetPreferences: ModelTargetPreference[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:398

Ordered preferences describing desired model traits (cost/perf/latency) for dynamic selection.


moodAdaptation?

optional moodAdaptation: PersonaMoodAdaptationConfig

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:424

Rules controlling adaptive mood shifts & modulation of tone.


name

name: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:374

Human-readable name surfaced in UI selection lists.


personalityTraits?

optional personalityTraits: Record<string, any>

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:422

Arbitrary personality trait map (e.g., { humor_level: 0.7, pedagogical_style: 'socratic' }).


promptEngineConfigOverrides?

optional promptEngineConfigOverrides: Partial<PromptEngineConfig>

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:403

Partial overrides merged onto global PromptEngine configuration for persona specialization.


requiredSecrets?

optional requiredSecrets: string[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:469

Named secrets (API keys, credentials) this persona depends on.


sentimentTracking?

optional sentimentTracking: SentimentTrackingConfig

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:442

Sentiment tracking configuration. Controls whether the GMI analyzes user emotional state and triggers event-based metaprompts (frustration recovery, confusion clarification, etc.). Opt-in: disabled by default. Turn_interval metaprompts (like self-reflection) always work regardless.


strengths?

optional strengths: string[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:453

Strength tag list aiding search & recommendation (e.g., ['typescript', 'design_reviews']).


toolIds?

optional toolIds: string[]

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:406

Referenced tool identifiers persona is permitted to invoke.


uiInteractionStyle?

optional uiInteractionStyle: "suggestive" | "directive" | "collaborative" | "silent"

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:428

High-level interaction posture for UI behaviors (suggestive hints vs directive instructions).


version

version: string

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:380

Semantic version of persona definition; bump on behavioral / config changes (e.g., '1.2.0').


voiceConfig?

optional voiceConfig: PersonaVoiceConfig

Defined in: packages/agentos/src/cognitive_substrate/personas/IPersonaDefinition.ts:417

Voice synthesis configuration (preferred voice id, style, speed).