Add multi-platform-sales-monitor community ability#244
Add multi-platform-sales-monitor community ability#244ammyyou112 wants to merge 3 commits intoopenhome-dev:devfrom
Conversation
✅ Community PR Path Check — PassedAll changed files are inside the |
🔀 Branch Merge CheckPR direction: ✅ Passed — |
✅ Ability Validation Passed |
🔍 Lint Results✅
|
|
Great work on this @ammyyou112 This is a really powerful ability and users will definitely be using this. For better understanding of users, please add a Loom demo showing both Shopify and Gumroad integration and the ability in action end to end. This will really help in reviewing and understanding the flow. |
|
I’ve already added the Loom demo to the PR description. Sharing the same link here as well for convenience: https://www.loom.com/share/f2bd0301e5804507af3534942579b7d4 |
|
Hi @ammyyou112, After a thorough review of the code, here are some suggestions I would like to request you to make changes to before resubmitting the PR. First of all, instead of hardcoded keyword matching in The dashboard summary in The The Finally, regarding the demo, please do not include hardcoded or previously used credentials. Also resubmit demo using actual Shopify and Gumroad store data with their real APIs instead of demo mode. Thanks! |
What does this Ability do?
Voice-activated sales dashboard for Gumroad and Shopify. Users can check real-time revenue, compare platforms, track best sellers, analyze sales trends, and monitor customer counts with natural voice commands. Works immediately in demo mode or connects to real APIs for live sales data.
Suggested Trigger Words
Type
External APIs
https://api.gumroad.com/v2/sales(requires access token from https://app.gumroad.com/settings/advanced)https://{shop}.myshopify.com/admin/api/2024-01/orders.json(requires shop URL + Admin API access token)Testing
Checklist
community/multi-platform-sales-monitor/main.pyfollows SDK pattern (extendsMatchingCapability, has# {{register_capability}}+call)README.mdincluded with description, suggested triggers, and setupresume_normal_flow()called on every exit pathprint()— usingeditor_logging_handlerredis,user_config)asyncio.sleep()orasyncio.create_task()— usingsession_tasksAnything else?
Demo Mode Included:
The ability includes a
DEMO_MODE = Trueflag that returns realistic fake data for testing without real Gumroad/Shopify credentials. Demo shows $477 in sales across 6 transactions from both platforms. Perfect for trying out the conversation flow before connecting real stores.Features:
Conversation Example:
User: "Check my online sales"
Assistant: "Today: 477 dollars from 6 sales. This week: 477 dollars.
This month: 477 dollars. Gumroad: 177 dollars, Shopify: 300 dollars.
Best seller: Logo T-Shirt with 2 units."
Assistant: "What else would you like to know?"
User: "What about Shopify?"
Assistant: "Shopify's at 300 dollars from 3 orders."
User: "Compare digital versus physical"
Assistant: "Digital's at 177 dollars, that's about 37 percent of your revenue.
Physical's at 300 dollars, which is 63 percent."
User: "Show me trends"
Assistant: "You're up 25 percent compared to yesterday. Nice!"
User: "Thanks"
Assistant: "Okay, talk to you later!"
Demo Data:
📋 Files to Include in PR:
community/multi-platform-sales-monitor/
├── main.py
├── README.md
└── init.py