# X bot and social integrations

Vivra publishes to two types of X accounts: the Vivra account, and one account per CTO token managed by CM. All posts use the official X API, and all accounts are labeled as automated.

## Accounts

| Account | Created by | Managed by |
| --- | --- | --- |
| Vivra X | team | Vivra bot + manual posts |
| CTO token X | team, manually (no automated account creation) | CM for 30 days, then moderators |
| Vivra Telegram | team | team |
| CTO token Telegram | TG Bot through the Bot API in the source plan, or takeover if the old group can be recovered | TG Bot, then moderators |

The specification budgets for paid X API write access: choose a plan appropriate to the volume (about 15 posts per day across all accounts during an operation).

## Automated Vivra posts

| Event | Template | Visual |
| --- | --- | --- |
| Dossier publication | one tweet per candidate (dossier drop) | candidate card |
| Voting opens | 5 candidates and voting link | vote open |
| Voting closes | winner and vote share | none |
| Operation milestones | website live, thread published, Telegram open | none |
| Each slice | amount bought and burned, total, hash | none |
| Verdict | It's sending, or Dead again with RIP post | it's sending or RIP |
| Weekly | weekly ledger | none |
| Milestones | live CTO tokens, fees received, $VIVRA burned | flywheel |

Copy comes from the X page. Visuals are generated from its templates using real cycle data.

## Automation rules

- No mass replies or mentions, and no unsolicited private messages.
- At most one post per 30 minutes per account, excluding threads.
- Human approval of every post during cycles 1–3.
- Slices are published after execution, never before.

## Acceptance criteria

- [ ] Every event in the table triggers its post with the correct visual on a test account.
- [ ] A post awaiting approval is never published without a click.
