From ti-admin-plugin
Action: Create a new course (courseGroup, microCourse, article) as a draft via POST /content/course/create. Content is never auto-published.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ti-admin-plugin:create-course-draftThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This is an **Action** skill — a single, unambiguous API call. It is deterministic and narrowly scoped.
This is an Action skill — a single, unambiguous API call. It is deterministic and narrowly scoped.
POST /incoming/v2/content/course/create
title, kind (courseGroup, microCourse, article).sections → lessons → topics.create-course-draft.js --dry-run --file=course.json first to validate.--dry-run to create.backgroundJob may be returned — poll with GET /jobs/{id}.courseAttributes array length).node skills/actions/create-course-draft/create-course-draft.js --dry-run --file=course.json
node skills/actions/create-course-draft/create-course-draft.js --file=course.json
node skills/actions/create-course-draft/create-course-draft.js --json='{"title":"My Course","kind":"courseGroup"}'
Single course:
{ "title": "Intro to APIs", "kind": "courseGroup", "description": "..." }
With nested structure:
{
"title": "Intro to APIs",
"kind": "courseGroup",
"sections": [
{
"title": "Getting Started",
"lessons": [
{
"title": "What is an API?",
"openType": "text",
"topics": [
{ "title": "Overview", "body": "<p>An API is...</p>" }
]
}
]
}
]
}
- NEVER call PUT /content/{id}/releaseContent. All content created by this action stays as a DRAFT until a human author publishes it manually in the TI admin UI.
- NEVER auto-publish or suggest publishing generated content.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub thoughtindustries/ti-admin-plugin --plugin ti-admin-plugin