@modootoday/pmcp 0.5.1 → 0.7.0

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 CHANGED
@@ -70,6 +70,49 @@ Paths resolve against the file's directory. Keys are `roots`, `scopes`,
70
70
  the same meaning; an unknown key is an error. A flag replaces the file's list
71
71
  of its kind. `--config <file>` names another file and `--no-config` ignores it.
72
72
 
73
+ ## Native files for each agent tool
74
+
75
+ `pmcp project` writes what Claude Code, Codex, Gemini CLI, Grok Build and
76
+ Antigravity read natively, from cross-tool sources under `.agents/`
77
+ (`skills/<name>/SKILL.md`, `agents/<name>/agent.md`, `rules/*.md`) and the rest
78
+ of `pmcp.toml`:
79
+
80
+ ```toml
81
+ [targets]
82
+ tools = ["claude", "codex", "gemini", "grok", "antigravity"]
83
+
84
+ [skills.deploy]
85
+ invocation = "user" # the person starts it; the model is not offered it
86
+
87
+ [agents.reviewer.claude]
88
+ tools = "Read, Grep" # fields one tool reads stay out of agent.md
89
+
90
+ [rules.packages]
91
+ file = ".agent/rules/PACKAGE.RULE.md" # each package's path-scoped rule
92
+ strip = ["apps"] # dropped from derived link names
93
+
94
+ [mcp.skills]
95
+ command = "node"
96
+ args = ["${PROJECT_ROOT}/node_modules/@modootoday/pmcp/dist/cli.js", "serve"]
97
+ ```
98
+
99
+ ```sh
100
+ pmcp project # write
101
+ pmcp project --check # exit 2 on drift, stale or undeclared outputs
102
+ pmcp project add <name> # copy a catalog skill or agent into .agents/
103
+ pmcp project remove <name>
104
+ pmcp doctor # ask each installed tool what it loads
105
+ ```
106
+
107
+ Rules go to `.claude/rules/<dir>/`, never the top level, because Grok Build
108
+ loads top-level `.claude/rules/*.md` in every session regardless of `paths:`.
109
+ A server that names `${PROJECT_ROOT}` is launched through `sh`, which finds
110
+ `pmcp.toml` at spawn time, so the generated files hold no machine's path.
111
+ `pmcp.lock` records what was written; a file pmcp did not write is never
112
+ overwritten. `doctor` calls no model: it reads `claude mcp list`,
113
+ `codex mcp list`, `gemini skills list`, `gemini mcp list` and
114
+ `grok inspect --json`, and skips a tool that is not installed.
115
+
73
116
  ## Package skills
74
117
 
75
118
  Skills are discovered by filename, including `skills/`, `.agents/skills/`,
@@ -117,11 +160,18 @@ export default { fetch: (request: Request) => skills.fetch(request) };
117
160
 
118
161
  Put Origin and Host validation in front of it when it is mounted bare.
119
162
 
163
+ Pass `semantic: { cacheDir, localOnly: true }` to rank by meaning: the handler encodes
164
+ the catalog at start with `@huggingface/transformers` and the multilingual model, so an
165
+ intent in one language finds a description in another. Requests rank lexically until
166
+ `ready()` settles, and stay lexical when the encoder cannot load (`onError` says why).
167
+
120
168
  ## Runtime and licence
121
169
 
122
- Node.js 22 or later, or Bun 1.3 or later. Default ranking is lexical. The optional
123
- `index` command requires a separately installed encoder; it is not part of the
124
- default installation.
170
+ Node.js 22 or later, or Bun 1.3 or later. Default ranking is lexical. Semantic
171
+ ranking (the `index` command, or the HTTP handler's `semantic` option) needs
172
+ `@huggingface/transformers` installed separately; it is not part of the default
173
+ installation. The default encoder is `Xenova/multilingual-e5-small` (MIT, about
174
+ 130 MB), so vectors indexed with the earlier English-only default are re-encoded.
125
175
 
126
176
  Elastic License 2.0. See `LICENSE` and `NOTICE` for terms and dependency notices.
127
177
  Documentation: <https://pmcp.build>.