coursekit
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.1.3). Published on PyPI asslxd-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:
- Brief — you drop the reference material (documents, links, notes); coursekit converts it for the agents.
- Instructional design — an agent proposes units, sections, objectives and hours; you sign it off.
- Writing — an agent writes every unit in a fixed Markdown format;
coursekit verifychecks it against the production rules. - Review — a second agent (another tool or model) reviews each unit; you sign off each unit.
- Media — images, graphics, video, audio and interactive demos are planned and produced with the tools you have.
- 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.
- 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.
Install
You need uv; it brings the right Python (3.12 or 3.13). 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
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.1.3.
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 and delivery | creator and html backends, SCORM, shared folder, catalog |
| 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.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| slxd_coursekit-0.1.3.tar.gz | 599.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| slxd_coursekit-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 870.9 kB
Release files / slxd_coursekit-0.1.3.tar.gz
| Download URL | slxd_coursekit-0.1.3.tar.gz |
|---|---|
| Size | 599.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f8d664e8ef41c096c2d85a4fd29171081bb3cd6cb251b2ff27f303c0407f68cf
|
|
BLAKE2b-256 checksum How to use checksums |
eee061428173874e4d0b2df86ed73f8e6c4c5e29088855dad057522d53a5d637
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Oct 10, 2026.
Transparency logRelease files / slxd_coursekit-0.1.3-py3-none-any.whl
| Download URL | slxd_coursekit-0.1.3-py3-none-any.whl |
|---|---|
| Size | 271.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1e3babf24c26c97dc8bee6bc21a3b153e0b20e2675a2189cc333ee18018b1d12
|
|
BLAKE2b-256 checksum How to use checksums |
e9c2159a280f571331f7ae8015544f7304d72f3d505d0df8c7be79c999c9c591
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Oct 10, 2026.
Transparency log