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

# Flux and Argo CD Visibility

> See the health, sync status, and managed resources of Flux and Argo CD running in your clusters — read-only, no extra setup needed.

## Overview

If a cluster runs **Flux** or **Argo CD**, Niro automatically surfaces their resources in the cluster detail view. No extra installation or configuration is required — Niro reads what the agent already sees in the cluster.

Both integrations are **read-only**. Niro never triggers reconciliation, syncs, suspends, or modifies Flux or Argo CD objects.

## Flux

### What Niro detects

Niro discovers two Flux resource types:

| Resource          | What it is                                                                          |
| ----------------- | ----------------------------------------------------------------------------------- |
| **Kustomization** | A Flux reconciliation unit that applies a folder of manifests from a Git repository |
| **HelmRelease**   | A Flux-managed Helm chart deployment                                                |

For each resource, Niro reads reconciliation status, the source it points to, and the revision last applied to the cluster.

### Navigating to Flux resources

Open a cluster → **GitOps** → **Flux**.

The Flux tab only appears when Niro has detected at least one Kustomization or HelmRelease in the cluster.

### What you can see

**For each Kustomization or HelmRelease:**

| Field                  | Description                                                                                  |
| ---------------------- | -------------------------------------------------------------------------------------------- |
| **Name**               | The resource name and namespace                                                              |
| **Kind**               | Kustomization or HelmRelease                                                                 |
| **Status**             | Ready / Not ready / Unknown — from Flux's Ready condition                                    |
| **Source**             | The Git repository, Helm repository, or OCI repository the resource reconciles from          |
| **Applied revision**   | The revision (branch SHA or chart version) currently applied to the cluster                  |
| **Attempted revision** | The revision Flux last tried to apply (may differ from applied if the latest attempt failed) |
| **Objects managed**    | For Kustomizations: the list of workloads and resources Flux applied                         |

**Status details:** If a Kustomization or HelmRelease is not ready, the status row shows the error message from Flux's last reconciliation attempt. This is the same message you'd see in `kubectl describe`.

**Suspended resources:** Resources with reconciliation paused (suspended) are marked with a badge. The suspended state is set by the Flux operator — Niro shows it but does not control it.

### Prerequisites

* Flux must be installed in the cluster
* The Niro agent must be enrolled (read-only capability is sufficient — no apply required)

Niro detects Flux automatically by scanning for Kustomization and HelmRelease custom resources. If Flux is installed but no resources appear, check that Flux has created at least one Kustomization or HelmRelease.

## Argo CD

### What Niro detects

Niro discovers **Argo CD Applications** — the top-level object that represents a deployed application in Argo CD.

### Navigating to Argo CD Applications

Open a cluster → **GitOps** → **Argo CD**.

The Argo CD tab only appears when Niro has detected at least one Application in the cluster.

### What you can see

**For each Application:**

| Field               | Description                                                      |
| ------------------- | ---------------------------------------------------------------- |
| **Name**            | The Application name and namespace                               |
| **Health**          | Healthy / Progressing / Degraded / Suspended / Missing / Unknown |
| **Sync status**     | Synced / OutOfSync / Unknown                                     |
| **Repository**      | The Git repository the Application deploys from                  |
| **Path**            | The folder inside the repository                                 |
| **Target revision** | The branch, tag, or SHA the Application tracks                   |
| **Live revision**   | The revision actually deployed in the cluster                    |
| **Destination**     | The cluster and namespace the Application deploys to             |
| **Resources**       | The individual Kubernetes objects this Application manages       |

**Out of sync:** When a health badge shows **Degraded** or a sync badge shows **OutOfSync**, Niro shows the status message from Argo CD. This points to the specific condition or resource causing the issue.

**Project:** The Argo CD project the Application belongs to, shown in the subtitle of the detail panel.

### Prerequisites

* Argo CD must be installed in the cluster
* The Niro agent must be enrolled (read-only capability is sufficient)

Niro detects Argo CD by scanning for Application custom resources. If Argo CD is installed but no Applications appear, check that at least one Application exists in the cluster.

## How detection works

During each agent heartbeat (\~every 15 seconds), the agent scans the cluster for Flux and Argo CD custom resource types. If found, it includes their state in the heartbeat payload. The Niro dashboard reflects the latest heartbeat — no event-driven push is needed.

If you install Flux or Argo CD on an already-enrolled cluster, their resources will appear in Niro within one heartbeat cycle (about 15 seconds).

## Read-only guarantee

Niro never triggers Flux reconciliation, resumes suspended resources, syncs Argo CD Applications, or modifies any Flux or Argo CD object. All data shown is read from what Flux and Argo CD have already written to the cluster.

## Using Flux and Argo CD alongside Niro GitOps

Niro's own [GitOps integration](/guides/gitops) manages deployments via a GitHub App and auto-applies on PR merge. This is a separate system from Flux and Argo CD.

You can run Niro GitOps and Flux/Argo CD on the same cluster — Niro manages its own deployments while reading Flux/Argo CD deployments read-only. There is no conflict.

## Related

<CardGroup cols={2}>
  <Card title="Set Up GitOps" icon="code-branch" href="/guides/gitops">
    Niro's own PR-based deployment workflow using a GitHub App.
  </Card>

  <Card title="Resource Inventory" icon="list-search" href="/features/resources">
    Browse all Kubernetes resources including Flux and Argo CD objects.
  </Card>

  <Card title="Connect a Cluster" icon="plug" href="/guides/connect-cluster">
    Enroll a cluster so Niro can read its Flux and Argo CD resources.
  </Card>

  <Card title="Drift Detection" icon="arrows-left-right" href="/guides/gitops#drift-detection">
    Detect when live cluster state diverges from the desired state.
  </Card>
</CardGroup>
