Turning Codex from an interactive assistant into a programmable automation component