A property of a sheaf in an arbitrary category Let $\phi,\psi:\mathscr{F}\rightarrow\mathscr{G}$ be morphisms of sheaves on $X$ with values in a  category $\mathbf{C}$. Let's assume that $\mathbf{C}$ is nice enough to have products, equalizers, etc. Is it true that if $\phi_x=\psi_x:\mathscr{F}_x\rightarrow\mathscr{G}_x\ \forall x\in X$, then $\phi=\psi$ ? The proof of this is easy in a concrete category, but it doesn't seem so easy to do that without using elements of sets and instead using things like equalizers, in terms of which sheaf is defined (Wikipedia).
 A: First, in order to make sense of the sheaf condition, we must assume that the category $\mathcal{C}$ has enough limits; for simplicity we assume $\mathcal{C}$ has all limits. Next, to make sense of stalks, we must assume that $\mathcal{C}$ has enough filtered colimits; for simplicity we assume $\mathcal{C}$ has colimits for all small filtered diagrams.
Write $\textbf{Sh}(X; \mathcal{C})$ for the category of $\mathcal{C}$-valued sheaves on $X$. The key condition is the following:


*

*A morphism $\phi : \mathscr{F} \to \mathscr{G}$ in $\textbf{Sh}(X; \mathcal{C})$ is an isomorphism if and only if the stalk $\phi_x : \mathscr{F}_x \to \mathscr{G}_x$ is an isomorphism for all points $x$ in $X$.


If $\mathcal{C} = \textbf{Set}$, this is just the fact that the topos $\textbf{Sh}(X)$ has enough points. This property is absolutely essential for doing anything useful with stalks. 
Lemma. The functor $x^* : \textbf{Sh}(X; \mathcal{C}) \to \mathcal{C}$ that sends a sheaf $\mathscr{F}$ to its stalk $\mathscr{F}_x$ has a right adjoint.
Proof. The usual construction of the skyscraper sheaf goes through without problems. 　◼
Lemma. Let $\textbf{Psh}(X; \mathcal{C})$ be the category of $\mathcal{C}$-valued presheaves on $X$. 


*

*Limits of small diagrams in $\textbf{Psh}(X; \mathcal{C})$ exist and can be computed componentwise.

*$\textbf{Sh}(X; \mathcal{C})$ is closed under small limits in $\textbf{Psh}(X; \mathcal{C})$.


Proof. The first claim is standard abstract nonsense, and the second claim is essentially a consequence of the fact that limits preserve limits.　◼
Proposition. Let $\phi, \psi : \mathscr{F} \to \mathscr{G}$ be a pair of parallel morphisms in $\textbf{Sh}(X; \mathcal{C})$. Suppose at least one of the following conditions holds:


*

*Filtered colimits in $\mathcal{C}$ preserve equalisers.

*$\textbf{Sh}(X; \mathcal{C})$ has coequalisers.


Then the following are equivalent:


*

*$\phi = \psi$.

*$\phi_x = \psi_x$ for all points $x$ in $X$.


Proof. If $\phi = \psi$ then obviously $\phi_x = \psi_x$ for all $x$. Conversely, suppose $\phi_x = \psi_x$ for all $x$. There are two cases:


*

*Assume $\mathcal{C}$ has coequalisers. Let $\theta : \mathscr{G} \to \mathscr{H}$ be the coequaliser of $\phi$ and $\psi$; left adjoints always preserve coequalisers, so $\theta_x$ is the coequaliser of $\phi_x$ and $\psi_x$. Since $\phi_x = \psi_x$, $\theta_x$ is an isomorphism; but this is true for all $x$, so $\theta$ is also an isomorphism, by our assumption on $\textbf{Sh}(X; \mathcal{C})$. Thus $\phi = \psi$.

*Assume instead that filtered colimits in $\mathcal{C}$ preserve equalisers. Equalisers exist in $\textbf{Sh}(X; \mathcal{C})$ and are computed componentwise, so this means $x^*$ preserves them. The rest of the argument is essentially the same.　◼

Of course, the real question is, when does $\textbf{Sh}(X; \mathcal{C})$ have enough points? This is actually fairly tricky and I don't see a good general argument. Here's one that works, but it is somewhat restrictive. 
Proposition. Let $\mathcal{C}$ be a locally finitely-presentable (l.f.p.) category. Then:


*

*Filtered colimits in $\mathcal{C}$ preserve finite limits.

*$\textbf{Sh}(X; \mathcal{C})$ has enough points.


Proof. Both claims basically boil down to the representation theorem for l.f.p. categories: there exist a small category $\mathcal{A}$ and a fully faithful functor $N : \mathcal{C} \to [\mathcal{A}^\textrm{op}, \textbf{Set}]$ that preserves filtered colimits and has a left adjoint. There is then a fully faithful functor $\textbf{Sh}(X; \mathcal{C}) \to \textbf{Sh}(X; [\mathcal{A}^\textrm{op}, \textbf{Set}])$ obtained by applying $N$ componentwise, and it is not hard to check that $\textbf{Sh}(X; [\mathcal{A}^\textrm{op}, \textbf{Set}])$ and $[\mathcal{A}^\textrm{op}, \textbf{Sh}(X)]$ are equivalent as categories. Now, the fact that $N$ preserves filtered colimits means that the stalk functors fit into a commutative diagram
$$\begin{array}{rcl}
\textbf{Sh}(X; \mathcal{C}) & \rightarrow & \mathcal{C} \\
\downarrow & & \downarrow \\
[\mathcal{A}^\textrm{op}, \textbf{Sh}(X)] & \rightarrow & 
[\mathcal{A}^\textrm{op}, \textbf{Set}]
\end{array}$$
and so ultimately it boils down to the fact that $\textbf{Sh}(X)$ has enough points.
