Task
A freelancer on three marketplaces kept losing strong orders within minutes: a good order leaves the Profi board in five or six minutes, FL.ru shows about sixty orders a day, most of them noise, and every bid costs money.
Solution
The radar polls the marketplaces, scores orders with Claude and keeps everything in SQLite. The model writes the reason and the price first and the score last, so the score stopped contradicting its own explanation. The model was chosen by a script that runs labelled orders and counts accuracy and the cost of one correct score.
What was done
- Connected FL.ru, Profi.ru and Kwork, each marketplace in its own way
- Cut the noise with cheap filters before calling the model
- Scored every order with Claude against a written profile: 0 to 10, a reason and a price
- Send cards to Telegram with or without sound depending on the score
- Run a bid funnel where statuses move by themselves from marketplace data
- Prepare a draft bid, while the freelancer always sends the bid
- Built a web interface with a feed, an order card and statistics
- Checked the scoring on labelled orders before choosing the model
Result
The freelancer sees only orders worth a look and hears about them within minutes. On 22 orders with a known decision, scoring accuracy grew from 14 to 20.5.
Technologies
PythonFastAPIHTMXSQLiteClaudeTelegram Bot APIDocker