Incorporating constraints into a reactive BDI agent programming language can lead to better expressive capabilities as well as more efficient computation (in some instances). More interestingly, the use of constraint-based representations can make it possible to deal with explicit agent objectives (as distinct from agent goals) that express the things that an agent may seek to optimize at any given point in time. In this paper we extend the preliminary work of Ooi et.al in augmenting the popular Belief-Desire-Intention (BDI) language AgentSpeak( L) with constraint-handling capabilities. We present a slightly modified version of their proposal, in the form of the language CAS (Constraint AgentSpeak). We then extend CAS to form the language CASO (Constraint AgentSpeak with Objectives) to incorporate explicit objectives (represented as objective functions) and present techniques for performing option selection (selecting the best plan to use to deal with the current event) as well as intention selection. In both cases, we present parametric look-ahead techniques, i.e., techniques where the extent of look-ahead style deliberation can be adjusted.