An open training suite for getting started with AI: concepts, safety, using AI agents, AI-assisted software engineering, and customizing and building AI agents.
Site: https://lsimons.github.io/ai-training/
This site is published early so that it can be shared and improved in the open, while most of the planned lessons are still unwritten and existing pages can change or move without notice. Lessons are written by AI agents under human review, so expect gaps and mistakes. Check claims against the cited sources before you rely on them, and open an issue when you find a problem.
The basic material (AI concepts, AI safety, using AI agents) is written for
anyone doing knowledge work. The rest is written for software engineers. The
site is static HTML with interactive lessons that keep your progress in your
browser, and you can also study a lesson from a Claude Code or opencode
session with Claude acting as a tutor. Install the ai-tutor skill with
npx skills add lsimons/ai-training --skill ai-tutor -g and start it with
/ai-tutor <lesson URL>. The skill (.claude/skills/ai-tutor/SKILL.md,
spec S08) fetches its rules and the lesson from the published site.
Status: release 1 is live, with three to eight lessons per area and twenty-five in total. The
design is in docs/spec/ and the open work is in the
issue tracker.
This is a rebuild of
agent-engineer-course, a
fork of Addy Osmani's agent-engineer
course with a Starlight setup from Ivar Soares Urdalen. It adopts the
pedagogy of Harvard's CS50 and references the
public courses on Claude Academy. See
NOTICE.md and spec S02 for
what's reused from where and under which terms.
mise trust # once per clone
mise install # one-time: pin + install the toolchain
mise run site-install # install the site dependencies (bun)
mise run site-dev # dev server at http://localhost:4321/ai-training/
mise run site-build # build the static site into site/dist
mise run site-check # Astro type/content check
mise run lint # prek hooks over every file + actionlint
mise run ci # full gate: install + lint + check + build
mise run links # lychee broken-link check (network; not in `ci`)
mise run audit # zizmor audit of workflows + dependabot config
mise run vuln # osv-scanner scan of uv.lock + site/bun.lock (network; not in `ci`)
mise run ci-watch # watch GitHub Actions for the current branchmise tasks lists them all. Content is in site/src/content/docs/, and
static assets are in site/public/.
ai-training/
├── .github/workflows/ci.yml # lint + Astro check + build, and the zizmor audit
├── .github/workflows/deploy.yml # build and publish to GitHub Pages
├── .github/workflows/vuln.yml # weekly osv-scanner scan of the lockfiles on main
├── .github/dependabot.yml # weekly bun + github-actions updates
├── .claude/settings.json # shared agent permissions (tracked on purpose)
├── .mise.toml # toolchain pins + every repo task
├── prek.toml # git hooks, also run by `mise run lint`
├── site/ # the Astro Starlight site
│ ├── src/content/docs/ # the pages
│ ├── src/styles/custom.css # the LSD Warm theme
│ ├── astro.config.mjs # site, base path, sidebar, rehype plugin
│ ├── package.json # site dependencies (exact; bun.lock pins the tree)
│ └── bun.lock # committed; never gitignore this
├── docs/spec/ # numbered specs (S01 is the dictionary)
├── docs/agents/ # agent-facing process docs (issue tracker)
├── AGENTS.md # AI agent instructions
├── CLAUDE.md -> AGENTS.md # Claude Code compatibility
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── SECURITY.md
├── LICENSE # CC BY-SA 4.0 (content)
├── LICENSE-CODE # Apache-2.0 (code)
├── NOTICE.md # third-party material and its terms
└── README.md
CLAUDE.md is a git symlink (mode 120000). A Windows clone needs
core.symlinks enabled to get a real link rather than a text file containing
the target path.
GitHub Pages serves the site with the source set to GitHub Actions. A
push to main builds and deploys it to
https://lsimons.github.io/ai-training/, and the github-pages environment
only accepts deployments from main.
See CONTRIBUTING.md and the Code of Conduct. AI agents see AGENTS.md. Security reports: SECURITY.md.
Content is licensed under CC BY-SA 4.0; see LICENSE, which also says what counts as content. Code is licensed under the Apache License 2.0. Third-party material and its terms are listed in NOTICE.md.