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: 
  [source,shell]
  ----
  clj -T:deps install-tool io.github.clojure/tools.deps.graph '{:git/tag "tools.deps.graph-1.0.56"}' :as deps-graph
  ----
  
  === Tool usage
  
  Tools can publish a `usage.edn` file that declares default configuration. The usage file will be obtained and cached as part of tool installation and used to resolve the function to be executed (and possibly other uses in the future).
  
  The `usage.edn` file is an edn map with the following keys:
  
  * `:exec` - the value is a subset of the alias arguments available in a deps.edn alias:
  ** `:ns-default`
  ** `:ns-aliases`
  
  For example, the tools.deps.graph tool might publish the following usage.edn:
  
  [source,clojure]
  ----
  {:exec
   {:ns-default clojure.tools.deps.graph}}
  ----
  
  The usage.edn file is read from the `:paths` of a git lib project or from the root of the maven artifact jar.
  
  === Invoke tool by name
  
  Once you've installed a named tool, you can invoke it with `-T` using just the tool name.
  
  
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
  
  