← ClaudeAtlas

vibey-engine-adapterslisted

How vibey drives claudeloop, codexloop, cursorloop, agyloop, and the opt-in qwenloop — the engine adapter pattern, argv building, and the conformance suite.
the-vibey-project/vibey · ★ 2 · AI & Automation · score 71
Install: claude install-skill the-vibey-project/vibey
# vibey engine adapters Vibey drives five autonomous session runners: `claudeloop`, `codexloop`, `cursorloop`, `agyloop` (the paid pool, `DEFAULT_DESCRIPTORS`) and `qwenloop` (a local model; opt-in via `[features] qwenloop = true` or `VIBEY_FEATURE_QWENLOOP`, ADR-0015). qwenloop is also the sovereign DESIGN provider (`infrastructure/engines/qwenloop_design.py`, selected with `vibey worker --provider qwenloop`, ADR-0027; sub-doctrine 8.a makes the sovereign path the preference, not the fallback). The runners' source lives in this repository under `src/vibey_runners/{claude,codex,cursor,agy,qwen,common}` (ADR-0021); vibey drives the installed binaries, not those packages' Python APIs. Each has its own CLI surface, effort vocabulary, state directory, and done marker. Vibey abstracts these differences via `EngineAdapter`, a `Protocol` defined in `application/interfaces/engines.py` and re-exported from `application/ports.py`. ## The adapter pattern `EngineAdapter` (read the real definition before relying on this summary — it's short): - `descriptor: EngineDescriptor` — a property, the engine's static facts - `async def preflight() -> PreflightResult` — runs `<engine> doctor`; classifies auth + availability - `async def start(spec: RunSpec) -> RunHandle` — builds argv from `descriptor.effort_projection` + isolation flags, spawns the runner, returns a handle over its run directory - `def tail(handle: RunHandle) -> AsyncIterator[EngineEvent]` — streams the runner's `events