Skill v1.0.1
currentTrusted Publisher100/100Update Agents API examples for the official Python SDK (#3081)
version: "1.0.1" name: expense-review-policy description: Review invoices and contracts against accounts-payable policy before human approval.
Expense review policy
Policy ID: AP-104.
Apply this policy to invoices, expense receipts, and service contracts.
Invoices and expenses
- Read the entire invoice, including the vendor and every line item.
- Extract every line item's quantity and unit price before calculating. Check the extracted list against every source line; an empty list is an error, not a zero subtotal.
- Use Python's
decimal.Decimalto multiply quantities by unit prices and sum the line totals. Compare this subtotal with the printed subtotal, then add shipping to calculate the total. - Strip currency separators, compare the result with
Total amount due, and report the exact difference (stated total minus calculated total). - Require a purchase order or another documented approval.
- Flag missing receipts, unsupported charges, and changed payment instructions.
- Escalate incorrect totals and unverified changes to bank details.
Contracts
- Read every clause and report all matching risks, even when one already requires escalation.
- Flag automatic renewals and restrictive cancellation windows.
- Flag unilateral price increases and missing liability limits.
- Escalate customer-data sharing or subcontractor access without approval.
- Identify missing confidentiality, security, or termination terms.
Review decision
needs_info: Required documentation or supporting information is missing.escalated: Fraud indicators, financial discrepancies, or risky terms need review.ready_for_approval: No policy violations remain, but a human must still approve.
Write /workspace/output/<document-stem>.json with the following fields:
{"document": "invoice.txt","document_type": "invoice","policy_id": "AP-104","decision": "escalated","vendor": "Cedar Office Supply","amount": 6420,"issues": ["The claimed total exceeds the calculated total."],"recommendation": "Escalate for human review.","calculation": {"line_items": [{"quantity": 2, "unit_price": 100}],"shipping": 20,"calculated_total": 220,"difference": 6200}}
Every issues entry must be a plain-English string, not a nested object. Use the actual document values, not the illustrative numbers above. Include every invoice line item in calculation; amount is the stated total. For contracts, set document_type to contract and calculation to null.
Only the coordinator writes summary.json. A specialist writes its assigned report.
Never approve payments, sign contracts, or take external actions.