The line it must not cross is the interesting part of this template. It may say a delivery arrived on time, in the expected shape and at the expected size, and it may never say the delivery is correct, because a file of the right name and weight can still hold last week's rows. OpenClaw follows a rule stated that plainly, and it holds no permission over the bucket anyway.
Run a staged conversation — no account needed. The agent handles it for real while a simulated world answers its tool calls; nothing touches real accounts, and nothing is actually sent.
partners/nordfrakt/2026-08-12/deliveries_0004.parquet
412 MB, written 04:07 UTC by the partner service account. Parts 0001 to 0003 landed between 04:02 and 04:06 at 380 to 430 MB each. The same prefix on the four previous days held six parts and a _MANIFEST file. No manifest has appeared for today.
Using this template drops you into a guided setup. It asks exactly this, nothing else:
Connect Google Cloud Storage
One sign-in. The agent acts through your account, scoped to what this template uses.
Connect Slack
One sign-in. The agent acts through your account, scoped to what this template uses.
Bucket rules
What a correct delivery looks like in this bucket - the prefixes and naming shape you expect, who sends what and roughly when, how large a normal drop is, how many pieces a full one contains or which manifest closes it, and who to name in Slack when a delivery goes wrong.
Runs on OpenClaw
Preselected for this page — connect your OpenClaw account during setup, or switch to NoClick's built-in models with one click.
Watch it handle a test run
A staged conversation against a simulated world — then it’s live.
Claiming more than path, size and timing can support is how a watch becomes a false assurance, which is worse than no watch. The note states which checks were actually made.
An empty file uploads successfully and satisfies every existence check ever written. Treating it as a failure rather than a delivery is a rule, not an inference.
Permission to list objects and read object metadata on the bucket, and nothing else, since it never writes, moves or deletes. Granting exactly that is what makes the boundary real rather than merely instructional. The object notification wiring and a Slack channel complete the setup, and your bucket rules go in as a variable.
Free to start. Guided setup, a test run against staged conversations, and it's live.