Skip to main content

CLI toolkit for organizing AI/computational biology workshops

Project description

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 invitation
  • email_checklist.md — Pre-workshop setup checklist
  • email_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 sequences
  • sample_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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autocourse-1.0.3.tar.gz (62.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

autocourse-1.0.3-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

Details for the file autocourse-1.0.3.tar.gz.

File metadata

  • Download URL: autocourse-1.0.3.tar.gz
  • Upload date:
  • Size: 62.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for autocourse-1.0.3.tar.gz
Algorithm Hash digest
SHA256 f403c324c50ba5164841d7011c6a04175f520d3be7cd4c179419766b2c958ec3
MD5 9d2e20686913e6e9403d767d2c3aef1b
BLAKE2b-256 99fd01f12d692b65900f32dc44f55853ac287706ffc3d21f584d19f17beaa5d4

See more details on using hashes here.

File details

Details for the file autocourse-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: autocourse-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 32.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for autocourse-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3b678dd2da2e8cb5a6caa85e86a820a6fcd8014ab6f29e3d9545dfba8bbec8b6
MD5 215580c0efecca3450fd3b0c55e464b4
BLAKE2b-256 17dc2a1245e45ec91fa9036cb7beffed89b0b15e52eb6b9613bc84609eb75f46

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page