Local-first code context CLI + MCP server: discover, index, and search repos; generate task-aware context packs, code maps, agent harnesses, and PR-review/merge-readiness gates for coding agents and reviewers.
claude mcp add otito -- npx -y @bashbop/otito{
"mcpServers": {
"otito": {
"command": "npx",
"args": ["-y", "@bashbop/otito"]
}
}
}Resumen de MCP Servers
# Òtítọ́ **Local-first code context for agents and reviewers: what does this change actually touch?** [](https://github.com/BASHBOP/otito/actions/workflows/otito-ci.yml) [](https://www.npmjs.com/package/@bashbop/otito) [](LICENSE) [](https://nodejs.org/)   ```text ___ _____ ___ _____ ___ / _ \_ _|_ _|_ _/ _ \ | | | || | | | | || | | | | |_| || | | | | || |_| | \___/ |_| |___| |_| \___/ ``` An agent's output is bounded by two things: the **model** and the **harness** around it. The harness includes the prompts, the context it's given, the codebase it works in, and the gates it must pass before code merges. You don't control the model. You control the harness, and a tighter harness lets a cheaper model do the same work with fewer wasted tokens. **Òtítọ́** is that harness layer. It is local-first, deterministic, and model-agnostic: it discovers repositories, builds local indexes, generates task-aware context before an agent edits, scores how much a change actually touches, and gates merge readiness. It works the same way every time, with no server, no account, and no code leaving the machine. Because it depends on software fundamentals rather than any one model, the harness you build today keeps working as models change underneath it. It does not try to replace `opensrc`, `code-structure`, Daytona, or Harnss. It gives developers and coding agents a single CLI that can: Deterministic merge gates are the differentiated core. This is the human-in-the-loop checkpoint that a model cannot grade for itself: - score merge readiness for local changes and pull requests with one `review_gate` tool (`gate` on the CLI) - resolve CODEOWNERS to required reviewers and surface owner-decision warnings - check branch-protection expectations and required checks before merge - generate actionable PR review context from git diffs and optional GitHub comments Local-first context feeds the gates: - inspect a repository - discover and index local repositories - maintain a local catalog and search across it - generate task-aware context packets before an agent plans or edits - generate AST-backed JSON-first code maps for agents - generate a setup/validation/runtime harness for a repo - produce Markdown or JSON reports - estimate context-token size for generated artifacts - run an MCP server for agent hosts with a persisted per-user index cache that never dirties an inspected repository - expose simple agent-friendly tool metadata - check tool availability - generate TypeScript structure HTML through `code-structure` - search dependency source through `opensrc` ## Documentation The published MkDocs site is a practical discovery and delivery guide: - [Home](docs/index.md) - [Executive Summary](docs/EXECUTIVE-SUMMARY.md) - [Context Foundation](docs/01-context-foundation/README.md) - [MCP and Agent Workflows](docs/02-mcp-agent-workflows/README.md) - [Contributor Governance](docs/03-contributor-governance/README.md) - [Release Readiness](docs/04-release-readiness/README.md) - [Trust-Layer Demo](docs/05-trust-layer-demo/README.md) - [Builder-Founder Operating Loop](docs/06-builder-founder-operating-loop/README.md) - [Harness Thesis & Agent Experience](docs/07-harness-thesis/README.md) - [Tutorials Integration (Codespaces)](docs/08-tutorials-integration/README.md) - [Convergence Thesis & Score](docs/09-convergence-thesis/README.md) - [Usage & Performance Dashboard](docs/10-usage-dashboard/README.md) - [Glossary](docs/GLOSSARY.md) Read it at: ```text https://bashbop.github.io/otito/ ``` ## Quick Start Code maps use the TypeScript compiler for JS/TS and dedicated language extractors for Go, C#, Python, Java, Ruby, and Rust (see `src/lib/code-map/ast-languages.js`). Optional external tools are only needed for dependency-source lookup and HTML structure reports. Install the published package from npm: ```bash npm install -g @bashbop/otito otito doctor otito index ~/projects --discover otito context "add a new MCP tool" --path . ``` You can also run a command without a global install: ```bash npx -y @bashbop/otito doctor ``` For source development: ```bash git clone https://github.com/BASHBOP/otito.git cd otito npm ci npm run ci node src/cli.js doctor ``` The current release is available through [npm](https://www.npmjs.com/package/@bashbop/otito), [GitHub Releases](https://github.com/BASHBOP/otito/releases), and the MCP Registry as `io.github.BASHBOP/otito`. ```bash otito repo . --json otito discover ~/projects --depth 2 --json otito index ~/projects --discover otito catalog otito search "events controller" otito context "add a new MCP tool" --path . otito impact . "add a new MCP tool" --top 12 otito ax . "add a new MCP tool" otito map . --json otito harness . --out .otito/harness.md otito pr . --base origin/main --out .otito/pr-review.md otito review . --request "add a new MCP tool" --base origin/main otito gate . --staged --base origin/main otito mcp otito report . --out .otito/report.md otito workspace /path/to/web /path/to/api --out .otito/workspace.md ``` Optional external tools: ```bash npm install -g opensrc code-structure ``` Then: ```bash otito deps zod --query parse otito structure . --out .otito/structure.html ``` ## Usage Examples | Goal | Command | Output | | --- | --- | --- | | Inspect one repo | `otito repo . --json` | Repo facts, scripts, languages, entrypoints, and git state | | Build a code map | `otito map . --json` | Source files, domains, imports, exports, symbols, and routes | | Prepare task context | `otito context "add a new MCP tool" --path .` | Primary files, related files, tests, patterns, and validation commands | | Generate an agent harness | `otito harness . --out .otito/harness.md` | Setup, validation, runtime, and context commands | | Review local changes | `otito pr . --base origin/main --out .otito/pr-review.md` | Changed files, risk prompts, review targets, and test hints | | Index local projects | `otito index ~/projects --discover` | External per-user indexes plus a local catalog | | Search indexed repos | `otito search "events controller"` | Ranked matches across paths, domains, routes, imports, exports, and symbols | | Run the MCP server | `otito mcp` | Stdio MCP server exposing otito tools | | Track usage & performance | `otito dashboard` | Self-contained HTML from an opt-in local usage log (off by default) | For Claude Desktop, VS Code, Cursor, and generic stdio client snippets, see [MCP and Agent Workflows](docs/02-mcp-agent-workflows/README.md). ## otito vs alternatives | Approach | Strengths | Where otito differs | | --- | --- | --- | | Sourcegraph / Cody context | Powerful hosted code search and embedding-based context across an org | otito is local-first and deterministic: no server, no account, no code leaves the machine, and the same query always yields the same packet | | Hand-written `CLAUDE.md` / rules files | Curated, intent-rich guidance | Hand-written context goes stale; otito regenerates context from the actual code (symbols, imports, routes, tests) on every run and complements a short `CLAUDE.md` | | `grep` / `ripgrep` | Fast, universal text matching | otito ranks whole files by task intent across paths, symbols, exports, and tests, then adds patterns and validation commands. The result is a context packet, not a list of matching lines | ## Quality Gates Use the full gate before opening a pull request or publishing a release: ```bash npm run ci ``` The gate runs: - `npm run format:check` - `npm run lint` - `npm run typecheck` - `npm run version:check` - `npm test` - `npm run test:coverage` - `npm run eval:accuracy` - `npm run eval:harness` - `npm run audit` - `npm run smoke` Coverage currently gates source files at 70% lines, 60% branches, and 75% functions. Generated artifacts under `.otito/` are ignored by git, linting, and formatting; keep durable reports there instead of committing them. The v1.1.0 harness execution evaluation runs only vetted install, test, typecheck, and build commands against committed fixtures. It disables install lifecycle scripts, applies timeouts, and never executes inferred commands from a customer repository. otito follows Semantic Versioning. Pull requests should identify whether they are no-version-impact, patch, minor, or major changes; maintainers apply the final package version during release. For longer trust-layer work, use the [Builder-Founder Operating Loop](docs/06-builder-founder-operating-loop/README.md) to keep every session tied to context, focused changes, visible gates, human decisions, and durable evidence. ## Contributing Contributions are welcome. Start with [CONTRIBUTING.md](CONTRIBUTING.md), open an issue or draft PR for substantial changes, and run `npm run ci` before requesting review. All code changes must be reviewed by a maintainer/code owner before merge. The protected `main` branch requires maintainer approval, passing quality gates, and resolved PR conversations. ## Common Workflows Agent repo harness: ```bash otito harness . --out .otito/harness.md otito map . --json ``` Local discovery, indexing, catalog, and search: ```bash otito discover ~/projects --depth 2 otito index ~/projects --discover otito catalog otito search "submit rsvp" ``` Task-aware agent context: ```bash otito context "add a new MCP tool" --path . --json otito context "add a new MCP tool" --path . --out .otito/context-pack.md ``` PR review harness: ```bash otito pr . --base origin/main --out .otito/pr-review.md otito pr . --number 123 --comment ``` Merge gate (`gate` is the canonical v2 command
Lo que la gente pregunta sobre otito
¿Qué es BASHBOP/otito?
+
BASHBOP/otito es mcp servers para el ecosistema de Claude AI. Local-first code context CLI + MCP server: discover, index, and search repos; generate task-aware context packs, code maps, agent harnesses, and PR-review/merge-readiness gates for coding agents and reviewers. Tiene 1 estrellas en GitHub y se actualizó por última vez today.
¿Cómo se instala otito?
+
Puedes instalar otito clonando el repositorio (https://github.com/BASHBOP/otito) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar BASHBOP/otito?
+
BASHBOP/otito aún no ha sido auditado por nuestro agente de seguridad. Revisa el repositorio original en GitHub antes de usarlo en producción.
¿Quién mantiene BASHBOP/otito?
+
BASHBOP/otito es mantenido por BASHBOP. La última actividad registrada en GitHub es de today, con 0 issues abiertos.
¿Hay alternativas a otito?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega otito en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/bashbop-otito)<a href="https://claudewave.com/repo/bashbop-otito"><img src="https://claudewave.com/api/badge/bashbop-otito" alt="Featured on ClaudeWave: BASHBOP/otito" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!