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 +17 -0
- package/README.md +19 -1
- package/dist/cli.js +565 -165
- package/package.json +6 -1
- package/src/__tests__/init.test.ts +0 -75
- package/src/__tests__/loaders/config.test.ts +0 -54
- package/src/__tests__/loaders/prompts.test.ts +0 -116
- package/src/__tests__/loaders/resources.test.ts +0 -86
- package/src/__tests__/loaders/tools.test.ts +0 -128
- package/src/__tests__/pack.test.ts +0 -98
- package/src/__tests__/validate.test.ts +0 -152
- package/src/cli.ts +0 -76
- package/src/commands/compile.ts +0 -166
- package/src/commands/init.ts +0 -353
- package/src/commands/pack.ts +0 -38
- package/src/commands/publish.ts +0 -17
- package/src/commands/run.ts +0 -105
- package/src/commands/validate.ts +0 -59
- package/src/compiler/merge-tools.ts +0 -99
- package/src/compiler/parse.ts +0 -236
- package/src/compiler/serialize.ts +0 -100
- package/src/compiler/types.ts +0 -27
- package/src/loaders/config.ts +0 -25
- package/src/loaders/prompts.ts +0 -60
- package/src/loaders/resources.ts +0 -54
- package/src/loaders/tools.ts +0 -68
- package/src/templates/prompts/greeting.md +0 -11
- package/src/templates/server.md +0 -9
- package/src/templates/tools/echo.md +0 -15
- package/tsconfig.json +0 -10
- package/tsup.config.ts +0 -13
- package/vitest.config.ts +0 -12
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
|
-
-
|
|
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.
|