agent-token-sentinel 0.1.1 → 0.2.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 +27 -0
- package/README.md +92 -18
- package/README.zh-TW.md +92 -18
- package/SKILL.md +19 -4
- package/dist/circuit-breaker/breaker.js +1 -0
- package/dist/circuit-breaker/breaker.js.map +1 -1
- package/dist/circuit-breaker/detector.d.ts +12 -0
- package/dist/circuit-breaker/detector.js +72 -16
- package/dist/circuit-breaker/detector.js.map +1 -1
- package/dist/cli/hooks.d.ts +16 -2
- package/dist/cli/hooks.js +73 -4
- package/dist/cli/hooks.js.map +1 -1
- package/dist/cli/index.js +21 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/install.js +9 -4
- package/dist/cli/install.js.map +1 -1
- package/dist/config.d.ts +4 -0
- package/dist/config.js +12 -0
- package/dist/config.js.map +1 -1
- package/dist/mcp/server.js +17 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/sentinel.d.ts +14 -1
- package/dist/sentinel.js +61 -5
- package/dist/sentinel.js.map +1 -1
- package/dist/token-guard/compactor.d.ts +21 -2
- package/dist/token-guard/compactor.js +106 -33
- package/dist/token-guard/compactor.js.map +1 -1
- package/dist/token-guard/distiller.d.ts +16 -0
- package/dist/token-guard/distiller.js +40 -9
- package/dist/token-guard/distiller.js.map +1 -1
- package/dist/token-guard/log-store.d.ts +23 -0
- package/dist/token-guard/log-store.js +101 -0
- package/dist/token-guard/log-store.js.map +1 -0
- package/dist/types.d.ts +18 -0
- package/dist/utils/state-store.d.ts +1 -0
- package/dist/utils/state-store.js +3 -0
- package/dist/utils/state-store.js.map +1 -1
- package/package.json +7 -5
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type FailureSummary } from '../circuit-breaker/detector.js';
|
|
1
2
|
export interface DistillOptions {
|
|
2
3
|
/** Project root: used to relativize paths and read call-site source. */
|
|
3
4
|
root?: string;
|
|
@@ -5,6 +6,17 @@ export interface DistillOptions {
|
|
|
5
6
|
contextLines?: number;
|
|
6
7
|
/** Read the call-site file from disk for context (default true). */
|
|
7
8
|
readSource?: boolean;
|
|
9
|
+
/** Extra tokens granted per additional distinct failure (default 30). */
|
|
10
|
+
perFailureTokens?: number;
|
|
11
|
+
/** Hard ceiling for the dynamic budget (default 4 × tokenBudget). */
|
|
12
|
+
maxTokenBudget?: number;
|
|
13
|
+
/**
|
|
14
|
+
* 0 = first time this failure is seen. Each repeat widens the budget by 50%
|
|
15
|
+
* and the source context by 2 lines: being stuck calls for more evidence.
|
|
16
|
+
*/
|
|
17
|
+
escalation?: number;
|
|
18
|
+
/** How the agent can fetch the full log, e.g. `run-12`; printed in the footer. */
|
|
19
|
+
logRef?: string;
|
|
8
20
|
}
|
|
9
21
|
export interface CallSite {
|
|
10
22
|
file: string;
|
|
@@ -25,5 +37,9 @@ export interface DistillResult {
|
|
|
25
37
|
reduction: number;
|
|
26
38
|
originalLines: number;
|
|
27
39
|
droppedNoiseFrames: number;
|
|
40
|
+
/** Every distinct failure found (the first one is shown in detail). */
|
|
41
|
+
failures: FailureSummary[];
|
|
42
|
+
/** Budget actually applied after scaling for failures and escalation. */
|
|
43
|
+
effectiveBudget: number;
|
|
28
44
|
}
|
|
29
45
|
export declare function distillLog(raw: string, options?: DistillOptions): DistillResult;
|
|
@@ -4,13 +4,19 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Keeps: the first error headline (+ a continuation line), the failing test
|
|
6
6
|
* name, assertion expected/received, the first *project* call site with
|
|
7
|
-
* ±N lines of source,
|
|
7
|
+
* ±N lines of source, a one-line entry for every *other* failing test, and a
|
|
8
|
+
* de-duplicated list of further tsc errors.
|
|
8
9
|
* Drops: ANSI codes, progress redraws, node_modules / node:internal /
|
|
9
10
|
* bundler & test-runner internals, repeated lines and summary chatter.
|
|
11
|
+
*
|
|
12
|
+
* The budget is dynamic: it grows with the number of distinct failures and
|
|
13
|
+
* with `escalation` (how many times the same failure has already been seen),
|
|
14
|
+
* because a model that keeps hitting the same error needs more context, not
|
|
15
|
+
* less. Nothing is lost: the raw log stays retrievable via `logRef`.
|
|
10
16
|
*/
|
|
11
17
|
import { existsSync, readFileSync, statSync } from 'node:fs';
|
|
12
18
|
import { isAbsolute, join } from 'node:path';
|
|
13
|
-
import { extractError, isNoiseFrame, parseFrame } from '../circuit-breaker/detector.js';
|
|
19
|
+
import { collectFailures, extractError, isNoiseFrame, parseFrame } from '../circuit-breaker/detector.js';
|
|
14
20
|
import { stripAnsi, toProjectPath } from '../utils/normalize.js';
|
|
15
21
|
import { estimateTokens } from '../utils/tokens.js';
|
|
16
22
|
const TSC_LINE = /^(.+?)(?:\((\d+),(\d+)\)|:(\d+):(\d+))\s*[:-]\s*error\s+(TS\d+):\s*(.*)$/;
|
|
@@ -26,12 +32,15 @@ const NOISE_LINE = [
|
|
|
26
32
|
/^\s*\[vite\]\s+(?:hmr|page reload|connected)/i,
|
|
27
33
|
];
|
|
28
34
|
export function distillLog(raw, options = {}) {
|
|
29
|
-
const
|
|
30
|
-
const
|
|
35
|
+
const baseBudget = options.tokenBudget ?? 150;
|
|
36
|
+
const escalation = Math.max(0, Math.min(options.escalation ?? 0, 4));
|
|
31
37
|
const root = options.root;
|
|
32
38
|
const clean = stripAnsi(raw);
|
|
33
39
|
const lines = dedupeConsecutive(clean.split('\n'));
|
|
34
40
|
const originalTokens = estimateTokens(raw);
|
|
41
|
+
const failures = collectFailures(clean);
|
|
42
|
+
const contextLines = Math.min((options.contextLines ?? 3) + 2 * escalation, 10);
|
|
43
|
+
const budget = Math.min(Math.round((baseBudget + (options.perFailureTokens ?? 30) * Math.min(Math.max(failures.length - 1, 0), 10)) * (1 + 0.5 * escalation)), options.maxTokenBudget ?? baseBudget * 4);
|
|
35
44
|
const extracted = extractError(clean);
|
|
36
45
|
const hasHeadline = extracted.errorName !== 'UnknownError';
|
|
37
46
|
// Frames: split project vs noise.
|
|
@@ -90,14 +99,25 @@ export function distillLog(raw, options = {}) {
|
|
|
90
99
|
if (extracted.failingTest)
|
|
91
100
|
out.push(` test: ${truncate(extracted.failingTest, 120)}`);
|
|
92
101
|
out.push(...assertionDetails(lines), ...callSiteLines);
|
|
102
|
+
const others = failures.filter((f) => !(f.test && f.test === extracted.failingTest) && !(f.errorName === extracted.errorName && f.message === extracted.message));
|
|
103
|
+
if (others.length) {
|
|
104
|
+
out.push(` also failing (${others.length}):`);
|
|
105
|
+
for (const f of others) {
|
|
106
|
+
const err = f.errorName ? `${f.errorName}${f.message ? `: ${truncate(f.message, 90)}` : ''}` : '';
|
|
107
|
+
out.push(` • ${[f.test ? truncate(f.test, 80) : '', err].filter(Boolean).join(' — ')}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
93
110
|
}
|
|
94
111
|
if (out.length === 0)
|
|
95
112
|
out.push(...genericFallback(lines));
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
113
|
+
const footerFor = (body) => `[sentinel: ${originalTokens}→${estimateTokens(body)} tokens, ${droppedNoiseFrames} framework frames hidden` +
|
|
114
|
+
(failures.length > 1 ? `, ${failures.length} failures` : '') +
|
|
115
|
+
(escalation ? `, escalated ×${escalation}` : '') +
|
|
116
|
+
(options.logRef ? ` · full log: sentinel_expand_log run=${options.logRef}` : '') +
|
|
117
|
+
']';
|
|
118
|
+
// Reserve room for the footer: it is what lets the agent get the full log back.
|
|
119
|
+
let text = fitBudget(out.join('\n'), Math.max(budget - estimateTokens(footerFor('')) - 4, 30));
|
|
120
|
+
text = `${text}\n${footerFor(text)}`;
|
|
101
121
|
const distilledTokens = estimateTokens(text);
|
|
102
122
|
return {
|
|
103
123
|
text,
|
|
@@ -110,6 +130,8 @@ export function distillLog(raw, options = {}) {
|
|
|
110
130
|
reduction: originalTokens > 0 ? 1 - distilledTokens / originalTokens : 0,
|
|
111
131
|
originalLines: raw.split('\n').length,
|
|
112
132
|
droppedNoiseFrames,
|
|
133
|
+
failures,
|
|
134
|
+
effectiveBudget: budget,
|
|
113
135
|
};
|
|
114
136
|
}
|
|
115
137
|
function dedupeConsecutive(lines) {
|
|
@@ -192,6 +214,15 @@ function fitBudget(text, budget) {
|
|
|
192
214
|
if (estimateTokens(text) <= budget)
|
|
193
215
|
return text;
|
|
194
216
|
const lines = text.split('\n');
|
|
217
|
+
// Collapse the tail of the "also failing" list (keep the first 3 entries).
|
|
218
|
+
const bullets = () => lines.map((l, i) => (l.startsWith(' • ') ? i : -1)).filter((i) => i >= 0);
|
|
219
|
+
let hidden = 0;
|
|
220
|
+
while (estimateTokens(lines.join('\n')) > budget && bullets().length > 3) {
|
|
221
|
+
lines.splice(bullets().pop() ?? lines.length - 1, 1);
|
|
222
|
+
hidden++;
|
|
223
|
+
}
|
|
224
|
+
if (hidden)
|
|
225
|
+
lines.splice((bullets().pop() ?? lines.length - 1) + 1, 0, ` • … ${hidden} more (see full log)`);
|
|
195
226
|
// Drop snippet context lines farthest from the target first (keep the '>' line).
|
|
196
227
|
while (estimateTokens(lines.join('\n')) > budget) {
|
|
197
228
|
const idx = findLastIndex(lines, (l) => /^\s{4}\s\s*\d+ \|/.test(l));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distiller.js","sourceRoot":"","sources":["../../src/token-guard/distiller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"distiller.js","sourceRoot":"","sources":["../../src/token-guard/distiller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface ExpandLogOptions {
|
|
2
|
+
/** Run id (`run-12` or `12`); defaults to the latest stored log. */
|
|
3
|
+
run?: string;
|
|
4
|
+
/** 1-based index of the failure block to return (as listed in the distilled output). */
|
|
5
|
+
failure?: number;
|
|
6
|
+
/** Case-insensitive pattern; matching lines are returned with `context` lines around them. */
|
|
7
|
+
grep?: string;
|
|
8
|
+
context?: number;
|
|
9
|
+
/** 1-based inclusive line range. */
|
|
10
|
+
from?: number;
|
|
11
|
+
to?: number;
|
|
12
|
+
/** Cap on the returned slice (default 2000 tokens). */
|
|
13
|
+
maxTokens?: number;
|
|
14
|
+
}
|
|
15
|
+
export interface ExpandLogResult {
|
|
16
|
+
text: string;
|
|
17
|
+
totalLines: number;
|
|
18
|
+
returnedLines: number;
|
|
19
|
+
truncated: boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare function sliceLog(raw: string, options?: ExpandLogOptions & {
|
|
22
|
+
header?: string;
|
|
23
|
+
}): ExpandLogResult;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Raw-log expansion: the counterpart of the distiller. Distillation shows the
|
|
3
|
+
* agent a ~150-token briefing; when that is not enough, the agent pulls exactly
|
|
4
|
+
* the part of the raw log it needs instead of re-running the command or
|
|
5
|
+
* reading thousands of lines.
|
|
6
|
+
*/
|
|
7
|
+
import { failingTestFromLine } from '../circuit-breaker/detector.js';
|
|
8
|
+
import { estimateTokens } from '../utils/tokens.js';
|
|
9
|
+
const ERROR_LINE = /(?:^|\s)(?:[A-Z][A-Za-z0-9]*)?(?:Error|Exception)(?:\s*\[[^\]]*\])?:|error\s+TS\d+:|^\s*FAIL\b|^\s*●\s|^\s*[×✗✕]\s/;
|
|
10
|
+
export function sliceLog(raw, options = {}) {
|
|
11
|
+
const lines = raw.split('\n');
|
|
12
|
+
const maxTokens = options.maxTokens ?? 2000;
|
|
13
|
+
const width = String(lines.length).length;
|
|
14
|
+
const fmt = (i) => `${String(i + 1).padStart(width)}| ${lines[i] ?? ''}`;
|
|
15
|
+
let picked = [];
|
|
16
|
+
let mode = 'full';
|
|
17
|
+
if (options.failure !== undefined) {
|
|
18
|
+
mode = `failure ${options.failure}`;
|
|
19
|
+
const starts = failureStarts(lines);
|
|
20
|
+
const start = starts[options.failure - 1];
|
|
21
|
+
if (start === undefined) {
|
|
22
|
+
return done([`(no failure #${options.failure}; this log has ${starts.length} failure block(s))`], false);
|
|
23
|
+
}
|
|
24
|
+
const end = Math.min(starts[options.failure] ?? lines.length, start + 150);
|
|
25
|
+
picked = range(start, end);
|
|
26
|
+
}
|
|
27
|
+
else if (options.grep) {
|
|
28
|
+
mode = `grep /${options.grep}/`;
|
|
29
|
+
let re;
|
|
30
|
+
try {
|
|
31
|
+
re = new RegExp(options.grep, 'i');
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
re = new RegExp(options.grep.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), 'i');
|
|
35
|
+
}
|
|
36
|
+
const ctx = Math.max(0, Math.min(options.context ?? 2, 20));
|
|
37
|
+
const set = new Set();
|
|
38
|
+
lines.forEach((l, i) => {
|
|
39
|
+
if (re.test(l))
|
|
40
|
+
for (let j = Math.max(0, i - ctx); j <= Math.min(lines.length - 1, i + ctx); j++)
|
|
41
|
+
set.add(j);
|
|
42
|
+
});
|
|
43
|
+
picked = [...set].sort((a, b) => a - b);
|
|
44
|
+
if (!picked.length)
|
|
45
|
+
return done([`(no line matches /${options.grep}/)`], false);
|
|
46
|
+
}
|
|
47
|
+
else if (options.from !== undefined || options.to !== undefined) {
|
|
48
|
+
const from = Math.max(1, options.from ?? 1);
|
|
49
|
+
const to = Math.min(lines.length, options.to ?? lines.length);
|
|
50
|
+
mode = `lines ${from}-${to}`;
|
|
51
|
+
picked = range(from - 1, to);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
picked = range(0, lines.length);
|
|
55
|
+
}
|
|
56
|
+
// Render with gap markers, stop at the token cap.
|
|
57
|
+
const out = [];
|
|
58
|
+
let prev = -2;
|
|
59
|
+
let truncated = false;
|
|
60
|
+
let returned = 0;
|
|
61
|
+
for (const i of picked) {
|
|
62
|
+
const line = (i !== prev + 1 && prev >= 0 ? ' ⋮\n' : '') + fmt(i);
|
|
63
|
+
if (estimateTokens(out.join('\n')) + estimateTokens(line) > maxTokens) {
|
|
64
|
+
truncated = true;
|
|
65
|
+
out.push(`… truncated at ~${maxTokens} tokens (line ${i + 1} of ${lines.length}). Narrow with from/to, grep or failure.`);
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
out.push(line);
|
|
69
|
+
returned++;
|
|
70
|
+
prev = i;
|
|
71
|
+
}
|
|
72
|
+
return done(out, truncated);
|
|
73
|
+
function done(body, truncatedFlag) {
|
|
74
|
+
const head = `${options.header ? `${options.header} · ` : ''}${lines.length} lines · ${mode}`;
|
|
75
|
+
return { text: `${head}\n${body.join('\n')}`, totalLines: lines.length, returnedLines: returned, truncated: truncatedFlag };
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/** Line indices where a new failure block begins (failing-test marker, or an error headline outside one). */
|
|
79
|
+
function failureStarts(lines) {
|
|
80
|
+
const starts = [];
|
|
81
|
+
let inBlockSinceTest = false;
|
|
82
|
+
lines.forEach((line, i) => {
|
|
83
|
+
if (/^\s*at\s/.test(line))
|
|
84
|
+
return;
|
|
85
|
+
if (failingTestFromLine(line)) {
|
|
86
|
+
starts.push(i);
|
|
87
|
+
inBlockSinceTest = true;
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
if (ERROR_LINE.test(line)) {
|
|
91
|
+
if (!inBlockSinceTest)
|
|
92
|
+
starts.push(i);
|
|
93
|
+
inBlockSinceTest = false;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
return starts;
|
|
97
|
+
}
|
|
98
|
+
function range(from, to) {
|
|
99
|
+
return Array.from({ length: Math.max(0, to - from) }, (_, k) => from + k);
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=log-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log-store.js","sourceRoot":"","sources":["../../src/token-guard/log-store.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -35,8 +35,12 @@ export interface RunRecord {
|
|
|
35
35
|
errorName?: string;
|
|
36
36
|
/** Short, normalized error message. */
|
|
37
37
|
message?: string;
|
|
38
|
+
/** Failing test name, when the runner reported one. */
|
|
39
|
+
failingTest?: string;
|
|
38
40
|
/** Token estimate of the raw log, for compaction accounting. */
|
|
39
41
|
rawTokens: number;
|
|
42
|
+
/** Id of the stored raw log (`.sentinel/logs/<id>.log`), retrievable with sentinel_expand_log. */
|
|
43
|
+
logId?: string;
|
|
40
44
|
source: EventSource;
|
|
41
45
|
}
|
|
42
46
|
export interface Checkpoint {
|
|
@@ -49,12 +53,26 @@ export interface Checkpoint {
|
|
|
49
53
|
/** True when created automatically after a passing run. */
|
|
50
54
|
green: boolean;
|
|
51
55
|
}
|
|
56
|
+
export type EpisodeStatus = 'resolved' | 'unresolved' | 'reverted';
|
|
52
57
|
export interface CompactedEpisode {
|
|
53
58
|
fromRound: number;
|
|
54
59
|
toRound: number;
|
|
60
|
+
/** One-line summary (`[Compacted]: Rounds 1-3 attempted …`). */
|
|
55
61
|
summary: string;
|
|
56
62
|
freedTokens: number;
|
|
57
63
|
createdAt: number;
|
|
64
|
+
/** Structured facts kept so the lesson survives compaction (absent on pre-0.2 state). */
|
|
65
|
+
status?: EpisodeStatus;
|
|
66
|
+
approach?: string;
|
|
67
|
+
location?: string;
|
|
68
|
+
errors?: Array<{
|
|
69
|
+
name: string;
|
|
70
|
+
message?: string;
|
|
71
|
+
count: number;
|
|
72
|
+
}>;
|
|
73
|
+
/** Failing test names seen in the episode. */
|
|
74
|
+
tests?: string[];
|
|
75
|
+
files?: string[];
|
|
58
76
|
}
|
|
59
77
|
export interface CircuitState {
|
|
60
78
|
status: CircuitStatus;
|
|
@@ -20,6 +20,7 @@ export declare class StateStore {
|
|
|
20
20
|
/** Locked read-modify-write. The mutator's return value is passed through. */
|
|
21
21
|
update<T>(mutator: (state: SentinelState) => T): T;
|
|
22
22
|
writeArtifact(relativePath: string, content: string): string;
|
|
23
|
+
deleteArtifact(relativePath: string): void;
|
|
23
24
|
readArtifact(relativePath: string): string | undefined;
|
|
24
25
|
private acquireLock;
|
|
25
26
|
private releaseLock;
|
|
@@ -90,6 +90,9 @@ export class StateStore {
|
|
|
90
90
|
writeFileSync(full, content);
|
|
91
91
|
return full;
|
|
92
92
|
}
|
|
93
|
+
deleteArtifact(relativePath) {
|
|
94
|
+
rmSync(join(this.dir, relativePath), { force: true });
|
|
95
|
+
}
|
|
93
96
|
readArtifact(relativePath) {
|
|
94
97
|
const full = join(this.dir, relativePath);
|
|
95
98
|
return existsSync(full) ? readFileSync(full, 'utf8') : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-store.js","sourceRoot":"","sources":["../../src/utils/state-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state-store.js","sourceRoot":"","sources":["../../src/utils/state-store.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-token-sentinel",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Local-first watchdog and context optimizer for coding agents: breaks whack-a-mole debug loops and distills bloated context.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
],
|
|
15
15
|
"author": "T5A111",
|
|
16
16
|
"license": "MIT",
|
|
17
|
-
"homepage": "https://github.com/T5A111/Token-Sentinel#readme",
|
|
17
|
+
"homepage": "https://github.com/T5A111/Agent-Token-Sentinel#readme",
|
|
18
18
|
"repository": {
|
|
19
19
|
"type": "git",
|
|
20
|
-
"url": "git+https://github.com/T5A111/Token-Sentinel.git"
|
|
20
|
+
"url": "git+https://github.com/T5A111/Agent-Token-Sentinel.git"
|
|
21
21
|
},
|
|
22
22
|
"bugs": {
|
|
23
|
-
"url": "https://github.com/T5A111/Token-Sentinel/issues"
|
|
23
|
+
"url": "https://github.com/T5A111/Agent-Token-Sentinel/issues"
|
|
24
24
|
},
|
|
25
25
|
"type": "module",
|
|
26
26
|
"engines": {
|
|
@@ -58,7 +58,9 @@
|
|
|
58
58
|
"mcp": "tsx src/mcp/server.ts",
|
|
59
59
|
"prepare": "tsc -p tsconfig.build.json",
|
|
60
60
|
"prepublishOnly": "npm run typecheck && npm test && npm run build",
|
|
61
|
-
"test:pack": "npm run build && node scripts/smoke-pack.mjs"
|
|
61
|
+
"test:pack": "npm run build && node scripts/smoke-pack.mjs",
|
|
62
|
+
"bench": "npm run build && node bench/run.mjs",
|
|
63
|
+
"bench:check": "node bench/run.mjs --self-check && node bench/run.mjs --claude bench/stub-claude.mjs --repeats 2 --out bench/results/stub && node bench/run.mjs --claude bench/stub-claude.mjs --repeats 1 --tasks off-by-one --arms baseline --expect-cheat --out bench/results/stub-cheat"
|
|
62
64
|
},
|
|
63
65
|
"dependencies": {
|
|
64
66
|
"@modelcontextprotocol/sdk": "^1.32.1",
|