agentlang 0.3.7 → 0.3.8

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.
Files changed (73) hide show
  1. package/README.md +20 -16
  2. package/out/extension/main.cjs +250 -250
  3. package/out/extension/main.cjs.map +2 -2
  4. package/out/language/agentlang-validator.d.ts.map +1 -1
  5. package/out/language/agentlang-validator.js +1 -0
  6. package/out/language/agentlang-validator.js.map +1 -1
  7. package/out/language/generated/ast.d.ts +21 -1
  8. package/out/language/generated/ast.d.ts.map +1 -1
  9. package/out/language/generated/ast.js +31 -2
  10. package/out/language/generated/ast.js.map +1 -1
  11. package/out/language/generated/grammar.d.ts.map +1 -1
  12. package/out/language/generated/grammar.js +306 -127
  13. package/out/language/generated/grammar.js.map +1 -1
  14. package/out/language/main.cjs +833 -632
  15. package/out/language/main.cjs.map +3 -3
  16. package/out/language/parser.d.ts +3 -2
  17. package/out/language/parser.d.ts.map +1 -1
  18. package/out/language/parser.js +1 -1
  19. package/out/language/parser.js.map +1 -1
  20. package/out/language/syntax.d.ts +7 -0
  21. package/out/language/syntax.d.ts.map +1 -1
  22. package/out/language/syntax.js +15 -0
  23. package/out/language/syntax.js.map +1 -1
  24. package/out/runtime/agents/common.d.ts +7 -2
  25. package/out/runtime/agents/common.d.ts.map +1 -1
  26. package/out/runtime/agents/common.js +22 -8
  27. package/out/runtime/agents/common.js.map +1 -1
  28. package/out/runtime/auth/cognito.d.ts +2 -0
  29. package/out/runtime/auth/cognito.d.ts.map +1 -1
  30. package/out/runtime/auth/cognito.js +84 -0
  31. package/out/runtime/auth/cognito.js.map +1 -1
  32. package/out/runtime/auth/interface.d.ts +1 -0
  33. package/out/runtime/auth/interface.d.ts.map +1 -1
  34. package/out/runtime/loader.d.ts.map +1 -1
  35. package/out/runtime/loader.js +64 -20
  36. package/out/runtime/loader.js.map +1 -1
  37. package/out/runtime/module.d.ts.map +1 -1
  38. package/out/runtime/module.js +26 -16
  39. package/out/runtime/module.js.map +1 -1
  40. package/out/runtime/modules/ai.d.ts.map +1 -1
  41. package/out/runtime/modules/ai.js +6 -1
  42. package/out/runtime/modules/ai.js.map +1 -1
  43. package/out/runtime/modules/auth.d.ts +1 -0
  44. package/out/runtime/modules/auth.d.ts.map +1 -1
  45. package/out/runtime/modules/auth.js +33 -1
  46. package/out/runtime/modules/auth.js.map +1 -1
  47. package/out/runtime/modules/files.d.ts +18 -0
  48. package/out/runtime/modules/files.d.ts.map +1 -0
  49. package/out/runtime/modules/files.js +116 -0
  50. package/out/runtime/modules/files.js.map +1 -0
  51. package/out/setupClassic.d.ts +98 -0
  52. package/out/setupClassic.d.ts.map +1 -0
  53. package/out/setupClassic.js +38 -0
  54. package/out/setupClassic.js.map +1 -0
  55. package/out/setupCommon.d.ts +2 -0
  56. package/out/setupCommon.d.ts.map +1 -0
  57. package/out/setupCommon.js +33 -0
  58. package/out/setupCommon.js.map +1 -0
  59. package/out/setupExtended.d.ts +40 -0
  60. package/out/setupExtended.d.ts.map +1 -0
  61. package/out/setupExtended.js +67 -0
  62. package/out/setupExtended.js.map +1 -0
  63. package/package.json +1 -1
  64. package/src/language/agentlang-validator.ts +1 -0
  65. package/src/language/agentlang.langium +7 -3
  66. package/src/language/generated/ast.ts +54 -4
  67. package/src/language/generated/grammar.ts +306 -127
  68. package/src/language/parser.ts +1 -1
  69. package/src/language/syntax.ts +21 -0
  70. package/src/runtime/agents/common.ts +30 -9
  71. package/src/runtime/loader.ts +64 -18
  72. package/src/runtime/module.ts +25 -16
  73. package/src/runtime/modules/ai.ts +5 -1
@@ -1,6 +1,6 @@
1
1
  import { AstNode, LangiumCoreServices, LangiumDocument } from 'langium';
