errrepe/dsh-codegraph-plugin ↗★ 0
dsh-codegraph
DSH profile bundle exposing the codegraph CLI as eight model-facing code-intelligence tools: symbol search, callers/callees, impact analysis, area exploration, symbol/file reading, index status and sync. 提供符号搜索、调用分析等八大工具。适合需要辅助模型进行深度代码分析的用户。
같은 패키지 이름의 다른 저장소
설치
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:errrepe/dsh-codegraph-plugindsh-codegraph
DSH (DeepSeek Harness) profile bundle que expõe o codegraph como oito tools de inteligência de código para o modelo. O plugin mantém um índice do workspace atual em sincronismo e dá ao agente busca de símbolos, análise de chamadas, análise de impacto e leitura de código — sem grep às cegas.
Pré-requisito: o CLI
codegraphinstalado e noPATH(o plugin executa o CLI; não o gerencia). Em macOS/Linux:cargo install codegraph # ou siga as instruções da repo do codegraph codegraph --version # verifique antes de prosseguir
Instalação
O pacote é um DSH profile bundle — instalável em qualquer profile com um comando:
dsh plugin --profile web add /caminho/para/este/checkout
# ou, uma vez publicado no npm:
dsh plugin --profile web add dsh-codegraph
# ou direto do GitHub:
dsh plugin --profile web add github:errrepe/dsh-codegraph-plugin
O comando registra o bundle em dsh.profile.bundles e o plugin carrega no próximo boot do profile. Reinicie o processo DSH do profile para o plugin fazer efeito.
Para remover:
dsh plugin --profile web remove dsh-codegraph
Como funciona
- Cada tool executa
codegraphna cwd da sessão que chamou — o projeto cujo índice é lido é sempre o workspace em que o agente está trabalhando. A execução usa a sandbox policy da própria sessão, o que permite ao SQLite (WAL) do índice abrir dentro de workspaces confinados. - Projeto sem índice: rode
codegraph initna raiz do projeto (via bash) uma única vez. Depois disso, chamecodegraph_syncapós editar arquivos para que as queries reflitam o código atual. - Saída:
query/callers/callees/impactretornam JSON estruturado;explore/node/status/syncretornam texto formatado. Todos os argumentos dinâmicos são shell-quoted de forma segura (single-quote POSIX); há testes de round-trip por bash real (node test/quote.test.js).
Configuracao em Settings/Plugins e System Prompt
O plugin agora expõe um card em Settings > Plugins (aba Configuráveis) com key: codegraph:
- Ativar Codegraph (
enabled, padrãotrue): quando ligado, as oito tools permanecem registradas. Quando desligado, cada tool retorna erroCodegraph is disabled in Settings > Plugins— sem derrubar o boot. - Instruir o modelo via system prompt (
injectPrompt, padrãotrue): quando ligado junto comenabled, o host injeta a seçãocodegraph-guidance(ordem 50) em todo prompt montado. A seção ensina o modelo a preferir o grafo aogrepcego. Veja o digest emlib/index.js(CODEGRAPH_PROMPT). Desligar remove a seção sem deixar resíduo (renderPromptdescarta seções vazias).
Persistência: as duas flags vivem no namespace codegraph em ~/.dsh/settings.yaml (camadas: defaults da schema Plugins), lib/quote.js (builders de argv puros e testáveis), cordis.patch.yml (row codegraph do composition).
Licença
MIT — veja LICENSE.
FAQ
Does codegraph need to be installed? Yes — the plugin shells out to the codegraph CLI on the host PATH. Install via cargo install codegraph or from https://github.com/colbymchenry/codegraph.
When to call codegraph_sync? After editing files, so subsequent query/explore calls see the new code. status shows whether the index is stale.