The terminal provider echoes agent actions to stdout so you can exercise the full agent loop without credentials.

Reactions and replies

await space.react(message.guid!, "like");
await space.reply(message.guid!, "acknowledged");

Typing

await space.typing(true);
await space.send("thinking…");
await space.typing(false);

Unsupported

sendFile and group.* are not supported — they throw a clear error.

Combine with cloud providers

Run terminal alongside iMessage during development. The same app.messages loop handles every provider — branch on message.platform.