weavatrix 1.16.4 → 1.17.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -17
- package/bin/native/darwin-arm64/weavatrix +0 -0
- package/bin/native/darwin-x64/weavatrix +0 -0
- package/bin/native/linux-arm64/weavatrix +0 -0
- package/bin/native/linux-x64/weavatrix +0 -0
- package/bin/native/win32-arm64/weavatrix.exe +0 -0
- package/bin/native/win32-x64/weavatrix.exe +0 -0
- package/package.json +3 -3
- package/server.json +3 -3
- package/skill/SKILL.md +5 -2
- package/skill/references/tool-routing.md +4 -1
- package/skill/references/tools/architecture_inventory.md +28 -0
- package/skill/references/tools/build_graph.md +10 -2
- package/skill/references/tools/ci_restrictions.md +28 -0
- package/skill/references/tools/explain_restriction.md +22 -0
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
Weavatrix answers the questions agents otherwise invent: what breaks if this
|
|
13
13
|
file changes, who consumes this n8n field, whether an MCP schema still
|
|
14
14
|
accepts yesterday’s request, which viem call sites follow an ABI layout
|
|
15
|
-
change, and whether `.weavatrix/architecture.json` still holds. **
|
|
15
|
+
change, and whether `.weavatrix/architecture.json` still holds. **67
|
|
16
16
|
read-only operations**, one revision-bound graph, no LSP and no prompt pack.
|
|
17
17
|
|
|
18
18
|
Codex, Claude Code, Cursor, and Grok get impact, architecture, APIs, Git
|
|
@@ -58,7 +58,7 @@ weavatrix mcp .
|
|
|
58
58
|
```toml
|
|
59
59
|
[mcp_servers.weavatrix]
|
|
60
60
|
command = "npx"
|
|
61
|
-
args = ["-y", "weavatrix@1.
|
|
61
|
+
args = ["-y", "weavatrix@1.17.2", "mcp", "."]
|
|
62
62
|
```
|
|
63
63
|
|
|
64
64
|
Pass an absolute repository path when the Codex process cwd is not the project
|
|
@@ -67,7 +67,7 @@ you intend to analyze.
|
|
|
67
67
|
### Claude Code
|
|
68
68
|
|
|
69
69
|
```sh
|
|
70
|
-
claude mcp add weavatrix -- npx -y weavatrix@1.
|
|
70
|
+
claude mcp add weavatrix -- npx -y weavatrix@1.17.2 mcp .
|
|
71
71
|
```
|
|
72
72
|
|
|
73
73
|
### Cursor
|
|
@@ -80,7 +80,7 @@ the plugin for the same server name:
|
|
|
80
80
|
"mcpServers": {
|
|
81
81
|
"weavatrix": {
|
|
82
82
|
"command": "npx",
|
|
83
|
-
"args": ["-y", "weavatrix@1.
|
|
83
|
+
"args": ["-y", "weavatrix@1.17.2", "mcp", "${workspaceFolder}"]
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
}
|
|
@@ -89,14 +89,14 @@ the plugin for the same server name:
|
|
|
89
89
|
Profiles expose bounded views of the same engine:
|
|
90
90
|
|
|
91
91
|
```sh
|
|
92
|
-
npx -y weavatrix@1.
|
|
93
|
-
npx -y weavatrix@1.
|
|
94
|
-
npx -y weavatrix@1.
|
|
95
|
-
npx -y weavatrix@1.
|
|
96
|
-
npx -y weavatrix@1.
|
|
97
|
-
npx -y weavatrix@1.
|
|
98
|
-
npx -y weavatrix@1.
|
|
99
|
-
npx -y weavatrix@1.
|
|
92
|
+
npx -y weavatrix@1.17.2 mcp . --profile=all
|
|
93
|
+
npx -y weavatrix@1.17.2 mcp . --profile=code
|
|
94
|
+
npx -y weavatrix@1.17.2 mcp . --profile=seo
|
|
95
|
+
npx -y weavatrix@1.17.2 mcp . --profile=n8n
|
|
96
|
+
npx -y weavatrix@1.17.2 mcp . --profile=dify
|
|
97
|
+
npx -y weavatrix@1.17.2 mcp . --profile=agent
|
|
98
|
+
npx -y weavatrix@1.17.2 mcp . --profile=diagram
|
|
99
|
+
npx -y weavatrix@1.17.2 mcp . --profile=web3
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
The package contains native binaries for Windows x64/arm64, macOS x64/arm64,
|
|
@@ -227,7 +227,7 @@ Three commits before `ec8bf30` this package was 1.9.2; the agent reads that
|
|
|
227
227
|
follow-up to a diff without touching the worktree. Binary blobs fail closed
|
|
228
228
|
instead of being decoded into garbage.
|
|
229
229
|
|
|
230
|
-
## The
|
|
230
|
+
## The 67 read-only operations
|
|
231
231
|
|
|
232
232
|
| Workflow | Operations |
|
|
233
233
|
| --- | --- |
|
|
@@ -236,7 +236,8 @@ instead of being decoded into garbage.
|
|
|
236
236
|
| Exact source context | `search_code`, `read_source`, `inspect_symbol`, `go_to_definition`, `find_references`, `context_bundle`, `map_stacktrace` |
|
|
237
237
|
| Health and quality | `find_duplicates`, `find_dead_code`, `run_audit`, `coverage_map`, `hot_path_review`, `perf_attribution` |
|
|
238
238
|
| APIs and transports | `list_endpoints`, `trace_endpoint`, `trace_api_contract` |
|
|
239
|
-
| Architecture | `get_architecture_contract`, `verify_architecture`, `verify_capabilities`, `explain_architecture_violation`, `propose_architecture_exception` |
|
|
239
|
+
| Architecture | `architecture_inventory`, `get_architecture_contract`, `verify_architecture`, `verify_capabilities`, `explain_architecture_violation`, `propose_architecture_exception` |
|
|
240
|
+
| Local CI | `ci_restrictions`, `explain_restriction` |
|
|
240
241
|
| Git and repositories | `git_history`, `git_read_blob`, `cross_repo_git`, `open_repo`, `list_known_repos`, `rebuild_graph` |
|
|
241
242
|
| Native extensions | `vector_search`, `semantic_link`, `seo_link_suggestions`, `memory_context` |
|
|
242
243
|
| n8n workflows | `n8n_inventory`, `n8n_trace`, `n8n_context` |
|
|
@@ -249,6 +250,19 @@ Every operation is read-only with respect to the analyzed repository.
|
|
|
249
250
|
Pagination and explicit limits bound large neighborhoods, histories, searches,
|
|
250
251
|
and contract inventories.
|
|
251
252
|
|
|
253
|
+
`build_graph` and `architecture_inventory` share one typed build model. They
|
|
254
|
+
preserve nested Cargo, npm/TypeScript, Go, and Python components, many-to-many
|
|
255
|
+
declared memberships, collision-free identities, configuration predicates,
|
|
256
|
+
and immutable source evidence. Totals and SCC/cycle witnesses are computed
|
|
257
|
+
before pagination, so a response cap cannot change the graph verdict.
|
|
258
|
+
|
|
259
|
+
`ci_restrictions` reuses that target-aware topology while reading local GitHub
|
|
260
|
+
Actions workflows and literal checks. Root files, repeated commands, UTF-8 BOM
|
|
261
|
+
offsets, optional events, base branches, and changed-path scenarios keep exact
|
|
262
|
+
evidence. Dynamic conditions, mutually exclusive configuration unions, actual
|
|
263
|
+
runs, and remote required checks remain explicit unknowns; a workflow file
|
|
264
|
+
alone never establishes a passing gate.
|
|
265
|
+
|
|
252
266
|
Need measured coverage? Run Weavatrix Quality first, then `coverage_map`.
|
|
253
267
|
The host will not invent percentages from an empty search path. Quality
|
|
254
268
|
publishes `.weavatrix/coverage/lcov.info`. Agent schema verdicts are a
|
|
@@ -302,12 +316,12 @@ coding agent
|
|
|
302
316
|
|
|
|
303
317
|
| MCP over stdio
|
|
304
318
|
v
|
|
305
|
-
weavatrix 1.
|
|
319
|
+
weavatrix 1.17.2
|
|
306
320
|
profile catalog · refresh · watcher · MCP framing
|
|
307
321
|
|
|
|
308
322
|
v
|
|
309
|
-
weavatrix-rust 2.
|
|
310
|
-
typed graph · analysis ·
|
|
323
|
+
weavatrix-rust 2.17.1
|
|
324
|
+
typed graph · analysis · 67 product operations including local CI, n8n, Dify, agent packages, Mermaid, and Web3
|
|
311
325
|
```
|
|
312
326
|
|
|
313
327
|
This npm product owns MCP transport and native distribution. The
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "weavatrix",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"weavatrixEngineVersion": "2.
|
|
5
|
-
"description": "Native repository intelligence for coding agents:
|
|
3
|
+
"version": "1.17.2",
|
|
4
|
+
"weavatrixEngineVersion": "2.17.1",
|
|
5
|
+
"description": "Native repository intelligence for coding agents: 67 read-only MCP operations backed by typed evidence graphs, impact, architecture, local CI restrictions, APIs, Git, search, semantics, memory, n8n workflows, Dify apps, agent packages, Mermaid diagrams, and Web3 ABIs.",
|
|
6
6
|
"author": "Sergii Ziborov <sergii.ziborov@gmail.com>",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"homepage": "https://weavatrix.com",
|
package/server.json
CHANGED
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
|
|
3
3
|
"name": "io.github.Weavatrix/weavatrix",
|
|
4
4
|
"title": "Weavatrix",
|
|
5
|
-
"description": "Native Weavatrix MCP:
|
|
5
|
+
"description": "Native Weavatrix MCP: 67 read-only tools for code, local CI, n8n, Dify, agents, Mermaid, Web3.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"url": "https://github.com/Weavatrix/weavatrix",
|
|
8
8
|
"source": "github"
|
|
9
9
|
},
|
|
10
|
-
"version": "1.
|
|
10
|
+
"version": "1.17.2",
|
|
11
11
|
"websiteUrl": "https://weavatrix.com",
|
|
12
12
|
"packages": [
|
|
13
13
|
{
|
|
14
14
|
"registryType": "npm",
|
|
15
15
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
16
16
|
"identifier": "weavatrix",
|
|
17
|
-
"version": "1.
|
|
17
|
+
"version": "1.17.2",
|
|
18
18
|
"runtimeHint": "npx",
|
|
19
19
|
"transport": {
|
|
20
20
|
"type": "stdio"
|
package/skill/SKILL.md
CHANGED
|
@@ -23,12 +23,15 @@ contracts. Do not call it merely because the server is available.
|
|
|
23
23
|
1. Call `graph_stats` and confirm `repository_context.root` matches the workspace
|
|
24
24
|
you intend. The MCP process is pinned to its launch root; it will not silently
|
|
25
25
|
answer for another repository.
|
|
26
|
-
2. Use `module_map`
|
|
26
|
+
2. Use `module_map` or `architecture_inventory` for orientation, or
|
|
27
|
+
`search_code` for a known literal.
|
|
27
28
|
3. Pin decisive evidence with `inspect_symbol`, `go_to_definition`,
|
|
28
29
|
`find_references`, `context_bundle`, or `read_source`.
|
|
29
30
|
4. Expand only when needed: `get_dependents` or `change_impact` for risk,
|
|
30
31
|
`trace_endpoint` or `trace_api_contract` for runtime contracts,
|
|
31
|
-
`verify_architecture` for policy, `
|
|
32
|
+
`verify_architecture` for policy, `ci_restrictions` for local GitHub Actions
|
|
33
|
+
checks and `explain_restriction` for one finding, `run_audit` for a broad
|
|
34
|
+
health pass,
|
|
32
35
|
`n8n_inventory` / `n8n_trace` / `n8n_context` for exported n8n
|
|
33
36
|
workflows, and `dify_inventory` / `dify_trace` / `dify_context` for
|
|
34
37
|
exported Dify YAML, and `agent_inventory` / `agent_trace` /
|
|
@@ -19,7 +19,7 @@ cannot silently switch to another repository. Pass an explicit
|
|
|
19
19
|
- [`get_community`](tools/get_community.md) — Return one coupling community (containment and package edges excluded).
|
|
20
20
|
- [`list_communities`](tools/list_communities.md) — List deterministic coupling communities (containment and package edges excluded).
|
|
21
21
|
- [`module_map`](tools/module_map.md) — Production folder map at a requested directory depth.
|
|
22
|
-
- [`build_graph`](tools/build_graph.md) —
|
|
22
|
+
- [`build_graph`](tools/build_graph.md) — Typed workspace, target, configuration, task, and runner topology from captured manifest evidence.
|
|
23
23
|
- [`search_code`](tools/search_code.md) — Literal or Rust-regex repository search without ripgrep.
|
|
24
24
|
- [`read_source`](tools/read_source.md) — Bounded source context by node or repository path.
|
|
25
25
|
- [`inspect_symbol`](tools/inspect_symbol.md) — Definition, direct relationships and source evidence.
|
|
@@ -41,6 +41,9 @@ cannot silently switch to another repository. Pass an explicit
|
|
|
41
41
|
|
|
42
42
|
## Quality and architecture
|
|
43
43
|
|
|
44
|
+
- [`architecture_inventory`](tools/architecture_inventory.md) — Nested observed components, declared memberships, complete edge totals, and typed cycle witnesses without a style label.
|
|
45
|
+
- [`ci_restrictions`](tools/ci_restrictions.md) — Local GitHub Actions checks and conditional applicability.
|
|
46
|
+
- [`explain_restriction`](tools/explain_restriction.md) — One restriction and its evidence limits.
|
|
44
47
|
- [`find_duplicates`](tools/find_duplicates.md) — Deterministic Type-1/2/3 clone families.
|
|
45
48
|
- [`find_dead_code`](tools/find_dead_code.md) — Conservative unreferenced-symbol review queue.
|
|
46
49
|
- [`run_audit`](tools/run_audit.md) — Repository structure and evidence completeness audit.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# `architecture_inventory`
|
|
2
|
+
|
|
3
|
+
Observed package, nested component, declared-membership, and typed edge
|
|
4
|
+
evidence. No style label or target architecture is inferred.
|
|
5
|
+
|
|
6
|
+
## When to use
|
|
7
|
+
|
|
8
|
+
Orient in an unfamiliar repository or compare observed structure with a
|
|
9
|
+
separately declared architecture contract.
|
|
10
|
+
|
|
11
|
+
Component identities distinguish paths that sanitize alike, including the
|
|
12
|
+
repository root. Files can retain every matching declared membership. Edge
|
|
13
|
+
totals and component SCC/cycle witnesses are computed before presentation
|
|
14
|
+
limits, and each recovered fact keeps its immutable source evidence. A cycle in
|
|
15
|
+
the component quotient is reported as architecture, not as symbol recursion.
|
|
16
|
+
|
|
17
|
+
## Inputs
|
|
18
|
+
|
|
19
|
+
- `output_format` (`text`, `json`, or `structured`).
|
|
20
|
+
- `expected_repository` (optional active-root guard).
|
|
21
|
+
|
|
22
|
+
## Minimal call
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
{"name":"architecture_inventory","arguments":{"output_format":"text"}}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
The live MCP `tools/list` schema is authoritative.
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
# `build_graph`
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Typed workspace, package, target, task, and runner topology from captured
|
|
4
|
+
manifest evidence.
|
|
4
5
|
|
|
5
6
|
## When to use
|
|
6
7
|
|
|
7
|
-
Inspect
|
|
8
|
+
Inspect Cargo, npm/TypeScript, Go, and Python workspace members, targets,
|
|
9
|
+
aggregators, entry points, configuration variants, and runner topology. The
|
|
10
|
+
same model feeds architecture and local CI linkage; source evidence is captured
|
|
11
|
+
with the analyzed snapshot rather than reread from a changing worktree.
|
|
8
12
|
|
|
9
13
|
## Inputs
|
|
10
14
|
|
|
@@ -24,3 +28,7 @@ Inspect workspace members, targets, aggregators, and runner topology extracted f
|
|
|
24
28
|
|
|
25
29
|
Use `output_format:"text"` for compact agent interaction. The live MCP
|
|
26
30
|
`tools/list` schema remains authoritative for this installed version.
|
|
31
|
+
|
|
32
|
+
`max_members` limits presentation only. Returned totals still describe the
|
|
33
|
+
complete recovered model, and the result reports an incomplete page instead of
|
|
34
|
+
pretending omitted members do not exist.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# `ci_restrictions`
|
|
2
|
+
|
|
3
|
+
Local GitHub Actions jobs, steps, literal checks, and their evidence limits.
|
|
4
|
+
It never runs a workflow or reads remote merge protection.
|
|
5
|
+
|
|
6
|
+
## When to use
|
|
7
|
+
|
|
8
|
+
Identify configured CI checks and ask whether a known event, base branch, and
|
|
9
|
+
changed path would enter a workflow. `UNDETERMINED` is returned for dynamic
|
|
10
|
+
conditions, scripts, or unavailable action bodies.
|
|
11
|
+
|
|
12
|
+
## Inputs
|
|
13
|
+
|
|
14
|
+
- `scope`: optional workflow-path substring.
|
|
15
|
+
- `scenario`: optional object with `event`, `branch` (PR base branch), and
|
|
16
|
+
`changed_files` (array of repository paths). Do not pass secrets.
|
|
17
|
+
- `max_results` and `token_budget`: response bounds.
|
|
18
|
+
- `output_format` and `expected_repository`: common MCP arguments.
|
|
19
|
+
|
|
20
|
+
## Minimal call
|
|
21
|
+
|
|
22
|
+
```json
|
|
23
|
+
{"name":"ci_restrictions","arguments":{"scenario":{"event":"pull_request","branch":"main","changed_files":["src/lib.rs"]},"output_format":"text"}}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
The response separates declaration, applicability, observed execution,
|
|
27
|
+
failure effect, and remote enforcement. A configured coverage threshold is
|
|
28
|
+
not measured coverage. The live MCP `tools/list` schema is authoritative.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# `explain_restriction`
|
|
2
|
+
|
|
3
|
+
Retrieve one local restriction by the ID returned from `ci_restrictions`.
|
|
4
|
+
|
|
5
|
+
## When to use
|
|
6
|
+
|
|
7
|
+
Inspect its source digest and byte span, invocation, applicability, failure
|
|
8
|
+
effect, and unknowns before making a change.
|
|
9
|
+
|
|
10
|
+
## Inputs
|
|
11
|
+
|
|
12
|
+
- `id` (required): exact restriction ID.
|
|
13
|
+
- `scenario`: optional `event`, `branch`, and `changed_files` object.
|
|
14
|
+
- `output_format` and `expected_repository`: presentation and active-root guard.
|
|
15
|
+
|
|
16
|
+
## Minimal call
|
|
17
|
+
|
|
18
|
+
```json
|
|
19
|
+
{"name":"explain_restriction","arguments":{"id":".github/workflows/ci.yml/quality/3/rustfmt_check/1","output_format":"text"}}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
The live MCP `tools/list` schema is authoritative.
|