Skip to content


Repository files navigation


standard GitHub Build Status npm PicGo Convention node


A tool for picture uploading. Both CLI & api supports. It also supports plugin system, please check Awesome-PicGo to find powerful plugins.

Typora supports PicGo-Core natively. If you like PicGo-Core and have time, welcome to help me translate the documentation of PicGo-Core into English.


PicGo should be installed with node.js >= 12 (v1.5.0-alpha.4 and small) & node.js >= 16 (since v1.5.0-alpha.5).

Global install

npm install picgo -g

# or

yarn global add picgo

Local install

npm install picgo -D

# or

yarn add picgo -D


Use in CLI

PicGo uses SM.MS as the default upload pic-bed.

Show help:

$ picgo -h

  Usage: picgo [options] [command]


    -v, --version                 output the version number
    -d, --debug                   debug mode
    -s, --silent                  silent mode
    -c, --config <path>           set config path
    -h, --help                    output usage information


    install|add <plugins...>             install picgo plugin
    uninstall|rm <plugins...>            uninstall picgo plugin
    update <plugins...>                  update picgo plugin
    set|config <module> [name]           configure config of picgo modules
    upload|u [input...]                  upload, go go go
    use [module]                         use modules of picgo
    init [options] <template> [project]  create picgo plugin\'s development templates

Upload a picture from path

picgo upload /xxx/xx/xx.jpg

Upload a picture from clipboard

picture from clipboard will be converted to png

picgo upload

Thanks to vs-picgo && Spades-S for providing the method to upload picture from clipboard.

Use in node project

Common JS

const { PicGo } = require('picgo')

ES Module

import { PicGo } from 'picgo'

API usage example

const picgo = new PicGo()

// upload a picture from path

// upload a picture from clipboard


For more details, you can checkout documentation.