@shuttl-io/core 0.2.0 → 0.4.2
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/.jsii +5562 -0
- package/.package.env +1 -0
- package/CHANGELOG.md +67 -0
- package/README.md +353 -1
- package/dist/Server.d.ts +1 -0
- package/dist/Server.js +1 -1
- package/dist/agent.js +2 -2
- package/dist/app.d.ts +2 -2
- package/dist/app.js +8 -6
- package/dist/model.js +1 -1
- package/dist/outcomes/CombinationOutcome.js +1 -1
- package/dist/outcomes/IOutcomes.js +1 -1
- package/dist/outcomes/StreamingOutcome.js +1 -1
- package/dist/secrets.js +2 -2
- package/dist/server/http.d.ts +44 -0
- package/dist/server/http.js +721 -4
- package/dist/tools/tool.js +2 -2
- package/dist/tools/toolkit.js +1 -1
- package/dist/trigger/ApiTrigger.js +1 -1
- package/dist/trigger/EmailTrigger.js +1 -1
- package/dist/trigger/FileTrigger.js +1 -1
- package/dist/trigger/ITrigger.js +1 -1
- package/dist/trigger/RateTrigger.js +1 -1
- package/package.json +2 -2
- package/publish.sh +149 -8
- package/dist/src/Server.d.ts +0 -5
- package/dist/src/Server.js +0 -3
- package/dist/src/Triggers.d.ts +0 -0
- package/dist/src/Triggers.js +0 -2
- package/dist/src/agent.d.ts +0 -49
- package/dist/src/agent.js +0 -251
- package/dist/src/app.d.ts +0 -17
- package/dist/src/app.js +0 -46
- package/dist/src/index.d.ts +0 -12
- package/dist/src/index.js +0 -29
- package/dist/src/model.d.ts +0 -6
- package/dist/src/model.js +0 -16
- package/dist/src/models/openAi.d.ts +0 -38
- package/dist/src/models/openAi.js +0 -344
- package/dist/src/models/types.d.ts +0 -101
- package/dist/src/models/types.js +0 -27
- package/dist/src/outcomes/CombinationOutcome.d.ts +0 -9
- package/dist/src/outcomes/CombinationOutcome.js +0 -41
- package/dist/src/outcomes/IOutcomes.d.ts +0 -9
- package/dist/src/outcomes/IOutcomes.js +0 -19
- package/dist/src/outcomes/StreamingOutcome.d.ts +0 -6
- package/dist/src/outcomes/StreamingOutcome.js +0 -30
- package/dist/src/outcomes/index.d.ts +0 -3
- package/dist/src/outcomes/index.js +0 -20
- package/dist/src/secrets.d.ts +0 -19
- package/dist/src/secrets.js +0 -34
- package/dist/src/server/http.d.ts +0 -68
- package/dist/src/server/http.js +0 -654
- package/dist/src/server/index.d.ts +0 -1
- package/dist/src/server/index.js +0 -18
- package/dist/src/tools/tool.d.ts +0 -33
- package/dist/src/tools/tool.js +0 -49
- package/dist/src/tools/toolkit.d.ts +0 -13
- package/dist/src/tools/toolkit.js +0 -19
- package/dist/src/trigger/ApiTrigger.d.ts +0 -37
- package/dist/src/trigger/ApiTrigger.js +0 -106
- package/dist/src/trigger/EmailTrigger.d.ts +0 -15
- package/dist/src/trigger/EmailTrigger.js +0 -22
- package/dist/src/trigger/FileTrigger.d.ts +0 -14
- package/dist/src/trigger/FileTrigger.js +0 -37
- package/dist/src/trigger/ITrigger.d.ts +0 -89
- package/dist/src/trigger/ITrigger.js +0 -35
- package/dist/src/trigger/RateTrigger.d.ts +0 -23
- package/dist/src/trigger/RateTrigger.js +0 -58
- package/dist/src/trigger/index.d.ts +0 -5
- package/dist/src/trigger/index.js +0 -22
- package/dist/tests/agent.test.d.ts +0 -1
- package/dist/tests/agent.test.js +0 -388
- package/dist/tests/agentStreamer.test.d.ts +0 -1
- package/dist/tests/agentStreamer.test.js +0 -530
- package/dist/tests/app.test.d.ts +0 -1
- package/dist/tests/app.test.js +0 -423
- package/dist/tests/model.test.d.ts +0 -1
- package/dist/tests/model.test.js +0 -310
- package/dist/tests/openAi.test.d.ts +0 -1
- package/dist/tests/openAi.test.js +0 -701
- package/dist/tests/outcomes.test.d.ts +0 -1
- package/dist/tests/outcomes.test.js +0 -257
- package/dist/tests/secrets.test.d.ts +0 -1
- package/dist/tests/secrets.test.js +0 -263
- package/dist/tests/server/http.test.d.ts +0 -1
- package/dist/tests/server/http.test.js +0 -553
- package/dist/tests/tool.test.d.ts +0 -1
- package/dist/tests/tool.test.js +0 -315
- package/dist/tests/toolkit.test.d.ts +0 -1
- package/dist/tests/toolkit.test.js +0 -189
- package/dist/tests/triggers.test.d.ts +0 -1
- package/dist/tests/triggers.test.js +0 -203
- package/dist/tests/types.test.d.ts +0 -1
- package/dist/tests/types.test.js +0 -429
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var _a;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.StreamingOutcome = void 0;
|
|
5
|
-
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
-
const process_1 = require("process");
|
|
7
|
-
class StreamingOutcome {
|
|
8
|
-
async send(messageStream) {
|
|
9
|
-
console.log("StreamingOutcome.send");
|
|
10
|
-
let shouldContinue = true;
|
|
11
|
-
while (shouldContinue) {
|
|
12
|
-
const value = await messageStream.next();
|
|
13
|
-
if (value.done) {
|
|
14
|
-
shouldContinue = false;
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
process_1.stdout.write(JSON.stringify(value.value) + "\n");
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
bindToRequest(request) {
|
|
23
|
-
console.log("Binding request to Slack:", request);
|
|
24
|
-
return Promise.resolve();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.StreamingOutcome = StreamingOutcome;
|
|
28
|
-
_a = JSII_RTTI_SYMBOL_1;
|
|
29
|
-
StreamingOutcome[_a] = { fqn: "@shuttl-io/core.StreamingOutcome", version: "0.1.7-0" };
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RyZWFtaW5nT3V0Y29tZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vdXRjb21lcy9TdHJlYW1pbmdPdXRjb21lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEscUNBQWlDO0FBRWpDLE1BQWEsZ0JBQWdCO0lBQ2xCLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBbUM7UUFDakQsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3JDLElBQUksY0FBYyxHQUFHLElBQUksQ0FBQztRQUMxQixPQUFPLGNBQWMsRUFBRSxDQUFDO1lBQ3BCLE1BQU0sS0FBSyxHQUFHLE1BQU0sYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pDLElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNiLGNBQWMsR0FBRyxLQUFLLENBQUM7WUFDM0IsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLGdCQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ3JELENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTztJQUNYLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBWTtRQUM3QixPQUFPLENBQUMsR0FBRyxDQUFDLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7O0FBbEJMLDRDQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElPdXRjb21lIH0gZnJvbSBcIi4vSU91dGNvbWVzXCI7XG5pbXBvcnQgeyBJTW9kZWxSZXNwb25zZVN0cmVhbSB9IGZyb20gXCIuLi9tb2RlbHMvdHlwZXNcIjtcbmltcG9ydCB7IHN0ZG91dCB9IGZyb20gXCJwcm9jZXNzXCI7XG5cbmV4cG9ydCBjbGFzcyBTdHJlYW1pbmdPdXRjb21lIGltcGxlbWVudHMgSU91dGNvbWUge1xuICAgIHB1YmxpYyBhc3luYyBzZW5kKG1lc3NhZ2VTdHJlYW06IElNb2RlbFJlc3BvbnNlU3RyZWFtKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiU3RyZWFtaW5nT3V0Y29tZS5zZW5kXCIpO1xuICAgICAgICBsZXQgc2hvdWxkQ29udGludWUgPSB0cnVlO1xuICAgICAgICB3aGlsZSAoc2hvdWxkQ29udGludWUpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXdhaXQgbWVzc2FnZVN0cmVhbS5uZXh0KCk7XG4gICAgICAgICAgICBpZiAodmFsdWUuZG9uZSkge1xuICAgICAgICAgICAgICAgIHNob3VsZENvbnRpbnVlID0gZmFsc2U7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHN0ZG91dC53cml0ZShKU09OLnN0cmluZ2lmeSh2YWx1ZS52YWx1ZSkgKyBcIlxcblwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcHVibGljIGJpbmRUb1JlcXVlc3QocmVxdWVzdDogYW55KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnNvbGUubG9nKFwiQmluZGluZyByZXF1ZXN0IHRvIFNsYWNrOlwiLCByZXF1ZXN0KTtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cbn0iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./IOutcomes"), exports);
|
|
18
|
-
__exportStar(require("./StreamingOutcome"), exports);
|
|
19
|
-
__exportStar(require("./CombinationOutcome"), exports);
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvb3V0Y29tZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUE0QjtBQUM1QixxREFBbUM7QUFDbkMsdURBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vSU91dGNvbWVzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9TdHJlYW1pbmdPdXRjb21lXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9Db21iaW5hdGlvbk91dGNvbWVcIjsiXX0=
|
package/dist/src/secrets.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export interface ISecret {
|
|
2
|
-
resolveSecret(): Promise<string>;
|
|
3
|
-
}
|
|
4
|
-
export declare class EnvSecret implements ISecret {
|
|
5
|
-
readonly envVarName: string;
|
|
6
|
-
constructor(envVarName: string);
|
|
7
|
-
resolveSecret(): Promise<string>;
|
|
8
|
-
}
|
|
9
|
-
export declare class Secret {
|
|
10
|
-
source: "env" | "file" | "shuttl";
|
|
11
|
-
name: string;
|
|
12
|
-
private constructor();
|
|
13
|
-
/**
|
|
14
|
-
* Create a Secret from an environment variable.
|
|
15
|
-
* @param envVarName The name of the environment variable.
|
|
16
|
-
* @returns A new Secret.
|
|
17
|
-
*/
|
|
18
|
-
static fromEnv(envVarName: string): ISecret;
|
|
19
|
-
}
|
package/dist/src/secrets.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var _a, _b;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.Secret = exports.EnvSecret = void 0;
|
|
5
|
-
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
-
class EnvSecret {
|
|
7
|
-
constructor(envVarName) {
|
|
8
|
-
this.envVarName = envVarName;
|
|
9
|
-
}
|
|
10
|
-
async resolveSecret() {
|
|
11
|
-
return process.env[this.envVarName] || "";
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
exports.EnvSecret = EnvSecret;
|
|
15
|
-
_a = JSII_RTTI_SYMBOL_1;
|
|
16
|
-
EnvSecret[_a] = { fqn: "@shuttl-io/core.EnvSecret", version: "0.1.7-0" };
|
|
17
|
-
class Secret {
|
|
18
|
-
constructor(source, name) {
|
|
19
|
-
this.source = source;
|
|
20
|
-
this.name = name;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Create a Secret from an environment variable.
|
|
24
|
-
* @param envVarName The name of the environment variable.
|
|
25
|
-
* @returns A new Secret.
|
|
26
|
-
*/
|
|
27
|
-
static fromEnv(envVarName) {
|
|
28
|
-
return new EnvSecret(envVarName);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.Secret = Secret;
|
|
32
|
-
_b = JSII_RTTI_SYMBOL_1;
|
|
33
|
-
Secret[_b] = { fqn: "@shuttl-io/core.Secret", version: "0.1.7-0" };
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZWNyZXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBSUEsTUFBYSxTQUFTO0lBQ2xCLFlBQW1DLFVBQWtCO1FBQWxCLGVBQVUsR0FBVixVQUFVLENBQVE7SUFBRSxDQUFDO0lBQ2pELEtBQUssQ0FBQyxhQUFhO1FBQ3RCLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlDLENBQUM7O0FBSkwsOEJBS0M7OztBQUVELE1BQWEsTUFBTTtJQUdmLFlBQW9CLE1BQWlDLEVBQUUsSUFBWTtRQUMvRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBa0I7UUFDcEMsT0FBTyxJQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxDQUFDOztBQWZMLHdCQWdCQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVNlY3JldCB7XG4gICAgcmVzb2x2ZVNlY3JldCgpOiBQcm9taXNlPHN0cmluZz47XG59XG5cbmV4cG9ydCBjbGFzcyBFbnZTZWNyZXQgaW1wbGVtZW50cyBJU2VjcmV0IHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGVudlZhck5hbWU6IHN0cmluZyl7fVxuICAgIHB1YmxpYyBhc3luYyByZXNvbHZlU2VjcmV0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzLmVudlt0aGlzLmVudlZhck5hbWVdIHx8IFwiXCI7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgU2VjcmV0ICB7XG4gICAgcHVibGljIHNvdXJjZTogXCJlbnZcIiB8IFwiZmlsZVwiIHwgXCJzaHV0dGxcIjtcbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICAgIHByaXZhdGUgY29uc3RydWN0b3Ioc291cmNlOiBcImVudlwiIHwgXCJmaWxlXCIgfCBcInNodXR0bFwiLCBuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zb3VyY2UgPSBzb3VyY2U7XG4gICAgICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgU2VjcmV0IGZyb20gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuICAgIFxuICAgICAqIEBwYXJhbSBlbnZWYXJOYW1lIFRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAgICAgKiBAcmV0dXJucyBBIG5ldyBTZWNyZXQuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmcm9tRW52KGVudlZhck5hbWU6IHN0cmluZyk6IElTZWNyZXQge1xuICAgICAgICByZXR1cm4gbmV3IEVudlNlY3JldChlbnZWYXJOYW1lKTtcbiAgICB9XG59Il19
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { IServer } from "../Server";
|
|
2
|
-
/**
|
|
3
|
-
* Request message format from the host CLI
|
|
4
|
-
*/
|
|
5
|
-
export interface IPCRequest {
|
|
6
|
-
/** Unique request ID for correlation */
|
|
7
|
-
id: string;
|
|
8
|
-
/** The method/action to invoke */
|
|
9
|
-
method: string;
|
|
10
|
-
/** Optional parameters for the method */
|
|
11
|
-
body?: Record<string, unknown>;
|
|
12
|
-
}
|
|
13
|
-
export interface IPCResponseError {
|
|
14
|
-
code: string;
|
|
15
|
-
message: string;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Response message format sent back to the host CLI
|
|
19
|
-
*/
|
|
20
|
-
export interface IPCResponse {
|
|
21
|
-
/** Correlates to the request ID */
|
|
22
|
-
id: string;
|
|
23
|
-
/** Whether the request was successful */
|
|
24
|
-
success: boolean;
|
|
25
|
-
/** The result data (on success) */
|
|
26
|
-
result?: unknown;
|
|
27
|
-
/** Error information (on failure) */
|
|
28
|
-
errorObj?: IPCResponseError;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* A server that communicates via STDIN/STDOUT using JSON messages.
|
|
32
|
-
* Uses newline-delimited JSON (NDJSON) protocol where each message
|
|
33
|
-
* is a single line of JSON followed by a newline character.
|
|
34
|
-
*
|
|
35
|
-
* Host CLI writes requests to the process's STDIN.
|
|
36
|
-
* This server writes responses to STDOUT.
|
|
37
|
-
* Debug/log messages go to STDERR to avoid polluting the protocol.
|
|
38
|
-
*/
|
|
39
|
-
export declare class StdInServer implements IServer {
|
|
40
|
-
private app?;
|
|
41
|
-
private running;
|
|
42
|
-
private rl?;
|
|
43
|
-
constructor();
|
|
44
|
-
accept(app: any): void;
|
|
45
|
-
start(): Promise<void>;
|
|
46
|
-
stop(): Promise<void>;
|
|
47
|
-
/**
|
|
48
|
-
* Process a single line of input
|
|
49
|
-
*/
|
|
50
|
-
private handleLine;
|
|
51
|
-
/**
|
|
52
|
-
* Route and handle a validated request
|
|
53
|
-
*/
|
|
54
|
-
private handleRequest;
|
|
55
|
-
private handleInvokeAgent;
|
|
56
|
-
/**
|
|
57
|
-
* Handle tool invocation request
|
|
58
|
-
*/
|
|
59
|
-
private handleInvokeTool;
|
|
60
|
-
/**
|
|
61
|
-
* Handle trigger invocation request from the serve command
|
|
62
|
-
*/
|
|
63
|
-
private handleInvokeTrigger;
|
|
64
|
-
/**
|
|
65
|
-
* Send a JSON response to STDOUT
|
|
66
|
-
*/
|
|
67
|
-
private sendResponse;
|
|
68
|
-
}
|