memento-mori-jester 0.1.6 → 0.1.7
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 +9 -0
- package/README.md +34 -12
- package/dist/cli.js +50 -0
- package/dist/cli.js.map +1 -1
- package/docs/AGENTS.md +2 -0
- package/docs/CLI.md +11 -0
- package/docs/DEMO.md +101 -13
- package/docs/MCP_TOOLS.md +152 -0
- package/docs/RELEASE.md +1 -0
- package/docs/RELEASE_NOTES_v0.1.7.md +23 -0
- package/package.json +1 -1
- package/scripts/install.ps1 +30 -30
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to Memento Mori Jester are tracked here.
|
|
4
4
|
|
|
5
|
+
## Unreleased
|
|
6
|
+
|
|
7
|
+
## 0.1.7
|
|
8
|
+
|
|
9
|
+
- Added `jester examples` for copy-paste onboarding commands and example links.
|
|
10
|
+
- Polished the README homepage around the shortest npm path.
|
|
11
|
+
- Added MCP tool input/output reference docs.
|
|
12
|
+
- Added a fuller demo transcript.
|
|
13
|
+
|
|
5
14
|
## 0.1.6
|
|
6
15
|
|
|
7
16
|
- Added copy-paste examples for Codex, Claude Code, generic MCP clients, and git-hook-only use.
|
package/README.md
CHANGED
|
@@ -4,24 +4,51 @@
|
|
|
4
4
|
[](https://www.npmjs.com/package/memento-mori-jester)
|
|
5
5
|
[](LICENSE)
|
|
6
6
|
|
|
7
|
-
A local court-jester sidecar for AI coding agents. It reviews plans, shell commands, diffs, and final answers
|
|
7
|
+
A local court-jester sidecar for AI coding agents. It reviews plans, shell commands, diffs, and final answers before they get too pleased with themselves.
|
|
8
8
|
|
|
9
9
|
It roasts the reasoning, not the human.
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Start Here
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
No install needed:
|
|
14
14
|
|
|
15
15
|
```powershell
|
|
16
|
+
npx -y memento-mori-jester@latest doctor
|
|
16
17
|
npx -y memento-mori-jester@latest command "git reset --hard"
|
|
17
18
|
```
|
|
18
19
|
|
|
19
|
-
|
|
20
|
+
Add it to a project:
|
|
20
21
|
|
|
21
22
|
```powershell
|
|
22
23
|
npx -y memento-mori-jester@latest bootstrap --preset node
|
|
23
24
|
```
|
|
24
25
|
|
|
26
|
+
That writes:
|
|
27
|
+
|
|
28
|
+
- `jester.config.json`
|
|
29
|
+
- `memento-mori.mcp.json`
|
|
30
|
+
- `MEMENTO_MORI.md`
|
|
31
|
+
|
|
32
|
+
Expected vibe:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
Jester verdict: BLOCK (100/100)
|
|
36
|
+
A dazzling command, if the desired outcome is court-sponsored regret.
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## What It Does
|
|
40
|
+
|
|
41
|
+
| Surface | Example | What it catches |
|
|
42
|
+
| --- | --- | --- |
|
|
43
|
+
| Plans | `jester plan "I will just refactor auth and ship it"` | overconfidence, missing verification, risky domains |
|
|
44
|
+
| Commands | `jester command "git reset --hard"` | destructive shell commands and broad file operations |
|
|
45
|
+
| Diffs | `git diff \| jester diff --fail-on block` | removed tests, install scripts, env/config risks |
|
|
46
|
+
| Final answers | `jester final --file final.txt` | done/fixed claims without evidence |
|
|
47
|
+
| Examples | `jester examples` | copy-paste commands and links for new users |
|
|
48
|
+
| Agents | `jester mcp-config --mode npx` | MCP tools for Codex, Claude Code, and other clients |
|
|
49
|
+
|
|
50
|
+
## Try It Locally
|
|
51
|
+
|
|
25
52
|
Installed globally:
|
|
26
53
|
|
|
27
54
|
```powershell
|
|
@@ -36,14 +63,7 @@ git clone https://github.com/Martin123132/Memento-Mori.git
|
|
|
36
63
|
cd Memento-Mori
|
|
37
64
|
npm.cmd install
|
|
38
65
|
npm.cmd run build
|
|
39
|
-
node .\dist\cli.js
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Expected vibe:
|
|
43
|
-
|
|
44
|
-
```text
|
|
45
|
-
Jester verdict: BLOCK (100/100)
|
|
46
|
-
A dazzling command, if the desired outcome is court-sponsored regret.
|
|
66
|
+
node .\dist\cli.js doctor
|
|
47
67
|
```
|
|
48
68
|
|
|
49
69
|
## Setup Wizard
|
|
@@ -89,6 +109,7 @@ jester command "git reset --hard"
|
|
|
89
109
|
git diff | jester diff --fail-on block
|
|
90
110
|
jester final --file .\final-answer.txt --tone professional
|
|
91
111
|
jester doctor
|
|
112
|
+
jester examples
|
|
92
113
|
jester bootstrap --preset node
|
|
93
114
|
jester config init
|
|
94
115
|
jester install-hook pre-commit
|
|
@@ -251,6 +272,7 @@ More setup examples:
|
|
|
251
272
|
- [Codex Setup](docs/CODEX.md)
|
|
252
273
|
- [Claude Code Setup](docs/CLAUDE_CODE.md)
|
|
253
274
|
- [Agent Setup](docs/AGENTS.md)
|
|
275
|
+
- [MCP Tool Reference](docs/MCP_TOOLS.md)
|
|
254
276
|
- [GitHub Actions](docs/GITHUB_ACTIONS.md)
|
|
255
277
|
- [Demo Script](docs/DEMO.md)
|
|
256
278
|
- [Examples](examples)
|
package/dist/cli.js
CHANGED
|
@@ -37,6 +37,11 @@ async function main(argv) {
|
|
|
37
37
|
output.write(await handleBootstrap(argv.slice(1)));
|
|
38
38
|
return;
|
|
39
39
|
}
|
|
40
|
+
if (argv[0] === "examples") {
|
|
41
|
+
const setupOptions = parseSetupOptions(argv.slice(1));
|
|
42
|
+
output.write(renderExamples(setupOptions));
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
40
45
|
if (argv[0] === "config") {
|
|
41
46
|
output.write(await handleConfigCommand(argv.slice(1)));
|
|
42
47
|
return;
|
|
@@ -402,6 +407,50 @@ Useful next checks:
|
|
|
402
407
|
${cliCommand} plan "I will just refactor auth and ship it"
|
|
403
408
|
`;
|
|
404
409
|
}
|
|
410
|
+
function renderExamples(options) {
|
|
411
|
+
const cliCommand = renderCliCommand(options);
|
|
412
|
+
const examples = {
|
|
413
|
+
quickChecks: [
|
|
414
|
+
`${cliCommand} doctor`,
|
|
415
|
+
`${cliCommand} command "git reset --hard"`,
|
|
416
|
+
`${cliCommand} plan "I will just refactor auth and ship it"`,
|
|
417
|
+
`git diff | ${cliCommand} diff --fail-on block`,
|
|
418
|
+
`${cliCommand} final "Implemented the fix, but tests not run."`
|
|
419
|
+
],
|
|
420
|
+
setup: [
|
|
421
|
+
`${cliCommand} init --agent ${options.agent} --mode ${options.mode}`,
|
|
422
|
+
`${cliCommand} mcp-config --mode ${options.mode}`,
|
|
423
|
+
`${cliCommand} bootstrap --preset node`,
|
|
424
|
+
`${cliCommand} bootstrap --preset node --hook pre-commit`
|
|
425
|
+
],
|
|
426
|
+
docs: [
|
|
427
|
+
"https://github.com/Martin123132/Memento-Mori/blob/main/docs/GETTING_STARTED.md",
|
|
428
|
+
"https://github.com/Martin123132/Memento-Mori/blob/main/docs/CLI.md",
|
|
429
|
+
"https://github.com/Martin123132/Memento-Mori/blob/main/docs/MCP_TOOLS.md",
|
|
430
|
+
"https://github.com/Martin123132/Memento-Mori/tree/main/examples"
|
|
431
|
+
]
|
|
432
|
+
};
|
|
433
|
+
if (options.json) {
|
|
434
|
+
return `${JSON.stringify({ mode: options.mode, agent: options.agent, examples }, null, 2)}\n`;
|
|
435
|
+
}
|
|
436
|
+
return `Memento Mori Jester examples
|
|
437
|
+
|
|
438
|
+
Quick checks:
|
|
439
|
+
${examples.quickChecks.map((command) => ` ${command}`).join("\n")}
|
|
440
|
+
|
|
441
|
+
Setup:
|
|
442
|
+
${examples.setup.map((command) => ` ${command}`).join("\n")}
|
|
443
|
+
|
|
444
|
+
Example files:
|
|
445
|
+
Codex: https://github.com/Martin123132/Memento-Mori/tree/main/examples/codex
|
|
446
|
+
Claude Code: https://github.com/Martin123132/Memento-Mori/tree/main/examples/claude-code
|
|
447
|
+
Generic MCP: https://github.com/Martin123132/Memento-Mori/tree/main/examples/generic-mcp
|
|
448
|
+
Git hooks only: https://github.com/Martin123132/Memento-Mori/tree/main/examples/git-hooks-only
|
|
449
|
+
|
|
450
|
+
Docs:
|
|
451
|
+
${examples.docs.map((doc) => ` ${doc}`).join("\n")}
|
|
452
|
+
`;
|
|
453
|
+
}
|
|
405
454
|
function renderCliCommand(options) {
|
|
406
455
|
if (options.mode === "global") {
|
|
407
456
|
return "jester";
|
|
@@ -748,6 +797,7 @@ Usage:
|
|
|
748
797
|
git diff | jester diff --fail-on block
|
|
749
798
|
jester final --file final-answer.txt --tone professional
|
|
750
799
|
jester init
|
|
800
|
+
jester examples
|
|
751
801
|
jester bootstrap --preset node
|
|
752
802
|
jester doctor
|
|
753
803
|
jester config init
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/docs/AGENTS.md
CHANGED
|
@@ -137,3 +137,5 @@ Agents do not need to pass the config manually. The MCP server searches upward f
|
|
|
137
137
|
- `.jester.json`
|
|
138
138
|
|
|
139
139
|
If an agent invokes tools outside the project directory, pass `configPath` to the MCP tool.
|
|
140
|
+
|
|
141
|
+
For exact tool inputs and outputs, see [MCP_TOOLS.md](MCP_TOOLS.md).
|
package/docs/CLI.md
CHANGED
|
@@ -23,6 +23,17 @@ After that, use `jester` directly:
|
|
|
23
23
|
jester command "Remove-Item .\dist -Recurse -Force"
|
|
24
24
|
jester final --file .\final-answer.txt --tone professional
|
|
25
25
|
git diff | jester diff --fail-on block
|
|
26
|
+
jester examples
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Examples
|
|
30
|
+
|
|
31
|
+
Print a compact list of copy-paste commands and setup links. This command is available in local checkouts now and will be available through `npx` after the next npm release:
|
|
32
|
+
|
|
33
|
+
```powershell
|
|
34
|
+
jester examples
|
|
35
|
+
jester examples --agent codex --mode npx
|
|
36
|
+
jester examples --json
|
|
26
37
|
```
|
|
27
38
|
|
|
28
39
|
## Bootstrap A Repo
|
package/docs/DEMO.md
CHANGED
|
@@ -1,32 +1,73 @@
|
|
|
1
|
-
# Demo
|
|
1
|
+
# Demo Transcript
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
This is a short script for showing what Memento Mori Jester does.
|
|
4
4
|
|
|
5
5
|
## 1. Health Check
|
|
6
6
|
|
|
7
|
+
Command:
|
|
8
|
+
|
|
7
9
|
```powershell
|
|
8
10
|
npx -y memento-mori-jester@latest doctor
|
|
9
11
|
```
|
|
10
12
|
|
|
11
|
-
|
|
13
|
+
Typical output:
|
|
14
|
+
|
|
15
|
+
```text
|
|
16
|
+
Memento Mori Jester doctor
|
|
17
|
+
|
|
18
|
+
PASS node-version: Node v24.15.0; required >=20.
|
|
19
|
+
PASS mcp-server-file: ...\node_modules\memento-mori-jester\dist\server.js
|
|
20
|
+
PASS review-engine: Dangerous git command is blocked.
|
|
21
|
+
PASS config: No config file found; using built-in defaults.
|
|
22
|
+
|
|
23
|
+
The fool is fit for court.
|
|
24
|
+
```
|
|
12
25
|
|
|
13
26
|
## 2. Dangerous Command Review
|
|
14
27
|
|
|
28
|
+
Command:
|
|
29
|
+
|
|
15
30
|
```powershell
|
|
16
31
|
npx -y memento-mori-jester@latest command "git reset --hard"
|
|
17
32
|
```
|
|
18
33
|
|
|
19
|
-
|
|
34
|
+
Typical output:
|
|
35
|
+
|
|
36
|
+
```text
|
|
37
|
+
Jester verdict: BLOCK (100/100)
|
|
38
|
+
A dazzling command, if the desired outcome is court-sponsored regret.
|
|
39
|
+
|
|
40
|
+
Concerns:
|
|
41
|
+
- [S5] Destructive git operation: This can discard local work or remove untracked files. Evidence: git reset --hard
|
|
42
|
+
|
|
43
|
+
Suggested checks:
|
|
44
|
+
- Inspect `git status`, confirm the target branch, and make a backup or stash before running it.
|
|
45
|
+
```
|
|
20
46
|
|
|
21
47
|
## 3. Overconfident Plan Review
|
|
22
48
|
|
|
49
|
+
Command:
|
|
50
|
+
|
|
23
51
|
```powershell
|
|
24
52
|
npx -y memento-mori-jester@latest plan "I will just refactor auth and ship it"
|
|
25
53
|
```
|
|
26
54
|
|
|
27
|
-
|
|
55
|
+
Typical output:
|
|
56
|
+
|
|
57
|
+
```text
|
|
58
|
+
Jester verdict: CAUTION
|
|
59
|
+
|
|
60
|
+
Concerns:
|
|
61
|
+
- Confidence theater
|
|
62
|
+
- No verification step
|
|
63
|
+
- High-risk domain touched
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
The exact wording varies by tone, but the point should be clear: add evidence before marching onward.
|
|
67
|
+
|
|
68
|
+
## 4. Bootstrap A Project
|
|
28
69
|
|
|
29
|
-
|
|
70
|
+
Command:
|
|
30
71
|
|
|
31
72
|
```powershell
|
|
32
73
|
mkdir jester-demo
|
|
@@ -34,16 +75,63 @@ cd jester-demo
|
|
|
34
75
|
npx -y memento-mori-jester@latest bootstrap --preset node
|
|
35
76
|
```
|
|
36
77
|
|
|
37
|
-
|
|
78
|
+
Typical output:
|
|
38
79
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
- `MEMENTO_MORI.md`
|
|
80
|
+
```text
|
|
81
|
+
Memento Mori Jester bootstrap
|
|
42
82
|
|
|
43
|
-
|
|
83
|
+
Files:
|
|
84
|
+
wrote ...\jester.config.json
|
|
85
|
+
wrote ...\memento-mori.mcp.json
|
|
86
|
+
wrote ...\MEMENTO_MORI.md
|
|
87
|
+
|
|
88
|
+
Next:
|
|
89
|
+
npx -y memento-mori-jester@latest doctor
|
|
90
|
+
npx -y memento-mori-jester@latest config validate
|
|
91
|
+
Add memento-mori.mcp.json to your MCP client, or copy the command and args from it.
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## 5. Final Answer Check
|
|
95
|
+
|
|
96
|
+
Command:
|
|
44
97
|
|
|
45
98
|
```powershell
|
|
46
|
-
npx -y memento-mori-jester@latest
|
|
99
|
+
npx -y memento-mori-jester@latest final "Implemented the fix, but tests not run."
|
|
47
100
|
```
|
|
48
101
|
|
|
49
|
-
|
|
102
|
+
Typical output:
|
|
103
|
+
|
|
104
|
+
```text
|
|
105
|
+
Jester verdict: CAUTION
|
|
106
|
+
|
|
107
|
+
Concerns:
|
|
108
|
+
- [S3] Final answer says tests were not run
|
|
109
|
+
|
|
110
|
+
Suggested checks:
|
|
111
|
+
- State what remains unverified and the exact command or manual check someone should run next.
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## 6. MCP Setup Preview
|
|
115
|
+
|
|
116
|
+
Command:
|
|
117
|
+
|
|
118
|
+
```powershell
|
|
119
|
+
npx -y memento-mori-jester@latest mcp-config --mode npx
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Output:
|
|
123
|
+
|
|
124
|
+
```json
|
|
125
|
+
{
|
|
126
|
+
"mcpServers": {
|
|
127
|
+
"memento-mori-jester": {
|
|
128
|
+
"command": "npx",
|
|
129
|
+
"args": [
|
|
130
|
+
"-y",
|
|
131
|
+
"memento-mori-jester@latest",
|
|
132
|
+
"mcp-server"
|
|
133
|
+
]
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
```
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# MCP Tool Reference
|
|
2
|
+
|
|
3
|
+
Memento Mori Jester runs as an MCP stdio server:
|
|
4
|
+
|
|
5
|
+
```powershell
|
|
6
|
+
npx -y memento-mori-jester@latest mcp-server
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Generate a copy-paste MCP config:
|
|
10
|
+
|
|
11
|
+
```powershell
|
|
12
|
+
npx -y memento-mori-jester@latest mcp-config --mode npx
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Shared Options
|
|
16
|
+
|
|
17
|
+
All tools accept these optional fields:
|
|
18
|
+
|
|
19
|
+
| Field | Type | Notes |
|
|
20
|
+
| --- | --- | --- |
|
|
21
|
+
| `subject` | string | Short label for what is being reviewed. |
|
|
22
|
+
| `context` | string | Extra project or task context. |
|
|
23
|
+
| `tone` | string | `gentle_stoic`, `court_jester`, `absolute_menace`, or `professional`. |
|
|
24
|
+
| `intensity` | number | Integer from `1` to `5`. |
|
|
25
|
+
| `riskTolerance` | string | `low`, `medium`, or `high`. |
|
|
26
|
+
| `configPath` | string | Explicit path to `jester.config.json` or `.jester.json`. |
|
|
27
|
+
| `noConfig` | boolean | Ignore project config discovery. |
|
|
28
|
+
|
|
29
|
+
By default, the MCP server searches upward from the current working directory for:
|
|
30
|
+
|
|
31
|
+
- `jester.config.json`
|
|
32
|
+
- `.jester.json`
|
|
33
|
+
|
|
34
|
+
## `jester_review_plan`
|
|
35
|
+
|
|
36
|
+
Reviews an agent plan before implementation.
|
|
37
|
+
|
|
38
|
+
Required input:
|
|
39
|
+
|
|
40
|
+
```json
|
|
41
|
+
{
|
|
42
|
+
"plan": "I will just refactor auth and ship it."
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Good moments to call it:
|
|
47
|
+
|
|
48
|
+
- before large edits
|
|
49
|
+
- before migrations
|
|
50
|
+
- before release/deploy work
|
|
51
|
+
- when the plan sounds confident but light on verification
|
|
52
|
+
|
|
53
|
+
## `jester_check_command`
|
|
54
|
+
|
|
55
|
+
Reviews a shell command as text before it is run.
|
|
56
|
+
|
|
57
|
+
Required input:
|
|
58
|
+
|
|
59
|
+
```json
|
|
60
|
+
{
|
|
61
|
+
"command": "git reset --hard"
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Good moments to call it:
|
|
66
|
+
|
|
67
|
+
- before destructive git commands
|
|
68
|
+
- before recursive file operations
|
|
69
|
+
- before `curl | sh` style install commands
|
|
70
|
+
- before production or database commands
|
|
71
|
+
|
|
72
|
+
## `jester_review_diff`
|
|
73
|
+
|
|
74
|
+
Reviews a code diff.
|
|
75
|
+
|
|
76
|
+
Required input:
|
|
77
|
+
|
|
78
|
+
```json
|
|
79
|
+
{
|
|
80
|
+
"diff": "diff --git a/package.json b/package.json\n..."
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Good moments to call it:
|
|
85
|
+
|
|
86
|
+
- before committing
|
|
87
|
+
- before pushing
|
|
88
|
+
- before summarizing risky code changes
|
|
89
|
+
- when tests, config, secrets, auth, billing, or package scripts were touched
|
|
90
|
+
|
|
91
|
+
## `jester_final_answer_roast`
|
|
92
|
+
|
|
93
|
+
Reviews a final answer before an agent sends it.
|
|
94
|
+
|
|
95
|
+
Required input:
|
|
96
|
+
|
|
97
|
+
```json
|
|
98
|
+
{
|
|
99
|
+
"answer": "Implemented the fix, but tests not run."
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Good moments to call it:
|
|
104
|
+
|
|
105
|
+
- before claiming something is fixed
|
|
106
|
+
- before saying tests passed
|
|
107
|
+
- before handing off unverified work
|
|
108
|
+
- when the answer should mention limitations clearly
|
|
109
|
+
|
|
110
|
+
## Output Shape
|
|
111
|
+
|
|
112
|
+
Each tool returns a human-readable text review and structured content with this shape:
|
|
113
|
+
|
|
114
|
+
```json
|
|
115
|
+
{
|
|
116
|
+
"kind": "command",
|
|
117
|
+
"subject": "shell command",
|
|
118
|
+
"verdict": "block",
|
|
119
|
+
"riskScore": 100,
|
|
120
|
+
"tone": "court_jester",
|
|
121
|
+
"intensity": 3,
|
|
122
|
+
"jab": "A dazzling command, if the desired outcome is court-sponsored regret.",
|
|
123
|
+
"memento": "Memento mori: every shortcut sends an invoice eventually.",
|
|
124
|
+
"issues": [
|
|
125
|
+
{
|
|
126
|
+
"id": "destructive-git-history",
|
|
127
|
+
"severity": 5,
|
|
128
|
+
"title": "Destructive git operation",
|
|
129
|
+
"detail": "This can discard local work or remove untracked files.",
|
|
130
|
+
"suggestedCheck": "Inspect `git status`, confirm the target branch, and make a backup or stash before running it.",
|
|
131
|
+
"evidence": "git reset --hard"
|
|
132
|
+
}
|
|
133
|
+
],
|
|
134
|
+
"suggestedChecks": [
|
|
135
|
+
"Inspect `git status`, confirm the target branch, and make a backup or stash before running it."
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Verdicts:
|
|
141
|
+
|
|
142
|
+
- `pass`: no obvious concern found
|
|
143
|
+
- `caution`: proceed only with a concrete check
|
|
144
|
+
- `block`: change the plan or command before continuing
|
|
145
|
+
|
|
146
|
+
Severity runs from `1` to `5`, where `5` is the highest risk.
|
|
147
|
+
|
|
148
|
+
## Suggested Agent Rule
|
|
149
|
+
|
|
150
|
+
```text
|
|
151
|
+
Before risky commands, final answers, commits, or large edits, call the Memento Mori Jester. Treat BLOCK as requiring a changed plan, and CAUTION as requiring at least one concrete verification step.
|
|
152
|
+
```
|
package/docs/RELEASE.md
CHANGED
|
@@ -25,6 +25,7 @@ The package publishes these bins:
|
|
|
25
25
|
|
|
26
26
|
```powershell
|
|
27
27
|
npx -y memento-mori-jester@latest doctor
|
|
28
|
+
npx -y memento-mori-jester@latest examples
|
|
28
29
|
npx -y memento-mori-jester@latest command "git reset --hard"
|
|
29
30
|
npx -y memento-mori-jester@latest init
|
|
30
31
|
npx -y memento-mori-jester@latest bootstrap --preset node
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# v0.1.7 Release Notes
|
|
2
|
+
|
|
3
|
+
This release makes the public package easier to try, explain, and wire into agent clients.
|
|
4
|
+
|
|
5
|
+
## Added
|
|
6
|
+
|
|
7
|
+
- `jester examples`, a quick command that prints copy-paste CLI checks, setup commands, and example links.
|
|
8
|
+
- MCP tool reference docs covering inputs, shared options, output shape, verdicts, and suggested agent rules.
|
|
9
|
+
|
|
10
|
+
## Improved Docs
|
|
11
|
+
|
|
12
|
+
- README start-here path now focuses on the shortest useful npm commands.
|
|
13
|
+
- Demo transcript now shows a fuller end-to-end flow.
|
|
14
|
+
- CLI docs now mention the new examples command and its JSON output.
|
|
15
|
+
|
|
16
|
+
## Useful Commands
|
|
17
|
+
|
|
18
|
+
```powershell
|
|
19
|
+
npx -y memento-mori-jester@latest doctor
|
|
20
|
+
npx -y memento-mori-jester@latest examples
|
|
21
|
+
npx -y memento-mori-jester@latest command "git reset --hard"
|
|
22
|
+
npx -y memento-mori-jester@latest mcp-config --mode npx
|
|
23
|
+
```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "memento-mori-jester",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "A local court-jester sidecar for AI coding agents: review plans, commands, diffs, and final claims before they get too pleased with themselves.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
package/scripts/install.ps1
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
param(
|
|
2
|
-
[string]$PackageSpec = "memento-mori-jester@latest",
|
|
3
|
-
[ValidateSet("npx", "global")]
|
|
4
|
-
[string]$Mode = "npx"
|
|
5
|
-
)
|
|
6
|
-
|
|
7
|
-
$ErrorActionPreference = "Stop"
|
|
8
|
-
|
|
9
|
-
function Assert-Command($Name, $InstallHint) {
|
|
10
|
-
if (-not (Get-Command $Name -ErrorAction SilentlyContinue)) {
|
|
11
|
-
throw "$Name was not found. $InstallHint"
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
Assert-Command "node" "Install Node.js 20 or newer, then run this script again."
|
|
16
|
-
Assert-Command "npm.cmd" "Install npm with Node.js, then run this script again."
|
|
17
|
-
|
|
18
|
-
$nodeMajor = [int](& node -p "process.versions.node.split('.')[0]")
|
|
19
|
-
if ($nodeMajor -lt 20) {
|
|
20
|
-
throw "Node.js 20 or newer is required. Found: $(& node --version)"
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
if ($Mode -eq "global") {
|
|
24
|
-
& npm.cmd install -g $PackageSpec
|
|
25
|
-
& jester doctor
|
|
26
|
-
& jester mcp-config --mode global
|
|
27
|
-
} else {
|
|
28
|
-
& npx -y $PackageSpec doctor
|
|
29
|
-
& npx -y $PackageSpec mcp-config --mode npx --package $PackageSpec
|
|
30
|
-
}
|
|
1
|
+
param(
|
|
2
|
+
[string]$PackageSpec = "memento-mori-jester@latest",
|
|
3
|
+
[ValidateSet("npx", "global")]
|
|
4
|
+
[string]$Mode = "npx"
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
$ErrorActionPreference = "Stop"
|
|
8
|
+
|
|
9
|
+
function Assert-Command($Name, $InstallHint) {
|
|
10
|
+
if (-not (Get-Command $Name -ErrorAction SilentlyContinue)) {
|
|
11
|
+
throw "$Name was not found. $InstallHint"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
Assert-Command "node" "Install Node.js 20 or newer, then run this script again."
|
|
16
|
+
Assert-Command "npm.cmd" "Install npm with Node.js, then run this script again."
|
|
17
|
+
|
|
18
|
+
$nodeMajor = [int](& node -p "process.versions.node.split('.')[0]")
|
|
19
|
+
if ($nodeMajor -lt 20) {
|
|
20
|
+
throw "Node.js 20 or newer is required. Found: $(& node --version)"
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
if ($Mode -eq "global") {
|
|
24
|
+
& npm.cmd install -g $PackageSpec
|
|
25
|
+
& jester doctor
|
|
26
|
+
& jester mcp-config --mode global
|
|
27
|
+
} else {
|
|
28
|
+
& npx -y $PackageSpec doctor
|
|
29
|
+
& npx -y $PackageSpec mcp-config --mode npx --package $PackageSpec
|
|
30
|
+
}
|