The Multi-agent Environment for Constructing Cooperatlve Applications (NECCA) ia based upon a framework unifying the internal behavior of agents and cooperation among agents. This paper presents a formalized view of agent behavior relying on the basic loop of goal activation, plan execution and scheduling followed by task execution. This allows for a presentation of the semantics of cooperation primitives: interagent messages supporting cooperation, comprised of speech acts operating upon objects occuring in the basic loop. The formal semantics of cooperation primitives gives a meaning to individual messages, independent from the cooperation protocol. Thus, agents can reason about exchanged messages and are able to dynamically create their own methods for cooperation.