2
- import { ModuleDefinition, Statement, WorkflowDefinition } from './generated/ast.js';
3
- import { BasePattern } from './syntax.js';
2
+ import { If, ModuleDefinition, Statement, WorkflowDefinition } from './generated/ast.js';
3
+ import { BasePattern, IfPattern } from './syntax.js';
4
4
  export declare function parseHelper<T extends AstNode = AstNode>(services: LangiumCoreServices): (input: string, options?: any) => Promise<LangiumDocument<T>>;
5
5
  export declare const parse: (input: string, options?: any) => Promise<LangiumDocument<ModuleDefinition>>;
6
6
  export declare function parseModule(moduleDef: string): Promise<ModuleDefinition>;
@@ -10,4 +10,5 @@ export declare function parseWorkflow(workflowDef: string): Promise<WorkflowDefi
10
10
  export declare function maybeGetValidationErrors(document: LangiumDocument): string[] | undefined;
11
11
  export declare function maybeRaiseParserErrors(document: LangiumDocument): void;
12
12
  export declare function introspect(s: string): Promise<BasePattern[]>;
13
+ export declare function introspectIf(ifpat: If): IfPattern;
13
14
  //# sourceMappingURL=parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/language/parser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAmB,mBAAmB,EAAE,eAAe,EAAO,MAAM,SAAS,CAAC;AAC9F,OAAO,EAkBL,gBAAgB,EAShB,SAAS,EACT,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,WAAW,EAWZ,MAAM,aAAa,CAAC;AAIrB,wBAAgB,WAAW,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EACrD,QAAQ,EAAE,mBAAmB,GAC5B,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAgB/D;AAGD,eAAO,MAAM,KAAK,UAnBP,MAAM,YAAY,GAAG,+CAmBsC,CAAC;AAEvE,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAI9E;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAarE;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAG3E;AAED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAOpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,EAAE,GAAG,SAAS,CAyBxF;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,QAuB/D;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAUlE"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/language/parser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAmB,mBAAmB,EAAE,eAAe,EAAO,MAAM,SAAS,CAAC;AAC9F,OAAO,EAQL,EAAE,EAUF,gBAAgB,EAShB,SAAS,EACT,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,WAAW,EAOX,SAAS,EAIV,MAAM,aAAa,CAAC;AAIrB,wBAAgB,WAAW,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EACrD,QAAQ,EAAE,mBAAmB,GAC5B,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAgB/D;AAGD,eAAO,MAAM,KAAK,UAnBP,MAAM,YAAY,GAAG,+CAmBsC,CAAC;AAEvE,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAI9E;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAarE;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAG3E;AAED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAOpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,EAAE,GAAG,SAAS,CAyBxF;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,QAuB/D;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAUlE;AAsND,wBAAgB,YAAY,CAAC,KAAK,EAAE,EAAE,GAAG,SAAS,CAajD"}
@@ -321,7 +321,7 @@ function introspectForEach(forEach) {
321
321
  });
322
322
  return fp;
323
323
  }
