Installing Plugins
Ptah plugins are enabled per workspace. A plugin that’s active in your Angular app won’t clutter a Python service next door — and each workspace carries its own list of enabled plugins.
Enabling a plugin
Section titled “Enabling a plugin”- Open the Plugins panel.
- Select a plugin from the marketplace.
- Click Enable for this workspace.
Ptah will:
- Download the plugin into
~/.ptah/plugins/<plugin-name>/(if not already cached). - Register its agents, skills, templates, and commands with the current workspace session.
- Create skill junctions (symlinks) under
<workspace>/.claude/skills/so third-party AI clients can discover them too.

Disabling a plugin
Section titled “Disabling a plugin”Disabling keeps the plugin on disk but removes its contributions from the current workspace:
- Open Plugins → Installed.
- Toggle the plugin off.
Skill junctions under .claude/skills/ are removed, and the orchestrator stops listing the plugin’s agents and commands.
Where the configuration lives
Section titled “Where the configuration lives”Per-workspace enabled-plugin state is persisted to:
<workspace>/.ptah/workspace-settings.jsonExample:
{ "enabledPlugins": ["ptah-core", "ptah-angular"]}Global plugin cache (the downloaded files themselves) lives in:
~/.ptah/plugins/Conflicts between plugins
Section titled “Conflicts between plugins”If two plugins contribute skills or commands with the same name, Ptah resolves them in this order:
- Workspace-local
.claude/skills/(author overrides win) - Plugin load order (alphabetical by plugin name)
Ptah will surface a warning in the Problems panel when a conflict is detected.