# Reflection Integration


The Reflection integration allows a VM (and, for example, agents running
on that VM) to discover metadata about itself, including the owner email,
tags, comments, the port configured to be shared on https://vm-name.exe.xyz/, 
and the list of attached integrations. Shelley and pi are both pre-configured
to use this to discover LLM integrations and models. Shelley knows to
look at integrations to access resources that the user is asking to access,
like git repos or HTTPs proxies.

Reflection is a [default integration](integrations): new accounts get it
attached with `auto:all`, so every VM can reach it out of the box. Edit the
attachment tags to change this behavior.

## Examples

See what's available:

```
$ curl -s https://reflection.int.exe.xyz/
{
  "paths": [
    { "description": "owner email address", "path": "/email" },
    { "description": "integrations available to this VM", "path": "/integrations" },
    { "description": "tags set on this VM", "path": "/tags" },
    { "description": "comment set on this VM", "path": "/comment" },
    { "description": "default proxy port for this VM", "path": "/default_port" }
  ]
}
```

Query attached integrations:

```
$ curl -s https://reflection.int.exe.xyz/integrations
{
  "integrations": [
    {
      "comment": "",
      "help": "curl https://reflection.int.exe.xyz/",
      "name": "reflection",
      "type": "reflection"
    },
    {
      "comment": "",
      "help": "curl https://llm.int.exe.xyz/v1/models",
      "name": "llm",
      "type": "llm"
    },
    {
      "comment": "Use this for the backend repo; the app repo is at github-app.",
      "help": "git clone https://github-example.int.exe.xyz/your-org/your-repo.git",
      "name": "github-example",
      "type": "github"
    }
  ]
}
```