324
- function introspectIf(ifpat) {
324
+ export function introspectIf(ifpat) {
325
325
  const ifp = new IfPattern(introspectExpression(ifpat.cond));
326
326
  ifpat.statements.forEach((stmt) => {
327
327
  ifp.addPattern(introspectStatement(stmt));
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/language/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/language/parser.ts"],"names":[],"mappings":"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"}
@@ -159,6 +159,13 @@ export declare class IfPattern extends BasePattern {
159
159
  toString(): string;
160
160
  }
161
161
  export declare function isIfPattern(p: BasePattern): boolean;
162
+ export declare class CasePattern extends BasePattern {
163
+ condition: BasePattern;
164
+ body: BasePattern;
165
+ constructor(condition: BasePattern, body: BasePattern);
166
+ toString(): string;
167
+ }
168
+ export declare function isCasePattern(p: BasePattern): boolean;
162
169
  export declare function newCreatePattern(recName: string): CrudPattern;
163
170
  export declare function newQueryPattern(recName: string, forQueryUpdate?: boolean): CrudPattern;
164
171
  export declare function newQueryUpdatePattern(recName: string): CrudPattern;
@@ -1 +1 @@
1
- {"version":3,"file":"syntax.d.ts","sourceRoot":"","sources":["../../src/language/syntax.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syntax.d.ts","sourceRoot":"","sources":["../../src/language/syntax.ts"],"names":[],"mappings":"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"}
@@ -548,6 +548,21 @@ IfPattern.True = new LiteralPattern(LiteralPatternType.BOOLEAN, true);
548
548
  export function isIfPattern(p) {
549
549
  return p instanceof IfPattern;
550
550
  }
551
+ export class CasePattern extends BasePattern {
552
+ constructor(condition, body) {
553
+ super();
554
+ this.condition = condition;
555
+ this.body = body;
556
+ }
557
+ toString() {
558
+ return `case (${this.condition.toString()}) {
559
+ ${this.body.toString()}
560
+ }`;
561
+ }
562
+ }
563
+ export function isCasePattern(p) {
564
+ return p instanceof CasePattern;
565
+ }
551
566
  export function newCreatePattern(recName) {
552
567
  const cp = new CrudPattern(recName);
553
568
  cp.isCreate = true;
@@ -1 +1 @@
1
- {"version":3,"file":"syntax.js","sourceRoot":"","sources":["../../src/language/syntax.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syntax.js","sourceRoot":"","sources":["../../src/language/syntax.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { IfPattern } from '../../language/syntax.js';
1
2
  export declare const PlannerInstructions = "Agentlang is a very-high-level declarative language that makes it easy to define business applications as 'models'.\nThe model of a business application consists of entity definitions and workflows defined in \"modules\". \nA module is be encoded in a syntax inspired by JavaScript and JSON. Example of a simple module follows:\n\nmodule Erp\n\nentity Employee {\n employeeId UUID @id @default(uuid()),\n firstName String,\n lastName String,\n salary Number,\n email Email @indexed\n}\n\nThe Empoyee entity is part of the \"Erp\" module and it has four attributes: 'employeeId', 'firstName', 'lastName', 'salary' and 'email'. \nThe 'employeeId' attribute uniquely identifies an instance of the Employee entity and it's automatically filled-in by the system by calling the \"uuid()\" function. \nIn the place of the keyword 'entity', the keyword 'record' may also be used. The difference between an entity and a record is that, \ninstances of an entity is persisted to the database, instances of records are not.\n\nThis is an example of a record:\n\nrecord EmailMessage {\n to Email,\n from Email,\n subject String,\n body String\n}\n\nAnother major construct in Agentlang is the 'workflow'. Workflows contains JSON \"patterns\" that perform CRUD operations on entities. \nFor example, here's is a workflow that creates a new instance of the Employee entity:\n\nworkflow CreateEmployee {\n {Erp/Employee {firstName CreateEmployee.firstName,\n lastName CreateEmployee.lastName,\n salary CreateEmployee.salary,\n email CreateEmployee.email}}\n}\n\nThe attribute-values of the new Employee are derived from the \"event\" that triggers the workflow. In this example the event is called \"CreateEmployee\".\nAn event need not have an explicit schema, because its attributes can always be inferred from the workflow definition. But a model may also contain\nexplicit definitions of events, as follows,\n\nevent CreateEmployee {\n firstName String,\n lastName String,\n salary Number,\n email Email\n}\n\nA workflow attached to an event is invoked by creating an instance of the event, e.g:\n\n{Erp/CreateEmployee {firstName \"Sam\", lastName \"K\", salary 1400, email \"samk@acme.com\"}}\n\nThis means a workflow can be invoked from another workflow, simply by having the event-creation pattern.\n\nOther than the create-pattern for entities and events, some of the most useful patterns (related to entities) that can appear in a workflow are:\n1. Query - e.g: '{Erp/Employee {employeeId? \"56392e13-0d9a-42f7-b556-0d7cd9468a24\"}}'. The attributes by which the query happens must end with a '?' character.\n To lookup all instances of an entity, use the syntax: '{EntityName?: {}}'.\n2. Update - e.g: '{Erp/Employee {employeeId? \"56392e13-0d9a-42f7-b556-0d7cd9468a24\", firstName \"Joe\"}}'. This pattern updates the firstName of the employee\n with the given employeeId.\n3. Upsert - e.g: '{Erp/Employee {employeeId \"56392e13-0d9a-42f7-b556-0d7cd9468a24\", firstName \"Joe\"}, @upsert}'. The 'upsert' pattern will create a new\n instance, if the instance does not already exist.\n4. Delete - e.g: 'delete {Erp/Employee {employeeId? \"56392e13-0d9a-42f7-b556-0d7cd9468a24\"}}'\n\nThe default query operator is equals. So an expression like 'employeeId? \"56392e13-0d9a-42f7-b556-0d7cd9468a24\"' means,\n'where employeeId equals \"56392e13-0d9a-42f7-b556-0d7cd9468a24\"'. Other comparison operators has to be specified explicitly, as in\n'{age?< 50}' - which means 'where age less-than 50'. The comparison operators supported by a query pattern are:\n\n!= - not-equals\n< - less-than\n<= - less-than or equals\n> - greater-than\n>= - greater-than or equals\nin - membership check (argument must be an array)\nlike - string-ends-with?\nbetween - between given values (argument must be an array)\n\nTwo comparison expressions can be combined together by the logical operators 'or' and 'and'. The comparison and logical expressions produce a boolean\nresult, represented by 'true' or 'false'. A boolean value can be inversed by using the 'not' expression, e.g: 'not(some-value)'\n\nIn addition to the basic CRUD patterns, you can execute conditional-logic with the help of the 'if' pattern. An example follows,\n\nworkflow IncrementSalary {\n if (IncrementSalary.percentage > 10) {\n {Erp/Employee {employeeId IncrementSalary.employeeId, salary salary + salary * IncrementSalary.percentage}}\n } else {\n {Erp/Employee {employeeId IncrementSalary.employeeId, salary salary + 1500}}\n }\n}\n\nNote the value passed to the 'salary' attribute - it's an arithmetic expression. All normal arithmetic expressions are supported by workflow patterns.\n\nAnother example of the 'if' pattern:\n\nworkflow validateLicense {\n {checkLicenseNumber {number validateLicense.number}} @as response;\n if (response == \"ok\") {\n {license {number? validateLicense.number, status \"active\"}}\n } else {\n {license {number? validateLicense.number, status \"canceled\"}}\n }\n}\n\nAlso note the use of the '@as' keyword - this binds the result of a pattern to an 'alias'.\n\nA successful query pattern will return an array of instances. The 'for' pattern can be used to iterate over an array. An example follows:\n\nworkflow NotifyEmployees {\n {Erp/Employee {salary?> 1000}} @as employees;\n for emp in employees {\n {Erp/SendMail {email emp.email, body \"You are selected for an increment!\"}}\n }\n}\n\nHere the result of the query is bound to the alias named 'employees'. Any pattern can have an alias, including 'if' and 'for'. An alias can be used to refer to the attributes of the instance, \nvia the dot(.) notation. Aliases can also be used to destructure a query result - here's an example:\n\nworkflow FindFirstTwoEmployees {\n {Erp/Employee {salary?> 1000}} @as [emp1, emp2];\n [emp1, emp2]\n}\n\nThis alias will bind the first two instances to 'a' and 'b' and the rest of the instances to an array named 'xs':\n\n{SomeEntity {id?> 1}} @as [a, b, _, xs]\n\nExamples of binding aliases to 'if' and 'for':\n\nif (IncrementSalary.percentage > 10) {\n {Erp/Employee {employeeId IncrementSalary.employeeId, salary salary + salary * IncrementSalary.percentage}}\n} else {\n {Erp/Employee {employeeId IncrementSalary.employeeId, salary salary + 1500}}\n} @as emp\n\nfor emp in employees {\n {Erp/SendMail {email emp.email, body \"You are selected for an increment!\"}}\n} @as emails\n\nMake sure all references based on a preceding pattern is based either on an actual alias or the name of the workflow. For example, the following sequence of patterns\nare invalid, because the alias 'employee' is not defined:\n\n{Employee {id? 101}};\n{SendEmail {to employee.email, body \"hello\"}}\n\nA fix for the reference-error is shown below:\n\n{Employee {id? 101}} @as [employee];\n{SendEmail {to employee.email, body \"hello\"}}\n\nNote that the alias for the query is '[employee]' so that the resultset is destructured to select exactly one instance of Employee \nselected into the reference. You must follow this pattern if your goal is to select exactly a single instance.\n\nKeep in mind that the only valid syntax for the 'if' condition is:\n\nif (<expr>) {\n <patterns>\n} else if (<expr>) {\n <patterns>\n} else {\n <patterns>\n}\n\nThe following usage is NOT valid:\n\n<pattern> if (<expr>)\n\nA pattern may execute asynchronously and its eventual result can be handled by patterns provided in the '@then' clause. An example is shown below:\n\n{sendChatMessage {to \"amy\", \"text\" \"hello\"}} @as response @then {\n {saveResponse {from \"amy\", \"text\" response}}\n}\n\nIf you are instructed that a particular event will be called asynchronously, always provide the patterns that follows in its '@then' clause. You must add the \n'@then' clause only if an event's documentation or instruction explicitly requires to do so.\n\nEntities in a module can be connected together in relationships. There are two types of relationships - 'contains' and 'between'.\n'Contains' relationship is for hierarchical data, as in a Library entity containing Books. 'Between' relationship is for graph-like data,\nlike two Profiles in a social media app is connected as friends. A 'between' relationship can be one of the following three types - 'one_one' (one-to-one),\n'one_many' (one-to-many) and 'many_many' (many-to-many), which is the default.\n\nThe following example shows how additional profile data for an employee could be defined as a new entity and attached to the Employee entity as a between-relationship:\n\nentity Profile {\n id UUID @id @default(uuid()),\n address String @optional,\n photo URL @optional,\n dateOfBirth DateTime @optional\n}\n\nrelationship EmployeeProfile between (Erp/Employee, Erp/Profile) @one_one\n\nThe '@one_one' annotation means exactly one Employee and Profile can be related to each other via 'EmployeeProfile'.\n\nHere's the 'CreateEmployee' workflow updated to create the Employee with the his/her Profile attached:\n\nworkflow CreateEmployee {\n {Erp/Employee {firstName CreateEmployee.firstName,\n lastName CreateEmployee.lastName,\n salary CreateEmployee.salary,\n email CreateEmployee.email},\n Erp/EmployeeProfile {Erp/Profile {address CreateEmployee.address,\n photo CreateEmployee.photo,\n dateOfBirth CreateEmployee.dateOfBirth}}}\n}\n\nThe following pattern can be user to query an Employee along with his Profile:\n\n{Erp/Employee {employeeId? \"56392e13-0d9a-42f7-b556-0d7cd9468a24\"},\n Erp/EmployeeProfile {Erp/Profile? {}}}\n\nAs an example of 'contains' relaionships, consider modelling task-assignments for an Employee as folllows:\n\nentity TaskAssignment {\n id UUID @id @default(uuid()),\n description String,\n assignmentDate DateTime @default(now())\n}\n\nrelationship EmployeeTaskAssignment contains (Erp/Employee, Erp/TaskAssignment)\n\nThe following workflow shows how to assign a new task to an Employee:\n\nworkflow AssignNewTask {\n {Erp/Employee {employeeId? AssignNewTask.employeeId},\n Erp/EmployeeTaskAssignment {Erp/TaskAssignment {description AssignNewTask.description}}}\n}\n\nThe following workflow queries an Employee along with all his tasks:\n\nworkflow GetEmployeeTaskAssignments {\n {Erp/Employee {employeeId? GetEmployeeTaskAssignments.employeeId},\n Erp/EmployeeTaskAssignment {Erp/TaskAssignment? {}}}\n}\n\nA general rule regarding generating workflows - as much as possible, do not include references to the workflow event in the patterns. Try to\nfill-in values from the available context. For example, if your instruction is \"create a workflow to send an email to employee 101 with this message - \n'please call me as soon as possible'\", the best workflow to return is:\n\nworkflow sendEmail {\n {employee {id? 101}} @as emp;\n {email {to emp.email body \"please call me as soon as possible\"}}\n}\n\nbecause all the information needed is available in the context. If the instruction is \"create a workflow to send an email by employee-id with this message - \n'please call me as soon as possible'\", then you can return:\n\nworkflow sendEmail {\n {employee {id? sendEmail.employeeId}} @as emp;\n {email {to emp.email body \"please call me as soon as possible\"}}\n}\n\nThe point is, use the immediate context to fill-in values in generated patterns, as much as possible.\n\nAlso generate a workflow only if required explicitly by the user or the contextual information is incomplete. Otherwise, just return an array of patterns.\nAs an example, if the user request is \"send an email to employee 101 with this message - 'please call me as soon as possible'\", you must return:\n\n[{employee {id? 101}} @as emp;\n {email {to emp.email, body \"please call me as soon as possible\"}}]\n\nYou MUST separate each pattern in the array with a semi-colon (;) and never use a comma (,) for this purpose.\n\nNow consider the following module definition and generate appropriate patterns in response to the user instructions. You must return only valid patterns or workflows,\nno other descriptive text or comments are needed.\n";
2
3
  export declare const FlowExecInstructions = "The following is the textual representation of a flowchart. \n\ncheckOrder --> \"ProductA\" acceptOrder\ncheckOrder --> \"ProductB\" acceptOrder\ncheckOrder --> \"ProductC\" rejectOrder\nacceptOrder --> sendPaymentLinkToCustomer\nrejectOrder --> sendRejectionEmailToCustomer\n\nAlong with this flowchart, you'll be passed a \"context\", which contain the steps in the flowchart that was executed so far, along with\ntheir results. Based on the context, you need to return the name of the step that needs to execute next. If you have reached the end\nof the chart, return 'DONE'. \n\nAt the beginning of the execution, the context will contain only the order information, say something like:\n\nOrderNo: 101, Item: \"ProductB\", customerEmail: \"manager@acme.com\"\n\nThis means you have to return 'checkOrder' as the next step (i.e you move the root node of the flowchart).\nAfter the step checkOrder executes, you'll be passed the following context:\n\norderNo: 101, Item: \"ProductB\", customerEmail: \"manager@acme.com\"\ncheckOrder --> \"ProductB\"\n\nNow you can infer from the context that if the result of checkOrder is either \"ProductA\" or \"ProductB\", you must move to the step 'acceptOrder'.\nSo you return 'acceptOrder'. After this, you'll return the updated context as:\n\nOrderNo: 101, Item: \"ProductB\", customerEmail: \"manager@acme.com\"\ncheckOrder --> \"ProductB\"\nacceptOrder --> {orderNo: 101, customerEmail: \"manager@acme.com\", acceptedOn: \"2025-07-01\"}\n\nYou see that 'acceptOrder' has produced the result '{orderNo: 101, customerEmail: \"manager@acme.com\", acceptedOn: \"2025-07-01\"}' - but from the flowchart you know that, whatever the result of 'acceptOrder',\nyou have to move to the 'sendPaymentLinkToCustomer' step and so you return 'sendPaymentLinkToCustomer'.\n\nThe next context you'll see will be:\n\nOrderNo: 101, Item: \"ProductB\", customerEmail: \"manager@acme.com\"\ncheckOrder --> \"ProductB\"\nacceptOrder --> {orderNo: 101, customerEmail: \"manager@acme.com\", acceptedOn: \"2025-07-01\"}\nsendPaymentLinkToCustomer --> \"manager@acme.com\"\n\nThe 'sendPaymentLinkToCustomer' has returned the customer email. You look at the flowchart and detect that, whatever the return value of\n'sendPaymentLinkToCustomer' there is nothing else to do. So you return 'DONE'.\n\nGenerally a flowchart has the following two types of entries:\n 1. a --> b, meaning after step 'a' do step 'b'.\n 2. a --> \"x\" b - this means if 'a' returns the string \"x\", then do step 'b'.\nIf you detect that you have reached the end of the chart, return 'DONE'. Otherwise, return only the name of the next step. Never return\nany additional description, direction or comments.\n";
3
4
  export declare const DecisionAgentInstructions = "Analyse a decision table with multiple cases along with the context to return one or more values.\nA decision table will be a sequence of case-conditions as in,\n\ncase (condition1) {\n value1\n}\n\ncase (condition2) {\n value2\n}\n\nThe context will be some additional instructions and JSON-like data based on which you can evaluate the conditions and decide which values to return.\nLet's consider an example:\n\n\nanalyseSalesReport --> {\"Acme/salesReport\": {\"employeeId\": 101, \"employeeGrade\": \"A\", \"totalSalesAmount\": 14000}}\n\ncase (totalSalesAmount > 10000) {\n giveIncrementToEmployee\n}\n\ncase (totalSalesAmount > 15000) {\n promoteEmployee\n}\n\ncase (totalSalesAmount < 10000 and employeeGrade == \"A\") {\n demoteEmployee\n}\n\n\nGiven the above context and cases, you must return giveIncrementToEmployee - because the data in the context satisfies only the first case.\nIf the context is,\n\nanalyseSalesReport --> {\"Acme/salesReport\": {\"employeeId\": 101, \"employeeGrade\": \"A\", \"totalSalesAmount\": 16000}}\n\nyou must return giveIncrementToEmployee,promoteEmployee because the data satisfies the first two cases. You must return only the value of the \ncase or cases you selected and no additional text or comments. If you decide to select more than one case, return the values separated by commas.\nAlso select the case that is the best match for the given context, no need to look for a perfect match for all values specified in the context.\nNow apply the same analysis to the following context and cases provided by the user.\n";
@@ -5,8 +6,10 @@ export type AgentCondition = {
5
6
  if: string;
6
7
  then: string;
7
8
  internal: boolean;
9
+ ifPattern: IfPattern | undefined;
8
10
  };
9
- export declare function newAgentDirective(cond: string, then: string, internal?: boolean): AgentCondition;
11
+ export declare function newAgentDirective(cond: string, then?: string, internal?: boolean, ifPattern?: IfPattern | undefined): AgentCondition;
12
+ export declare function newAgentDirectiveFromIf(ifPattern: IfPattern): AgentCondition;
10
13
  export declare function registerAgentDirectives(agentFqName: string, conds: AgentCondition[]): void;
11
14
  export declare function getAgentDirectives(agentFqName: string): AgentCondition[] | undefined;
12
15
  export declare function getAgentDirectivesInternal(agentFqName: string): AgentCondition[] | undefined;
@@ -17,8 +20,10 @@ export type AgentScenario = {
17
20
  user: string;
18
21
  ai: string;
19
22
  internal: boolean;
23
+ ifPattern: IfPattern | undefined;
20
24
  };
21
- export declare function newAgentScenario(user: string, ai: string, internal?: boolean): AgentScenario;
25
+ export declare function newAgentScenario(user: string, ai: string, internal?: boolean, ifPattern?: IfPattern | undefined): AgentScenario;
26
+ export declare function newAgentScenarioFromIf(ifPattern: IfPattern): AgentScenario;
22
27
  export declare function registerAgentScenarios(agentFqName: string, scenarios: AgentScenario[]): void;
23
28
  export declare function getAgentScenarios(agentFqName: string): AgentScenario[] | undefined;
24
29
  export declare function getAgentScenariosJson(agentFqName: string): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/runtime/agents/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/runtime/agents/common.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { trimQuotes } from '../util.js';
1
2
  export const PlannerInstructions = `Agentlang is a very-high-level declarative language that makes it easy to define business applications as 'models'.
2
3
  The model of a business application consists of entity definitions and workflows defined in "modules".
3
4
  A module is be encoded in a syntax inspired by JavaScript and JSON. Example of a simple module follows:
@@ -351,8 +352,11 @@ Also select the case that is the best match for the given context, no need to lo
351
352
  Now apply the same analysis to the following context and cases provided by the user.
352
353
  `;
353
354
  const AgentDirectives = new Map();
354
- export function newAgentDirective(cond, then, internal = false) {
355
- return { if: cond, then, internal };
355
+ export function newAgentDirective(cond, then = '', internal = false, ifPattern = undefined) {
356
+ return { if: cond, then, internal, ifPattern };
357
+ }
358
+ export function newAgentDirectiveFromIf(ifPattern) {
359
+ return newAgentDirective(ifPattern.toString(), '', false, ifPattern);
356
360
  }
357
361
  export function registerAgentDirectives(agentFqName, conds) {
358
362
  AgentDirectives.set(agentFqName, conds);
@@ -368,9 +372,14 @@ export function getAgentDirectivesInternal(agentFqName) {
368
372
  }
369
373
  export function getAgentDirectivesJson(agentFqName) {
370
374
  const conds = getAgentDirectivesInternal(agentFqName);
371
- if (conds) {
375
+ if (conds && conds.length > 0) {
372
376
  const fmted = conds.map((c) => {
373
- return { if: c.if, then: c.then };
377
+ if (c.ifPattern) {
378
+ return c.ifPattern.toString();
379
+ }
380
+ else {
381
+ return { if: c.if, then: c.then };
382
+ }
374
383
  });
375
384
  return JSON.stringify(fmted);
376
385
  }
@@ -384,8 +393,13 @@ export function addAgentDirective(agentFqName, newDirective) {
384
393
  dirs.push(newDirective);
385
394
  registerAgentDirectives(agentFqName, dirs);
386
395
  }
387
- export function newAgentScenario(user, ai, internal = false) {
388
- return { user, ai, internal };
396
+ export function newAgentScenario(user, ai, internal = false, ifPattern = undefined) {
397
+ return { user, ai, internal, ifPattern };
398
+ }
399
+ export function newAgentScenarioFromIf(ifPattern) {
400
+ const user = trimQuotes(ifPattern.condition.toString());
401
+ const ai = trimQuotes(ifPattern.body[0].toString());
402
+ return newAgentScenario(user, ai, false, ifPattern);
389
403
  }
390
404
  const AgentScenarios = new Map();
391
405
  export function registerAgentScenarios(agentFqName, scenarios) {
@@ -396,7 +410,7 @@ export function getAgentScenarios(agentFqName) {
396
410
  }
397
411
  export function getAgentScenariosJson(agentFqName) {
398
412
  const scns = getAgentScenariosInternal(agentFqName);
399
- if (scns) {
413
+ if (scns && scns.length > 0) {
400
414
  const fmtd = scns.map((scn) => {
401
415
  return {
402
416
  user: scn.user,
@@ -439,7 +453,7 @@ export function getAgentGlossaryInternal(agentFqName) {
439
453
  }
440
454
  export function getAgentGlossaryJson(agentFqName) {
441
455
  const gls = getAgentGlossaryInternal(agentFqName);
442
- if (gls) {
456
+ if (gls && gls.length > 0) {
443
457
  const fmtd = gls.map((ge) => {
444
458
  return {
445
459
  name: ge.name,
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/runtime/agents/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/runtime/agents/common.ts"],"names":[],"mappings":"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"}
@@ -23,5 +23,7 @@ export declare class CognitoAuth implements AgentlangAuth {
23
23
  refreshToken(refreshTokenString: string, env: Environment): Promise<SessionInfo>;
24
24
  inviteUser(email: string, firstName: string, lastName: string, userData: Map<string, any> | undefined, env: Environment, cb: InviteUserCallback): Promise<void>;
25
25
  acceptInvitation(email: string, tempPassword: string, newPassword: string, _env: Environment): Promise<void>;
26
+ callback(code: string, env: Environment, cb: LoginCallback): Promise<void>;
27
+ private decodeJwtPayload;
26
28
  }
27
29
  //# sourceMappingURL=cognito.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cognito.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/cognito.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cognito.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/cognito.ts"],"names":[],"mappings":"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"}
@@ -981,5 +981,89 @@ export class CognitoAuth {
981
981
  handleCognitoError(err, 'acceptInvitation');
982
982
  }
983
983
  }
984
+ async callback(code, env, cb) {
985
+ try {
986
+ if (!isNodeEnv) {
987
+ throw new Error('Callback authentication is only supported in Node.js environment');
988
+ }
989
+ const clientId = this.fetchConfig('ClientId');
990
+ const region = process.env.AWS_REGION || 'us-east-1';
991
+ const redirectUri = process.env.COGNITO_REDIRECT_URI || 'http://localhost:3000/auth/callback';
992
+ const hostedDomain = process.env.COGNITO_HOSTED_DOMAIN;
993
+ const tokenEndpoint = `https://${hostedDomain}.auth.${region}.amazoncognito.com/oauth2/token`;
994
+ const tokenRequestBody = new URLSearchParams({
995
+ grant_type: 'authorization_code',
996
+ client_id: clientId,
997
+ code: code,
998
+ redirect_uri: redirectUri,
999
+ });
1000
+ logger.debug(`Exchanging authorization code for tokens via OAuth2 endpoint`);
1001
+ console.log('te', tokenEndpoint, tokenRequestBody.toString());
1002
+ const response = await fetch(tokenEndpoint, {
1003
+ method: 'POST',
1004
+ headers: {
1005
+ 'Content-Type': 'application/x-www-form-urlencoded',
1006
+ },
1007
+ body: tokenRequestBody.toString(),
1008
+ });
1009
+ if (!response.ok) {
1010
+ const errorText = await response.text();
1011
+ throw new Error(`Token exchange failed: ${response.status} ${errorText}`);
1012
+ }
1013
+ const tokenData = await response.json();
1014
+ if (!tokenData.access_token || !tokenData.id_token || !tokenData.refresh_token) {
1015
+ throw new Error('Missing required tokens in response');
1016
+ }
1017
+ const { access_token: AccessToken, id_token: IdToken, refresh_token: RefreshToken, } = tokenData;
1018
+ const idTokenPayload = this.decodeJwtPayload(IdToken);
1019
+ const userEmail = idTokenPayload.email;
1020
+ const firstName = idTokenPayload['given_name'] || idTokenPayload['name'] || '';
1021
+ const lastName = idTokenPayload['family_name'] || '';
1022
+ const userGroups = idTokenPayload['cognito:groups'];
1023
+ if (!userEmail) {
1024
+ throw new Error('Email not found in ID attributes');
1025
+ }
1026
+ let localUser = await findUserByEmail(userEmail, env);
1027
+ if (!localUser) {
1028
+ localUser = await ensureUser(userEmail, firstName, lastName, env);
1029
+ }
1030
+ const userId = localUser.lookup('id');
1031
+ if (userGroups) {
1032
+ await ensureUserRoles(userId, userGroups, env);
1033
+ }
1034
+ const localSession = await ensureUserSession(userId, IdToken, AccessToken, RefreshToken, env);
1035
+ const sessionInfo = {
1036
+ sessionId: localSession.lookup('id'),
1037
+ userId: userId,
1038
+ authToken: IdToken,
1039
+ idToken: IdToken,
1040
+ accessToken: AccessToken,
1041
+ refreshToken: RefreshToken,
1042
+ systemSesionInfo: tokenData,
1043
+ };
1044
+ logger.info(`Auth callback successful for user ${userEmail}`);
1045
+ cb(sessionInfo);
1046
+ }
1047
+ catch (err) {
1048
+ console.log(err);
1049
+ logger.error(`Auth callback failed: ${sanitizeErrorMessage(err.message)}`);
1050
+ handleCognitoError(err, 'callback');
1051
+ }
1052
+ }
1053
+ decodeJwtPayload(token) {
1054
+ try {
1055
+ const base64Url = token.split('.')[1];
1056
+ const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
1057
+ const jsonPayload = decodeURIComponent(atob(base64)
1058
+ .split('')
1059
+ .map(c => '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2))
1060
+ .join(''));
1061
+ return JSON.parse(jsonPayload);
1062
+ }
1063
+ catch (err) {
1064
+ logger.error(`Failed to decode JWT payload: ${err}`);
1065
+ throw new Error('Invalid JWT token');
1066
+ }
1067
+ }
984
1068
  }
985
1069
  //# sourceMappingURL=cognito.js.map