# Smart Contract Modules

- [Dai Module](https://docs.makerdao.com/smart-contract-modules/dai-module.md): The DAI token contract and all of the adapters DaiJoin adapters.
- [Dai - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/dai-module/dai-detailed-documentation.md): The Dai Token Contract
- [Core Module](https://docs.makerdao.com/smart-contract-modules/core-module.md): The State of the Maker Protocol
- [Vat - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/core-module/vat-detailed-documentation.md): The Maker Protocol's Core Accounting System
- [Spot - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/core-module/spot-detailed-documentation.md): The Maker Protocol's liaison between the Oracles and Core Contracts
- [Collateral Module](https://docs.makerdao.com/smart-contract-modules/collateral-module.md): Adapters and Auction contracts for each specific collateral type
- [Join - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/collateral-module/join-detailed-documentation.md)
- [Liquidation 2.0 Module](https://docs.makerdao.com/smart-contract-modules/dog-and-clipper-detailed-documentation.md): The Maker Protocol's Collateral Auction House (Liquidation System 2.0)
- [System Stabilizer Module](https://docs.makerdao.com/smart-contract-modules/system-stabilizer-module.md): Keeping the Maker Protocol Stable
- [Flapper - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/system-stabilizer-module/flap-detailed-documentation.md): The Maker Protocol's Surplus Auction House
- [Flopper - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/system-stabilizer-module/flop-detailed-documentation.md): The Maker Protocol's Debt Auction House
- [Vow - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/system-stabilizer-module/vow-detailed-documentation.md): The Maker Protocol's Balance Sheet
- [Oracle Module](https://docs.makerdao.com/smart-contract-modules/oracle-module.md): The Maker Protocol's Oracles
- [Oracle Security Module (OSM) - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/oracle-module/oracle-security-module-osm-detailed-documentation.md)
- [Median - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/oracle-module/median-detailed-documentation.md): The Maker Protocol's trusted reference price
- [MKR Module](https://docs.makerdao.com/smart-contract-modules/mkr-module.md): The MKR Governance Token Implementation
- [Governance Module](https://docs.makerdao.com/smart-contract-modules/governance-module.md): The Maker Protocol's Governance Contracts
- [Spell - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/governance-module/spell-detailed-documentation.md)
- [Pause - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/governance-module/pause-detailed-documentation.md): A delegatecall based proxy with an enforced delay
- [Chief - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/governance-module/chief-detailed-documentation.md): Electing a Chief contract via an approval voting system
- [Rates Module](https://docs.makerdao.com/smart-contract-modules/rates-module.md): The Maker Protocol's Rate Accumulation Mechanism
- [Pot - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/rates-module/pot-detailed-documentation.md): The Dai Savings Rate
- [Jug - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/rates-module/jug-detailed-documentation.md): Accumulation of Stability Fees for Collateral Types
- [Proxy Module](https://docs.makerdao.com/smart-contract-modules/proxy-module.md): Allowing Users to interact with the Maker Protocol more easily
- [Proxy Actions - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/proxy-module/proxy-actions-detailed-documentation.md): A generalized wrapper for the Maker Protocol
- [Vote Proxy - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/proxy-module/vote-proxy-detailed-documentation.md): Allowing MKR users to vote with a hot or cold wallet using a proxy voting identity
- [CDP Manager - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/proxy-module/cdp-manager-detailed-documentation.md): Managing Vaults to be transferred between users
- [DSR Manager - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/proxy-module/dsr-manager-detailed-documentation.md): The simplest way to integrate DSR in smart contracts
- [Flash Mint Module](https://docs.makerdao.com/smart-contract-modules/flash-mint-module.md): Enables any user to execute a flash mint of Dai.
- [Maker Protocol Emergency Shutdown](https://docs.makerdao.com/smart-contract-modules/shutdown.md): Introducing the Shutdown Mechanism of the Maker Protocol
- [Emergency Shutdown for Partners](https://docs.makerdao.com/smart-contract-modules/shutdown/emergency-shutdown-for-partners.md): How to prepare for ES as a partner
- [The Emergency Shutdown Process for Multi-Collateral Dai (MCD)](https://docs.makerdao.com/smart-contract-modules/shutdown/the-emergency-shutdown-process-for-multi-collateral-dai-mcd.md)
- [End - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/shutdown/end-detailed-documentation.md): Shutdown
- [ESM - Detailed Documentation](https://docs.makerdao.com/smart-contract-modules/shutdown/emergency-shutdown-module.md): The ESM is the trigger system for the shutdown of the Maker Protocol


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.makerdao.com/smart-contract-modules.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
