# Stem Docs

## Double Double Toil and Trouble

Below is a listing of scripts and applications that use Stem. If you have something you would like to have included on this page then let me know!

# Applications

| Terminal status monitor for Tor. This provides a top like interface including system resource usage, connection information, and much more.
| Monitors the Tor consensus for a variety of issues including malformed descriptors, directory authority issues, sybil attacks, and much more.
| Scanner by Philipp Winter to detect malicious and misconfigured Tor exits. For more information about how it works see his Spoiled Onions research paper.

OnionLauncher | Qt interface for launching tor.
TorNova | GTK interface for launching tor.
BeagleBone for Secret Agents | Bridge with a bandwidth monitor on a BeagleBoard.
NavigaTor | Measures round-trip times for Tor circuits.
TorPS | Tor path simulator.
Metrics Tasks | One-off tasks related to Tor metrics. These mostly involve using descriptor information to answer a particular question. Tasks that involve Stem are: 1854, 6232, and 7241.
Onion Box | Web dashboard for relay operation.
check_tor | Nagios check to verify that a relay is participating in the Tor network.
munin-tor | Plugin to provide Munin graphs.
tbbscraper | Automated website scraper over Tor.
torIRC | IRC-like chat client using Tor hidden services.
exit-funding | Script to estimate how much exit relays have been used.
torsearch | Search engine prototype for descriptor data.
or-applet | GUI widget to provide circuit information and an interactive interpreter.
Vanguard | Experimental hidden service security additions
OnionBalance | Tool for making distributed hidden service requests.
OnionPerf | Measures onion service performance over time using customizable client behavior models.
OnioNS | Distributed DNS for hidden services.
OnionShare | Hidden service based file sharing application.
OnionView | GTK interface for viewing circuit information.
OnionCircuits | GTK interface for viewing circuit information.
Syboa | GTK interface similar to TorK.
hs-health | Experiment to measure churn and reachability of hidden services.
trnnr | Python implementation of tor’s nearest neighbour ranking.
TorTP | Configures iptables to torify all traffic.
BWScanner | Measurements for the tor bandwidth authorities. Interesting example of txtorcon and stem being used together.
Bushel | Command-line descriptor download tools
blockstack-tor | Tor integration for Blockstack

# Scripts

## Client Usage

- List Circuits

  List the path Tor uses for its present circuits.

- Determine The Exit You’re Using

  Tells you the exit used for each Tor connection.

## Relays

- Connection Summary

  Provides a summary of your inbound and outbound connections and exiting usage.

## Descriptors

- Download Descriptors

  Download a descriptor from a Tor relay’s ORPort or DirPort.

- List Outdated Relays

  Prints contact information for relays prior to a given version.

- Comparing Directory Authority Flags

  Compares the votes of two directory authorities, in this case moria1 and maatuska with a special interest in the ‘Running’ flag.

- Votes by Bandwidth Authorities

  Provides information about the current votes from Tor’s Bandwidth Authorities.

- Saving and Loading a Tor Consensus

  Example for writing a Tor consensus to disk, and reading it back.

- Bandwidth Heuristics

  Download bandwidth authority heuristics about relay capacity.

- Checking Digests

  Looking for additional integrity that your descriptor is properly signed? Digests embedded in parent documents provide transitive validation.