We study the first exit time τ from an arbitrary cone with apex at the origin by a non-homogeneous random walk (Markov chain) on Zd (d≥2) with mean drift that is asymptotically zero. Specifically, if the mean drift at \bx \in \Z^d is of magnitude O(\| \bx\|^{-1}), we show that τ<∞ a.s. for any cone. On the other hand, for an appropriate drift field with mean drifts of magnitude \| \bx\|^{-\beta}, β∈(0,1), we prove that our random walk has a limiting (random) direction and so eventually remains in an arbitrarily narrow cone. The conditions imposed on the random walk are minimal: we assume only a uniform bound on 2nd moments for the increments and a form of weak isotropy. We give several illustrative examples, including a random walk in random environment model