mcpill 1.2.4 → 1.5.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/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.5.0
4
+
5
+ - `mcpill init` scaffolds `.mcpill/server/hooks/` with a commented `example-hook.md` stub covering all four Claude Code event types (`PreToolUse`, `PostToolUse`, `PreCompact`, `Stop`)
6
+ - `PILL.md` template now includes commented-out `## Hook:` and `## Prompt:` section stubs with inline field explanations
7
+ - `mcpill compile` merges user-defined hooks from `PILL.md` `## Hook:` blocks and `.mcpill/server/hooks/*.md` files alongside auto-generated `replaces:` hooks into a unified `.claude/settings.json` list; all four event types supported
8
+ - `pill-agent-guide.md` documents `## Hook:` sections, `.mcpill/server/hooks/*.md` files, and the `--no-hooks` flag
9
+
10
+ ## 1.4.0
11
+
12
+ - `mcpill compile` and `mcpill validate` now auto-run `npm install` in the server directory when `node_modules` is absent and the server has declared dependencies
13
+
14
+ ## 1.3.0
15
+
16
+ - `PILL.md` tool sections now accept a `replaces` field (comma-separated native tool names, e.g. `replaces: Read, Bash`); `mcpill compile` reads these and generates the `PreToolUse` hook without requiring a separate `AGENT.md`
17
+ - `AGENT.md` `## Tools` table still supported; AGENT.md wins on name conflict when both sources declare the same tool
18
+ - `mcpill init` template updated to include `replaces` in the example tool section
19
+
3
20
  ## 1.2.4
4
21
 
5
22
  - Fix: bump `mcpill-runtime` to `^0.1.2` — `0.1.0` dist imported `@ruco-ai/mcpster` (old scoped name), causing `ERR_MODULE_NOT_FOUND` on global install
package/README.md CHANGED
@@ -46,8 +46,10 @@ Scaffolds a new project in the current directory:
46
46
  - `.mcpill/pill-agent-guide.md` — agent instructions read by Claude when building from `PILL.md`
47
47
  - `.mcpill/server.md` — server config + resources
48
48
  - `.mcpill/server/prompts/greeting.md` — example prompt
49
+ - `.mcpill/server/hooks/example-hook.md` — stub hook file (see file for format; all fields commented out by default)
49
50
  - `.mcpill/HELLO-MCP.md` — ready-to-run example (copy into `PILL.md` to try it)
50
- - `package.json` — `{ type: "module", dependencies: { mcpill-runtime } }` run `npm install`
51
+ - `.claude/commands/create-pill.md` — `/create-pill` slash command; say `/create-pill` in Claude Code to start the guided pill-creation workflow
52
+ - `package.json` — `{ type: "module", dependencies: { mcpill-runtime } }` — deps are installed automatically by `mcpill compile` and `mcpill validate`
51
53
 
52
54
  ### `mcpill compile`
53
55
 
@@ -57,8 +59,24 @@ Compiles `server.md` + `tools/*.md` + `prompts/*.md` into a `.<name>/` pill arti
57
59
  mcpill compile # forward: source → pill
58
60
  mcpill compile --to-md # reverse: pill → source
59
61
  mcpill compile --strict # error on missing tool handlers (default: stub)
62
+ mcpill compile --no-hooks # skip writing PreToolUse hook to .claude/settings.json
60
63
  ```
61
64
 
65
+ Compile also writes a `PreToolUse` hook into `.claude/settings.json` that warns Claude to use the pill's MCP tools instead of native file tools (`Read`, `Bash`, etc.). Hook mappings are read from two sources, merged at compile time — rerun `mcpill compile` after any change:
66
+
67
+ - **`PILL.md`** (recommended) — add a `replaces` field to any `## Tool:` section:
68
+
69
+ ```markdown
70
+ ## Tool: read-chunks
71
+
72
+ description: Read a file by token-sized chunks.
73
+ replaces: Read
74
+ behavior: |
75
+ ...
76
+ ```
77
+
78
+ - **`AGENT.md`** — a `## Tools` table with a `Replaces` column (existing format). AGENT.md wins on name conflicts.
79
+
62
80
  ### `mcpill validate`
63
81
 
64
82
  Validates all pill directories (`.<name>/`) in the project root.