Manifest Reference
This page documents P!npoint plugin manifest.json fields.
Example
{
"id": "example.diff-analyzer",
"name": "Diff Analyzer",
"version": "0.1.0",
"description": "Analyzes Snapshot/Diff results.",
"author": "Your Name",
"license": "MIT",
"homepage": "https://example.com/my-plugin",
"engines": {
"pinpoint": ">=1.2.0"
},
"entry": "dist/index.js",
"extension_points": ["diffAnalyzer"],
"permissions": ["diff:read"],
"capabilities": ["diff-analysis"]
}
Fields
| Field | Required | Type | Default | Description |
|---|
id | yes | string | none | Stable plugin id. Use lowercase letters, numbers, dots, and hyphens, such as example.diff-analyzer. |
name | yes | string | none | Display name shown in the app. |
version | yes | string | none | SemVer plugin version. |
description | yes | string | none | Short plugin summary. |
author | yes | string | none | Author or organization. |
license | no | string | none | Plugin license. |
homepage | no | uri | none | Documentation or project URL. |
repository | no | uri | none | Source repository URL. |
official | no | boolean | false | Use true only for P!npoint-maintained official plugins. |
trusted | no | boolean | false | Trust marker for catalog metadata. |
categories | no | string[] | [] | Discovery tags. |
icon | no | string | none | Icon path inside the package. |
engines.pinpoint | yes | string | none | Supported P!npoint version range. |
entry | yes | string | none | JavaScript entry file inside the package. |
extension_points | yes | string[] | none | Extension points implemented by the plugin. |
permissions | yes | string[] | none | Bridge API permissions. |
capabilities | no | string[] | [] | Human-readable capability tags. |
Permissions
| Permission | Allows |
|---|
project:read | Use readTextFile and listProjectFiles |
preview:inject | Implement previewInjector |
capture:filter | Implement captureFilter |
command:contribute | Implement commandProvider |
diff:read | Implement diffAnalyzer and use getCurrentDiff |
panel:render | Implement workspacePanel |
network:fetch | Reserved for future network bridge support |