This paper addresses the problem of synthesizing the behavior of an AI agent\nthat provides proactive task assistance to a human in settings like factory\nfloors where they may coexist in a common environment. Unlike in the case of\nrequested assistance, the human may not be expecting proactive assistance and\nhence it is crucial for the agent to ensure that the human is aware of how the\nassistance affects her task. This becomes harder when there is a possibility\nthat the human may neither have full knowledge of the AI agent's capabilities\nnor have full observability of its activities. Therefore, our \\textit{proactive\nassistant} is guided by the following three principles: \\textbf{(1)} its\nactivity decreases the human's cost towards her goal; \\textbf{(2)} the human is\nable to recognize the potential reduction in her cost; \\textbf{(3)} its\nactivity optimizes the human's overall cost (time/resources) of achieving her\ngoal. Through empirical evaluation and user studies, we demonstrate the\nusefulness of our approach.\n