> For the complete documentation index, see [llms.txt](https://docs.akinon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.akinon.com/tutorials/app-maker/developer-tools-and-cli/dependency-management.md).

# Dependency Management

## Dependency Management

The **Dependency Management** page allows you to manage all aspects of the plugins (dependencies) used in your applications. This is the central interface where all plugins—published via the App Maker CLI—are listed and configured.

{% hint style="warning" %}
Plugins must be created using the **App Maker Command Line Interface (CLI)**. Manual uploads or alternative publishing methods are not supported.
{% endhint %}

### <mark style="color:red;">Filters</mark>

A filtering interface is available to help you quickly locate specific plugins based on:

* **Privacy status** (`private` or `public`)
* **Dependency name**

You can combine filters to narrow down the list as needed.

### <mark style="color:red;">Dependency List</mark>

The dependency list displays all available plugins with relevant details. Key components of this list include:

#### <mark style="color:red;">Image</mark>

Each plugin can have an associated image, which serves as a visual identifier:

* If a plugin is **public**, this image will be visible in public search results.
* To upload or change the image, click the **Settings (⚙️)** icon next to the corresponding plugin entry.

#### <mark style="color:red;">Privacy</mark>

Defines the **access scope** of the plugin:

* **Private**: Only visible and usable by the organization that created the plugin. It will not appear in public plugin searches.
* **Public**: Accessible to all users within App Maker environments.

**How to Update Plugin Privacy**

Privacy settings must be updated through the plugin's `package.json` file:

```json
"private": false // To make the plugin public
"private": true  // To restrict access to the owner organization
```

After updating the `package.json`, republish the plugin using the CLI to apply changes.

#### <mark style="color:red;">Dependency Name</mark>

Every plugin must have a **unique name** that serves as its identifier throughout the App Maker ecosystem.

* Plugin names are **globally unique** across all organizations.
* If a name is already in use, attempting to publish a new plugin with the same name will result in an error.

#### <mark style="color:red;">Actions</mark>

The Actions column allows you to manage plugin-related functions, such as accessing versioned packages and modifying plugin settings.

**Package List**

When a plugin is created, its backend components are organized into two main parts:

* **Plugin**: The core logical and identity unit.
* **Packages**: Versioned modules automatically generated by the system with every new plugin release.

To view the full list of versions/packages associated with a plugin, click the **package icon** in the Actions column.

**Settings**

Each plugin has a **settings panel** accessible via the ⚙️ icon. From here, you can:

* Upload or update the plugin’s image


---

# 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.akinon.com/tutorials/app-maker/developer-tools-and-cli/dependency-management.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.
