@euqns/nudge-mcp 0.8.0 → 0.10.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/dist/codex-companion.js +6 -2
- package/dist/codex-companion.js.map +1 -1
- package/dist/engines/claude.js +31 -3
- package/dist/engines/claude.js.map +1 -1
- package/dist/engines/codex.js +51 -14
- package/dist/engines/codex.js.map +1 -1
- package/dist/engines/isolation.js +124 -0
- package/dist/engines/isolation.js.map +1 -0
- package/dist/engines/pricing.js +67 -0
- package/dist/engines/pricing.js.map +1 -0
- package/dist/engines/types.js +7 -1
- package/dist/engines/types.js.map +1 -1
- package/dist/index.js +187 -3
- package/dist/index.js.map +1 -1
- package/dist/runner.js +102 -33
- package/dist/runner.js.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
// Cost estimation for runs that aren't billed per token.
|
|
2
|
+
//
|
|
3
|
+
// A Codex job on a ChatGPT plan has no marginal charge, so there is no invoice
|
|
4
|
+
// to read — but the tokens are real and knowing what they'd have cost is useful
|
|
5
|
+
// for deciding whether a task was worth running. This computes that figure from
|
|
6
|
+
// published list prices and labels it `estimated`, distinct from the `reported`
|
|
7
|
+
// figure Claude Code returns and from `subscription` (no estimate available).
|
|
8
|
+
//
|
|
9
|
+
// The table is a snapshot and will drift. When a model isn't listed we return
|
|
10
|
+
// null rather than guessing with a neighbouring model's rate — a wrong number
|
|
11
|
+
// presented as a number is worse than an honest blank.
|
|
12
|
+
//
|
|
13
|
+
// Rates are USD per 1M tokens, checked 2026-08-10:
|
|
14
|
+
// https://devtk.ai/en/blog/openai-api-pricing-guide-2026/
|
|
15
|
+
// https://www.aipricing.guru/openai-pricing/
|
|
16
|
+
// Override any of them with NUDGE_PRICING (JSON), e.g.
|
|
17
|
+
// NUDGE_PRICING='{"gpt-5.6-sol":{"input":5,"output":30,"cachedInput":0.5}}'
|
|
18
|
+
const BUILT_IN = {
|
|
19
|
+
"gpt-5.6-sol": { input: 5.0, output: 30.0, cachedInput: 0.5 },
|
|
20
|
+
"gpt-5.6-terra": { input: 2.0, output: 12.0, cachedInput: 0.2 },
|
|
21
|
+
"gpt-5.6-luna": { input: 0.2, output: 1.2, cachedInput: 0.02 },
|
|
22
|
+
};
|
|
23
|
+
function table() {
|
|
24
|
+
const raw = process.env.NUDGE_PRICING;
|
|
25
|
+
if (!raw)
|
|
26
|
+
return BUILT_IN;
|
|
27
|
+
try {
|
|
28
|
+
return { ...BUILT_IN, ...JSON.parse(raw) };
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return BUILT_IN;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// Match the longest configured key that prefixes the model id, so a dated
|
|
35
|
+
// variant ("gpt-5.6-sol-2026-07-09") still resolves to its family rate.
|
|
36
|
+
export function rateFor(model) {
|
|
37
|
+
if (!model)
|
|
38
|
+
return null;
|
|
39
|
+
const rates = table();
|
|
40
|
+
if (rates[model])
|
|
41
|
+
return rates[model];
|
|
42
|
+
const key = Object.keys(rates)
|
|
43
|
+
.filter((k) => model.startsWith(k))
|
|
44
|
+
.sort((a, b) => b.length - a.length)[0];
|
|
45
|
+
return key ? rates[key] : null;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* What this usage would have cost at list price, or null when the model isn't
|
|
49
|
+
* in the table. Cached input is billed at its own (much lower) rate, and the
|
|
50
|
+
* uncached remainder at the full input rate — counting cached tokens twice
|
|
51
|
+
* would materially overstate a long agent run, where most input is cache reads.
|
|
52
|
+
*/
|
|
53
|
+
export function estimateCostUsd(model, usage) {
|
|
54
|
+
const rate = rateFor(model);
|
|
55
|
+
if (!rate)
|
|
56
|
+
return null;
|
|
57
|
+
const cached = usage.cachedInputTokens ?? 0;
|
|
58
|
+
const uncachedInput = Math.max(0, usage.inputTokens - cached);
|
|
59
|
+
const cachedRate = rate.cachedInput ?? rate.input;
|
|
60
|
+
const cost = (uncachedInput / 1_000_000) * rate.input +
|
|
61
|
+
(cached / 1_000_000) * cachedRate +
|
|
62
|
+
// Reasoning tokens are billed as output on these models and are already
|
|
63
|
+
// included in output_tokens by the Codex SDK, so they are not added again.
|
|
64
|
+
(usage.outputTokens / 1_000_000) * rate.output;
|
|
65
|
+
return Math.round(cost * 1_000_000) / 1_000_000;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=pricing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pricing.js","sourceRoot":"","sources":["../../src/engines/pricing.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAChF,8EAA8E;AAC9E,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,uDAAuD;AACvD,EAAE;AACF,mDAAmD;AACnD,4DAA4D;AAC5D,+CAA+C;AAC/C,uDAAuD;AACvD,8EAA8E;AAW9E,MAAM,QAAQ,GAA8B;IAC1C,aAAa,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;IAC7D,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;IAC/D,cAAc,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE;CAC/D,CAAC;AAEF,SAAS,KAAK;IACZ,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC;IAC1B,IAAI,CAAC;QACH,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAA+B,EAAE,CAAC;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,wEAAwE;AACxE,MAAM,UAAU,OAAO,CAAC,KAAgC;IACtD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC;IACtB,IAAI,KAAK,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;SAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAgC,EAChC,KAAkB;IAElB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,MAAM,GAAG,KAAK,CAAC,iBAAiB,IAAI,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC;IAElD,MAAM,IAAI,GACR,CAAC,aAAa,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK;QACxC,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,UAAU;QACjC,wEAAwE;QACxE,2EAA2E;QAC3E,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IAEjD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;AAClD,CAAC"}
|
package/dist/engines/types.js
CHANGED
|
@@ -27,7 +27,13 @@ export const TRIAGE_SCHEMA = {
|
|
|
27
27
|
},
|
|
28
28
|
confidence: { type: "number", description: "0 to 1." },
|
|
29
29
|
},
|
|
30
|
-
|
|
30
|
+
// EVERY property must be listed. Codex validates this schema under OpenAI's
|
|
31
|
+
// strict structured-output rules, where a property that isn't required is a
|
|
32
|
+
// hard rejection — and the failure surfaces only as `Codex Exec exited with
|
|
33
|
+
// code 1` with no explanation, which is a miserable thing to debug. Optional
|
|
34
|
+
// semantics are expressed by letting the model send an empty array / 0
|
|
35
|
+
// rather than by omitting the key.
|
|
36
|
+
required: ["verdict", "reason", "questions", "confidence"],
|
|
31
37
|
additionalProperties: false,
|
|
32
38
|
};
|
|
33
39
|
// Deliberately biased toward attempting the work. A triage step that bounces
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engines/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,EAAE;AACF,iEAAiE;AACjE,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,kEAAkE;AAClE,EAAE;AACF,yEAAyE;AACzE,qEAAqE;AACrE,yEAAyE;AACzE,iCAAiC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engines/types.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -12,8 +12,9 @@
|
|
|
12
12
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
13
13
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
14
14
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
15
|
-
import { ConvexHttpClient } from "convex/browser";
|
|
15
|
+
import { ConvexClient, ConvexHttpClient } from "convex/browser";
|
|
16
16
|
import { makeFunctionReference } from "convex/server";
|
|
17
|
+
import { randomUUID } from "node:crypto";
|
|
17
18
|
import { z } from "zod";
|
|
18
19
|
import { CREDENTIALS_PATH, readCredentials } from "./credentials.js";
|
|
19
20
|
import { runCodexCompanion } from "./codex-companion.js";
|
|
@@ -80,7 +81,32 @@ if (subcommand === "--help" || subcommand === "-h" || subcommand === "help") {
|
|
|
80
81
|
const stored = await readCredentials();
|
|
81
82
|
const CONVEX_URL = process.env.NUDGE_CONVEX_URL ?? stored?.convexUrl;
|
|
82
83
|
const TOKEN = process.env.NUDGE_TOKEN ?? stored?.token;
|
|
83
|
-
|
|
84
|
+
// ---- runner mode ----------------------------------------------------------
|
|
85
|
+
// When a self-hosted runner spawns an agent, it passes the job's identity down
|
|
86
|
+
// to this server through the environment (see runJob in runner.ts). That
|
|
87
|
+
// unlocks exactly one extra tool — `ask_human` — scoped to that single job.
|
|
88
|
+
//
|
|
89
|
+
// Everything about this is deliberately narrow. The credential is the runner's
|
|
90
|
+
// board-scoped token, not the user's; the only functions it can reach are the
|
|
91
|
+
// three on the ask/answer path; and because the tool is registered only when
|
|
92
|
+
// these variables are set, it never appears on the remote HTTP surface
|
|
93
|
+
// generated from this file, where a blocking call with no runner behind it
|
|
94
|
+
// would be meaningless.
|
|
95
|
+
const RUNNER_JOB = process.env.NUDGE_RUNNER_JOB &&
|
|
96
|
+
process.env.NUDGE_RUNNER_ID &&
|
|
97
|
+
process.env.NUDGE_RUNNER_TOKEN &&
|
|
98
|
+
process.env.NUDGE_RUNNER_CONVEX_URL
|
|
99
|
+
? {
|
|
100
|
+
jobId: process.env.NUDGE_RUNNER_JOB,
|
|
101
|
+
runnerId: process.env.NUDGE_RUNNER_ID,
|
|
102
|
+
token: process.env.NUDGE_RUNNER_TOKEN,
|
|
103
|
+
convexUrl: process.env.NUDGE_RUNNER_CONVEX_URL,
|
|
104
|
+
}
|
|
105
|
+
: null;
|
|
106
|
+
// A runner job can still ask its question without user credentials — the runner
|
|
107
|
+
// warns about the degraded mode at startup, and losing the one channel back to
|
|
108
|
+
// a human would make that degradation much worse than it needs to be.
|
|
109
|
+
if ((!CONVEX_URL || !TOKEN) && !RUNNER_JOB) {
|
|
84
110
|
console.error([
|
|
85
111
|
"[nudge-mcp] No credentials found.",
|
|
86
112
|
"",
|
|
@@ -89,11 +115,15 @@ if (!CONVEX_URL || !TOKEN) {
|
|
|
89
115
|
].join("\n"));
|
|
90
116
|
process.exit(1);
|
|
91
117
|
}
|
|
92
|
-
const convex = new ConvexHttpClient(CONVEX_URL);
|
|
118
|
+
const convex = CONVEX_URL ? new ConvexHttpClient(CONVEX_URL) : null;
|
|
93
119
|
// `mcp.X` is the user-facing surface in convex/mcp.ts; we reference it by name
|
|
94
120
|
// because the MCP server is published independently of the Convex codegen and
|
|
95
121
|
// shouldn't rely on the app's generated types.
|
|
96
122
|
async function action(name, args) {
|
|
123
|
+
if (!convex || !TOKEN) {
|
|
124
|
+
throw new Error("This Nudge MCP server has no user credentials, so board tools are " +
|
|
125
|
+
"unavailable. Run `nudge-mcp setup` on this machine.");
|
|
126
|
+
}
|
|
97
127
|
// makeFunctionReference accepts the "module:function" form Convex uses on
|
|
98
128
|
// the wire; the generic params are loose because the MCP server doesn't
|
|
99
129
|
// pull in the app's generated types.
|
|
@@ -760,6 +790,130 @@ const toolRisk = {
|
|
|
760
790
|
function actionPath(slug) {
|
|
761
791
|
return slug;
|
|
762
792
|
}
|
|
793
|
+
// ---- ask_human (runner jobs only) -----------------------------------------
|
|
794
|
+
// The tool that turns a job from a one-shot into a conversation.
|
|
795
|
+
//
|
|
796
|
+
// The agent calls this and the call simply does not return until a person
|
|
797
|
+
// answers on the card or the server's hold window elapses. That is the entire
|
|
798
|
+
// trick: the turn stays alive, holding everything it has read and worked out,
|
|
799
|
+
// so an answer costs a round trip rather than a fresh run that has to
|
|
800
|
+
// rediscover all of it.
|
|
801
|
+
//
|
|
802
|
+
// No polling anywhere. `runners:askWait` is a live Convex query held over a
|
|
803
|
+
// websocket, so the answer arrives on the same push that writes it.
|
|
804
|
+
const ASK_HUMAN_SCHEMA = z.object({
|
|
805
|
+
question: z
|
|
806
|
+
.string()
|
|
807
|
+
.describe("The decision you need, written for the person who filed the task. One or two sentences. Say what you'd do by default if they don't reply."),
|
|
808
|
+
options: z
|
|
809
|
+
.array(z.string())
|
|
810
|
+
.optional()
|
|
811
|
+
.describe("Concrete choices, if the decision is a pick between known alternatives. Shown as a list under the question."),
|
|
812
|
+
});
|
|
813
|
+
const ASK_HUMAN_DESCRIPTION = "Ask the person who filed this task a question, and WAIT for their answer. " +
|
|
814
|
+
"This blocks for up to five minutes while your turn stays alive, so you keep " +
|
|
815
|
+
"everything you have read and worked out so far; if they answer in that window " +
|
|
816
|
+
"you simply carry on. If nobody answers in time, the call returns and you should " +
|
|
817
|
+
"stop and summarize what you need — the job parks on the card with your question, " +
|
|
818
|
+
"and their later reply resumes this same session. " +
|
|
819
|
+
"Use this for decisions only a person can make: an ambiguity that changes the " +
|
|
820
|
+
"outcome, a missing credential, a product or design call, a request the repository " +
|
|
821
|
+
"contradicts. Do NOT use it for anything you can determine yourself from the code, " +
|
|
822
|
+
"and do not use it to ask permission to do the task you were given.";
|
|
823
|
+
async function askHuman(job, question, options) {
|
|
824
|
+
const askId = randomUUID();
|
|
825
|
+
const client = new ConvexClient(job.convexUrl);
|
|
826
|
+
const call = (name) => makeFunctionReference(name);
|
|
827
|
+
try {
|
|
828
|
+
const accepted = (await client.mutation(call("runners:ask"), {
|
|
829
|
+
token: job.token,
|
|
830
|
+
runnerId: job.runnerId,
|
|
831
|
+
jobId: job.jobId,
|
|
832
|
+
askId,
|
|
833
|
+
question,
|
|
834
|
+
options,
|
|
835
|
+
}));
|
|
836
|
+
// The job moved on without us — cancelled, reaped, or already finished.
|
|
837
|
+
// Say so plainly rather than blocking on something nobody will answer.
|
|
838
|
+
if (!accepted.accepted) {
|
|
839
|
+
return {
|
|
840
|
+
answered: false,
|
|
841
|
+
reason: "job_not_active",
|
|
842
|
+
guidance: "This job is no longer active, so nobody can answer. Stop and summarize what you were doing.",
|
|
843
|
+
};
|
|
844
|
+
}
|
|
845
|
+
// The server owns the deadline; waiting to its clock rather than our own
|
|
846
|
+
// means the tool can never claim to still be holding a lock that the row
|
|
847
|
+
// says has expired.
|
|
848
|
+
const waitMs = Math.max(5_000, (accepted.blockingUntil ?? Date.now() + 300_000) - Date.now());
|
|
849
|
+
const outcome = await new Promise((resolve) => {
|
|
850
|
+
let unsubscribe = null;
|
|
851
|
+
let settled = false;
|
|
852
|
+
const done = (o) => {
|
|
853
|
+
if (settled)
|
|
854
|
+
return;
|
|
855
|
+
settled = true;
|
|
856
|
+
clearTimeout(timer);
|
|
857
|
+
unsubscribe?.();
|
|
858
|
+
resolve(o);
|
|
859
|
+
};
|
|
860
|
+
const timer = setTimeout(() => done({ kind: "timeout" }), waitMs);
|
|
861
|
+
unsubscribe = client.onUpdate(makeFunctionReference("runners:askWait"), {
|
|
862
|
+
token: job.token,
|
|
863
|
+
runnerId: job.runnerId,
|
|
864
|
+
jobId: job.jobId,
|
|
865
|
+
askId,
|
|
866
|
+
}, (result) => {
|
|
867
|
+
if (result.answered && result.answer) {
|
|
868
|
+
done({ kind: "answered", answer: result.answer });
|
|
869
|
+
}
|
|
870
|
+
else if (result.cancelled) {
|
|
871
|
+
done({ kind: "cancelled" });
|
|
872
|
+
}
|
|
873
|
+
},
|
|
874
|
+
// A dropped subscription must not hang the turn forever. Falling
|
|
875
|
+
// through to the parked path loses nothing: the question is already
|
|
876
|
+
// recorded on the job, so an answer still resumes the session.
|
|
877
|
+
() => done({ kind: "timeout" }));
|
|
878
|
+
// Convex can deliver a cached first result synchronously, before the
|
|
879
|
+
// assignment above lands — in which case `done` couldn't unsubscribe.
|
|
880
|
+
if (settled)
|
|
881
|
+
unsubscribe();
|
|
882
|
+
});
|
|
883
|
+
// Tell the server whether the question was consumed. An ask left
|
|
884
|
+
// outstanding is what makes finish() park the job instead of closing it.
|
|
885
|
+
await client
|
|
886
|
+
.mutation(call("runners:resolveAsk"), {
|
|
887
|
+
token: job.token,
|
|
888
|
+
runnerId: job.runnerId,
|
|
889
|
+
jobId: job.jobId,
|
|
890
|
+
askId,
|
|
891
|
+
answered: outcome.kind === "answered",
|
|
892
|
+
})
|
|
893
|
+
.catch(() => undefined);
|
|
894
|
+
if (outcome.kind === "answered") {
|
|
895
|
+
return { answered: true, answer: outcome.answer };
|
|
896
|
+
}
|
|
897
|
+
if (outcome.kind === "cancelled") {
|
|
898
|
+
return {
|
|
899
|
+
answered: false,
|
|
900
|
+
reason: "cancelled",
|
|
901
|
+
guidance: "The run was cancelled while you were waiting. Stop now and leave the working copy as it is.",
|
|
902
|
+
};
|
|
903
|
+
}
|
|
904
|
+
return {
|
|
905
|
+
answered: false,
|
|
906
|
+
reason: "timeout",
|
|
907
|
+
guidance: "Nobody answered in time. Stop here — do not guess and do not start work that depends on " +
|
|
908
|
+
"the answer. End your turn with a short summary of what you did, what you still need, and " +
|
|
909
|
+
"what you would do once you have it. Your question stays on the card and their reply will " +
|
|
910
|
+
"resume this session.",
|
|
911
|
+
};
|
|
912
|
+
}
|
|
913
|
+
finally {
|
|
914
|
+
await client.close();
|
|
915
|
+
}
|
|
916
|
+
}
|
|
763
917
|
// ---- json schema conversion ----------------------------------------------
|
|
764
918
|
// Tiny zod → JSON schema for the cases the tools use. Bigger packages exist
|
|
765
919
|
// but we don't want a heavyweight dep just to describe ~20 small inputs.
|
|
@@ -844,9 +998,39 @@ server.setRequestHandler(ListToolsRequestSchema, () => {
|
|
|
844
998
|
openWorldHint: false,
|
|
845
999
|
},
|
|
846
1000
|
}));
|
|
1001
|
+
// Offered only to an agent running a runner job. Outside that context there
|
|
1002
|
+
// is no job to ask against and nobody watching a card for the question.
|
|
1003
|
+
if (RUNNER_JOB) {
|
|
1004
|
+
list.push({
|
|
1005
|
+
name: "ask_human",
|
|
1006
|
+
description: ASK_HUMAN_DESCRIPTION,
|
|
1007
|
+
inputSchema: zodToJsonSchema(ASK_HUMAN_SCHEMA),
|
|
1008
|
+
annotations: {
|
|
1009
|
+
// It writes a question onto the job, but destroys nothing — and a
|
|
1010
|
+
// destructive hint would earn it an approval prompt in clients that
|
|
1011
|
+
// gate on one, which is precisely the wrong thing for the tool whose
|
|
1012
|
+
// entire purpose is to reach a human.
|
|
1013
|
+
readOnlyHint: false,
|
|
1014
|
+
destructiveHint: false,
|
|
1015
|
+
openWorldHint: false,
|
|
1016
|
+
},
|
|
1017
|
+
});
|
|
1018
|
+
}
|
|
847
1019
|
return { tools: list };
|
|
848
1020
|
});
|
|
849
1021
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
1022
|
+
if (request.params.name === "ask_human") {
|
|
1023
|
+
if (!RUNNER_JOB)
|
|
1024
|
+
throw new Error("ask_human is only available inside a runner job");
|
|
1025
|
+
const parsed = ASK_HUMAN_SCHEMA.safeParse(request.params.arguments ?? {});
|
|
1026
|
+
if (!parsed.success) {
|
|
1027
|
+
throw new Error(`Invalid arguments for ask_human: ${JSON.stringify(parsed.error.flatten())}`);
|
|
1028
|
+
}
|
|
1029
|
+
const result = await askHuman(RUNNER_JOB, parsed.data.question, parsed.data.options);
|
|
1030
|
+
return {
|
|
1031
|
+
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
1032
|
+
};
|
|
1033
|
+
}
|
|
850
1034
|
const name = request.params.name;
|
|
851
1035
|
if (!(name in tools)) {
|
|
852
1036
|
throw new Error(`Unknown tool: ${name}`);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|