Learn how to configure your Replit Extension with the extension.json manifest file. View required fields, optional properties, and supported types.
extension.json
file contains the manifest for an Extension and needs to be placed in a public directory such that it is served at the root (/extension.json
). You are required to provide a manifest file to publish an Extension to the Extensions Store.
Property | Type | Description |
---|---|---|
name | string | Required. The Extension’s name. Length can be 1-60 characters. |
description | string | Required. The Extension’s description. Length can be 1-255 characters. |
longDescription? | string | Optional. The Extension’s longer description. Markdown is supported and recommended. |
icon? | string | Optional. The Extension’s icon. This is a reference to a file on the replit app. Any web based image format is accepted, but SVGs are preferred. |
tags? | string[] | Optional. A list of tags that describe the extension. |
coverImages? | CoverImage[] | Optional. A Cover Image belonging to an Extension. Max 4 coverImages per extension. |
website? | string | Optional. The Extension’s website |
authorEmail? | string | Optional. The email address of the extension author. This is made public |
fileHandlers? | FileHandler[] | Optional. An array of file handlers registered by the extension. |
tools? | Tool[] | Optional. An array of tools registered by the extension. |
scopes? | Scope[] | Optional. An array of scopes required by the extension. |
background? | BackgroundPage | Optional. A path to a background script |
path
should reference an image file on the Replit App’s file system.
Property | Type | Description |
---|---|---|
path | string | The path to the image. This is relative to the statically served root |
label | string | The label of the image. This is used as the alt text for the image |
Property | Type | Description |
---|---|---|
glob | string | A glob pattern that matches the files that this handler should be used for |
handler | string | The path to the handler. This is relative to the statically served root. |
name? | string | Optional. Required if more than one file handler is registered. Fallback value is the extension’s name. |
icon? | string | Optional. Required if more than one file handler is registered. Fallback value is the extension’s icon. |
Property | Type | Description |
---|---|---|
handler | string | The path to the handler. This is relative to the statically served root. |
name? | string | Optional. Required if more than one tool is registered. Fallback value is the extension’s name. |
icon? | string | Optional. Required if more than one tool is registered. Fallback value is the extension’s icon. |
ScopeType
| The name of the scope |
| reason | string
| The reason why the extension needs this scope |
read
- Read any file in a Replit Appwrite-exec
- Write to any file, and execute any code or shell command in a Replit Apprepldb:read
- Read all data in the key-value ReplDB in a Replit Apprepldb:write
- Write or delete any key in the key-value ReplDB in a Replit Appexperimental-api
- Use experimental APIs that may be unstable, may change in behavior or be removed entirely