Claude-code-plugins-plus-skills mindtickle-core-workflow-a

install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/mindtickle-pack/skills/mindtickle-core-workflow-a" ~/.claude/skills/jeremylongshore-claude-code-plugins-plus-skills-mindtickle-core-workflow-a && rm -rf "$T"
manifest: plugins/saas-packs/mindtickle-pack/skills/mindtickle-core-workflow-a/SKILL.md
source content

MindTickle — Course & Module Management

Overview

Primary workflow for MindTickle sales readiness integration. Covers end-to-end course management: creating training modules with mixed content (video, quiz, document), assigning courses to individuals or teams with due dates and reminders, tracking completion and quiz scores via the analytics API, and updating modules as content evolves. Uses the MindTickle REST API with API key authentication. All list endpoints support cursor-based pagination for large organizations.

Instructions

Step 1: Create a Course with Modules

const course = await client.courses.create({
  title: 'Q2 Product Launch Readiness',
  description: 'Everything your team needs to sell the new platform tier',
  tags: ['product-launch', 'q2-2026'],
  modules: [
    { title: 'Overview', type: 'video',
      url: 'https://videos.example.com/q2-launch.mp4', duration_min: 12 },
    { title: 'Feature Deep Dive', type: 'document',
      url: 'https://docs.example.com/q2-features.pdf' },
    { title: 'Knowledge Check', type: 'quiz', questions: [
      { text: 'What is the key differentiator?', type: 'multiple_choice',
        options: ['Speed', 'Price', 'Integration'], correct: 2 },
      { text: 'Name one target persona.', type: 'free_text' },
    ]},
  ],
});
console.log(`Course created: ${course.id} with ${course.modules.length} modules`);

Step 2: Assign Learners

const assignment = await client.assignments.create({
  course_id: course.id,
  assignees: { type: 'team', team_ids: ['team_sales_west', 'team_sales_east'] },
  due_date: '2026-06-01',
  reminder: { enabled: true, days_before: [7, 3, 1] },
  late_policy: 'allow_completion',
});
console.log(`Assigned to ${assignment.assignee_count} learners`);

Step 3: Track Progress and Scores

const progress = await client.analytics.courseProgress(course.id);
progress.users.forEach(u =>
  console.log(`${u.name}: ${u.completion}% | Quiz: ${u.quiz_score ?? 'N/A'}`)
);
console.log(`Overall: ${progress.completion_rate}% | Avg score: ${progress.avg_score}`);

Step 4: Update Module Content

await client.modules.update(course.modules[0].id, {
  url: 'https://videos.example.com/q2-launch-v2.mp4',
  duration_min: 15,
});
console.log('Module updated — learners will see new content on next access');

Error Handling

IssueCauseFix
401 Unauthorized
Invalid or missing API keyVerify
X-Api-Key
header value
404 Not Found
Course or module ID invalidConfirm IDs from create responses
409 Conflict
Duplicate course title in orgUse unique title or update existing
422 Validation Error
Quiz missing correct answerEnsure every MC question has
correct
index
429 Rate Limited
Exceeds 60 req/minImplement retry with
Retry-After
header

Output

A successful run creates a course with video, document, and quiz modules, assigns it to sales teams with reminders, and reports completion rates and average quiz scores.

Resources

Next Steps

Continue with

mindtickle-core-workflow-b
for coaching and role-play scenarios.