anchor.diff:  
   * Provide your tool as a public git library
   * Define your tool api in one or more Clojure namespaces as functions that take a map
  -* Create a `usage.edn` at the root of one of your `:paths` with either an `:ns-default` and/or an `:ns-aliases` key for your api namespaces
  -* Tag your git repo to create a release, use a scheme that makes sequencing obvious to users
  -
  -Instructions for users:
  -
  -* Find tool versions: `clj -T:deps find-versions :git/lib io.github.USER/TOOL`
  -* Install tool with `clj -T:deps install-tool io.github.MY/TOOL '{:git/tag "VERSION"}' :as NAME`
  +* Create a `:deps/usage` key in the root of your deps.edn with either an `:ns-default` and/or an `:ns-aliases` key for your api namespaces
  +* Tag your git repo to create a release, using a scheme that makes sequencing obvious to users. A common convention is to use versions strings like "v1.2.3".
  +
  +Tools can provide these instructions for users:
  +
  +* Find tool versions: `clj -X:deps find-versions :lib io.github.USER/TOOL`
  +* Install tool with `clj -Ttools install io.github.USER/TOOL '{:git/tag "VERSION"}' :as NAME`
   * Invoke tool with `clj -TNAME f args...`
   
   = Command line reference
  
positive.code: clj -Ttool f args...
  ----
  
  The function will be resolved using the `:ns-default` and `:ns-aliases` found in the `usage.edn`.
  
  For example, for the tools.deps.graph tool declared above, it can be invoked as follows:
  
  
negative.code: [[tool_install]]
  = Tool installation and invocation
  
  The Clojure CLI supports the idea of running tools, which are programs that don't use the project classpath, with the -T exec option. Tools are often (but not exclusively) external, defined with their own dependencies. Tools are expected to be invoked similar to -X style functions, which take a map of key/val arguments which can be provided on the CLI.
  
  == Using named tools
  
  