terse-cli 0.1.27 → 0.1.29
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/commands/integrate.js +1 -1
- package/dist/commands/integrate.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +25 -20
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/serve.d.ts +1 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/serve.js +2 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/test.d.ts.map +1 -1
- package/dist/commands/test.js +1 -0
- package/dist/commands/test.js.map +1 -1
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +3 -1
- package/dist/deploy.js.map +1 -1
- package/dist/perf.d.ts +9 -0
- package/dist/perf.d.ts.map +1 -0
- package/dist/perf.js +59 -0
- package/dist/perf.js.map +1 -0
- package/dist/projectConfig.d.ts +8 -0
- package/dist/projectConfig.d.ts.map +1 -0
- package/dist/projectConfig.js +43 -0
- package/dist/projectConfig.js.map +1 -0
- package/dist/providers/codegen.test.d.ts +2 -0
- package/dist/providers/codegen.test.d.ts.map +1 -0
- package/dist/providers/codegen.test.js +45 -0
- package/dist/providers/codegen.test.js.map +1 -0
- package/dist/providers/python/PythonProvider.test.d.ts +2 -0
- package/dist/providers/python/PythonProvider.test.d.ts.map +1 -0
- package/dist/providers/python/PythonProvider.test.js +169 -0
- package/dist/providers/python/PythonProvider.test.js.map +1 -0
- package/dist/providers/typescript/prepareCodegenData.d.ts.map +1 -1
- package/dist/providers/typescript/prepareCodegenData.js +13 -1
- package/dist/providers/typescript/prepareCodegenData.js.map +1 -1
- package/dist/providers/typescript/prepareCodegenData.test.d.ts +2 -0
- package/dist/providers/typescript/prepareCodegenData.test.d.ts.map +1 -0
- package/dist/providers/typescript/prepareCodegenData.test.js +54 -0
- package/dist/providers/typescript/prepareCodegenData.test.js.map +1 -0
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +25 -9
- package/dist/run.js.map +1 -1
- package/dist/shared/ToolDisplayUtils.js +1 -1
- package/dist/shared/ToolDisplayUtils.js.map +1 -1
- package/dist/test.js +1 -1
- package/dist/test.js.map +1 -1
- package/package.json +3 -3
- package/templates/typescript/codegen/partials/system-section.hbs +13 -2
- package/dist/jsonOutput.d.ts +0 -19
- package/dist/jsonOutput.d.ts.map +0 -1
- package/dist/jsonOutput.js +0 -25
- package/dist/jsonOutput.js.map +0 -1
- package/dist/replay.d.ts +0 -3
- package/dist/replay.d.ts.map +0 -1
- package/dist/replay.js +0 -20
- package/dist/replay.js.map +0 -1
- package/dist/urls.d.ts +0 -3
- package/dist/urls.d.ts.map +0 -1
- package/dist/urls.js +0 -27
- package/dist/urls.js.map +0 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
export const Schedule = {
|
|
4
4
|
/** Use in `triggers[]` — run on a cron schedule */
|
|
5
5
|
cron(opts: { expression: string }): TypedTrigger<CronTrigger> {
|
|
6
|
-
return new TimeTriggerConfig(opts.expression)
|
|
6
|
+
return new TimeTriggerConfig(opts.expression)
|
|
7
7
|
},
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -16,6 +16,18 @@ export const Webhook = {
|
|
|
16
16
|
},
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
{{sectionHeader "WebMonitor"}}
|
|
20
|
+
|
|
21
|
+
export const WebMonitor = {
|
|
22
|
+
onEvent<const TSchema>(opts: {
|
|
23
|
+
query: string
|
|
24
|
+
frequency: { number: number; unit: FrequencyUnit }
|
|
25
|
+
outputSchema?: TSchema
|
|
26
|
+
}): TypedTrigger<WebMonitorTrigger<InferStructuredOutput<TSchema>>> {
|
|
27
|
+
return new WebMonitorConfig(opts.query, opts.frequency, opts.outputSchema)
|
|
28
|
+
},
|
|
29
|
+
}
|
|
30
|
+
|
|
19
31
|
{{sectionHeader "Terse"}}
|
|
20
32
|
|
|
21
33
|
export const Terse = {
|
|
@@ -24,4 +36,3 @@ export const Terse = {
|
|
|
24
36
|
return new TerseConfig() as TypedSkill<{{{skillToolType}}}>
|
|
25
37
|
},
|
|
26
38
|
}
|
|
27
|
-
|
package/dist/jsonOutput.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { Ora } from "ora";
|
|
2
|
-
export type JsonErrorPayload = {
|
|
3
|
-
error: {
|
|
4
|
-
code: string;
|
|
5
|
-
message: string;
|
|
6
|
-
[key: string]: unknown;
|
|
7
|
-
};
|
|
8
|
-
};
|
|
9
|
-
export declare function emitJsonError(code: string, message: string, details?: Record<string, unknown>): void;
|
|
10
|
-
export declare function bailJsonError(code: string, message: string, details?: Record<string, unknown>, exitCode?: number): never;
|
|
11
|
-
export type GuardOptions = {
|
|
12
|
-
spinner?: Ora | null;
|
|
13
|
-
json?: boolean;
|
|
14
|
-
failMessage: string;
|
|
15
|
-
code: string;
|
|
16
|
-
details?: Record<string, unknown>;
|
|
17
|
-
};
|
|
18
|
-
export declare function withJsonError<T>(fn: () => Promise<T>, opts: GuardOptions): Promise<T>;
|
|
19
|
-
//# sourceMappingURL=jsonOutput.d.ts.map
|
package/dist/jsonOutput.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jsonOutput.d.ts","sourceRoot":"","sources":["../src/jsonOutput.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAK9B,MAAM,MAAM,gBAAgB,GAAG;IAC3B,KAAK,EAAE;QACH,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KACzB,CAAA;CACJ,CAAA;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI,CAGxG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,KAAK,CAG/H;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,OAAO,CAAC,EAAE,GAAG,GAAG,IAAI,CAAA;IACpB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAKD,wBAAsB,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAU3F"}
|
package/dist/jsonOutput.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import chalk from "chalk";
|
|
2
|
-
export function emitJsonError(code, message, details = {}) {
|
|
3
|
-
const payload = { error: { code, message, ...details } };
|
|
4
|
-
process.stdout.write(JSON.stringify(payload, null, 2) + "\n");
|
|
5
|
-
}
|
|
6
|
-
export function bailJsonError(code, message, details = {}, exitCode = 1) {
|
|
7
|
-
emitJsonError(code, message, details);
|
|
8
|
-
process.exit(exitCode);
|
|
9
|
-
}
|
|
10
|
-
// Wraps an async call so that failures (a) stop the spinner with a red label in TTY mode,
|
|
11
|
-
// (b) emit a structured JSON error and exit 1 in --json mode, and (c) re-throw otherwise so
|
|
12
|
-
// the top-level error handler can surface the trace.
|
|
13
|
-
export async function withJsonError(fn, opts) {
|
|
14
|
-
try {
|
|
15
|
-
return await fn();
|
|
16
|
-
}
|
|
17
|
-
catch (error) {
|
|
18
|
-
opts.spinner?.fail(chalk.red(opts.failMessage));
|
|
19
|
-
if (opts.json) {
|
|
20
|
-
bailJsonError(opts.code, error instanceof Error ? error.message : String(error), opts.details);
|
|
21
|
-
}
|
|
22
|
-
throw error;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=jsonOutput.js.map
|
package/dist/jsonOutput.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"jsonOutput.js","sourceRoot":"","sources":["../src/jsonOutput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,OAAe,EAAE,UAAmC,EAAE;IAC9F,MAAM,OAAO,GAAqB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,EAAE,CAAA;IAC1E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,OAAe,EAAE,UAAmC,EAAE,EAAE,WAAmB,CAAC;IACpH,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IACrC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAC1B,CAAC;AAUD,0FAA0F;AAC1F,4FAA4F;AAC5F,qDAAqD;AACrD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAI,EAAoB,EAAE,IAAkB;IAC3E,IAAI,CAAC;QACD,OAAO,MAAM,EAAE,EAAE,CAAA;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAA;QAC/C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAClG,CAAC;QACD,MAAM,KAAK,CAAA;IACf,CAAC;AACL,CAAC"}
|
package/dist/replay.d.ts
DELETED
package/dist/replay.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAGvE,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,gBAAoC,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBzG"}
|
package/dist/replay.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import chalk from "chalk";
|
|
2
|
-
import { readApiKeyOrBail, resolveEventFromRunId } from "./api.js";
|
|
3
|
-
import { loadJob } from "./loadJob.js";
|
|
4
|
-
import { resolveProvider } from "./providers/resolveProvider.js";
|
|
5
|
-
export async function replay(runId, provider = resolveProvider()) {
|
|
6
|
-
const apiKey = readApiKeyOrBail();
|
|
7
|
-
if (!runId) {
|
|
8
|
-
console.error(chalk.red("Error: --run-id is required.\n"));
|
|
9
|
-
console.error(chalk.dim(" Usage: terse replay --run-id <run-id>"));
|
|
10
|
-
process.exit(1);
|
|
11
|
-
}
|
|
12
|
-
const runHistoryRecord = await resolveEventFromRunId(runId, apiKey);
|
|
13
|
-
if (!runHistoryRecord) {
|
|
14
|
-
console.error(chalk.red("Error: Could not fetch the trigger event for run ${runId}.\n"));
|
|
15
|
-
process.exit(1);
|
|
16
|
-
}
|
|
17
|
-
const { job } = await loadJob(provider, runHistoryRecord.agentName);
|
|
18
|
-
await provider.executeJob(job, null, runHistoryRecord.event, { verbose: true });
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=replay.js.map
|
package/dist/replay.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,KAAa,EAAE,WAA6B,eAAe,EAAE;IACtF,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAA;IAEjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAA;QAC1D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,CAAA;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAED,MAAM,gBAAgB,GAAG,MAAM,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACnE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC,CAAA;QACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAA;IAEnE,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AACnF,CAAC"}
|
package/dist/urls.d.ts
DELETED
package/dist/urls.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urls.d.ts","sourceRoot":"","sources":["../src/urls.ts"],"names":[],"mappings":"AAgCA,eAAO,MAAM,YAAY,QAAsD,CAAA;AAC/E,eAAO,MAAM,WAAW,QAAoD,CAAA"}
|
package/dist/urls.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import fs from "node:fs";
|
|
2
|
-
import path from "node:path";
|
|
3
|
-
import { fileURLToPath } from "node:url";
|
|
4
|
-
const LOCAL_FRONTEND_URL = "http://localhost:5173";
|
|
5
|
-
const LOCAL_BACKEND_URL = "http://localhost:3001";
|
|
6
|
-
const PROD_FRONTEND_URL = "https://app.useterse.ai";
|
|
7
|
-
const PROD_BACKEND_URL = "https://app.useterse.ai/api";
|
|
8
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
9
|
-
const __dirname = path.dirname(__filename);
|
|
10
|
-
function isWorkspaceDevelopment() {
|
|
11
|
-
const packageRoot = path.resolve(__dirname, "..");
|
|
12
|
-
const repoRoot = path.resolve(packageRoot, "..", "..");
|
|
13
|
-
return (fs.existsSync(path.join(repoRoot, "packages", "terse-cli")) &&
|
|
14
|
-
fs.existsSync(path.join(repoRoot, "backend")));
|
|
15
|
-
}
|
|
16
|
-
const defaults = isWorkspaceDevelopment()
|
|
17
|
-
? {
|
|
18
|
-
frontend: LOCAL_FRONTEND_URL,
|
|
19
|
-
backend: LOCAL_BACKEND_URL,
|
|
20
|
-
}
|
|
21
|
-
: {
|
|
22
|
-
frontend: PROD_FRONTEND_URL,
|
|
23
|
-
backend: PROD_BACKEND_URL,
|
|
24
|
-
};
|
|
25
|
-
export const FRONTEND_URL = process.env.TERSE_FRONTEND_URL || defaults.frontend;
|
|
26
|
-
export const BACKEND_URL = process.env.TERSE_BACKEND_URL || defaults.backend;
|
|
27
|
-
//# sourceMappingURL=urls.js.map
|
package/dist/urls.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urls.js","sourceRoot":"","sources":["../src/urls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,MAAM,kBAAkB,GAAG,uBAAuB,CAAA;AAClD,MAAM,iBAAiB,GAAG,uBAAuB,CAAA;AACjD,MAAM,iBAAiB,GAAG,yBAAyB,CAAA;AACnD,MAAM,gBAAgB,GAAG,6BAA6B,CAAA;AAEtD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAE1C,SAAS,sBAAsB;IAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAEtD,OAAO,CACH,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAC3D,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAChD,CAAA;AACL,CAAC;AAED,MAAM,QAAQ,GAAG,sBAAsB,EAAE;IACrC,CAAC,CAAC;QACE,QAAQ,EAAE,kBAAkB;QAC5B,OAAO,EAAE,iBAAiB;KAC7B;IACD,CAAC,CAAC;QACE,QAAQ,EAAE,iBAAiB;QAC3B,OAAO,EAAE,gBAAgB;KAC5B,CAAA;AAEL,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,QAAQ,CAAC,QAAQ,CAAA;AAC/E,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,QAAQ,CAAC,OAAO,CAAA"}
|