A self-improving tutor
The problem
Tutoring logic, the learner model, content, and governance all tangle in one codebase — so nothing can improve without risking everything.
The core idea
SIAIS is a pedagogical orchestrator between learners and the apps that teach them — deciding which strategy to deploy when, and what to learn from each interaction.
The central abstraction · five conditions, one file each
Every write to the parameters goes through the gateway, which logs to memory and consults the governor. There is no other path — the one invariant behind safety, audit, and reproducibility. (C4, the pedagogy engine, reads but cannot bypass it.)
How it works · one class swap, L0 → L3
From "simple" to "master" by swapping one policy class in factory.js. Same library, same gateway, same memory.
Why you can trust it
The Governor reviews every self-modification. Three layers — teleology, identity, governance — are deliberately human-only, and the gate's mode is fixed at boot, not a runtime knob.
Counted from the source tree
Three apps · one vocabulary
Improve pedagogy before a real learner arrives
1,953,125 composable learner profiles — nine trait dimensions, five levels each. Compose a student, role-play them through a topic, analyze the gaps, let an LLM author a governed improvement.
What changes
Reproducible for researchers, testable for teachers, adaptive for learners, interoperable for integrators. Every improvement is versioned, logged, and gated.
Self-Improving Adaptive Instructional System
Research software from the Department of Applied Social Sciences · The Hong Kong Polytechnic University.
Dive into the details, or open the app.