Example 1 of 6 / Customers
Review potential customers
Sort a supplied lead list using your own business criteria.

Folder: examples/lead-fit/
Useful when Your qualification rules live in notes and you need an explanation for each row.
Already covered? Use existing CRM filters or spreadsheet formulas when they already express your rules.
Look at the input files
These are fictional records. Open the matching files in the starter folder to try the task.
| lead_id | company | service_needed | location | budget_php | evidence_note |
|---|---|---|---|---|---|
| 001 | Mango, Studio | website refresh | Cebu | 18000 | Asked for a five-page refresh |
| 002 | North Café | social media | Cebu | 22000 | Needs weekly posting |
| 003 | Luna Repairs | website refresh | Cebu | empty | Budget not supplied |
| 004 | Bay Works | website refresh | Davao | 20000 | Needs on-site work |
| 005 | Isla Shop | website refresh | Cebu | 9000 | Budget confirmed |
{
"service": "website refresh",
"location": "Cebu",
"minimum_budget_php": 12000,
"classification": "fit if every criterion is met; not_fit if any known criterion fails; otherwise unknown",
"note": "Use supplied evidence only. No web research."
}
03 / Run it
Give OpenCode this request.
Keep the whole starter folder open. Paste the request into a fresh conversation and let the assistant read the selected example’s inputs.
Use the business-file-assistant skill. Work only in examples/lead-fit/input and write new results in examples/lead-fit/output. Do not read expected files. Compare leads.csv with criteria.json. Write result.csv with lead_id, fit (fit/not_fit/unknown), reason and source. Account for every lead and preserve ID text.
Watch for file reads and a new examples/lead-fit/output/result.csv. Review permission requests. If it stops, keep the exact error and your existing files before retrying.
04 / Check the result
Compare facts, not exact wording.
One lead meets all three rules. A missing budget remains an unanswered question, not a rejection or an invented number.
- 001 fits; 002, 004 and 005 do not fit.
- 003 stays unknown because its budget is missing.
- All five IDs retain their leading zeros.
Show the expected result
This answer was prepared for the fictional inputs. Use it after running the example; different wording can still be correct.
| lead_id | fit | reason | source |
|---|---|---|---|
| 001 | fit | Meets service, location and minimum budget | leads.csv:001; criteria.json |
| 002 | not_fit | Different service | leads.csv:002; criteria.json |
| 003 | unknown | Budget missing | leads.csv:003; criteria.json |
| 004 | not_fit | Outside Cebu | leads.csv:004; criteria.json |
| 005 | not_fit | Below PHP 12000 | leads.csv:005; criteria.json |
Open the actual output file, follow its source references and check that the input files are unchanged. A confident reply alone is not verification.





