@secondlayer/sentinel 0.2.0 → 0.2.1
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/mcp.js +4 -2
- package/dist/sentinel-client.d.ts +8 -0
- package/package.json +1 -1
package/dist/mcp.js
CHANGED
|
@@ -20646,8 +20646,10 @@ function intentView(i) {
|
|
|
20646
20646
|
kind: i.kind,
|
|
20647
20647
|
on: i.on,
|
|
20648
20648
|
alertLevel: i.alertLevel,
|
|
20649
|
+
coverage: i.coverage,
|
|
20649
20650
|
summary: intentLine(i),
|
|
20650
20651
|
members: i.members,
|
|
20652
|
+
...i.alsoChecks ? { alsoChecks: i.alsoChecks } : {},
|
|
20651
20653
|
status: subjectStatus(i.rows),
|
|
20652
20654
|
mutedUntil: i.rows.map((w) => mutedUntilOf(w)).find(Boolean) ?? null,
|
|
20653
20655
|
rules: i.rows.map((w) => ({
|
|
@@ -20857,7 +20859,7 @@ function buildTools(client) {
|
|
|
20857
20859
|
run: async (a) => a.confirm === true ? client.testsFromRepo(a.planId) : paidRun("Run the Clarinet suite from this pre-launch plan's repo in the airgapped sandbox.")
|
|
20858
20860
|
},
|
|
20859
20861
|
list_watches: {
|
|
20860
|
-
description: "What a plan watches, as intent watches (Money out per token, Control changes, one per finding, the fns you added): on or off, the threshold or summary, the fns covered, each rule in token units, any mute, and the subject name the other watch tools take.",
|
|
20862
|
+
description: "What a plan watches, as intent watches (Money out per token, Control changes, one per finding, the fns you added): on or off, the threshold or summary, the fns covered, what it can see (coverage: direct-calls means a call made from another contract isn't visible yet), each rule in token units, any mute, and the subject name the other watch tools take.",
|
|
20861
20863
|
input: { planId },
|
|
20862
20864
|
run: async (a) => {
|
|
20863
20865
|
const ctx = await watchContext(client, a.planId);
|
|
@@ -21041,7 +21043,7 @@ async function runTool(tool, args) {
|
|
|
21041
21043
|
}
|
|
21042
21044
|
}
|
|
21043
21045
|
function buildServer(client) {
|
|
21044
|
-
const server = new McpServer({ name: "sentinel", version: "0.2.
|
|
21046
|
+
const server = new McpServer({ name: "sentinel", version: "0.2.1" });
|
|
21045
21047
|
for (const [name, tool] of Object.entries(buildTools(client))) {
|
|
21046
21048
|
server.registerTool(name, { description: tool.description, inputSchema: tool.input }, (args) => runTool(tool, args));
|
|
21047
21049
|
}
|
|
@@ -184,6 +184,8 @@ export type IntentWatch<R = StoredWatch & {
|
|
|
184
184
|
summary: string;
|
|
185
185
|
on: boolean;
|
|
186
186
|
alertLevel: "urgent" | "normal";
|
|
187
|
+
/** What it can see: `direct-calls` (a call another contract makes isn't visible yet) or `all-calls`. */
|
|
188
|
+
coverage: "direct-calls" | "all-calls";
|
|
187
189
|
watchIds: string[];
|
|
188
190
|
rows: R[];
|
|
189
191
|
members: {
|
|
@@ -206,6 +208,12 @@ export type IntentWatch<R = StoredWatch & {
|
|
|
206
208
|
title: string;
|
|
207
209
|
index: number | null;
|
|
208
210
|
};
|
|
211
|
+
/** Control changes: the state only its members write, read every `everyMinutes` between calls. */
|
|
212
|
+
alsoChecks?: {
|
|
213
|
+
vars: string[];
|
|
214
|
+
maps: string[];
|
|
215
|
+
everyMinutes: number;
|
|
216
|
+
};
|
|
209
217
|
};
|
|
210
218
|
/** The stored rows behind a list of intent watches, in order. */
|
|
211
219
|
export declare const rowsOf: <R>(intents: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@secondlayer/sentinel",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Sentinel from a terminal or an agent: the CLI, an MCP server and a client for your Stacks contract monitoring.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "https://runsentinel.app/docs",
|