# PluginManager

**Kind:** Class

**Source:** [`atloria-monorepo/libs/agent-core/src/plugins/plugin-manager.ts`](https://github.com/sherkety/atloria/blob/main/atloria-monorepo/libs/agent-core/src/plugins/plugin-manager.ts#L18)

## Methods

| Method | Signature | Returns |
|---|---|---|
| `register` | `register(plugin: LoadedPlugin)` | `void` |
| `unregister` | `unregister(pluginName: string)` | `void` |
| `getCommands` | `getCommands()` | `CommandDefinition[]` |
| `getAgents` | `getAgents()` | `AgentDefinition[]` |
| `getSkills` | `getSkills()` | `SkillDefinition[]` |
| `getPluginNames` | `getPluginNames()` | `string[]` |
| `getCommand` | `getCommand(name: string)` | `CommandDefinition | undefined` |
| `getAgent` | `getAgent(name: string)` | `AgentDefinition | undefined` |
| `activateSkill` | `activateSkill(skillName: string)` | `void` |
| `deactivateSkill` | `deactivateSkill(skillName: string)` | `void` |
| `isSkillActive` | `isSkillActive(skillName: string)` | `boolean` |
| `getSkillDescriptions` | `getSkillDescriptions()` | `string` |

## Where it refuses work

- `PluginManager` stops the work with an early return when `!plugin`.
- `PluginManager` stops the work with an early return when `cmd`.
- `PluginManager` stops the work with an early return when `agent`.
- `PluginManager` stops the work with an early return when `allSkills.length === 0`.
