@ferrypost/agent-skills
v0.1.0
Published
Pre-built agent skills for the Ferry Post messaging API
Maintainers
Readme
@ferrypost/agent-skills
Pre-built agent skills for the Ferry Post messaging API.
Each skill is a self-contained async function that orchestrates one or more API calls to accomplish a high-level task. Designed for use in AI agent pipelines, chatbots, and automation workflows.
Installation
npm install @ferrypost/agent-skillsQuick start
import { PlatformClient, broadcast, healthCheck } from '@ferrypost/agent-skills';
const client = new PlatformClient({
baseUrl: 'https://ferrypost.com',
apiKey: 'msgk_live_...',
});
// Check platform health
const report = await healthCheck(client);
console.log(report);
// Broadcast a message to multiple recipients
const result = await broadcast(client, {
from: 'pn_123',
channel: 'imessage',
recipients: ['+15551234567', '+15559876543'],
content: { text: 'Hello everyone!' },
});Available skills
| Skill | Description |
|---|---|
| autoReply | Respond to inbound messages based on configurable rules |
| broadcast | Send a message to multiple recipients with per-recipient status tracking |
| conversationSummary | Generate a digest of recent conversation activity |
| optOutReport | Generate opt-out compliance reports |
| healthCheck | Check platform and phone number health |
| scheduledCampaign | Create scheduled message campaigns across multiple recipients |
| listScheduled | List scheduled messages with filtering |
| cancelScheduledBatch | Cancel multiple scheduled messages at once |
| createWebhook | Create a webhook subscription |
| listWebhooks | List webhook subscriptions |
| updateWebhook | Update a webhook subscription |
| deleteWebhook | Delete a webhook subscription |
| testWebhook | Send a test event to a webhook |
| setupAndTestWebhook | Create a webhook and send a test event in one call |
| createGroup | Create a group conversation |
| updateConversation | Update conversation metadata |
| modifyParticipants | Add or remove participants from a group |
| getConversationHistory | Fetch conversation messages with pagination |
| editMessage | Edit a sent message |
| unsendMessage | Unsend (retract) a message |
| addReaction | Add a reaction to a message |
| removeReaction | Remove a reaction from a message |
| getEditHistory | Get the edit history of a message |
| getMessageDetails | Get full message details including reactions |
| searchMessages | Search messages by text or semantic query |
| findConversations | Find conversations matching criteria |
| getConversationWithMessages | Get a conversation with its recent messages |
| searchAndGroupByConversation | Search messages and group results by conversation |
| sendMediaMessage | Send a message with a media attachment from a URL |
| getMediaInfo | Get metadata for a media attachment |
| startTelegramAuth | Start the Telegram account authentication flow |
| verifyTelegramCode | Submit the verification code for Telegram auth |
| submitTelegram2FA | Submit the 2FA password for Telegram auth |
| setupTelegramAccount | Full Telegram account setup (auth + verify + optional 2FA) |
| listTelegramAccounts | List connected Telegram accounts |
| getTelegramAccount | Get details of a Telegram account |
| checkTelegramHealth | Check the health of a Telegram connection |
| disconnectTelegramAccount | Disconnect a Telegram account |
PlatformClient
All skills require a PlatformClient instance. The client is a lightweight HTTP wrapper around the Ferry Post API.
import { PlatformClient } from '@ferrypost/agent-skills';
const client = new PlatformClient({
baseUrl: 'https://ferrypost.com',
apiKey: 'msgk_live_...',
});Documentation
Full API documentation is available at docs.ferrypost.com.
License
MIT
