io.github.dir-ai/repotector
NPM · REPOTECTOR · SCANNED SEP 21
The repo guardian AI agents handshake with before they touch your code.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to dir-ai/repotector). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 64 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability79
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 1192 tokens (~59/item across 20 items; 20 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
- Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage85
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 56% of tool parameters carry a description.Partial
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "merge_check" implies "merge" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the io.github.dir-ai/repotector MCP server?
io.github.dir-ai/repotector runs locally as an npm package, launched with npx -y repotector. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · repotector
claude mcp add dir-ai-repotector -- npx -y repotector
{
"mcpServers": {
"dir-ai-repotector": {
"command": "npx",
"args": [
"-y",
"repotector"
]
}
}
} {
"servers": {
"dir-ai-repotector": {
"command": "npx",
"args": [
"-y",
"repotector"
]
}
}
} codex mcp add dir-ai-repotector -- npx -y repotector
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"dir-ai-repotector": {
"type": "local",
"command": [
"npx",
"-y",
"repotector"
],
"enabled": true
}
}
} openclaw mcp add dir-ai-repotector --command npx --arg -y --arg repotector
mcp_servers:
dir-ai-repotector:
command: "npx"
args: ["-y", "repotector"] {
"McpServers": {
"dir-ai-repotector": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"repotector"
]
}
}
} assistant mcp add dir-ai-repotector -t stdio -c npx -a -y repotector
{
"mcpServers": {
"dir-ai-repotector": {
"command": "npx",
"args": [
"-y",
"repotector"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Sept 26 −3
- Stability: pass → 0.80 functional
- 18 Sept 26 +1
- Stability: 0.97 → pass security
- 16 Sept 26 +1
- Security disclosure: unverified → pass ▲ functional
- 15 Sept 26 0
- Security disclosure: pass → unverified ▼ functional
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 −3
- Stability: pass → 0.80 functional
- 11 Sept 26 +1
- Stability: 0.97 → pass security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 21 Sept 2026 · Analysed npm/repotector@1.6.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | dir-ai/repotector |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/dir-ai/repotector/.github/workflows/publish.yml@refs/tags/v1.6.0 |
| Rekor log index | 2195084631 |
| Predicate type | https://slsa.dev/provenance/v1 |
| Subject digest | sha512:85d3a0b9c09f058e825c42d5429ac7d3709c6d3329ffc4e02c2686d05e0a2dcdf2bb17e8040d1cb4240b80e875aa52de691534e3fb6a831656bdd4f5b |
Background: How many MCP packages publish verified provenance →
Dependencies 96 packages
| Packages resolved | 96 |
|---|---|
| Stale | 31 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
atlas_query Query the Atlas ~28
Keyword search across the repo map (paths, exports, purposes).
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | – |
No output schema declared.
No examples provided.
blast_radius PROTECT — blast radius ~43
Compute transitive dependents, impacted routes and components for changed files. Omit changedFiles to use git diff. Call before editing.
| Name | Type | Req | Description |
|---|---|---|---|
| changedFiles | array | – | – |
No output schema declared.
No examples provided.
canon_check INTEGRATE — canon check ~34
Check changed files against the repo canon rules. Omit changedFiles to use git diff.
| Name | Type | Req | Description |
|---|---|---|---|
| changedFiles | array | – | – |
No output schema declared.
No examples provided.
city_map City map — what is built vs missing ~44
The info-point: DNA intent, brain pointers (atlas/genome/phenome), skeleton, and built-vs-missing so you can continue work without re-exploring.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
claim Claim a work zone (advisory soft-lock) ~73
Declare the paths you are working on so other agents stay out. Advisory: conflicts are surfaced, not blocked. Claims expire with your session or TTL.
| Name | Type | Req | Description |
|---|---|---|---|
| paths | array | yes | Path globs you are claiming, e.g. ["src/auth/**"] |
| reason | string | – | One line: what you are doing there. |
No output schema declared.
No examples provided.
decisions_query Decision records — what not to renegotiate ~61
Query the deliberate choices made in this repo (what was chosen, over what, why). Consult BEFORE undoing an existing pattern or dependency.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
| topic | string | – | Filter, e.g. "database" or a path. |
No output schema declared.
No examples provided.
declare_mission Declare your mission — the contract for this visit ~131
Bind goal + acceptance criteria + work zone to your session BEFORE working. Auto-claims your zone (conflicts surfaced), returns a one-shot briefing (gates, merge status, standing decisions, protected overlaps). depart() then reconciles the evidence against THIS contract.
| Name | Type | Req | Description |
|---|---|---|---|
| acceptance | array | yes | Verifiable acceptance criteria. |
| claimPaths | array | – | The zone you will touch, e.g. ["src/auth/**"]. |
| forbiddenPaths | array | – | Zones you commit to NOT touch. |
| goal | string | yes | What this visit must achieve, one sentence. |
| risk | string | – | – |
No output schema declared.
No examples provided.
depart Sign out of the repo ~95
Log your exit in the visitor register with a one-line summary of what you did. Call this when you finish.
| Name | Type | Req | Description |
|---|---|---|---|
| acceptanceReport | array | – | Your self-report per mission acceptance criterion (marked agent-declared, distinct from machine-verified checks). |
| decisions | array | – | Deliberate choices made this session, so the next agent does not undo them. |
| summary | string | – | One line: what you changed or concluded. |
No output schema declared.
No examples provided.
dna_coverage DNA coverage — built vs missing ~41
Per specified clause: implemented / partial / missing / unmapped, computed from its claims vs the Atlas. The single source of built-vs-missing truth.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
dna_diff DNA diff — which clauses a change touches ~55
Given changed files (omit to use git diff), which specified clauses they implement/modify, and which files are off-DNA (claimed by no clause). Deterministic — no semantic guessing.
| Name | Type | Req | Description |
|---|---|---|---|
| changedFiles | array | – | – |
No output schema declared.
No examples provided.
dna_query DNA — what the repo SPECIFIED ~66
Read the intent layer. Returns clauses of what was specified, marked authored (PSX Workbench mirror) or inferred (reverse-DNA, with confidence + sources) — never merged. Filter by clause id or topic.
| Name | Type | Req | Description |
|---|---|---|---|
| clause | string | – | – |
| topic | string | – | – |
No output schema declared.
No examples provided.
find_existing REUSE — find existing ~32
Search the Atlas for code that already implements an intent. Call before building anything new.
| Name | Type | Req | Description |
|---|---|---|---|
| intent | string | yes | – |
No output schema declared.
No examples provided.
handshake PSX Handshake — MANDATORY first call ~105
Front door. Declare who you are; you are logged into the visitor register and handed the ground rules, live gate, city-map summary, and a passport. Call this FIRST, before any other tool.
| Name | Type | Req | Description |
|---|---|---|---|
| model | string | – | Your underlying model, if distinct from `who`. |
| purpose | string | – | One line on why you are here. |
| who | string | yes | Who you are: agent name / model / operator, e.g. "claude-code@dir". |
No output schema declared.
No examples provided.
journal Journal — the repo’s recent story ~49
The diario di bordo: recent visits with what each agent did and left unfinished (from the visitor register). Read it to continue prior work instead of re-deriving it.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
No output schema declared.
No examples provided.
merge_check Merge check — trial merge before you commit ~77
Runs a zero-damage trial merge (git merge-tree) of HEAD against the integration base and reports clean/conflicted with the exact files, attributed to who holds each zone (claims + Merge Machine leases). Call BEFORE committing when other agents work in parallel.
| Name | Type | Req | Description |
|---|---|---|---|
| target | string | – | Integration base ref (default: branch upstream or origin default). |
No output schema declared.
No examples provided.
quality_gates Quality gates ~27
Run line-budget, structure, and secret-hygiene gates. Returns the proof verdict.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
register Read the visitor register ~35
See who has entered/left the repo and who is currently inside. The full arrival/exit log.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
No output schema declared.
No examples provided.
release Release your claims ~17
Release every work-zone claim held by this session.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
unlock Unlock the deep map ~43
Present the repo passphrase to unlock the gated deep-map tools for this session. Only needed if the repo is locked.
| Name | Type | Req | Description |
|---|---|---|---|
| passphrase | string | yes | The repo passphrase. |
No output schema declared.
No examples provided.
whats_next What should I work on next ~58
Suggests the sensible next work, derived (never invented) from DNA coverage gaps, open threads in recent departs, and TODO/FIXME markers. Every suggestion cites its evidence; an empty answer is valid.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
No output schema declared.
No examples provided.
What is the io.github.dir-ai/repotector MCP server?
io.github.dir-ai/repotector is an MCP server listed in the public MCP registry as io.github.dir-ai/repotector. The repo guardian AI agents handshake with before they touch your code. This page covers its npm package (repotector).
Is the io.github.dir-ai/repotector MCP server safe to use?
io.github.dir-ai/repotector scores 91 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.dir-ai/repotector MCP server expose?
io.github.dir-ai/repotector exposes 20 tools: handshake, unlock, depart, register, city_map, and 15 more. Their descriptions and schemas cost roughly 1,114 tokens of context every time the server is loaded.
Is the io.github.dir-ai/repotector MCP server still maintained?
io.github.dir-ai/repotector is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.dir-ai/repotector MCP server under?
io.github.dir-ai/repotector declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.