autocourse
A Claude Code plugin for organizing AI/computational biology workshops. Config-driven, ships with skills, templates, themes, and sample datasets.
Installation
Option A: pip package (standalone CLI)
pip install autocourse # core (yaml only)
pip install autocourse[google] # + Google API support (email, forms, drive)
pip install autocourse[all] # everything
Then use autocourse or acos from any directory:
autocourse --help
autocourse send --template invite --from-tsv participants.tsv --dry-run
acos slides --theme ocean
acos datasets --list
Option B: Claude Code plugin
claude install-plugin github:sahuno/autocourse
Install external tools
npm install -g @marp-team/marp-cli # for slide building
Or run the full setup script:
bash setup/install.sh
Quick Start
1. Scaffold a new workshop
/acos-init
Runs an interactive interview, generates workshop.config.yaml, creates the directory tree, and initializes git.
2. Send participant emails
/acos-comms
Select a template (invite, checklist, or kickoff), load recipients from a TSV file, preview, and send via Gmail API.
# CLI usage
python scripts/send_email.py --config workshop.config.yaml --template invite --from-tsv participants/responses.tsv --dry-run
3. Build slide decks
/acos-slides
Converts slide framework markdown files to themed HTML and PDF using Marp.
# CLI usage
./scripts/build_slides.sh --config workshop.config.yaml
CLI Commands
| Command | Description |
|---|---|
autocourse init |
Scaffold a new workshop (interactive via Claude Code) |
autocourse send |
Send templated emails via Gmail API |
autocourse slides |
Build Marp slide decks |
autocourse form |
Create pre-workshop survey (Google Forms) |
autocourse drive |
Create Google Drive folder structure |
autocourse datasets |
Generate sample datasets for exercises |
Both autocourse and acos work as the command name.
Skills (Claude Code)
| Skill | Description |
|---|---|
/acos-init |
Scaffold a new workshop project with config and directory tree |
/acos-comms |
Send templated emails to participants via Gmail API |
/acos-slides |
Build Marp slide decks from markdown frameworks with themed CSS |
/acos-curriculum |
Generate agenda + slide frameworks from config topics (parallel subagents) |
/acos-repo |
Create and configure a GitHub repository from config |
/acos-marketing |
Generate flyers, social media posts, and email campaigns |
/acos-logistics |
Set up Google Forms survey, Drive folders, Calendar invites |
/acos-dayof |
Day-of checklist, kickoff email, last-minute prep |
/acos-postmortem |
Post-workshop follow-up, feedback survey, summary report |
/acos-checklist |
Generate, review, and update the 70-item progress tracker |
Configuration
All workshop details live in workshop.config.yaml:
workshop:
name: "Agentic AI for Computational Biology"
date: "2026-04-10"
venue: "Your Venue"
# ... see workshop.config.yaml for all fields
slides:
theme: "ocean" # ocean | savanna | midnight
email:
sender: "you@gmail.com"
credentials_dir: "./credentials"
Themes
Three Marp CSS themes included:
| Theme | Style | Use Case |
|---|---|---|
| ocean | White, deep blue headers | Professional, institutional |
| savanna | Warm white, earthy gold | Community workshops |
| midnight | Dark, cyan accents | Tech-forward, hackathons |
Email Templates
Templates in templates/ use {placeholder} syntax:
email_invite.md— Workshop invitationemail_checklist.md— Pre-workshop setup checklistemail_kickoff.md— Day-of kickoff with Zoom link
Sample Datasets
Small files in datasets/ for workshop exercises:
sample_sequences.fasta— BRCA1, TP53, EGFR, MYC partial sequencessample_annotations.gff3— Gene annotations (GRCh38)sample_gene_list.txt— Simulated DEG list with log2FC and p-values
Project Structure
autocourse/
├── .claude-plugin # Plugin manifest
├── workshop.config.yaml # Workshop configuration
├── skills/
│ ├── acos-init/ # /acos-init skill
│ ├── acos-comms/ # /acos-comms skill
│ └── acos-slides/ # /acos-slides skill
├── templates/ # Email and slide templates
├── themes/ # Marp CSS themes
├── scripts/ # send_email.py, build_slides.sh
├── datasets/ # Sample data for exercises
├── references/ # Setup guides and cheatsheets
└── setup/ # install.sh, requirements.txt
Prerequisites
- Python 3.9+
- Node.js 18+ (for Marp CLI)
- Git
- Google OAuth credentials (for email sending — see
references/google_api_setup.md)
License
MIT
Author
Samuel Ahuno (kwameaistudio@gmail.com) | GitHub: sahuno
Metadata
Release files for autocourse 1.0.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 | |
|---|---|---|---|
| autocourse-1.0.3.tar.gz | 62.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autocourse-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 94.8 kB
Release files / autocourse-1.0.3.tar.gz
| Download URL | autocourse-1.0.3.tar.gz |
|---|---|
| Size | 62.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f403c324c50ba5164841d7011c6a04175f520d3be7cd4c179419766b2c958ec3
|
|
BLAKE2b-256 checksum How to use checksums |
99fd01f12d692b65900f32dc44f55853ac287706ffc3d21f584d19f17beaa5d4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|
Release files / autocourse-1.0.3-py3-none-any.whl
| Download URL | autocourse-1.0.3-py3-none-any.whl |
|---|---|
| Size | 32.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3b678dd2da2e8cb5a6caa85e86a820a6fcd8014ab6f29e3d9545dfba8bbec8b6
|
|
BLAKE2b-256 checksum How to use checksums |
17dc2a1245e45ec91fa9036cb7beffed89b0b15e52eb6b9613bc84609eb75f46
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|