How the skill entered the run: explicit user request (/skill mention) or agent self-activation
The gate values that admitted this skill — the provenance of authority
OptionalReasonAgent-stated rationale (only for ActivationType='auto', from skillActivations[].reason)
ID of the activated skill (MJ: AI Skills.ID)
Name of the activated skill at activation time
One skill's involvement in an agent run step, recorded in
AIAgentRunStep.Skills(a JSON array of these, or null when no skills are in play). This is the observability contract for skills: every step touched by a skill records WHICH skill, HOW it entered the run, and the PROVENANCE OF AUTHORITY that admitted it.Population rules (implemented in BaseAgent):
The canonical JSON-type interface for CodeGen lives at
metadata/entities/JSONType-interfaces/AgentSkillInvocation.ts— keep the two in sync.