Let $X$ be a ringed space. The abelian category of (quasi-coherent) $\mathcal{O}_X$-modules does not behave as well as the category of $A$-modules for a commutative ring $A$. The reason is that there are not enough projective objects. In particular, $\mathcal{O}_X$ is not projective, since $Hom(\mathcal{O}_X,-)$ is the global section functor, which is not exact.
I want to fix this by enriching the abelian category over $Sh(X)$, the monoidal abelian category of abelian sheaves on $X$. Remark that $\underline{Hom}(\mathcal{O}_X,-)$ is just the identical functor, thus $\mathcal{O}_X$ should be projective from this point of view. Actually I want that $\mathcal{O}_X$-Mod has all the homological properties as $A$-Mod, except that we talk about them in another topos, namely $Sh(X)$ instead of $Set$.
In particular I want to generalize the following well-known theorem: Let $\mathcal{A}$ be an abelian category, which has a progenerator $P$ (i.e. a finite projective generator), whose coproducts exist. Then $\mathcal{A}$ is equivalent to $Mod_A$ for some (noncommutative) ring $A$, namely $A$ is the endomorphism ring of $P$.
So how do we define an abelian category $\mathcal{A}$ over $Sh(X)$ in reasonable way? I've already written down a possible definition, but I wonder if it is possible to avoid the category of elements of the enriched category, since this makes the whole story nonlocal. For example when you want to write down what a kernel of a morphism should be, or when you want to define the notions of generators or projective objects.
Or should we just say that everthing is a sheaf? A category is a pair $(O,M)$, consisting of a sheaf $O$ on $X$ (objects) and a sheaf $M$ on $X$ (morphisms) together with maps $M \to O \times O$, etc. ...
I'm pretty sure that somebody has worked this out in detail some decades ago, so a reference would be ok.
EDIT [12. 09]: I think the following definition works: A sheabelian ;) category is a pair $(X,A)$, consisting of a topological space $X$ and a presheaf $A$ on $X$, valued in the category of abelian categories, such that the following sheaf condition holds:
1) If $U = \cup_i U_i$ and $f,g : F \to G$ are morphisms in $A(U)$ and $\eta_i$ are natural transformations between $f|_{U_i}, g|_{U_i}$, which are compatible on the $U_i \cap U_j$, then they lift uniquely to a natural transformation between $f$ and $g$.
2) If $U = \cup_i U_i$ and $T_i \in A(U_i)$ are objects, which are isomorphic on $U_i \cap U_j$, such that the cocycle condition is satisfied, then there is an object $T \in A(U)$, which restricts to an object isomorphic to $T_i$, and the isomorphisms here are compatible with each other.
Basically this concept works for every $2$-category. Objects of $(X,A)$ are defined to be objects of $A(X)$, but properties and constructions of these objects are defined locally. For example, $Hom(P,-)$ for an object $P$ is a functor $A(X) \to Sh(X)$. Currently, I'm trying to work out the details for the generalization of the above theorem. Note that if $(X,\mathcal{O}_X)$ is a ringed space, then $O_X$ should be a progenerator of $Mod_{O_X}$.
EDIT [15.09] Ok I think I have just reinvented the notion of a stack. ;)
So my question is: Is there literature about a sort of homological algebra of stacks of abelian categories? Here I'm mainly interested in the site associated to a topological space, and some of the $2$-isomorphisms in the definition of a stack should become identities (since, for example, we have $(F|_V)|_W = F|_W$ for a sheaf $F$ on $X$).