# Codex Host

Run SDK code through the local shell, usually with `uv run` from the repo or a
small Python script. Start with `vf.auth.ensure_logged_in()`.

Use typed SDK functions directly. For host-local browser work, call
`vf.host.*` functions from Python; the SDK owns AppleScript/Chrome control and
SQLite state.

For durable generated workflows, create or edit a local `workflow.py` that uses
`vf.local_store.sqlite(...)` and `vf.workflows.define(...)`. Keep the workflow
state file inside the generated root and operate it through
`vf.workflows.operate(...)`, `vf.workflows.open(...).status()`,
`vf.workflows.open(...).status_report(...)`, and `vf.workflows.sync(...)`.
Generated scripts such as `run.py`, `status.py`, and `export.py` are terminal
adapters for humans or constrained environments, not the primary Codex agent
path.
