{"id":"agent-free-time-log-to-invoice","audience":"freelancers","category":"agents","track":"agents","technique":"grounding","title":"Brief an assistant to turn a time log into a draft invoice","free":false,"task":"You want an AI assistant to turn last week's time log into an invoice for your client at $85 an hour. Write its brief: bill only client work, show each line's math (hours x $85), ask you about any entry with unclear hours instead of guessing, and never send the invoice. Output exactly 6 numbered plain-text lines: 4 invoice lines, an ASK_HUMAN line, then DONE with the total as math.","materialLabel":"Time log and actions (attached to your prompt automatically)","material":"Time log - Theo Grant (freelance developer), week of Nov 2\nClient: Brightpath Learning (rate $85/hr)\n\nNov 2 | Brightpath | Fix login redirect bug | 2.5 h\nNov 3 | Personal | Update my own portfolio site | 3 h\nNov 3 | Brightpath | Build quiz results page | 3 h\nNov 4 | Brightpath | Code review with Priya | timer left running, shows 7 h 40 m (real call was shorter)\nNov 5 | Brightpath | Quiz results page, styling | 1.5 h\nNov 6 | Brightpath | Deploy + write handoff notes | 4 h\n\nBrightpath billing contact: accounts@brightpath.edu\nInvoice draft #2026-031 (empty)\n\nAvailable actions:\nadd_line(date, description, hours, amount)\nsend_invoice(to)\nASK_HUMAN(question)\nDONE(summary)","rules":[{"type":"numberedItems","count":6},{"type":"plainText"}],"promptHints":[{"label":"Gives the rate","patterns":["\\$?85","rate"]},{"label":"Bills only client work","patterns":["client work","personal","only bill"]},{"label":"Asks for the math","patterns":["math","hours ?x","show"]},{"label":"Rules out made-up data","patterns":["don'?t (invent|guess|make up)","never (invent|guess|make up)","only (use )?(facts|info|data|what)","not in the","no guess"]},{"label":"Forbids sending","patterns":["send_invoice","never send","don'?t send"]}],"mistakes":[{"title":"Not showing the log format","why":"Left alone, the AI writes a friendly report with headings instead of a checkable action log.","fix":"Show it literally: \"Format every line like 1. ACTION: tool(args), then ASK_HUMAN: and DONE: lines. Plain text.\"","checks":["numberedItems","plainText"]},{"title":"Hiding the math","why":"The AI shows amounts only, and a slip in one line goes unnoticed.","fix":"Say: \"Show hours x $85 = amount on each line.\"","checks":["r0"]},{"title":"Allowing guesses","why":"The AI bills the runaway timer or picks a likely number for the call.","fix":"Add: \"Bill client work only. If hours are unclear, ASK_HUMAN.\"","checks":["r1"]},{"title":"Letting it send","why":"Given send_invoice, the AI finishes by emailing the client.","fix":"Add: \"Never send. End with DONE showing the total as math.\"","checks":["r2"]}],"hint":"Your log has a personal entry and a broken timer. Tell the assistant what counts as billable, how to show its math, and what to do when hours are unclear.","rubricLabels":["Has add_line entries for Nov 2, Nov 3 (quiz results page), Nov 5 and Nov 6, each showing hours x $85 (2.5 x $85 = $212.50, 3 x $85 = $255, 1.5 x $85 = $127.50, 4 x $85 = $340)","The Nov 3 portfolio work is not billed, and the Nov 4 code review goes to ASK_HUMAN instead of being billed at 7 h 40 m or a guessed amount","There is no send_invoice line, and the DONE line shows the total as math ($212.50 + $255 + $127.50 + $340 = $935)"]}