{"_id":"@amolsoans/openclaw-monade-sales","name":"@amolsoans/openclaw-monade-sales","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.3":{"name":"@amolsoans/openclaw-monade-sales","version":"0.1.3","description":"OpenClaw agent tools for Monade outbound sales workflows","type":"module","main":"index.js","license":"MIT","engines":{"node":">=22"},"publishConfig":{"access":"public"},"openclaw":{"extensions":["./index.js"]},"dependencies":{"@sinclair/typebox":"^0.34.8"},"_id":"@amolsoans/openclaw-monade-sales@0.1.3","gitHead":"efff9412945ab4c0fae06d4e2c20232a030a1b6c","_nodeVersion":"22.22.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-C9fsBMcSTTvVFuBxP/PsDKmUJrZv1yOESyatrWBhIIU4Cx8FrHBzuDTXa+q34HLL+YKlGCpNNlGFvSGWDwdCTw==","shasum":"655ab1d375c383e304cf1dd4fdbf536f4d7fad81","tarball":"https://registry.npmjs.org/@amolsoans/openclaw-monade-sales/-/openclaw-monade-sales-0.1.3.tgz","fileCount":4,"unpackedSize":43281,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIA+LVVby715W8fE83UfbQKD73g1QDANFuT/kY7MXh6BLAiEAl4I5KSROETCn6tL1YbXAZFo/BkSTVSVG+pnw2lZMFvw="}]},"_npmUser":{"name":"amolsoans","email":"amoldericksoans@gmail.com"},"directories":{},"maintainers":[{"name":"amolsoans","email":"amoldericksoans@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/openclaw-monade-sales_0.1.3_1773758458847_0.6174823400631588"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-17T14:40:58.710Z","0.1.3":"2026-03-17T14:40:58.996Z","modified":"2026-03-17T14:40:59.234Z"},"maintainers":[{"name":"amolsoans","email":"amoldericksoans@gmail.com"}],"description":"OpenClaw agent tools for Monade outbound sales workflows","license":"MIT","readme":"# OpenClaw Monade Sales Plugin\n\n`@amolsoans/openclaw-monade-sales` brings Monade outbound sales operations directly into OpenClaw with a practical, security-first tool surface.\n\nIt is built for real calling workflows: launch calls, manage assistants, run campaigns, inspect analytics, and manage user-owned SIP trunks without exposing broad control paths.\n\n## Why this plugin exists\n\nMost sales teams do not need another general-purpose integration layer. They need reliable operations inside the assistant they already use:\n\n- Start and control outbound calling workflows quickly\n- Keep campaign execution and monitoring in one place\n- Access analytics and transcripts with user-level boundaries\n- Manage user-scoped trunks without opening global infra controls\n\nThis plugin is designed around that operating model.\n\n## What you get\n\n- Outbound call actions\n- Assistant CRUD and retrieval\n- Campaign lifecycle operations (create/update/start/pause/resume/stop/delete)\n- Campaign contact management and CSV upload\n- Transcript and analytics retrieval\n- User-scoped trunk management, including default trunk support\n\nAll tools are exposed under the `openclaw_*` namespace.\n\n## Security model\n\nSecurity is a first-class behavior, not a docs footnote.\n\n- Agent-tool surface only\n: no CLI commands, no RPC methods, no background services\n- Opt-in tool exposure\n: all tools are registered as optional and require allowlist enablement\n- User-scoped operations\n: workflows are designed for authenticated user ownership boundaries\n- No global trunk controls in this plugin\n: global trunk delete/link remains intentionally out of scope\n- Strict base URL validation\n: scheme + host only, no embedded credentials, paths, query, or hash\n- Secret-safe outputs\n: sensitive fields are redacted from tool result payloads\n\n## Installation\n\n```bash\nopenclaw plugins install @amolsoans/openclaw-monade-sales\n```\n\n### Recommended user install flow (once published to npm)\n\n```bash\n# 1. Install the plugin\nopenclaw plugins install @amolsoans/openclaw-monade-sales\n\n# 2. Configure auth (pick one mode)\n# A) user_api_key mode (BetterAuth user API key)\nopenclaw config set plugins.entries.openclaw-monade-sales.config.authMode user_api_key\nopenclaw config set plugins.entries.openclaw-monade-sales.config.apiKey ba_YOUR_USER_KEY\n\n# B) service_proxy mode (service token + explicit user UID)\nopenclaw config set plugins.entries.openclaw-monade-sales.config.authMode service_proxy\nopenclaw config set plugins.entries.openclaw-monade-sales.config.serviceApiKey svc_YOUR_TOKEN\nopenclaw config set plugins.entries.openclaw-monade-sales.config.userUid user_abc123\n\n# 3. Restart gateway\nopenclaw gateway restart\n```\n\nYou can also use the OpenClaw Web UI at `http://127.0.0.1:18789`. The plugin config form appears automatically because `uiHints` are defined in `openclaw.plugin.json`.\n\n## Configuration\n\n### Authentication modes\n\n- `authMode: \"auto\"` (default): uses `apiKey` if present, otherwise `serviceApiKey`\n- `authMode: \"user_api_key\"`: requires BetterAuth user key in `apiKey` or `MONADE_API_KEY`\n- `authMode: \"service_proxy\"`: requires service token (`serviceApiKey`) and user UID (`userUid`)\n\n### Required fields\n\n- `user_api_key` mode: `apiKey`\n- `service_proxy` mode: `serviceApiKey` and `userUid`\n\n### Optional\n\n- `baseUrl`: Monade API base host (defaults to `https://service.monade.ai`)\n- `defaultAssistantId`: fallback assistant for outbound call actions\n- `timeoutMs`: HTTP timeout in milliseconds (`1000`-`60000`, default `10000`)\n- `allowInsecureBaseUrl`: set `true` only for trusted internal HTTP environments\n- `sendUserUidHeader`: defaults to `true`; sends `X-User-Uid` in `service_proxy` mode\n\nThe plugin can install without keys, but tool calls fail until the selected auth mode has required credentials.\n\n## Example config\n\n```json\n{\n  \"plugins\": {\n    \"entries\": {\n      \"openclaw-monade-sales\": {\n        \"enabled\": true,\n        \"config\": {\n          \"authMode\": \"service_proxy\",\n          \"serviceApiKey\": \"your-service-token\",\n          \"userUid\": \"user_abc123\",\n          \"baseUrl\": \"https://service.monade.ai\",\n          \"timeoutMs\": 10000\n        }\n      }\n    }\n  }\n}\n```\n\n## Tool enablement\n\nBecause tools are optional by design, explicitly allow what you want to expose:\n\n- allow by individual tool name\n- allow by plugin id\n- allow by plugin tool group, depending on your OpenClaw tool policy\n\nThis gives you tight control over operational blast radius.\n\n## Do you need a skill?\n\nOnly if you want additional agent instructions for when and how to use plugin tools. The tools come from the plugin itself; `SKILL.md` adds natural-language guidance and operating context. For most setups, a skill is optional.\n\n## Operational notes\n\n- Keep `allowInsecureBaseUrl` disabled unless you fully trust a private network path.\n- Use per-environment API keys and rotate keys on a regular schedule.\n- Prefer least-privilege tool allowlists for production agents.\n\n## Support\n\n- Issues: repository issue tracker\n- Source: this plugin lives in the Monade voice config workspace under `MCP/openclaw-monade-sales`\n","readmeFilename":"README.md","_rev":"1-5fc13958931453792693acd08bd737fc"}