This paper identifies a collection of high level questions which need to be posed by designers of toolkits for developing intelligent agents (e.g. What kinds of scenarios are to be developed? What sorts of agent architectures are required? What are the scenarios to be used for? Are speed and ease of development more or less important than speed and robustness of the final system?). It then considers some of the toolkit design options relevant to these issues, including some concerned with multi-agent systems and some concerned with individual intelligent agents of high internal complexity, including human-lilce agents. A conflict is identified between requirements for exploring new types of agent designs and requirements for formal specification, verifiability and efficiency. The paper ends with some challenges for computer science theorists posed by complex systems of interacting agents.