The same, every time
Same steps, same order, run after run. The work doesn't drift as the weeks go by.
Trust
Faber runs the steps you set, the same way every time. It doesn't improvise between runs. You see a full preview before it goes live, and a plain record of everything it did after.
It follows your words
Faber runs the exact steps you wrote, in the same order, on every run.
It doesn't wander off task or get creative between runs.
Before anything goes live, you see a full preview run - every action, nothing sent.
You choose which actions need your approval; the rest run on their own.
No improvising
Same steps, same order, run after run. The work doesn't drift as the weeks go by.
It uses only the accounts you connect, and you choose what needs your approval. Disconnect any account anytime.
Every run leaves a plain record of what it checked, did, set aside, and skipped.
How it's enforced
Every run happens in a fresh process of its own, started with a specific list of what it may touch. Nothing carries over from the last run.
That list names the services the task actually uses. A task you never connected to Slack cannot reach Slack, even if something went wrong and it tried.
It can read and write the files belonging to that task and nothing else on the machine. Its sign-in details are scoped the same way, one task at a time.
For the technically minded
Each run is a fresh Deno subprocess started with an explicit permission set: an allowlist of the hosts that task's connections need, the environment it is given, and its own directories. Anything outside that list is refused by the runtime itself, not by our code.
Cloud runs start from a clean temporary directory every time, with each task file verified against its checksum before it executes. Nothing is reused between runs.