# Installing p0 CLI

## P0 Security CLI Overview

The **P0 Security CLI** is the official command-line tool for managing just-in-time access to your cloud resources. Whether you need to assume AWS roles, SSH into instances, or request permissions on GCP, Azure AD, Okta, and more, the P0 CLI streamlines it all within your shell.

***

### Key Features

* **Just-in-Time Access**\
  Execute a single command to request credentials, obtain approval, and provision access automatically.
* **AWS Role Assumption**\
  Extend existing AWS CLI workflows with seamless role assumption using `p0 aws role assume`.
* **Multi-Cloud Support**\
  Provides subcommands for AWS, GCP, Azure AD, Okta, Google Workspace, and additional providers.
* **SSH JIT access**\
  Request and establish SSH sessions through a controlled just-in-time workflow.
* **Integrations**\
  Supports integration with standard organizational approval channels (e.g., Slack, email) and enterprise Identity Providers.

***

### Installation Overview

You must have **Node.js v22+**, `npm`, and the **AWS CLI & Session Manager plugin** to enable AWS workflows. Platform-specific guides include the Az CLI for Entra and the gCloud CLI for GCP.

* [**Windows Installation Guide** (PowerShell)](/p0-cli/installing-p0-cli/windows.md)\
  Step-by-step with Node.js MSI, npm, optional nvm-for-Windows, execution-policy fixes, proxy setup, and AWS CLI prerequisites.
* [**macOS Installation Guide** (bash/zsh)](/p0-cli/installing-p0-cli/macos.md)\
  Via Homebrew or nvm, Gatekeeper unblocking, npm permissions fixes, proxy settings, and AWS CLI & Session Manager setup.


---

# Agent Instructions: 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:

```
GET https://docs.p0.dev/p0-cli/installing-p0-cli.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
