# Overview

If you're wanting to develop new agents, agent capabilities, or understand the flow of an AG2 workflow, this is the right section for you.

Tip

This section involves diving into AG2's source code, if that doesn't sound like what you are after, check out our Basic and Advanced concept sections under [User Guide](https://docs.ag2.ai/0.8.4/docs/user-guide/basic-concepts/installing-ag2).

## Sections:

1. Chat workflow with [initiate_chat](https://docs.ag2.ai/0.8.4/docs/contributor-guide/how-ag2-works/initiate-chat)

2. How ConversableAgent generates its reply with [generate_reply](https://docs.ag2.ai/0.8.4/docs/contributor-guide/how-ag2-works/generate-reply)

3. How to update agent and message state using [hooks](https://docs.ag2.ai/0.8.4/docs/contributor-guide/how-ag2-works/hooks)

Ready to start building your own agents and tools? Check out our guides for [creating a tool](https://docs.ag2.ai/0.8.4/docs/contributor-guide/building/creating-a-tool) and [creating an agent](https://docs.ag2.ai/0.8.4/docs/contributor-guide/building/creating-an-agent).
