Native macOS counterpart to the web Omega agent, connecting directly to the OpenAI API and TPMJS tool registry (1M+ AI-ready tools). - SwiftUI app targeting macOS 15+ with dark theme - Full agentic loop: auto-discover tools via BM25, stream OpenAI responses, execute tools via remote sandbox, loop up to 10x - SwiftData persistence for conversations, messages, tool runs - Keychain storage for API keys and environment variables - SSE streaming via URLSession.bytes with custom parser - Actor-based services (OpenAIService, TPMJSRegistryService) - NavigationSplitView layout with sidebar + chat detail - MarkdownUI for rendering assistant responses - Settings: API key, model picker, env vars, custom system prompt - Keyboard shortcuts: Cmd+N new chat, Cmd+, settings, Enter send Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
109 lines
2.8 KiB
JSON
109 lines
2.8 KiB
JSON
{
|
|
"name": "@tpmjs/tools-agentmail",
|
|
"version": "0.1.0",
|
|
"description": "AgentMail API tools for AI agents — create inboxes, send/receive emails, manage threads, drafts, and more",
|
|
"type": "module",
|
|
"keywords": [
|
|
"tpmjs",
|
|
"ops",
|
|
"ai",
|
|
"email",
|
|
"agentmail"
|
|
],
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"default": "./dist/index.js"
|
|
}
|
|
},
|
|
"files": [
|
|
"dist"
|
|
],
|
|
"scripts": {
|
|
"build": "tsup",
|
|
"dev": "tsup --watch",
|
|
"type-check": "tsc --noEmit",
|
|
"clean": "rm -rf dist .turbo"
|
|
},
|
|
"devDependencies": {
|
|
"@tpmjs/tsconfig": "workspace:*",
|
|
"tsup": "^8.5.1",
|
|
"typescript": "^5.9.3"
|
|
},
|
|
"dependencies": {
|
|
"ai": "6.0.49"
|
|
},
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/tpmjs/tpmjs.git",
|
|
"directory": "packages/tools/official/agentmail"
|
|
},
|
|
"homepage": "https://tpmjs.com",
|
|
"license": "MIT",
|
|
"tpmjs": {
|
|
"category": "ops",
|
|
"frameworks": [
|
|
"vercel-ai"
|
|
],
|
|
"env": [
|
|
{
|
|
"name": "AGENTMAIL_API_KEY",
|
|
"description": "AgentMail API key from https://app.agentmail.to",
|
|
"required": true
|
|
}
|
|
],
|
|
"tools": [
|
|
{
|
|
"name": "createInbox",
|
|
"description": "Create a new email inbox for an AI agent with optional custom username and domain."
|
|
},
|
|
{
|
|
"name": "listInboxes",
|
|
"description": "List all email inboxes in the AgentMail account with pagination support."
|
|
},
|
|
{
|
|
"name": "getInbox",
|
|
"description": "Get details of a specific email inbox by its inbox ID."
|
|
},
|
|
{
|
|
"name": "deleteInbox",
|
|
"description": "Delete an email inbox and all its messages permanently."
|
|
},
|
|
{
|
|
"name": "sendMessage",
|
|
"description": "Send an email message from an inbox to a recipient with subject and body."
|
|
},
|
|
{
|
|
"name": "replyToMessage",
|
|
"description": "Reply to an existing email message in a thread conversation."
|
|
},
|
|
{
|
|
"name": "listMessages",
|
|
"description": "List email messages in an inbox with pagination support."
|
|
},
|
|
{
|
|
"name": "getMessage",
|
|
"description": "Get the full details of a specific email message by its message ID."
|
|
},
|
|
{
|
|
"name": "listThreads",
|
|
"description": "List email threads in an inbox, optionally filtered by labels."
|
|
},
|
|
{
|
|
"name": "getThread",
|
|
"description": "Get a thread with all its messages for viewing a full conversation."
|
|
},
|
|
{
|
|
"name": "createDraft",
|
|
"description": "Create an email draft for human-in-the-loop approval before sending."
|
|
},
|
|
{
|
|
"name": "sendDraft",
|
|
"description": "Send a previously created draft, converting it to a sent message."
|
|
}
|
|
]
|
|
}
|
|
}
|