gpp
gpp (git++)
Los agentes de IA cambian el código continuamente y luego pierden el trabajo que ocurrió entre commits — y las notas que guardan sobre tu base de código (CLAUDE.md, bancos de memoria, archivos de conocimiento) quedan obsoletas en silencio cuando el código avanza. gpp es un sistema de control de versiones creado para esa realidad: captura cada cambio en el momento en que ocurre, promueve conjuntos de cambios seleccionados con intención y procedencia, y aloja el conocimiento del proyecto en la propia historia del repositorio — así, cuando un commit invalida algo que creías sobre el código, gpp puede nombrar ese commit.

(La grabación se genera con scripts/demo.sh — determinista y reproducible, sin simulaciones.)
Prueba de 30 segundos
cargo install gpp-cli
gpp init --graphex
echo "fn main() {}" > main.rs
gpp timeline # captured already — no staging, no commit
gpp promote -m "first cut" --intent feature
gpp diff HEAD # semantic diff: renames/moves are one opY la parte que ningun otro VCS hace: registra lo que crees sobre el código y deja que la historia lo vigile:
gpp belief add --claim "token expiry is 24h" --evidence src/auth.rs:7-7
# ...weeks of commits later...
gpp belief bisect "token expiry is 24h"
# INVALIDATED cs:fhcpef7c "raise token expiry to 7 days"
# - 7 | pub const EXPIRY_HOURS: u64 = 24;
# + 7 | pub const EXPIRY_HOURS: u64 = 168;Determinista — intersección de diffs y hashes de blobs, cero llamadas a LLM o a la red. (Como contexto: cuando se le pide juzgar si una memoria almacenada ha quedado invalidada, el mejor modelo de frontera logra un 55,2 % de precisión en el benchmark STALE — aquí es una consulta al historial, no un juicio.) Validado sobre historiales reales de cinco repositorios en cuatro lenguajes — axum 0.6→0.7, flask 1.1→2.0, clap 3→4, zod 3→4, go-redis 8→9 — donde cada creencia invalidada se localiza por bisección hasta un commit culpable concreto y documentado, mientras las creencias del grupo de control sobreviven: consulta la matriz completa en demos/belief-bisect/.
Related MCP server: yksanjo/gmem
Qué lo hace diferente
Captura continua. Una línea temporal de alta frecuencia registra cada cambio de archivo (SQLite WAL, observador con anti-rebote); a partir de ella se promueven cambios seleccionados con una intención explícita, con tipo de autor (humano/agente) y registro de coste. Nada se pierde entre commits.
Graphex: conocimiento del proyecto versionado y cifrado. La arquitectura, las convenciones, las decisiones y las creencias viven en un grafo de conocimiento cifrado dentro del repositorio, segregado por niveles según el grado de confianza del agente, auditado en cada lectura y verificado contra el antivario sobre el que se apoya.
Gobernanza de agentes. Identidad de agente de primer nivel con puntuación de reputación, políticas de cumplimiento como código aplicadas en el proceso de captura/promoción/sincronización, detección de anomalías y atribución de tokens/costos por cada conjunto de cambios.
Todo lo demás — sincronización P2P mediante el protocolo Noise, reproducción, revisión/RBAC, un nodo de réplica, una TUI — es la plataforma subyacente: consulta docs/ARCHITECTURE.md.
Git es el sustrato, no la competencia. El puente (gpp git-import / git-export / git-bridge) hace viajes de ida y vuelta con commits reales de Git, de modo que los flujos de trabajo en GitHub y los ya existentes siguen funcionando: las capas de conocimiento, procedencia y gobernanza de gpp viajan a la vez. La demo anterior con axum se ejecuta por completo sobre historial importado a través de este puente.
Conecta Claude Code (o cualquier cliente MCP)
gpp incluye un servidor MCP; los agentes consultan el grafo de conocimiento (cada creencia con un marco de frescura: ancla, commits posteriores y el conjunto de cambios que la deja obsoleta), escriben sus propias creencias ancladas en evidencia mediante propose_belief (aprobadas por un humano y luego vigiladas por el historial), proponen conjuntos de cambios e informan de costos. Coloca esto en .mcp.json en la raíz del repositorio:
{
"mcpServers": {
"gpp": { "command": "gpp", "args": ["mcp-server", "--stdio"] }
}
}Configuración completa del cliente (Claude Desktop, stdio genérico) y la lista de herramientas expuestas: docs/MCP.md.
Estado
Las 9 fases del mapa de ruta (0–8) están implementadas. Consulta docs/ROADMAP.md para los entregables por fase y las desviaciones documentadas, docs/TODO.md para el backlog priorizado y docs/WORKLOG.md para el registro de ingeniería en curso.
Verificado el 2026-08-23: 184 pruebas del workspace pasan, cargo clippy y cargo fmt limpios, El workspace completo compila. No queda ningún crate esqueleto — cada crate tiene una implementación operativa. The coverage is measured in CI (cargo llvm-cov; 65.7% de líneas en la situación inicial, aumentándose).
La profundidad de las pruebas todavía es desigual: las capas de fundación están bien cubiertas (gpp-core, graphex, gpp-diff, gpp-tui ≥ 80 % de líneas; el CLI tiene suites de extremo a extremo para cumplimiento de políticas, reporte de costos, asignación de revisores y bisección de creencias), mientras que varios crates de integración permanecen en el nivel de pruebas de humo (gpp-sdk, gpp-notify, gpp-rbac, gpp-replay). «Implementado» aquí significa creada y probada contra su hit hito, no endurecido exhaustivamente en todos los campos. Cerrar esa brecha es el elemento principal en docs/TODO.md.
Tabla completa de capas
Capa | Crate | Qué está implementado |
Almacenamiento |
| Almacén direccionable por contenido (BLAKE3 + zstd), |
Línea temporal |
| Captura con SQLite (WAL), |
Historial |
|
|
Diff |
| Diff de líneas + semántico con tree-sitter (Rust/Python/TS/Go), detección de renombres/movimientos |
Puente Git |
|
|
Graphex |
| Grafo de conocimiento cifrado (age + AES-GCM), anidación por niveles, consulta, ciclo de vida, auditoría, motor de creencias + obsolescencia |
SDK / MCP |
|
|
Confianza |
| scoring de reputación, transiciones de estado, overrides, eventos |
Política |
| Reglas TOML de |
Coste |
| Registros de token/costos por conjunto de cambios, presupuestos, eficiencia, autoinformes de agente |
Anomalía |
| Detección de scope/estallido/tamaño, flujo de resolución |
Sincronización |
| Noise_XX P2P; objetos/refs/policies/grafo; preservación de fork |
Reproducción |
| Entornos de snapshot reproducibles + diff de deriva |
Revisión/RBAC/Avisos |
| Ciclo de revisión, roles + protección de ramas, eventos/inbox/aviso webhook |
Remoto |
| Creacar/3456% (Revision) de PR en GitHub/GitLab/Bitbucket, cuerpos ampliados, importación de CI/revisión |
Relay |
| Binario de hub de sincronización de repositorio + endpoint de salud + Dockerfile |
Clientes |
| CLI completo, TUI ratatui ( |
También: extensions/{gh-gpp,vscode-gpp,neovim-gpp}, plantillas GitHub Actions + GitLab CI, imágenes Docker en deploy/, packaging/ Homebrew.
Pendientes documentados (recogidos en ROADMAP/TODO, no bloqueados en silencio): APIs de registro/licencias para dependencias, enlaces nativos PyO3/napi, sincronización saliente con revisión de la plataforma y paquetes apt/dpkg.
Instalar / compilar
cargo install gpp-cli # the `gpp` binary (crates.io)
cargo install gpp-relay # relay node (optional)
# or from a clone
cargo build --release
cargo test --workspace
cargo bench -p gpp-core -p gpp-diff # criterion perf suiteLos binarios precompilados de Linux, macOS (ARM + Intel) y Windows se adjuntan a cada release; cargo install --git https://github.com/Lºmahabubul470/gpp gpp-cli sigue el desarrollo no publicado.
Más para probar
# Governance
gpp policy template secrets-scan
gpp trust show
gpp audit --include-cost --include-graphex
# Decentralized: sync two repos over Noise
gpp sync serve 127.0.0.1:9473 # on peer A
gpp sync add a 127.0.0.1:9473 && gpp sync # on peer B
# GitHub-compatible
gpp remote setup --platform github --repository acme/webapp
gpp remote pr-create --base mainConsulte CLAUDE.md para el contexto del proyecto, docs/ para la especificación completa (arquitectura, modelo de datos, CLI, protocolos, mapa de ruta) y docs/book/ para la guía de usuario y los tutoriales.
Licencia
This server cannot be installed
Maintenance
Related MCP Servers
- AlicenseAqualityAmaintenanceChange tracking for AI-era codebases. AI agents call it to log structured change events (entity + diff + reasoning) before the session ends, then query history with diff, blame, history, changeset, and search. Captures the intent that would otherwise evaporate.819MIT
- AlicenseNot gradedqualityCmaintenanceCrypto-aware project memory for AI coding agents. Typed entities for Solana Programs/PDAs and EVM Contracts across Base, Optimism, Polygon, Arbitrum, Ethereum — plus chain-agnostic Decisions, Findings, and Integrations. Anchor + Hardhat auto-ingest, SQLite + FTS5 BM25 ranking, append-only versioning, git-aware diffs.331MIT
- AlicenseAqualityAmaintenanceLocal-first memory layer for AI coding agents — captures issues, attempts, fixes, and decisions, and warns at git commit before you repeat a mistake.15665MIT
- AlicenseAqualityAmaintenanceGit-native long-term memory for AI agents: your markdown files are the source of truth, the search index is a disposable projection rebuilt from git, and every memory the agent writes is a reviewable git commit. Served over one OAuth-secured MCP endpoint with hybrid lexical+semantic recall and a gated, git-first commit_note write tool.78AGPL 3.0
Related MCP Connectors
Give your AI agent a persistent map of your project's structure, dependencies, and bugs.
Git-backed platform for skills, tools, and context for AI agents
One shared brain for your AI coding agents: team memory, agent Q&A, tasks, and file claims.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mahabubul470/gpp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server