Many people starting with Industry 4.0 or general IoT programs are coming to the realisation that an effective agent is fundamental. Realising the importance of an agent is one thing. Knowing how to design an effective agent is another. This technical paper outlines that breadth of functions and features that are important. It will help you build your check-list of agent features and explain why these are important.