A bit more about sail:
The core idea is an inversion on agent coding orchestration:
- before: agent reads/writes files, runs tests. unless guided, over time architecture drifts, context gets bloated, it forgets to do stuff instructed.
- with sail: agent reads/writes code directly through the sail CLI. if it makes an architectural violation, the write is blocked and the agent is guided on how to fix it. Sail knows the structure of the codebase and can feed relevant context for edits: e.g. function and all of its dependencies + all of its callers, instead of reading whole files which might not be relevant for a given edit.
The result: fire and forget sail to build your projects and come back to strong architecture and great test coverage, 100% of the time.