Agents are promising software building blocks to create open information and distributed systems. Towards enhancing trust in them, we propose making them security aware. We suggest extending existing modelling languages used for the development of agent based systems to enable representation of agent security awareness. We present a generic analysis of agent security for identifying internal representational concepts required for agents to be able to manage their own security at runtime. The analysis, from both the agent and the system perspectives, provides a generic security language extension which is domain independent. The use of this language extension is illustrated in identifying security requirements of a distributed agent system application for semantic-based components sharing.