> For the complete documentation index, see [llms.txt](https://docs.cybaops.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cybaops.com/getting-started/onboarding/agent-deployment/cybaagent-macos.md).

# CybaAgent - MacOS

*<mark style="color:$info;">Command-line installation on macOS</mark>*

This guide walks you through installing CybaAgent on a Mac using Terminal. The\
installation takes about 2–3 minutes.

### <mark style="color:$primary;">Before you Start</mark>

Make sure you have the following ready:

* An account on the Mac with administrator rights (you'll need to enter your password  \
  for sudo).
* Access to CybaOps so you can open Asset Manager.
* A working internet connection

## <mark style="color:$primary;">Step 1 — Download CybaAgent from Asset Manager</mark>

1. Sign in to CybaOps and open Asset Manager.
2. Click the Deploy Agent button in the top-right corner.
3. In the Deploy Agent window, set Select Agent to CybaAgent and Select Operating System to macOS.
4. Click Download Agent and save the CybaAgent file to your Downloads folder (the default location is fine).

{% hint style="warning" %}
**Keep this window open: The Deploy Agent window also shows your install command**\
**with your activation code pre-filled — you'll copy it in Step 3.**
{% endhint %}

## <mark style="color:$primary;">Step 2 — Open Terminal</mark>

1. Open Terminal — either through Applications → Utilities → Terminal, or by pressing Cmd + Space and typing Terminal.
2. Move into the folder where CybaAgent was downloaded by typing the command below and pressing Return:

{% code overflow="wrap" %}

```
cd ~/Downloads
```

{% endcode %}

(If you saved the file somewhere else, use cd followed by the full path to that folder instead.

## <mark style="color:$primary;">Step 3 — Run the Install Commands</mark>

Copy each command from the Deploy Agent window in CybaOps and paste it into Terminal,\
pressing Return after each one. Run them in order:

Make the CybaAgent file executable:

{% code overflow="wrap" %}

```
chmod +x ./CybaAgent
```

{% endcode %}

Allow the executable so that the agent can run:

{% code overflow="wrap" %}

```
sudo xattr -rd com.apple.quarantine ./CybaAgent
```

{% endcode %}

Install the agent (replace tt-YOURACTIVATIONCODE with the one shown in Deploy Agent):

{% code overflow="wrap" %}

```
sudo ./CybaAgent -i -t tt-YOURACTIVATIONCODE -s https://cybaverse.cybaops.com/
```

{% endcode %}

{% hint style="info" %}
**Tip: Always copy the command directly from Deploy Agent rather than typing it — that**\
**way your activation code is guaranteed to be correct.**
{% endhint %}

{% hint style="info" %}
**About the password prompt: When you run a sudo command for the first time, macOS**\
**asks for your login password. Type it and press Return — the cursor won't appear to**\
**move while you type, but the characters are being entered.**
{% endhint %}

### <mark style="color:$primary;">What the Commands do</mark>

* **chmod +x ./CybaAgent** — marks the downloaded file as runnable. Without this, macOS  \
  won't allow it to execute.
* **sudo xattr -rd com.apple.quarantine ./CybaAgent** — removes the Gatekeeper quarantine  \
  flag macOS adds to files downloaded from the internet, so the agent can launch  \
  without being blocked.
* **sudo ./CybaAgent -i -t … -s …** — runs the installer as an administrator. -i installs the  \
  agent, -t passes your unique activation token, and -s tells the agent which server to  \
  report into

## <mark style="color:$primary;">Step 4 — Confirm it Installed</mark>

Terminal will show progress messages while the installer runs. When it finishes, CybaAgent\
is installed and will start communicating with the server automatically. The device should\
also appear in Asset Manager shortly afterwards.

You can close the Terminal window at this point.

### <mark style="color:$primary;">Troubleshooting</mark>

* **“Permission denied”** — Make sure you included sudo at the start of the install  \
  command, and that you ran chmod +x ./CybaAgent first.
* **“No such file or directory”** — You're not in the folder containing CybaAgent. Run ls to  \
  check, then re-run the cd command in Step 2.
* **“CybaAgent can't be opened because Apple cannot check it for malicious software”**  \
  — This means the quarantine attribute is still in place. Re-run the sudo xattr -rd  \
  com.apple.quarantine ./CybaAgent command.
* **Activation code rejected** — Double-check the code and make sure it starts with tt-.  \
  Copy and paste it rather than typing it to avoid mistakes.
* **Nothing happens / connection error** — Confirm the Mac has internet access and  \
  that no firewall is blocking outbound HTTPS to cybaverse.cybaops.com.

### <mark style="color:$primary;">Need Help?</mark>

If the install still won't complete, contact our support team and include the full output\
shown in Terminal — that helps us identify the issue quickly.

Please contact <support@cybaops.help> for assistance.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.cybaops.com/getting-started/onboarding/agent-deployment/cybaagent-macos.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
