I can't seem to get shell openPath or openExternal to work

My manifest has the launchProcess permissions like so:

"requiredPermissions": {
    "launchProcess": {
        "schemes": ["https", "slack", "adbxd"],
        "extensions": [".pdf", ""]
    },
    "localFileSystem": "fullAccess"
},

and my function to try to open a folder:

const { shell } = require("uxp")

export default async function install() {
    console.log("Installing...")
    try {
        await shell.openPath("/Users/[MY_USER_NAME]/Downloads")
    } catch (error) {
        console.warn(error)
    }
}

but i always receive the error Extension "" is not accepted for the path /Users/[MY_USER_NAME]/Downloads. I’ve tried with various file types as well as openExternal and always without fail my logs say its not accepted, any ideas?

I figured it out and it wasn’t super intuitive. after editing the manifest.json you need to run build or watch again so that the updated json is copied to the dist folder, then you need to unload and load the plugin, reload is not enough.

updated install.js

const { shell } = require("uxp")
const { homedir } = require("os")

export default async function install() {
    try {
        await shell.openPath(`${homedir()}/Downloads/[MY_PLUGIN].ccx`)
    } catch (error) {
        console.warn(error)
    }
}