ТЗ в письменном виде.
Важно, чтобы вы понимали ЧТО вам требуется, и смогли это письменно сформулировать.
Не нужно описывать алгоритм решения (только если суть задачи именно в реализации вашего алгоритма), опишите требуемый результат, акцентируя внимание на ключевых деталях, а способы решения мы согласуем в ходе обсуждения.
Недостаточно дать ссылку на скрипт с пожеланием "хочу такой же". Я не могу знать что и как делает тот скрипт, и я не могу предугадать что из этого важно именно вам.
А вот отсылка на примеры для иллюстрации вашей задачи, вполне приемлема.
Будьте готовы к тому, что исполнитель может ничего не понимать в вашей предметной области и не владеть соответствующей терминологией. Вам придётся донести до меня задачу в понятных мне терминах (также как и я буду стараться выражать свои мысли в понятной форме).