Boopy Context Engine

Intelligenza locale del progetto per GitHub Copilot in VS Code

Un'estensione per VS Code che indicizza il progetto in background, mantiene una mappa compatta del progetto e offre a Copilot in modalità agente sei strumenti locali per il contesto. Meno token spesi per «leggo tutto il repository», più token per il lavoro vero.

VS CodeCopilot AgentSolo localeCodice pubblico
Versione0.1.8
LicenzaMIT + Commons Clause
PiattaformaVS Code 1.99+ (modalità agente di Copilot)
StatoPubblico su GitHub

Che cos'è

BCE non costruisce un assistente proprio e non interviene nella chat né nel ciclo dell'agente di Copilot — è un fornitore aggiuntivo di strumenti (Language Model Tools). Copilot decide da sé quando chiamarli; nel prompt puoi anche nominarli esplicitamente, per esempio #bceFindContext.

Indicizzazione, parsing, ordinamento e cache avvengono nell'extension host. Nel codice non c'è alcuna chiamata di rete e non viene inviata alcuna telemetria — il codice sorgente del progetto non lascia il computer.

Caratteristiche principali

Funziona tutto in locale

Indicizzazione, parsing, ordinamento e cache stanno nell'extension host. Nessuna chiamata di rete, nessuna telemetria, il codice sorgente non lascia il computer.

Risparmia contesto, non passaggi

Invece di «leggo tutto», il modello riceve risultati ordinati con le righe esatte. Il budget stimato di token per risposta è configurabile (4000 per impostazione predefinita).

Dice dove non è sicuro

I risultati del parser sono marcati come exact o heuristic e ogni numero di token è dichiarato esplicitamente come stima. Lo strumento non finge una precisione che non ha.

Non restituisce segreti

I blocchi di sicurezza non si disattivano con la configurazione: file .env, chiavi, certificati, file di credenziali, binari e file troppo grandi non vengono mai indicizzati né restituiti.

Vede anche le modifiche non salvate

Se un file ha modifiche non salvate viene letto il buffer dell'editor — il modello non vede codice vecchio di 50 modifiche. Il testo non salvato non viene mai scritto nell'indice.

Controllabile e misurabile

Tredici comandi, dall'analisi completa del progetto al benchmark locale, diagnostica con contatori e possibilità di mettere in pausa l'indicizzazione in background.

Gli strumenti che offre a Copilot

La descrizione di ogni strumento dice quando l'agente deve usarlo e quando no.

Strumento A cosa serve Usalo quando
bce_get_project_overview Mappa compatta del progetto: linguaggi, framework, entry point, moduli, oggetti del database, route, test e configurazione. Il progetto è nuovo o il compito tocca più moduli.
bce_find_context Risultati ordinati e deduplicati con motivazione, riferimenti esatti path:line, brevi estratti e stima dei token. Devi trovare il codice responsabile, una tabella, un endpoint o un simbolo.
bce_get_file_context Un simbolo o un intervallo di righe, con import, dipendenze e test collegati. Conosci il file e ti serve una sua parte specifica.
bce_explain_impact Cosa dipende da un simbolo o da un file — riferimenti verificati e stime euristiche separati. Prima di refactoring, rinomina o eliminazione di codice.
bce_get_related_tests Test legati per convenzione, import o utilizzo, più la configurazione del test runner. Prima di scrivere test e dopo aver cambiato il comportamento.
bce_get_status Freschezza dell'indice, numero di file, stato della cache e ultimi errori. I risultati sembrano incompleti o obsoleti.

Comandi nella palette

Tutto ciò che altrimenti avviene in background si può pilotare anche a mano dalla palette dei comandi.

  • BCE: Analyze Project — scansione completa con avanzamento e possibilità di annullare
  • BCE: Rebuild Index — scarta entrambi i livelli di cache e rielabora tutto
  • BCE: Show Project Map — apre una mappa del progetto leggibile (sola lettura)
  • BCE: Search Context — selezione rapida tra i risultati, apre il file alla riga migliore
  • BCE: Show Diagnostics — contatori, tempi, utilizzo degli strumenti, ultimi eventi
  • BCE: Clear Cache — svuota la parse cache e la context cache (l'indice resta)
  • BCE: Show Usage Report — riepilogo dal log locale: token stimati restituiti e quanto sarebbe costata l'alternativa ingenua
  • BCE: Reset Usage Log — dopo una conferma elimina il log locale dell'uso
  • BCE: Pause Background Indexing / Resume — gli eventi sui file finiscono in coda
  • BCE: Cancel Indexing — annulla il passaggio in corso, l'ultimo indice valido resta
  • BCE: Ensure BCE Output Is Git-Ignored — riapplica il blocco gestito nel .gitignore
  • BCE: Run Local Benchmark — misura la qualità dell'ordinamento e la dimensione del contesto

Installazione

1

Codice sorgente e verifica

Il repository è pubblico. La verifica comprende typecheck, test e bundle.

git clone https://github.com/BoopyCode/BoopyContextEngine.git
cd BoopyContextEngine
npm install
npm run check
2

Host di sviluppo (il più rapido)

Apri la cartella in VS Code e premi F5. Si apre una seconda finestra con BCE caricato — apri lì qualsiasi progetto.

3

Installazione nel tuo VS Code

Crea il pacchetto e copia la cartella tra le estensioni. Dopo il riavvio di VS Code nella barra di stato compare «bce: Indexing» e poi «bce: Ready (n files)».

npm run vscode:prepublish
# copia la cartella qui (oppure installa il .vsix creato con npx @vscode/vsce package):
# %USERPROFILE%\.vscode\extensions\boopycode.boopy-context-engine-0.1.4

Requisiti

  • VS Code 1.99 o superiore (Language Model Tool API)
  • Node 18+ per la build dai sorgenti
  • Unica dipendenza runtime: ignore (inclusa nel bundle)
  • Licenza MIT con la Commons Clause — uso commerciale solo con nostra licenza scritta

Cosa non sa fare

La qualità delle risposte, il numero di passaggi dell'agente e il consumo API fatturato non sono misurabili dall'estensione — non ha accesso a questi dati. Il benchmark locale misura quindi solo ciò che è misurabile in locale: se sono stati trovati i file giusti e quanti token stimati è costato.

Esecuzione di riferimento su un fixture di 27 file: hit rate 100 %, posizione media del primo risultato corretto 1,4 e contesto circa il 60 % più piccolo rispetto alla lettura ingenua dei file candidati. La documentazione dichiara esplicitamente che questo rapporto non è generalizzabile — verifica i numeri con il tuo benchmark (BCE: Run Local Benchmark).

Licenza

Il codice sorgente è pubblicato con la licenza MIT con la Commons Clause. L'uso personale, didattico, di ricerca, per hobby e open source non commerciale è gratuito.

L'uso commerciale — utilizzo in azienda, hosting come servizio, integrazione in un prodotto a pagamento o lavoro di integrazione e supporto a pagamento — richiede una licenza commerciale scritta separata da BoopyCode. Senza di essa la licenza non concede diritti commerciali.

In caso di violazione tutti i diritti si estinguono automaticamente e ogni copia deve includere il testo completo della licenza, inclusa la Commons Clause.

Link

Vuoi uno strumento simile o Copilot integrato nei tuoi processi? →

Rispondiamo entro 24 ore. Senza impegno e senza costi.