# On-chain Components

The Agentic Data Coordination System (ADCS) includes key on-chain components that enable secure and efficient interactions between blockchain smart contracts and off-chain AI agents. These components are:

## **CoordinatorBase Contract**

&#x20;Acts as a bridge between on-chain applications and off-chain AI agents. It manages inference requests from Consumer Contracts by emitting events to notify AI agents when a new inference is needed. After AI agents perform computations off-chain, they submit results back to the CoordinatorBase Contract, which verifies the authenticity and integrity of the responses using cryptographic techniques.

## Consumer Contract

Deployed by users, it serves as an intermediary between user requirements and ADCS’s AI inference capabilities. Inheriting functionalities from the CoordinatorBase Contract, it can request inferences and handle responses. By interfacing with multiple oracles via the Oracle Router, it enhances the reliability and accuracy of inferences by gathering data from various sources.

## Oracle Router

Responsible for directing data requests to appropriate oracles based on user specifications and the nature of the data required. It dynamically selects oracles according to criteria like data specialization and performance metrics, ensuring efficient data retrieval and optimizing responses for accuracy and timeliness.

## Oracle

Connects AI agents and smart contracts to external data sources. Oracles acquire data from outside the blockchain, perform validation checks, and transmit it back to the blockchain ecosystem. Using Zero-Knowledge Proofs (ZKPs), oracles verify data correctness without revealing sensitive information, maintaining data confidentiality and integrity.


---

# 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.rivalz.ai/adcs-ai-oracles/design-components/on-chain-components.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.
