Update contract_crew/config/tasks.yaml to assign each task to its agent explicitly and define output file targets:
contract_crew/config/tasks.yaml
1# contract_crew/config/tasks.yaml23extract_terms:4description:>5 Read the contract at {contract_path}. List its key terms: parties, dates,
6 term and renewal, fees and payment, service levels, data handling,
7 termination, liability, and any clause that lets one party change the
8 deal on its own.9expected_output:>10 A bulleted list of key terms. Each bullet quotes the contract and ends
11 with its section number.12agent: reader
1314assess_risks:15description:>16 Using the key terms, write a risk memo for {customer}. Pick the five terms
17 most likely to cost them money or catch them out, and say what they
18 should do about each one.19expected_output:>20 A Markdown memo of no more than 350 words: a two-sentence summary, then a
21 numbered list of five risks. Each risk has a section number, why it
22 matters, and a recommended action.23agent: risk_analyst
2425fact_check:26description:>27 Check every claim in the risk memo against the contract at {contract_path}.
28 Fix any number, date, or section reference that does not match the
29 contract, and remove anything the contract does not say.30expected_output:>31 The corrected memo in Markdown, followed by a "Corrections" section that
32 lists each change you made, or says "None".33agent: fact_checker
34output_file: output/review.md
Implement the class-based crew in contract_crew/crew.py: