# Card layouts and limits

# Card layouts and limits

Every automation renders one of two card shapes depending on its type.

## What happens when a card can't be delivered

If the card can't be delivered, the bot falls back to a photo with a caption, then to plain text — a fallback card has no buttons. For following trackers, a fallback shows "photo" or "text" beside the last-alert time in the automations list.

## Feed card

Three parts, joined by blank lines.

| Part | Content |
| --- | --- |
| Link | Your link label as a link, or the bare post URL when the label is empty. Position (top or bottom) is a setting. |
| Message | Your text as written — or, when left empty, the default: "🐦 **@handle just posted**". |
| Quote | The post's own text, while "Show tweet" is on. Trimmed to 600 characters (400 with an image). |

Image: your configured image if set, otherwise the post's own photo. Buttons, if any, are laid out stacked or inline per the setting.

*Editor placeholders*

| Placeholder | What it does |
| --- | --- |
| `{embed}` | Stands for the quoted post. Delete it to turn "Show tweet" off. |
| `{post_url}` | Shows where the bare link goes when the label is blank. |

The bot substitutes nothing else in your text.

## Follow card

1. One image — the follow graphic, or the followed account's avatar when the graphic could not be rendered.
2. A stats table: Followers, Following, Posts, and Joined when known.
3. The bio, expandable; its footer shows the website, the location, and 🔒 for a private account, when present.
4. Recent posts, once at least one is shown (2.7).
5. The contract-address block, once a token has been found (below).
6. Button rows (below).

Your message text, link label and link position have no effect on this card; they only shape the fallback.

## Follow card fallback

Used only when the card falls back to a photo or plain text. Laid out like a feed card: link, your text or the default "🤝 **@handle just followed**", then the followed account as a quote — name, check mark, `@handle`, follower count, bio — then the contract-address lines.

## Button rows

| Row | Contents |
| --- | --- |
| 1 | `View <name>` — a link to the account's profile. Plus `Fetch 5 most recent posts` (before the first press) or `Fetch 5 more posts` (after). |
| 2 | `Fetch <name> Followers`. |
| 3 | `Chart` (when a chart link is known) and `Copy CA` (tap-to-copy) — once a token has been found. |

Rows 1 and 2 are on every follow card; there is no switch to remove them.

## Contract-address block

1. Heading: "Contract address".
2. Per token: `$MSAI · name · chain · Chart · Explorer` — Chart/Explorer only when a link is known.
3. The address itself, as tap-to-copy code.
4. A 4-cell table: Market cap, Holders, Supply, Age.
5. A footer line: price, liquidity, FDV, burned supply, security flags, and where the token was found — each when known.

Up to 3 tokens are shown per card.

## Limits

#### Automations and rules

| Limit | Value | Notes |
| --- | --- | --- |
| Automations per bot | 10 | Every plan. |
| Rules per automation | 8 | Following and follower trackers only. |
| Buttons per automation | 12 | Feed only. |
| Button label | 64 characters | Truncated, not rejected. |
| Message / link label / recap row / recap header | 500 characters each | Rejected over, not truncated. |
| Handle | 1–15 letters, digits, underscore |  |
| Uploaded image | 5 MB, jpg / jpeg / png / webp |  |
