> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/aikido-device-protection/using-aikido-endpoint/why-is-a-package-not-blocked.md).

# Why is a Package Not Blocked?

If a package installed despite your block rules, one of the following is usually the cause.

Not sure if Device Protection is active on the device? [Test it first.](/aikido-device-protection/miscellaneous-aikido-endpoint/how-to-test-device-protection.md)

### The package was already cached

Device Protection inspects network traffic to package registries. If a package is already in the local package manager cache, the install resolves from cache without a network call, and the agent never sees it.

This applies to packages cached before Device Protection was deployed, and packages cached by any previous successful install.

**Fix:** clear the package manager cache, or force a fresh download.

| Ecosystem | Cache location    | Force fresh install                    |
| --------- | ----------------- | -------------------------------------- |
| pip       | `~/.cache/pip`    | `pip install <package> --no-cache-dir` |
| npm       | `~/.npm/_cacache` | `npm cache clean --force`              |
| yarn      | `~/.cache/yarn`   | `yarn cache clean`                     |

We recommend clearing caches on every device after rolling out Device Protection.

### The ecosystem is not supported

Device Protection only intercepts supported package ecosystems. Installs from other sources pass through unchanged.

[Check the supported ecosystems list to confirm.](/aikido-device-protection/endpoint-protection.md#supported-ecosystems)

### The agent is not running

If the agent is stopped or has not synced recently, it cannot enforce policy.

[Check the agent status on the device, and confirm the last heartbeat in the Aikido dashboard.](/aikido-device-protection/using-aikido-endpoint/end-user-experience.md)

### The policy has not synced yet

New rules and exceptions reach the device on the next sync. If you just changed a policy, wait for the next heartbeat (every 10 minutes) or trigger a manual sync.

### Docker or Podman on macOS

Device Protection does not currently support Docker or Podman on macOS. Installs inside those containers are not inspected.

### Still stuck?

Contact support and include your [Device Protection Information for Support](/aikido-device-protection/miscellaneous-aikido-endpoint/endpoint-information-for-support.md).


---

# 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://help.aikido.dev/aikido-device-protection/using-aikido-endpoint/why-is-a-package-not-blocked.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.
