Swapping a Uni-App Starter's Base Made AI Agents Stop Breaking the Project
AI coding tools fail most often when a project's conventions are implicit and scattered. A starter that makes those conventions machine-readable through structured Skills files turns a black-box codebase into one an agent can navigate reliably, which directly reduces the edit-fix-edit loop that wastes developer time.
wot-starter bundles a uni-app project from scattered Vite plugins, each governing its own piece of routing, imports, and the app shell. oiyo-starter keeps the same Wot UI components and tooling but replaces that base with the Oiyo framework, which collapses configuration into a single oiyo.config.ts file, provides native layout and page primitives instead of a plugin-simulated root component, and unifies page registration through definePageMeta plus a scan convention.
The most practical shift is for AI coding agents. Instead of loose .cursor/rules files, the starter ships a Skills suite that encodes the framework's conventions and component usage. Agents that previously mangled auto-generated files or misplaced page metadata now follow the baked-in rules, cutting down manual rework.
Migration is designed to be low-friction: router, charts, and CI configurations carry over, and a single pnpm install generates types and routes automatically.
The core claim is not that the framework is technically superior, but that explicitness is a feature for AI tooling. When every convention lives in a config file and a Skills document, the agent's failure mode shifts from guessing wrong to following a spec.
Centralizing configuration into a single file reduces the cognitive load for humans, but the AI benefit is larger: a single source of truth eliminates the ambiguity that causes agents to modify generated artifacts like pages.json.
Bundling AI instructions as a first-class project artifact—rather than an afterthought in a .cursor/rules file—treats agent readability as a build concern, similar to how TypeScript treats type safety.
The conversation is light on debate. One person asks where to find the demo, and the author points to the repository. Two others offer brief endorsements: one confirms it works well in practice, the other plans to adopt it next time.
Already using it, works great.
Looks very complete, will try it on the next project. [like]