> For the complete documentation index, see [llms.txt](https://datasherlock.gitbook.io/datasherlock/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://datasherlock.gitbook.io/datasherlock/introductions/concepts.md).

# Concepts

In this document, we'll explore the key concepts related to the Data Sherlock platform

### Agent <a href="#agent" id="agent"></a>

An **Agent** is a service that operates within your cloud infrastructure and serves as a bridge of communication between your environment and the Datasherlock platform.

### Remote URL <a href="#remote-url" id="remote-url"></a>

To run an Agent, there's no need to expose any ports or endpoints directly. Datasherlock creates a secure tunnel, allowing you to establish a connection between your Agent and the Datasherlock cloud without exposing your infrastructure.

### Register <a href="#register" id="register"></a>

**Registering** is the process through which you provide metadata related to your database to facilitate query generation.

### Database Metadata <a href="#database-metadata" id="database-metadata"></a>

During the Agent registration process, Datasherlock gathers comprehensive **Database Metadata** from your database and transmits it to the Datasherlock cloud. This metadata includes information such as table names, column names, and their respective values.

This Database Metadata plays a crucial role in empowering Datasherlock's query generation capabilities.

By understanding these key concepts, you'll be better equipped to utilize the Datasherlock platform effectively.
