By definition, a cosheaf on a space $X$ with values in a category $\newcommand\C{\mathcal{C}}\C$ is a sheaf with values in $\newcommand\op{\text{op}}\C^\op$. Thus to understand cosheaves, it suffices to understand sheaves.
In particular, to address your specific question, we have the following result.
Let $B$ be a base for the topology on $X$. Define the category of sheaves on $B$ in the usual way. Recall that sheaves on $B$ are functors $F$ from the opposite of the poset category of $B$ to $\C$ such that $$F(U)= \lim_{V\subseteq U} F(V),$$
where $U\in B$ and $V$ runs across basic open subsets of $U$. Note that I've written $=$ because $F(U)$ comes with a canonical cone given by the restriction maps.
Proposition. There is a fully-faithful functor
$$\C\newcommand\Shvs{\text{-}\mathbf{Shvs}}\Shvs(X)\to \C\Shvs(B),$$
induced by the restriction of a sheaf on $X$ to the open subsets in $B$.
Moreover, if $\C$ is complete, then this is an equivalence of categories.
Proof.
We need to show that the restriction functor is always fully-faithful and is essentially surjective if $\C$ is complete.
Let $F,G$ be sheaves on $X$. Let $F_B$, $G_B$ denote the restriction of $F$ and $G$ to the basis $B$. We know that if $U$ is any open subset in $X$, then since $F$ is a sheaf,
$$F(U) = \lim_{V\subseteq U, V\in B} F_B(V).$$
So if $\phi :F_B\to G_B$, then $\phi$ induces maps $F(U)\to G(U)$ for all open sets $U$ subset of $X$ compatible with the restriction maps. In other words, $\phi$ extends to a morphism $\phi' : F\to G$ which restricts to $\phi$ (not hard to check) on $B$. Moreover, this extension is unique, by the universal property of the limit.
This proves that the restriction functor is fully-faithful. (Full because all morphisms of $B$-sheaves can be extended, and faithful because the extension is unique).
Now if $\C$ is complete, if $F_B$ is a sheaf on $B$, then we can define
$$F(U) = \lim_{V\subseteq U, V\in B} F_B(V),$$
(we need completeness to guarantee that the limit exists), and you can check that this
defines a sheaf and $F(V)=F_B(V)$ when $V\in V$. Thus the restriction of $F$ to $B$ is (canonically isomorphic to) $F_B$. Therefore the restriction functor is essentially surjective if $\C$ is complete, and thus an equivalence of categories. $\blacksquare$
In particular, when we want cosheaves valued in abelian groups, these are the same as sheaves valued in $\mathbf{Ab}^\op$, and $\newcommand\Ab{\mathbf{Ab}}\Ab$ is cocomplete, so $\Ab^\op$ is complete. Thus this proposition applies. Cosheaves on a space are equivalent to cosheaves on a basis for that space.
There are two possible definitions for natural isomorphism. For a natural transformation $\eta: F \to G$, both of the following statements make sense.
- Every arrow $\eta_X: F(X) \to G(X)$ is an isomorphism.
- There is a natural transformation $\theta: G \to F$ such that $\eta \theta$ is $Id_G$, the identity natural transformation on $G$, and $\theta \eta = Id_F$. In other words: $\eta$ is an isomorphism in the functor category where $F$ and $G$ belong to.
These two are equivalent. The direction $2 \implies 1$ is easy, for every $X$ we directly see that the inverse of $\eta_X$ is $\theta_X$. For the converse, $1 \implies 2$, there is only one sensible candidate for $\theta$. Namely we take $\theta_X$ to be $\eta_X^{-1}$, the inverse of $\eta_X$. We only need to check that $\theta$ is then indeed a natural transformation. So let $f: X \to Y$ be any arrow. Using naturality of $\eta$ we get
$$
F(f) \theta_X = \theta_Y \eta_Y F(f) \theta_X = \theta_Y G(f) \eta_X \theta_X = \theta_Y G(f).
$$
It might help to draw the relevant picture if the above is confusing.
So in particular, whenever two sheaves $F$ and $G$ are isomorphic through a natural isomorphism we get that each $F(U)$ and $G(U)$ are isomorphic for every $U$. You mention that an epimorphism of sheaves is not always componentwise surjective. An isomorphism is a very special kind of epimorphism, namely a split epimorphism. A split epimorphism of sheaves is always surjective on every component (nice exercise).
Best Answer
So you are probably requiring a more general sort of cosheaf -- I don't really know what you mean by "running the sheaf functor twice" -- but let me maybe provide a simpler description of cosheaves that might answer your question.
One definition of a cosheaf is simply a functor
$F:\mathrm{Open}(X)\to\mathcal{C}$
that sends colimits (unions) to colimits. By formality, we can say this is a sheaf valued in the opposite category
$F:\mathrm{Open}(X)^{op}\to\mathcal{C}^{op}.$
There are a couple of "canonical" examples of cosheaves. One is the cosheaf of compactly supported real valued functions on a space:
$U\rightsquigarrow \{f:U\to\mathbb{R}|\mathrm{supp}(f) \, \mathrm{cpt}\}$
Where the extension function is to extend by zero and partitions of unity should force the cosheaf axiom to hold.
More abstractly, using the colimit-preserving definition, any continuous map of spaces:
$f:X\to Y$
we can build a cosheaf of spaces on $Y$, by assigning to each open set $U\subset Y$
$U\rightsquigarrow f^{-1}(U) \qquad U\cup V \rightsquigarrow f^{-1}(U)\cup f^{-1}(V).$
Another, very closely related canonical example of a cosheaf, is to take $\pi_0(f^{-1}(U))$ and as long as $Y$ is locally connected, this will be a cosheaf. See Jon Woolf's paper The Fundamental Category of a Stratified Space and appendix B in there.
Finally, due to an observation of Bob MacPherson, if we think of a cell complex $X$ as a category with objects the cells $\sigma\in X$ with morphisms given by the face relation $\sigma\subseteq \bar{\tau}$, then a constructible sheaf is equivalent to a functor $F:X\to\mathrm{Vect}$ and a constructible cosheaf $F:X^{op}\to\mathrm{Vect}$. These gadgets are bona fide sheaves and cosheaves in the Alexandrov topology on the associated face relation poset, i.e. open sets are $U\subset X$ such that $x\in U$ $x\leq y$ implies $y\in U$.
Finally, I should say that some of my thesis work applies cosheaves to Morse theory, persistent homology and sensor networks, which should provide some more intuitive examples.