Skill Detail

Run transactional Go and Postgres agent job queues with River

Use River to keep Go-based agent jobs transactional with Postgres so queued work commits or rolls back with the application state that created it.

Templates & WorkflowsCustom Agents
Templates & Workflows Custom Agents Security Reviewed
⭐ 5.7k GitHub stars
COPY SKILL INSTRUCTIONS (OPTIONAL)
npx skills add agentskillexchange/skills --skill run-transactional-go-postgres-agent-job-queues-with-river Copy
Uses the third-party skills CLI, not an ASE-owned installer. Check your agent’s compatibility. This copies instructions; complete the upstream tool setup below separately.
At a glance
Tools required
Go application, PostgreSQL, River Go modules, pgx-compatible database pool, optional River UI
Install & setup
Add River to the Go service, create typed JobArgs and Worker implementations, register workers with river.NewWorkers() and river.AddWorker, start a river.Client with a Postgres driver and queue config, then enqueue jobs inside application transactions where consistency matters.
Author
River Queue
Publisher
Organization
Last updated
Sep 21, 2026
Quick brief

Use River when a Go agent service needs a durable background job queue that shares Postgres with application state. The operator defines typed job arguments and workers, registers workers at startup, configures queues and concurrency, and enqueues agent work such as follow-up processing, report generation, webhook delivery, data refreshes, or evaluation batches transactionally with the database changes that require them.

How it works

What this skill actually does

Invoke this instead of using the product as a normal Go library when the operational goal is to keep agent side effects reliable: no orphaned jobs after rollbacks, no invisible work before commit, graceful shutdown, retries, and inspectable queue behavior. The scope boundary is transactional Go/Postgres background work for agent workflows in River. It is not a general Go framework, Postgres tutorial, or all-purpose queue comparison.

Inputs and prerequisites: Go application, PostgreSQL, River Go modules, pgx-compatible database pool, optional River UI.

Setup notes: Add River to the Go service, create typed JobArgs and Worker implementations, register workers with river.NewWorkers() and river.AddWorker , start a river.Client with a Postgres driver and queue config, then enqueue jobs inside application transactions where consistency matters.

Source and verification boundary: use https://riverqueue.com as the canonical reference before running the workflow; keep commands, API calls, CLI usage, and generated outputs reviewable against that upstream source.

Framework fit: publish this as a Custom Agents workflow only when the operator can invoke the documented toolchain directly, rather than treating the upstream project as a generic product listing.