Skip to main content

coursekit

Español

AI-assisted e-learning course production: reference material, instructional design, writing, review, media, assembly and SCORM delivery, with human sign-offs at the control points. It works with Claude Code, opencode and Codex, interchangeably.

Package slxd-coursekit, command coursekit. By Studio LXD.

Early development (0.9.0). Published on PyPI as slxd-coursekit.

What it does

coursekit turns a folder into a course production project and drives the work through a fixed process in which AI agents do the drafting and people keep the decisions:

  1. Brief — you drop the reference material (documents, links, notes); coursekit converts it for the agents.
  2. Instructional design — an agent proposes units, sections, objectives and hours; you sign it off.
  3. Writing — an agent writes every unit in a fixed Markdown format; coursekit verify checks it against the production rules.
  4. Review — a second agent (another tool or model) reviews each unit; you sign off each unit.
  5. Media — images, graphics, video, audio and interactive demos are planned and produced with the tools you have.
  6. Assembly — from the approved Markdown, never the other way round, with one of two backends: the content is loaded into the authoring platform (slxd creator), or coursekit itself builds a SCORM package per unit (the html backend, no platform in between). You choose per project or per course.
  7. Delivery — SCORM packages (exported from the platform, or built by coursekit) are recorded and published to a shared folder with a tracking spreadsheet.

Only a person can sign (coursekit approve); agents are forbidden to run it.

Status

Early development. What changed in each version is in the changelog.

  • Solid: the process from brief to SCORM delivery, with both backends (slxd creator and the html backend), in Spanish and English; the decision-based approach with simulations; the local instructional design; the handoff mode. Used end to end.
  • New: more visual courses: a visual plan signed with the design, licensed photographs (Pexels, Magnific), the icon set of the project (also in notes, panels and videos), a capture per step inside a carousel, galleries and images beside their text, players for the videos of official channels, the images of the reference material as real material, provisional images instead of gaps, and coursekit capture plan and media report; the options of the questions shuffled for each learner, with verify refusing a feedback that names an option by its position; the gallery of the media of a course (coursekit media gallery); the visual support of the sections and the resource types illustration and icon; pedagogical criteria in the writing, job aids and crosshairs on the images with points. The details are in the changelog.
  • In progress: captures of real applications that coursekit makes itself (coursekit capture): web applications in the browser, the course itself, a desktop window and the terminal mode. Tested on macOS, and the terminal mode on Linux; on Windows and Linux with X11 the desktop capture is written but not yet tested on real machines, and the terminal mode has not yet carried a whole handoff.
  • To prove on a whole course: the migration from eXeLearning with real agents, the Gemini TTS batch, the brand step of the theme agent, the illustration sources of the brand (coursekit media stock), the tests apart or as a question bank (not yet assembled apart in creator nor imported in a real LMS), the pedagogical cycle, the job aids (not yet uploaded to creator), the crosshairs, the official sources found by the agents, the lessons of the pilot course, the shuffled options and the new visual side (panel media, galleries, icons and the video players of official channels in creator, Pexels, YouTube search, the images taken out of documents). Each one was tried on its own, against the real service where there is one.
  • Not yet: reading eXeLearning 4 packages (.elpx) or HTML exports of a site, publishing the components of the html backend as a package of their own, more languages than Spanish and English.

The creator platform has known gaps that the pipeline works around: Known limits of the creator backend.

Install

You need uv; it brings the right Python (3.12 to 3.14). To work on courses you also need git, an AI tool (Claude Code, opencode or Codex) and the URL of your SLXD Creator MCP server; see Getting started.

uv tool install slxd-coursekit
coursekit --version

To install the development version straight from the repository instead: uv tool install git+https://github.com/studiolxd/coursekit.

To try it from a clone, with changes taking effect immediately:

uv tool install --editable /path/to/coursekit

Two optional extras: docs converts the documents of the reference material and of the brand material (PDF, Word, PowerPoint, Excel, Outlook) to text, and capture makes the real captures of applications (coursekit capture). Name every extra you want in one command, because reinstalling with some removes the others: uv tool install --force "slxd-coursekit[docs,capture]" (from a clone: uv tool install --force --editable "/path/to/coursekit[docs,capture]"). coursekit doctor says which one is missing and gives the command.

To update an installed copy: uv tool upgrade slxd-coursekit. Nothing else: the first command in each project regenerates its managed files and agent files. A specific version: uv tool install slxd-coursekit==0.2.1.

Quick start

coursekit init my-courses        # a short wizard: language first, then everything else
cd my-courses
coursekit doctor                 # what is installed and configured here

Then open your AI tool in that folder and run:

/new-course "Strong passwords" 2

or, from the terminal, without opening anything yourself:

coursekit run new-course "Strong passwords" 2

coursekit status always tells you where each course is and what the next step is.

Languages

The tool speaks Spanish and English: the wizard asks the language first and everything after (messages, help, spreadsheets, templates for people) follows it. Courses can be written in either language; the content format adapts to it.

Documentation

Full documentation, in English and Spanish, is in docs/ (versión en español):

Getting started install, init, first course
Workflow the process, statuses and sign-offs
Commands every command and option
Configuration project.yaml, .env, config/, course.yaml
Agents Claude Code, opencode, Codex, roles, models, MCP
Content course layout, content format, directives, verification
Media planning and producing media, voice, subtitles
Assembly creator and html backends, the plan, the known limits of creator
Delivery and publishing SCORM, shared folder, catalog
Client review review links and rounds
Troubleshooting doctor, common problems

Contributing

See CONTRIBUTING.md and AGENTS.md (for coding agents working on the package).

License

MIT — see LICENSE.

Metadata

Release files for slxd-coursekit 0.9.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for slxd-coursekit 0.9.0
File Size Uploaded Provenance Actions
slxd_coursekit-0.9.0.tar.gz 1.7 MB With provenance Details for slxd_coursekit-0.9.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for slxd-coursekit 0.9.0
File Interpreter ABI Platform Actions
slxd_coursekit-0.9.0-py3-none-any.whl Python 3 none any Details for slxd_coursekit-0.9.0-py3-none-any.whl

Total release size: 2.8 MB

Release files / slxd_coursekit-0.9.0.tar.gz

Download URL slxd_coursekit-0.9.0.tar.gz
Size 1.7 MB
Tags Source
SHA-256 checksum
How to use checksums
15367ee9607eef0c643b30f92cebc2cdc4051f52b0867b4c9052539454566b25
BLAKE2b-256 checksum
How to use checksums
e5f53c9c16d5190c9312a97c6294dd03a6fdaf1e0d1a9cfd1a6013ce042b1778
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

Release files / slxd_coursekit-0.9.0-py3-none-any.whl

Download URL slxd_coursekit-0.9.0-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
81ebcfbfd4432ca80f1ee80371f79875b5df8cfdda74067af10e7149ecb8d881
BLAKE2b-256 checksum
How to use checksums
4b9c31731fc275673e5be9691060571bf8d53c249b9bea0c0e046e3984b9273f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

Security for slxd-coursekit 0.9.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for slxd_coursekit-0.9.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 2, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page