From xapi-engineer
This skill should be used when the user asks about "xAPI statement structure", "xAPI verbs", "activity types", "cmi5 specification", "learning record store", "xAPI result format", "interaction types", "xAPI context", or needs to understand Experience API standards for educational assessment tracking.
npx claudepluginhub tim80411/ai-agent-extension --plugin xapi-engineerThis skill uses the workspace's default tool permissions.
Provide comprehensive guidance on xAPI (Experience API) specification for educational assessment and learning analytics.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Provide comprehensive guidance on xAPI (Experience API) specification for educational assessment and learning analytics.
An xAPI Statement follows the "Actor-Verb-Object" pattern with optional Result and Context:
{
"actor": { }, // Who performed the action
"verb": { }, // What action was performed
"object": { }, // What was acted upon
"result": { }, // Outcome of the action (optional)
"context": { }, // Additional context (optional)
"timestamp": "", // When the action occurred
"id": "" // Unique statement identifier (UUID)
}
Agent (single learner):
{
"objectType": "Agent",
"name": "Learner Name",
"mbox": "mailto:learner@example.com"
}
Account-based identification (recommended for LMS):
{
"objectType": "Agent",
"account": {
"homePage": "https://lms.example.com",
"name": "user123"
}
}
Define verbs with URI identifier and display text:
{
"id": "http://adlnet.gov/expapi/verbs/answered",
"display": {
"en-US": "answered"
}
}
Consult references/verbs.md for the complete ADL and cmi5 verb registry.
{
"objectType": "Activity",
"id": "https://example.com/activities/quiz-123",
"definition": {
"name": { "en-US": "Quiz on xAPI Basics" },
"description": { "en-US": "A quiz testing knowledge of xAPI" },
"type": "http://adlnet.gov/expapi/activities/assessment"
}
}
Capture assessment outcomes:
{
"score": {
"scaled": 0.85,
"raw": 85,
"min": 0,
"max": 100
},
"success": true,
"completion": true,
"response": "choice-a",
"duration": "PT30S"
}
Duration format: ISO 8601 duration (PT = Period Time, e.g., PT1H30M = 1 hour 30 minutes)
Provide additional information about the learning experience:
{
"registration": "uuid-for-attempt",
"contextActivities": {
"parent": [{ "id": "https://example.com/course-123" }],
"grouping": [{ "id": "https://example.com/program-abc" }],
"category": [{ "id": "https://w3id.org/xapi/cmi5/context/categories/cmi5" }]
},
"platform": "Example LMS",
"language": "en-US"
}
xAPI supports these interaction types for quiz questions:
| Type | Description | Use Case |
|---|---|---|
true-false | Binary choice | Yes/No, True/False questions |
choice | Multiple choice | Single or multiple selection |
fill-in | Text input | Short answer questions |
long-fill-in | Long text | Essay questions |
matching | Pair matching | Match items from two lists |
performance | Task steps | Procedural tasks |
sequencing | Order items | Arrange in correct sequence |
likert | Scale rating | Survey/opinion questions |
numeric | Number input | Mathematical answers |
Consult references/interaction-types.md for detailed examples of each type.
Common activity types for educational contexts:
| Category | Type URI | Use Case |
|---|---|---|
| Assessment | http://adlnet.gov/expapi/activities/assessment | Quizzes, exams |
| Question | http://adlnet.gov/expapi/activities/cmi.interaction | Individual questions |
| Course | http://adlnet.gov/expapi/activities/course | Course container |
| Module | http://adlnet.gov/expapi/activities/module | Course sections |
| Lesson | http://adlnet.gov/expapi/activities/lesson | Individual lessons |
Consult references/activity-types.md for the complete registry.
cmi5 is a standardized xAPI profile for e-learning. Key requirements:
For cmi5-compliant statements, consult references/cmi5-profile.md.
To generate a valid xAPI statement:
Validate statements against these criteria:
Structural validation:
Vocabulary validation:
cmi5 validation:
Interaction validation:
Detailed specifications and registries:
references/verbs.md - Complete ADL and cmi5 verb registryreferences/activity-types.md - Activity type URIs and usagereferences/interaction-types.md - Detailed interaction type examplesreferences/cmi5-profile.md - cmi5 requirements and extensions