Tarmac

Getting Started

Connect Tarmac to AWS, fetch your first messages, and publish your first staged action.

1. Connect AWS

On first launch Tarmac asks for a connection. Pick a region and one of three credential modes — an AWS profile (including SSO profiles), environment variables, or an AWS-compatible endpoint such as LocalStack. Tarmac requires a successful Test connection before it lets you save, and shows the round-trip latency so you know the connection is healthy.

Start with the narrowest IAM permissions that match the operations you plan to perform. If you're unsure what your credentials can do, open Queue Tools ▸ Policy Review after connecting — it checks your identity's policies against the operations Tarmac uses and can generate a suggested IAM policy snippet. See Connecting to AWS for details.

2. Pick a Queue

The left rail lists every queue in the selected region, grouped into Standard, FIFO, and Dead-letter sections, with depth and a FIFO chip where relevant. Queue metadata (depth, visibility timeout, retention, DLQ) streams in as it loads. Use the filter box or the type filter (All / Standard / FIFO / DLQ) to narrow the list.

3. Receive Into the Cache

Set a Count and Visibility (s) in the Operations panel, then press Fetch Messages. Tarmac drains the queue in batches of 10 (the SQS maximum) until it reaches your count or the queue stops returning messages.

When Tarmac receives messages, SQS hides them from other consumers for the visibility timeout you chose — 10 seconds by default, deliberately short so browsing doesn't starve your real consumers. Every received message is copied into a local SQLite cache, so you can search and re-read them without fetching again.

The visibility clock starts at receive

Receiving a message is not free: it increments the message's receive count and hides it for the visibility window. On queues with a redrive policy, repeated receives count toward the max-receive threshold that sends messages to the DLQ. Fetch what you need, then work from the cache.

4. Inspect

Click a message to open the inspector: a pretty-printed Body tab (nested JSON strings are automatically unwrapped), Attributes, System metadata (sent time, receive count, FIFO group/dedup IDs), and Raw JSON. Messages that carry an S3 pointer get an extra S3 tab, and SNS-wrapped messages get an Envelope tab. Use the search box, facet filters, and date range to slice the cache — see Search & Filtering.

5. Stage, Review, Publish

Queue-changing operations are staged first. From the inspector or a multi-select in the list, stage a Delete, Resend, Edit & Resend, or Redrive. Staged actions accumulate per queue (watch the badge on the Staged tab), and nothing touches SQS until you open the Staged tab, review the batch, and press Publish Actions. Each action reports success, skipped, or failed individually — failures stay staged so you can retry. See Staged Actions.

Keyboard Shortcuts

ShortcutAction
⌘/Ctrl + FFocus message search
⌘/Ctrl + RFetch messages
⌘/Ctrl + Shift + KClear all filters
⌘/Ctrl + ,Open Settings
EscClose the message inspector
↑ / ↓, EnterNavigate and select messages in the list

On this page