Automatically tunneling or direct connection for golang `dep`. As easy as `dep` itself. Help you get rid of GFW of China.
Last updated a year ago by karlcauchy .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @karlcauchy/auto-dep 
SYNC missed versions from official npm registry.


Automatically choose tunneling or direct connection for golang dep. As easy as dep itself. Help you get rid of GFW of China.


npm install -g @karlcauchy/auto-dep


Create a UNIX/Linux virtual machine first. Or anything can provide you a socks proxy. Simply by SSH (an example):

ssh -D 1080 username@example.com

If you do not want to save sensitive information at project root, create an ~/.auto-dep.yaml(optional) instead. Then auto-dep will read it as default options. For example:

  ## One or many proxies. Will be chosen randomly.
  - socks5://

In this way, you may setup different proxies on different machines. Co-workers can share code without modifying anything in a git repository.

Then create an auto-dep.yaml at your go project root, just like this:

  ## One or many proxies. Will be chosen randomly.
  # System will read ~/.auto-dep.yaml first.
  # If you would like to share between co-workers, you should
  # setup your proxy configuration there.
  # - socks5://

  ## Sites go through proxies.
  - golang.org
  - gopkg.in
  - "*.googlesource.com"
  - "*.golang.org"

  ## Sites go directly
  - cauchies.org

Then just call auto-dep like dep:

auto-dep init
auto-dep ensure

If you need arguments directly passed to dep:

auto-dep ensure -- -v

Complex Usages

You can configure more in auto-dep.yaml:

## Whether force all packages go through the tunneling.
# Equal to `-t` command line option.
force-tunneling: false

## System will choose these proxies randomly.
  ## Single line proxy is ok.
  - socks5://

  ## Or optional, this way, complex declaration
  - host:
    port: 1080
    protocol: socks5
    # Whether do DNS lookup through Socks Tunnel.
    # For socks5, it is set to true as default.
    lookup: true

  ## Sites go through proxy.
  - golang.org
  - gopkg.in
  - "*.googlesource.com"
  - "*.golang.org"

  ## These entries have higher priority than `includes`
  # If you put any entry in `includes`, they will be ignored
  # as well.
  - cauchies.org

Command line options

Usage: auto-dep [options]

  -V, --version          Print the version number
  -c, --config [config]  Read configs from file in json format
  -t, --tunneling        Force tunneling all traffic through proxies.
  --debug                Enable debug mode
  --level [level]        Set Log level, vals: info, error
  -h, --help             Print this help information

Current Tags

  • 0.0.7                                ...           latest (a year ago)

7 Versions

  • 0.0.7                                ...           a year ago
  • 0.0.6                                ...           a year ago
  • 0.0.5                                ...           a year ago
  • 0.0.4                                ...           a year ago
  • 0.0.3                                ...           a year ago
  • 0.0.2                                ...           a year ago
  • 0.0.1                                ...           a year ago
Maintainers (1)
Today 0
This Week 0
This Month 1
Last Day 0
Last Week 0
Last Month 0
Dependencies (9)
Dev Dependencies (9)
Dependents (0)

Copyright 2014 - 2016 © taobao.org |