Bounds an agent cannot pass
Texts a day, call minutes a day, destination prefixes and the numbers a call may ring first. Two sends at once cannot pass one bound.
CommandAGI · commandagi.com/for/phone-lines
An account owns phone numbers from Twilio or Telnyx. A person calls from the phone editor; an agent calls through MCP tools, only under a phone grant.
A call
The outbound record is written first, with who placed it. The provider's answer is a status record after it. Nothing retries.
The conversation file of CommandAGI's demo account user-mock-omar: an ops lead at a made-up robot yard. The numbers are 555 numbers that reach no one.
03:04:00 sms out +15555550142 → +15555550199 by acct:user:user-mock-omar queued 03:04:05 status of m1 delivered 03:11:00 sms in +15555550199 → +15555550142 received 05:42:00 call out +15555550142 → +15555550199 by acct:user:user-mock-omar queued 05:46:10 status of c1 completed duration 248 s
Where it stands
On 2026-10-12 a number was bought from each provider on dev and calls ran between them. No line has sent a text through a live provider yet (docs/phone.md § verified).
Texts a day, call minutes a day, destination prefixes and the numbers a call may ring first. Two sends at once cannot pass one bound.
A number, a minute and a text cost what the provider charges, with no margin, held before the provider is asked.
A code goes to the number by the provider's Verify. Only a proved number rings first.
Pick a number in the phone editor, see its price, and buy it with credits.