/** * Can this engine preset actually change files? — pure, framework-free, no imports. * * Every coding CLI defaults to read-only or ask-first when run non-interactively, and headless * mode has no TTY to approve with. `codex exec` shipped without `--sandbox`, so it inherited * `sandbox: read-only`: the engine explored the repo, reasoned well, wrote a good explanation, and * could not change a byte — not even `git pull`. Nothing failed loudly, which is why the preset * editor has to say so as you type. * * This mirrors `ENGINE_WRITE_FLAGS` in `workers/api/src/lib/coding-engines.ts`, which is the * authority for what the platform SHIPS as a default. The duplication is deliberate and small: * the worker has no dependency on this package, and a hint that needs a round-trip per keystroke * is not a hint. See `docs/coding-engines.md`. */ /** The engine's real binary name, skipping `FOO=bar` prefixes and wrappers like `npx`. */ export declare function engineBin(command: string): string; /** Whether a preset's binary is driven as Claude (persistent stream-json) or run raw. */ export declare function isClaudeEngine(command: string): boolean; export type EngineInvocationMode = "structured" | "raw"; /** Whether this editable preset will be driven through structured events or plain stdout. */ export declare function engineInvocationMode(command: string): EngineInvocationMode | null; /** * The flag to add when a preset would launch an engine that cannot write — else null. * * Returns null for an engine it does not recognise (a local model, a custom wrapper): those have * no permission concept, and a false warning on every custom preset trains people to ignore the * real one. */ export declare function missingWriteFlag(command: string): string | null; //# sourceMappingURL=engine-posture.d.ts.map