Before reading this page, first see command line basics.
This page should describe the pluck commands in more detail.
The output of
pluck more-help (as of v1.0.64) for your convenience:
Usage: pluck [help|more-help] pluck [add|del|+|-] <rule> pluck export More Usage: pluck abort [term] # discard pending changes that match term pluck bug # interact with bug reporting system pluck clear # clear configuration (requires 0 delay) pluck compact # maintenance command to shrink data pluck delay [n] # print or set the delay pluck delays # print delay and non-standard delays pluck email <address|none> # set email address for bug reports pluck eval [-x] <context(s)> # show whether context would be allowed pluck expedite [term(s)] # create expedite requests for recent rules pluck export # export configuration pluck factoryreset # use factory defaults pluck features # print enabled features pluck find <term(s)> # print configuration items that match term(s) pluck future # like export, but only print the future pluck import <file> # import rules from file pluck import-allow <file> # add hosts to allow pluck import-block <file> # add hosts to block pluck mety .<ext> # show media type for extension ext pluck repair # attempt to repair Internet pluck refresh # refetch configurations from u.pluckeye.net pluck supplicate # send expedite requests to u.pluckeye.net pluck sync # immediately synchronize with u.pluckeye.net pluck trim # maintenance command to shrink data pluck unimport <file> # remove rules matching those in file pluck unimport-allow <file> # remove hosts to allow pluck unimport-block <file> # remove hosts to block pluck uninstall # uninstall (requires 0 delay) pluck upload # upload configurations to u.pluckeye.net pluck verdicts # print recent allow/block verdicts pluck version # print version pluck [+|-] <rule1> <+|-> <rule2> pluck [+|-] <rule1> , [+|-] <rule2> Examples: pluck + allow ok.com pluck + block http://no.com/something pluck - block um.com pluck export More Examples: pluck export # show the current configuration pluck export >file.txt # put configuration into file.txt pluck eval http://a.com/p.png # would http://a.com/p.png be allowed? pluck eval http://a.com/ image/ # would an image on a.com be allowed? pluck find google # search configuration for google pluck import file.txt # import configuration from file.txt pluck import-allow good.txt # allow all hosts listed in good.txt pluck import-block bad.txt # block all hosts listed in bad.txt pluck delay 3600 # set delay to 1 hour pluck delay # print the current delay pluck abort # abort all pending changes pluck abort foo # abort pending changes that contain "foo" pluck mety a.txt # print the default media type for a.txt pluck + system # enable the system feature (aka level 2) pluck - system # disable the system feature pluck + nhb # enable the nhb feature pluck + block image/ # block images pluck + block port 123 # block port 123 pluck + block 18.104.22.168 # block ip address 22.214.171.124 pluck + block youtube.com # block youtube.com pluck + block facebook.com image/ # block images on facebook.com pluck + when 8-9 allow google.com # allow google.com from 8-9 AM pluck + allow program git # allow git pluck + when now+10m a.com # allow a.com ASAP, but only for 10 minutes pluck + allow ok.com + block no.com # fancy pluck + allow ok.com , block no.com # fancy Even more Examples: # block all aa.com pluck find aa.com | pluck replace allow "when now+5m block" | pluck import - Features: diedisable # legacy, prevent extension removal diedisable2 # legacy, like diedisable but gentler diedisable3 # legacy, like diedisable but harsher nhb # block 'more' (unspecified) nobrave # disallow brave-based browsers nochrome # disallow chrome-based browsers nochromesignin # disallow chrome sign-in nochromesync # disallow chrome sync nodoh # disallow DNS over HTTPS noexpedite # disable expedite nofirefox # disallow firefox-based browsers nohistoryclear # disallow clearing of history nosync # disable synchronization to u.pluckeye.net nounbork # disable unbork completely okincognito # permit incognito mode in chrome safe # use experimental "safe" browsing features safer # like safe, but more so slowunbork # allow unbork time to exceed 1 day system # integrate with the system (aka 'level 2') Advice: Use a short delay while learning how to use Plucky. Use the 'system' feature (aka level 2), but ignore most of the rest unless you discover a need for one of them. Don't import big blacklists using `pluck import`. Instead, use https://u.pluckeye.net/ and create a host or ip specific blacklist and import it on the site. That will keep your specific customizations separate from the big blacklist, and it will allow you to share the blacklist with other pluckers if you so choose. If you still need help, see https://r.pluckeye.net/help . Finally, as the Dread Pirate Roberts says, "Get used to disappointment."
If you are new to Plucky or you are looking just for the most commonly used commands, see Command line basics.
If you are unfamiliar with running commands in a console you should not need to do so often, as most actions can also be performed by clicking buttons in the Plucky browser extension. (If you have the browser extension installed, click on the Plucky button in the top right of your browser to get started.) If you do want to use commands, see Notation for exactly how to type them in.
To search this page by keyword, use Ctrl + F on Windows & Linux or Command + F on Mac.
add command is so common, that pluck uses the
add symbol (
+) for it.
pluck + allow example.com
In some contexts, one can use the word
add instead of
pluck add allow example.com
Here are some simple examples:
pluck + allow example.com pluck + allow https://example.com/page pluck + allow program:C:\Program Files\foo.exe pluck + block program bar.exe pluck + allow user susan pluck + block user edmund
For a more thorough treatment of what can be allowed or blocked, see rules.
The opposite of
delete) command is usually expressed as the
minus symbol (
pluck - allow example.com
In some contexts, one can use the abbreviation
del instead of
pluck del allow example.com
Attempting to remove a rule that is not in your configuration does nothing.
abort command allows one to abort pending configuration changes.
In all of the following examples a rule change is entered, but the rule never comes into effect if you have a non-zero delay, because the change is aborted.
pluck + allow wikipedia.org pluck abort
pluck + allow https://example.com/foo pluck abort example.com
pluck + allow example.com image/ pluck abort image
Aborts pending rule changes (those that will take effect once the delay has elapsed). By default all pending rule changes are removed. If a website, page, program, etc. is given, all pending changes that match that context are removed.
clear command can be used to clear Plucky configuration. This command only has an effect if the current
delay is 0. This command will destroy your configuration, so use with care. See also:
A maintenance command to shrink data.
The delay command can be used to print or to set the delay.
pluck delay pluck delay 30
Prints the current delay, and also non-standard delays that apply to specific websites, pages, programs, etc.
The eval command evaluates a given blocking context in the pluckeye rule engine. The output you see when you run this command will depend on your Plucky configuration; the default configuration produces outputs similar to the ones shown here.
Input (what you type):
pluck eval google.com
Output (what the computer prints):
allow because of rule 330: allow
In this example,
pluck eval google.com reports that google.com is allowed, but this does not mean that all content,
such as images, will necessarily be visible on the website. All it means is that you should be able to visit the page.
In order to determine if images will be shown, add
pluck eval google.com image/
block because of rule 420: block image/
eval command evaluates whether a given website, url, url, program, user, etc. is allowed according to your current
configuration. It can be used to troubleshoot why something is or isn’t being displayed, but the
system verdicts or the in browser verdicts are more authoritative as
is a prediction of what Plucky will do, not what Plucky has actually done.
By default, the command has an exit code of 0 unless an error occurs. If the
-x flag is used, the command will have an
exit code of 0 if the result was
null, and a non-zero exit code if it was
block. If you have no idea
what this means, then you have no use for the
-x flag. This is mainly useful in scripts.
pluck eval -x google.com image/
Sends expedite requests to https://u.pluckeye.net/ for up to 10 recent rules so that someone else can approve them. If a term follows expedite, only items matching that term may be expedited. For example, the following sequence will only create an expedite request for
pluck + delay 99 pluck + allow ok.com pluck + allow hmm.com pluck expedite ok.com
If no terms follow
expedite, expedite requests are created for each of the 10 most recently added but still pending
export command prints the contents of Plucky configuration. It can be used to back-up or inspect your Plucky configuration, although a synchronized configuration is recommended for more reliable backups.
The following example should create a file named “pluckeye-configuration.txt” on your desktop.
cd %HOMEPATH%\Desktop pluck export > pluckeye-configuration.txt
Linux or macOS
cd Desktop pluck export > pluckeye-configuration.txt
See also the
import command described below.
factoryreset command resets Plucky to its “factory default” settings (i.e., as if you had just installed for the first time). Like the
clear command, it requires a delay of 0 to work. Also like clear, unless your configuration is synchronized, it will be lost. If you plan to reuse or restore your current configuration, make sure you
export and save it to a configuration file before performing the factory reset.
find command searches your Plucky configuration for a matching item. It can be used to quickly search for configuration from the command line. It uses substring matching rather than regular expression matching.
pluck find image/
allow image/svg+xml block image/
The timeline section of the config page of the browser interface is another way to search configuration.
Prints all pending changes to your configuration.
import command is different and older than the import directive that allows one to dynamically import a configuration.
import command imports all the rules contained in a local file into the main configuration. It is the opposite of the
export command. Indeed, it is so named because at one time,
pluck export and
pluck import were the main commands used to store and transfer Plucky configuration between computers. Nowadays, synchronization does that automatically.
Before running this command, first open the terminal in the directory (AKA folder) containing the pluckeye-configuration.txt file that you want to import.
cd %HOMEPATH%\Desktop pluck import pluckeye-configuration.txt
Linux or macOS
cd Desktop pluck import pluckeye-configuration.txt
import-allow command is like
import except that it automatically prepends
+ allow to each line of its import. Thus, it can be used to allow a lists of hosts created by another tool.
pluck import-allow good-websites.txt
good-websites.txt might contain:
google.com facebook.com https://youtube.com/watch
import-block command is like
import except that it automatically prepends
+ block to each line of its import. Thus, it can be used to block a lists of hosts created by another tool.
pluck import-block bad-websites.txt
bad-websites.txt might contain:
bad1.com bad2.com 126.96.36.199
mety command prints the usual media type for a given file extension.
pluck mety .css
.css -> text/css
That indicates that usual media type of a CSS file is
See also media types.
refresh command is similar to the
sync command in that it synchronizes configuration with https://u.pluckeye.net/ . It is different in that it can be used to completely replace local configuration that has become corrupt. It is not usually needed as
pluck sync usually works fine.
repair command attempts to repair Internet access.
replace command reads its input and replaces its first argument with its second argument using exact string matching. It could be used to perform an operation on many Plucky rules. For example, the following pipeline finds all rules in your configuration that contain “example.com”, replaces “allow” with “when now+5m block” in all of the rules, and then imports these new rules into the main configuration. The point is to cause all content on example.com that was allowed by
allow rules before to be blocked for the next five minutes.
pluck find example.com | pluck replace allow "when now+5m block" | pluck import -
trim command is a maintenance command to shrink data.
unimport command is similar to
import, except that it removes all of the rules in the configuration file instead of adding them.
pluck unimport pluckeye-configuration.txt
unimport-allow command is similar to similar to
import-allow, except that it removes
allow rules for each of the websites, pages, programs, etc. in the file instead of adding them.
pluck unimport-allow websites.txt
unimport-block command is similar to similar to
import-block, except that it removes
block rules for each of the websites, pages, programs, etc. in the file instead of adding them.
pluck unimport-block websites.txt
uninstall command uninstalls Plucky. The delay must be 0 before you do this.
See also how to uninstall.
verdicts command prints recent Internet connection attempts and whether Plucky allowed or blocked them.
Understanding the output
The command will print many lines, each of which will have this form:
12:50:48.320 allow 1541 chromium google.com [2607:f8b0:400a:0806:0000:0000:0000:200e]:80 rule allow
This line tells us that at
12:50:48 the program named
chromium attempted to connect to
google.com, and Plucky allowed this connection.
This information can be useful when you want to allow or block a particular program.
Note that these are different from in-browser verdicts.
Print the version of Plucky that is installed.