> ## Documentation Index
> Fetch the complete documentation index at: https://docs.formae.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Explore your infrastructure

> See what already exists in your infrastructure with formae, without changing anything.

The safest way to get started with formae is read-only. Point it at a cloud
account and it discovers and catalogs everything running there as
[unmanaged resources](/documentation/concepts/resources), touching nothing until
you ask it to. This is how you get the lay of the land before you adopt or deploy.

<Note>
  **Before you start:** you need a discoverable target for the account you want to
  explore. If you haven't set one up, do
  [Create a target](/documentation/guides/create-a-target) first (targets are
  discoverable by default).
</Note>

<Tabs>
  <Tab title="CLI">
    <Steps>
      <Step title="Let discovery run">
        formae scans each discoverable target right after you apply it, and again
        every few minutes. List your targets to see which ones it is scanning:

        ```bash theme={"languages":{"custom":["/languages/pkl.json"]}}
        formae inventory targets
        ```

        <div className="fa-term">
          <div className="fa-term-body">  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(232,232,232)',fontWeight:'600'}}>formae</span> <span style={{fontWeight:'600'}} /><span style={{color:'rgb(255,133,51)',fontWeight:'600'}}>inventory</span><br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(85,85,102)'}} />                <span style={{color:'rgb(129,209,219)'}}>╭───────────╮</span><br /> <span style={{color:'rgb(170,170,170)'}}> 1 Resources </span>  <span style={{color:'rgb(129,209,219)'}}>│</span><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}> 2 Targets </span><span style={{color:'rgb(129,209,219)'}}>│</span>  <span style={{color:'rgb(170,170,170)'}}> 3 Stacks </span>  <span style={{color:'rgb(170,170,170)'}}> 4 Policies </span><br /><span style={{color:'rgb(129,209,219)'}}>────────────────╯           ╰───────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(129,209,219)'}} /><br /><span style={{color:'rgb(129,209,219)'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}} /><span style={{color:'rgb(232,232,232)',fontWeight:'600'}}>Label ▲                   </span><span style={{color:'rgb(170,170,170)',fontWeight:'600'}}>Namespace              Discoverable    Config                                         </span><br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(232,232,232)'}} /><span style={{color:'rgb(232,232,232)'}}>eu-north-1                AWS                    </span><span style={{color:'rgb(129,209,219)'}}>yes</span>             <span style={{color:'rgb(232,232,232)'}}>Region: eu-north-1, Type: AWS                  </span><br /><br />Showing 1 of 1 targets<br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(85,85,102)'}} />  <span style={{color:'rgb(153,153,153)'}}>/: query</span><br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(85,85,102)'}} />  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>↑↓/j/k</span><span style={{color:'rgb(153,153,153)'}}>: navigate</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>enter</span><span style={{color:'rgb(153,153,153)'}}>: detail</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>/</span><span style={{color:'rgb(153,153,153)'}}>: search</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>s</span><span style={{color:'rgb(153,153,153)'}}>: sort</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>r</span><span style={{color:'rgb(153,153,153)'}}>: refresh</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>1-4</span><span style={{color:'rgb(153,153,153)'}}>: tab</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>q</span><span style={{color:'rgb(153,153,153)'}}>: quit</span>                           <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>?</span><span style={{color:'rgb(153,153,153)'}}>: help</span></div>
        </div>

        The output has a discoverable column; those are the targets formae scans.
        The first scan of a large account can take a few minutes.
      </Step>

      <Step title="See what it found">
        List everything formae discovered but is not managing:

        ```bash theme={"languages":{"custom":["/languages/pkl.json"]}}
        formae inventory resources --query="managed:false"
        ```

        <div className="fa-term">
          <div className="fa-term-body">  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(232,232,232)',fontWeight:'600'}}>formae</span> <span style={{fontWeight:'600'}} /><span style={{color:'rgb(255,133,51)',fontWeight:'600'}}>inventory</span><br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(85,85,102)'}} /> <span style={{color:'rgb(129,209,219)'}}>╭─────────────╮</span><br /> <span style={{color:'rgb(129,209,219)'}}>│</span><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}> 1 Resources </span><span style={{color:'rgb(129,209,219)'}}>│</span>  <span style={{color:'rgb(170,170,170)'}}> 2 Targets </span>  <span style={{color:'rgb(170,170,170)'}}> 3 Stacks </span>  <span style={{color:'rgb(170,170,170)'}}> 4 Policies </span><br /><span style={{color:'rgb(129,209,219)'}}>─╯             ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(129,209,219)'}} /><br /><span style={{color:'rgb(129,209,219)'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}} /><span style={{color:'rgb(232,232,232)',fontWeight:'600'}}>Label ▲                      </span><span style={{color:'rgb(170,170,170)',fontWeight:'600'}}>Stack              Type                             NativeID                               </span><br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(232,232,232)'}} /><span style={{color:'rgb(232,232,232)'}}>demo-igw-1                   </span><span style={{color:'rgb(232,232,232)',fontWeight:'600'}} /><span style={{color:'rgb(248,113,113)',fontWeight:'600'}}>⚠ unmanaged</span>        <span style={{color:'rgb(232,232,232)'}}>AWS::EC2::InternetGateway        igw-08143e60f8d577b3a                  </span><br /><span style={{color:'rgb(232,232,232)'}} /><span style={{color:'rgb(232,232,232)'}}>demo-igw-2                   </span><span style={{color:'rgb(232,232,232)',fontWeight:'600'}} /><span style={{color:'rgb(248,113,113)',fontWeight:'600'}}>⚠ unmanaged</span>        <span style={{color:'rgb(232,232,232)'}}>AWS::EC2::InternetGateway        igw-04aef1b32b5c06823                  </span><br /><span style={{color:'rgb(232,232,232)'}}>igw-02394c20322e9a98e        </span><span style={{color:'rgb(232,232,232)',fontWeight:'600'}} /><span style={{color:'rgb(248,113,113)',fontWeight:'600'}}>⚠ unmanaged</span>        <span style={{color:'rgb(232,232,232)'}}>AWS::EC2::InternetGateway        igw-02394c20322e9a98e                  </span><br /><br />Showing 3 of 3 resources (filtered)<br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(85,85,102)'}} />  <span style={{color:'rgb(129,209,219)'}}>/</span> <span style={{color:'rgb(170,170,170)'}}>managed:false</span>                                                                                                <span style={{color:'rgb(153,153,153)'}}>/: edit query</span><br /><span style={{color:'rgb(85,85,102)'}}>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</span><br /><span style={{color:'rgb(85,85,102)'}} />  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>↑↓/j/k</span><span style={{color:'rgb(153,153,153)'}}>: navigate</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>enter</span><span style={{color:'rgb(153,153,153)'}}>: detail</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>/</span><span style={{color:'rgb(153,153,153)'}}>: search</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>s</span><span style={{color:'rgb(153,153,153)'}}>: sort</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>r</span><span style={{color:'rgb(153,153,153)'}}>: refresh</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>1-4</span><span style={{color:'rgb(153,153,153)'}}>: tab</span>  <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>q</span><span style={{color:'rgb(153,153,153)'}}>: quit</span>                                   <span style={{fontWeight:'600'}} /><span style={{color:'rgb(129,209,219)',fontWeight:'600'}}>?</span><span style={{color:'rgb(153,153,153)'}}>: help</span></div>
        </div>

        The list shows the first 10 by default; raise it with `--max-results`, and
        filter by attribute to focus:

        ```bash theme={"languages":{"custom":["/languages/pkl.json"]}}
        formae inventory resources --query="managed:false type:AWS::EC2::InternetGateway" --max-results=50
        ```

        Nothing here is under management. These are resources that exist in your
        cloud, catalogued so you can decide what to do with them.
      </Step>
    </Steps>
  </Tab>

  <Tab title="AI assistants">
    With the [formae MCP plugin](/documentation/guides/ai-coding-assistants)
    connected, ask what you have and what is running in it:

    <div className="fa-convo">
      <div className="fa-convo-head">Conversation</div>
      <div className="fa-turn fa-you"><div className="fa-tag">You</div><div className="fa-body">What targets do we have?</div></div>
      <div className="fa-turn fa-bot"><div className="fa-tag">Assistant</div><div className="fa-body">You have three AWS targets, all discoverable: <code>prod-us-east-1</code>, <code>prod-eu-west-1</code>, and <code>prod-us-east-2</code>.</div></div>
      <div className="fa-turn fa-you"><div className="fa-tag">You</div><div className="fa-body">What's in them that formae isn't managing?</div></div>
      <div className="fa-turn fa-bot"><div className="fa-tag">Assistant</div><div className="fa-body">Discovery found six unmanaged internet gateways on the <code>unmanaged</code> stack: <code>legacy-igw-inline</code>, <code>legacy-igw-standalone</code>, <code>igw-0a1b2c3d4e5f6a7b8</code>, <code>igw-0f9e8d7c6b5a4f3e2</code>, <code>webapp-1558-igw-1</code>, and <code>webapp-abc1-igw</code>. Nothing has been changed. Want to bring any under management?</div></div>
      <div className="fa-turn fa-you"><div className="fa-tag">You</div><div className="fa-body">Not yet, just getting the lay of the land.</div></div>
      <div className="fa-turn fa-bot"><div className="fa-tag">Assistant</div><div className="fa-body">All good. They stay catalogued as unmanaged, and I'll flag anything new discovery turns up. Say the word when you want to adopt them.</div></div>
    </div>

    Nothing is created, changed, or destroyed: the assistant only reads your
    targets and inventory.
  </Tab>
</Tabs>

## See also

* [Create a target](/documentation/guides/create-a-target): register the account formae should scan.
* [Bring resources under management](/documentation/guides/bring-resources-under-management): adopt what discovery found.
* [Discovery](/documentation/concepts/discovery): how formae keeps its catalog in sync.
