Before reading this page, first see command line basics.
This page should describe the pluck commands in more detail.
More help
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 [-r][-v]
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 [-r][-v] # export configuration
pluck factoryreset # use factory defaults
pluck features # print enabled features
pluck find [-r][-v] <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 sync # immediately synchronize with u.pluckeye.net
pluck trim # remove bygone rules
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 users # print names of local users
pluck verdicts [term(s)] # 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 + allow um.com
pluck - allow um.com
pluck + block um.com
pluck export
More Examples:
pluck export # show the current configuration
pluck export -r -v # show main and imported configurations
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 find -r -v google # search all configurations 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 1h # 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 1.2.3.4 # block ip address 1.2.3.4
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
pluck + unadmin peter # remove peter from sudo group
pluck verdicts # show verdicts from last 2 minutes
pluck verdicts 1m # show verdicts from last minute
pluck verdicts block # show recent verdicts that block
Even more examples:
# block aa.com for the next 5 minutes
pluck when + now+5m block aa.com
pluck find aa.com | pluck replace allow "when now+5m block" | pluck import -
pluck verdicts | pluck exclude :53
Features:
blockearly # block more speculatively, not recommended
nhb # block 'more' (usually more programs)
nobrave # disallow brave-based browser
nobrowserextensions # block if non-required extension is installed
nochrome # disallow chrome-based browsers
nochromecast # disallow chrome cast
nochromesignin # disallow chrome sign-in
nochromesync # disallow chrome sync
nocontext # ignore containing page permissions
nodevtools # disallow use of devtools
nodoh # disallow DNS over HTTPS
noedge # disallow edge browser
noexpedite # disable expedite
nofirefox # disallow firefox-based browsers
nohistoryclear # disallow clearing of history
notor # prevent use of TOR in brave
nouninstall # prevent uninstallation even when delay is 0
okblockhome # permit blocking of u.pluckeye.net
okincognito # permit incognito mode in chrome
oksidebar # permit use of side search in chrome
safe # use experimental "safe" browsing features
safer # like safe, but more so
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
of the features 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."
Plucky commands are typed in a console window and can be used to control Plucky. They are different than Plucky rules.
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 (+)
The 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.
remove (-)
The opposite of add
, the remove
(or 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
The 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
The 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:
allow everything.
pluck clear
compact
A maintenance command to shrink data.
pluck compact
delay
The delay command can be used to print or to set the delay.
pluck delay
pluck delay 30
See delay.
delays
Prints the current delay, and also non-standard delays that apply to specific websites, pages, programs, etc.
pluck delays
eval
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 image/
.
Input:
pluck eval google.com image/
Output:
block because of rule 420: block image/
The 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 eval
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 allow
or 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/
expedite
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 allow ok.com
.
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
configuration items.
pluck expedite
See expedite.
export
The 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.
Windows
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
The 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.
pluck factoryreset
features
Prints the enabled features, such as system and nhb.
pluck features
find
The 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.
Input:
pluck find image/
Output:
allow image/svg+xml
block image/
The timeline section of the config page of the browser interface is another way to search configuration.
future
Prints all pending changes to your configuration.
pluck future
import
The import
command is different and older than the import directive that allows one to dynamically import a configuration.
The 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.
Windows
cd %HOMEPATH%\Desktop
pluck import pluckeye-configuration.txt
Linux or macOS
cd Desktop
pluck import pluckeye-configuration.txt
import-allow
The 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
The 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
1.2.3.4
mety
The mety
command prints the usual media type for a given file extension.
Input:
pluck mety .css
Output:
.css -> text/css
That indicates that usual media type of a CSS file is text/css
.
See also media types.
refresh
The 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.
pluck refresh
repair
The repair
command attempts to repair Internet access.
pluck repair
replace
The 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 -
sync
The sync
command synchronizes the device to and from https://u.pluckeye.net/. If you don’t know what this means, check out the synchronization guide.
pluck sync
trim
The trim
command is a maintenance command to shrink data.
pluck trim
unimport
The 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
The 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
The 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
The uninstall
command uninstalls Plucky. The delay must be 0 before you do this.
pluck uninstall
See also how to uninstall.
upload
The upload
command has been replaced by the sync
command. See Synchronizing configurations for more info.
verdicts
The verdicts
command prints recent Internet connection attempts and whether Plucky allowed or blocked them.
pluck verdicts
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.
version
Print the version of Plucky that is installed.
pluck version
unbork
Replaced by repair
.
Last updated: 2023-11-16