> For the complete documentation index, see [llms.txt](https://intuitem.gitbook.io/ciso-assistant/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://intuitem.gitbook.io/ciso-assistant/configuration/libraries/cis-controls.md).

# CIS Controls / Cloud Controls Matrix (CCM)

Importing CIS Controls or CSA CCM

CIS Controls and the Cloud Security Alliance's Cloud Controls Matrix (CCM) ship as Excel spreadsheets that CISO Assistant can convert and load directly — no command-line preparation required.

{% hint style="info" %}
CIS and CSA have restrictive licence terms on their content, so the spreadsheets are not bundled with CISO Assistant. You have to download the official spreadsheet from CIS or CSA yourself and then upload it to the platform.
{% endhint %}

## Direct import

1. Download the CIS Controls or CCM spreadsheet from the relevant authority's website.
2. In CISO Assistant, go to **Libraries** and click **Add your own library**.

   <figure><img src="https://629777851-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCqFeU3oPCgDWkkR386NK%2Fuploads%2Fgit-blob-77ab1fe071ec749f5ac6cc97a70c0dd7353810f7%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>
3. Select the downloaded spreadsheet and upload it. CISO Assistant converts it to the platform's library format on the fly.

   ![](https://629777851-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCqFeU3oPCgDWkkR386NK%2Fuploads%2Fgit-blob-083a82d418601ddb56e3f1ac92492ecfaa5af8a2%2Fimage%20\(87\).png?alt=media)
4. Once the conversion finishes, load the new library like any other.

## Advanced: customise the conversion

If you need to adjust the conversion (custom packager name, modified spreadsheet, additional mappings), the conversion logic is available as standalone Python tools in the repository:

* [CIS Controls converter](https://github.com/intuitem/ciso-assistant-community/tree/main/tools/excel/cis/README.md)
* [CCM converter](https://github.com/intuitem/ciso-assistant-community/tree/main/tools/excel/ccm/README.md)

The standard flow is to copy the spreadsheet into the tools folder and run `convert_cis.sh` (Linux/Mac) or `convert_cis.bat` (Windows). For finer control, run `tools/excel/cis/prep_cis.py` first to set a custom packager string, then pass the prepared spreadsheet to `convert_library_v2.py`. The output YAML can be uploaded as a custom library and loaded.

See the [dedicated README for CIS Controls](https://github.com/intuitem/ciso-assistant-community/blob/main/tools/excel/cis/README.md) and the [dedicated README for CCM](https://github.com/intuitem/ciso-assistant-community/blob/main/tools/excel/ccm/README.md) for parameters and edge cases.


---

# 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://intuitem.gitbook.io/ciso-assistant/configuration/libraries/cis-controls.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.
