DevOps95

Sem

A local structural code index shared across AI coding sessions

r/selfhostedu/Wise_Reflection_834021 septembre 2026

Capture du projet

Résumé

Sem est un outil qui calcule la structure d'un dépôt de code en local, permettant aux agents de coder de réutiliser ces informations à travers les sessions. Il prend en charge les fonctions, les classes, les méthodes, les types, les appelants, les dépendances, l'historique et les différences. L'index persiste entre les sessions, ce qui signifie qu'il n'a pas besoin d'un démon en arrière-plan.

Pourquoi c’est intéressant

Sem est intéressant car il permet de gagner du temps en réutilisant les informations de structure de code, ce qui peut améliorer la productivité des développeurs. De plus, il ne nécessite pas de télécharger le code source pour une utilisation locale.

Comment Claude est utilisé

L'outil utilise MCP pour fournir un accès aux informations de structure du code.

Idées dérivées

  1. 01

    Indexeur de données

    Un outil similaire pour indexer les données de bases de données locales, permettant aux agents d'accéder rapidement aux informations.

  2. 02

    Intégration de Sem

    Un projet pour intégrer Sem avec d'autres outils de développement, tels que des éditeurs de code ou des gestionnaires de versions.

  3. 03

    Partage d'indexes

    Un système pour partager les indexes de structure de code entre plusieurs machines, permettant une collaboration plus efficace entre les développeurs.

Afficher le post original
Most coding agents start every session by rediscovering the repository using grep and file reads. We built Sem to calculate that structure locally once and reuse it: - Functions, classes, methods and types. - Callers and dependencies. - Entity-level history and diffs. - Impact analysis. - Bounded context for agents. - No source-code upload required for local use. - CLI, JSON and MCP access. - One native binary. The index persists across sessions, so it does not require a permanent background daemon. On Sem’s own repository, an initial query took approximately 185 ms and a warm query took around 7 ms. Install and source: https://github.com/Ataraxy-Labs/sem The longer-term goal is to prebuild these indexes into self-hosted development containers, allowing every local agent to start with a warm understanding of the repository. Would people here prefer this as a standalone binary, a Docker image, a Dev Container Feature, or an integrated service shared across multiple machines?