io.github.BasilSkyWalk/parecode
NPM · PARECODE · SCANNED AUG 3
Token-aware ripgrep code search and atomic multi-file edits for coding agents.
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 →
Supply Chain Security87
- No malware found by supply-chain analysis.Pass
- Only part of the dependency tree could be resolved (109 of 113), so this covers what we could see, not the whole tree.Partial
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (109 of 113), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency97
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to BasilSkyWalk/parecode). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 49 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability60
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 975 tokens (~325/item across 3 items; 3 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · parecode
claude mcp add basilskywalk-parecode -- npx -y parecode
codex mcp add basilskywalk-parecode -- npx -y parecode
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"basilskywalk-parecode": {
"type": "local",
"command": [
"npx",
"-y",
"parecode"
],
"enabled": true
}
}
} openclaw mcp add basilskywalk-parecode --command npx --arg -y --arg parecode
mcp_servers:
basilskywalk-parecode:
command: "npx"
args: ["-y", "parecode"] {
"mcpServers": {
"basilskywalk-parecode": {
"command": "npx",
"args": [
"-y",
"parecode"
]
}
}
} 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.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 2 Aug 26 +69
- Provenance: unverified → pass ▲ security
- Known CVEs: unverified → partial ▲ security
- Install scripts: unverified → pass ▲ security
- Malware scan: unverified → pass ▲ security
- The attested source repository moved: BasilSkyWalk/parecode security
- Security disclosure: fail → unverified ▼ functional
- Dependency health: partial → unverified ▼ functional
- Schema quality: unverified → excellent ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- License: unverified → pass ▲ functional
- Maintenance: unverified → pass ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Stability: unverified → 0.23 ▲ functional
- Licence: MIT functional
- 1 Aug 26 −11
- Tool coverage: 100 → unverified ▼ functional
- Dependency health: unverified → partial ▲ functional
- First check of Schema quality: unverified functional
- 31 Jul 26 −24
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Jul 26 42
First indexed and scored.
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 3 Aug 2026 · Analysed npm/[email protected]
Provenance verified
Ecosystem: npm · Outcome: verified
Reason: verified
- Source repo:
- BasilSkyWalk/parecode
- Certificate issuer:
- https://token.actions.githubusercontent.com
- Certificate SAN:
- https://github.com/BasilSkyWalk/parecode/.github/workflows/release.yml@refs/tags/v0.7.0
- Rekor log index:
- 1775167646
- Predicate type:
- https://slsa.dev/provenance/v1
- Subject digest:
- sha512:9c166e9a4a6dfd3fd586b35f95ee248bd0c1bf49b30de93123f3a6306056c59205167cb4b7dd2e90ec94488db1d27e864f83dcd5ec39ddaba105201cb
- Discovery method:
- attestation_endpoint
Dependencies 109 packages
109 packages in the resolved dependency tree · 108 deprecated · 29 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
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.
ParecodeEdit ~254
Apply many edits across many files in one call — the edit counterpart to ParecodeSearch/ParecodeExpand. Prefer over native Edit/MultiEdit for 2+ edits to one file, edits across files (files apply in parallel), or one logical revision that should land together. Each item is a line-range op (replaceLines or insertAfter, guarded by an `expect` anchor) or a string-patch op (oldString/newString; fuzzy:true tolerates whitespace drift, 'aggressive' also normalizes Unicode look-alikes). Strongly prefer line-range ops when you know the target lines — e.g. the line numbers ParecodeSearch returned: a line number plus a short `expect` anchor skips constructing exact-match snippets, so recurring text (a repeated call) can't trigger the multiple-match errors and retries an oldString needs extra context to avoid. Reserve oldString for edits with no known lines. Atomicity is per file, NOT cross-file: within a file all ops apply or none, other files commit independently — check each result's status. Writes are atomic with mtime conflict detection; fuzzy fails closed on low confidence or ambiguity.
| Name | Type | Req | Description |
|---|---|---|---|
| edits | array | yes | List of edit operations to perform |
No output schema declared.
No examples provided.
ParecodeExpand ~237
Read a specific line range of a file — the natural follow-up to a ParecodeSearch match or an `omittedLineRanges` entry it returned. Use instead of a full-file Read (or Read with offset/limit) when you already know roughly where the code lives and just need more lines around it. Give the known (file, startLine, endLine) and optionally pad with contextBefore/contextAfter; out-of-range lines are clamped silently and the returned `lineRange` reflects the actual slice. Reports `estimatedTokens` in the same form as ParecodeSearch so you can budget before consuming. Read-only — to change code use ParecodeEdit.
| Name | Type | Req | Description |
|---|---|---|---|
| contextAfter | number | — | Additional lines to include after endLine. Default 0. |
| contextBefore | number | — | Additional lines to include before startLine. Default 0. |
| endLine | number | yes | Ending line (1-based, inclusive) |
| file | string | yes | Path to the file to read (typically the `file` from a ParecodeSearch match). |
| startLine | number | yes | Starting line (1-based, inclusive) |
No output schema declared.
No examples provided.
ParecodeSearch ~484
Search the codebase with ripgrep and get matches plus surrounding context in ONE call — use instead of Grep/Glob-then-Read, a raw `rg`/`grep` in the shell, or re-reading the same file at different line ranges. Pass `pattern` as an array to run several regexes in parallel for flow tracing (e.g. ['HandleX','OnX','XClosed']); each match lists which `patterns` hit it. Overlapping or adjacent windows in a file are merged (gap ≤ contextLines), and the result carries one envelope-level `estimatedTokens` so you can budget before consuming. Read-only: to widen a match use ParecodeExpand, to change code use ParecodeEdit. Per-file content over ~2KB is dropped (its lines listed in `omittedLineRanges`) to protect context — widen those via ParecodeExpand instead of re-reading the file. Repeated calls in the same session are token-efficient: previously-returned windows return as `kind: 'reference'` placeholders. Watch the `warnings` field — a `pattern_directory_collision` almost always means narrow the pattern before retrying. Needs ripgrep on PATH (run `parecode doctor` if missing). In CodeGraph repos (.codegraph/), prefer codegraph_explore for broad 'how does X work?' questions; this stays best for targeted multi-pattern lookups.
| Name | Type | Req | Description |
|---|---|---|---|
| contextLines | number | — | Number of context lines to include around matches. Defaults to 2. Also controls window-merge threshold within a file. |
| maxBytesPerFile | number | — | Soft cap on bytes returned per file; above it, output is chunked around match centers and the trimmed lines are reported in omittedLineRanges (widen them with ParecodeExpand). |
| paths | array | — | Directory or file paths to restrict the search. Defaults to the current working directory. |
| pattern | — | yes | Ripgrep regex pattern, or an array of patterns to dispatch in parallel. Each match reports which input pattern(s) contributed via 'patterns'. |
| relatedSymbols | boolean | — | Opt-in: scan each match's content for likely related symbols (Handle<X>, On<X>, <X>Handler, <X>Listener, <X>Closed/Completed/Started). Returns deduped, lexically sorted, capped at 10 per match. |
No output schema declared.
No examples provided.