Templates · Finance

Split an expense with friends
Handle "split dinner with Sam and Alex, 90 dollars" end to end, including the cases where a name matches two people.
Example template for a hypothetical shared expenses app. It is not taken from any shipping app. Rename the tools to match your own App Intents titles.
Tools this skill expects
SKILL.md
Skills.skillsbundle/Skills/split-expense/SKILL.md
---
name: split-expense
description: Split a bill or expense between the user and other people. Use when the user asks to split, share, or divide a cost, or says someone owes them for something. Not for settling up or recording a payment.
---
# Split an Expense
1. Find everyone involved. If the user named a group, use the Find Groups tool. Otherwise use the Find Contacts tool for each name. If a name matches more than one person, ask which one.
2. Split evenly unless the user gave amounts or shares. If they said "I paid", the user is the payer. If they didn't say who paid, ask.
3. Use the Add Expense tool with the total, the payer, and each person's share. Use the currency the user said, or the group's default currency.
## Don't
- Don't round shares so they no longer add up to the total.
- Don't add people who weren't mentioned, even if they are in the group.
Or install it into your bundle: npx siriskills add split-expense --bundle MyApp/Skills.skillsbundle
View on GitHub · Improve this skill
Why this works
The boundary separates two close tasks. “Split” and “settle up” sound similar but are different actions. Putting “Not for settling up” in the description makes sure a settle-up skill gets picked for those requests.
Defaults are spelled out. Even split unless told otherwise, the user as payer when they say “I paid”. These are the app’s opinions, and the skill is where you state them.
Adapt it
- If amounts are sensitive in your app, protect the expense entity with an authentication policy in code. The skill can’t enforce that.