agentlang 0.10.2 → 0.10.4

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 (154) hide show
  1. package/README.md +7 -14
  2. package/out/api/http.d.ts +4 -0
  3. package/out/api/http.d.ts.map +1 -1
  4. package/out/api/http.js +171 -26
  5. package/out/api/http.js.map +1 -1
  6. package/out/cli/main.d.ts.map +1 -1
  7. package/out/cli/main.js +3 -0
  8. package/out/cli/main.js.map +1 -1
  9. package/out/extension/main.cjs +250 -250
  10. package/out/extension/main.cjs.map +2 -2
  11. package/out/language/agentlang-validator.d.ts.map +1 -1
  12. package/out/language/agentlang-validator.js +4 -0
  13. package/out/language/agentlang-validator.js.map +1 -1
  14. package/out/language/error-reporter.d.ts +53 -0
  15. package/out/language/error-reporter.d.ts.map +1 -0
  16. package/out/language/error-reporter.js +879 -0
  17. package/out/language/error-reporter.js.map +1 -0
  18. package/out/language/generated/ast.d.ts +66 -6
  19. package/out/language/generated/ast.d.ts.map +1 -1
  20. package/out/language/generated/ast.js +48 -0
  21. package/out/language/generated/ast.js.map +1 -1
  22. package/out/language/generated/grammar.d.ts.map +1 -1
  23. package/out/language/generated/grammar.js +320 -190
  24. package/out/language/generated/grammar.js.map +1 -1
  25. package/out/language/main.cjs +870 -694
  26. package/out/language/main.cjs.map +3 -3
  27. package/out/language/parser.d.ts +4 -2
  28. package/out/language/parser.d.ts.map +1 -1
  29. package/out/language/parser.js +31 -98
  30. package/out/language/parser.js.map +1 -1
  31. package/out/language/syntax.d.ts +2 -0
  32. package/out/language/syntax.d.ts.map +1 -1
  33. package/out/language/syntax.js +6 -0
  34. package/out/language/syntax.js.map +1 -1
  35. package/out/runtime/api.d.ts.map +1 -1
  36. package/out/runtime/api.js +22 -0
  37. package/out/runtime/api.js.map +1 -1
  38. package/out/runtime/defs.d.ts +1 -0
  39. package/out/runtime/defs.d.ts.map +1 -1
  40. package/out/runtime/defs.js +2 -1
  41. package/out/runtime/defs.js.map +1 -1
  42. package/out/runtime/document-retriever.d.ts +24 -0
  43. package/out/runtime/document-retriever.d.ts.map +1 -0
  44. package/out/runtime/document-retriever.js +258 -0
  45. package/out/runtime/document-retriever.js.map +1 -0
  46. package/out/runtime/embeddings/chunker.d.ts +18 -0
  47. package/out/runtime/embeddings/chunker.d.ts.map +1 -1
  48. package/out/runtime/embeddings/chunker.js +47 -15
  49. package/out/runtime/embeddings/chunker.js.map +1 -1
  50. package/out/runtime/embeddings/openai.d.ts.map +1 -1
  51. package/out/runtime/embeddings/openai.js +22 -9
  52. package/out/runtime/embeddings/openai.js.map +1 -1
  53. package/out/runtime/embeddings/provider.d.ts +1 -0
  54. package/out/runtime/embeddings/provider.d.ts.map +1 -1
  55. package/out/runtime/embeddings/provider.js +20 -1
  56. package/out/runtime/embeddings/provider.js.map +1 -1
  57. package/out/runtime/integration-client.d.ts +21 -0
  58. package/out/runtime/integration-client.d.ts.map +1 -0
  59. package/out/runtime/integration-client.js +112 -0
  60. package/out/runtime/integration-client.js.map +1 -0
  61. package/out/runtime/integrations.d.ts.map +1 -1
  62. package/out/runtime/integrations.js +20 -9
  63. package/out/runtime/integrations.js.map +1 -1
  64. package/out/runtime/interpreter.d.ts +1 -0
  65. package/out/runtime/interpreter.d.ts.map +1 -1
  66. package/out/runtime/interpreter.js +172 -19
  67. package/out/runtime/interpreter.js.map +1 -1
  68. package/out/runtime/loader.d.ts.map +1 -1
  69. package/out/runtime/loader.js +70 -7
  70. package/out/runtime/loader.js.map +1 -1
  71. package/out/runtime/logger.d.ts.map +1 -1
  72. package/out/runtime/logger.js +8 -1
  73. package/out/runtime/logger.js.map +1 -1
  74. package/out/runtime/module.d.ts +10 -0
  75. package/out/runtime/module.d.ts.map +1 -1
  76. package/out/runtime/module.js +68 -3
  77. package/out/runtime/module.js.map +1 -1
  78. package/out/runtime/modules/ai.d.ts +9 -2
  79. package/out/runtime/modules/ai.d.ts.map +1 -1
  80. package/out/runtime/modules/ai.js +219 -67
  81. package/out/runtime/modules/ai.js.map +1 -1
  82. package/out/runtime/modules/core.d.ts.map +1 -1
  83. package/out/runtime/modules/core.js +3 -0
  84. package/out/runtime/modules/core.js.map +1 -1
  85. package/out/runtime/modules/messaging.d.ts +10 -0
  86. package/out/runtime/modules/messaging.d.ts.map +1 -0
  87. package/out/runtime/modules/messaging.js +210 -0
  88. package/out/runtime/modules/messaging.js.map +1 -0
  89. package/out/runtime/resolvers/interface.d.ts +4 -0
  90. package/out/runtime/resolvers/interface.d.ts.map +1 -1
  91. package/out/runtime/resolvers/interface.js +14 -1
  92. package/out/runtime/resolvers/interface.js.map +1 -1
  93. package/out/runtime/resolvers/sqldb/database.d.ts +2 -0
  94. package/out/runtime/resolvers/sqldb/database.d.ts.map +1 -1
  95. package/out/runtime/resolvers/sqldb/database.js +142 -126
  96. package/out/runtime/resolvers/sqldb/database.js.map +1 -1
  97. package/out/runtime/resolvers/sqldb/dbutil.d.ts.map +1 -1
  98. package/out/runtime/resolvers/sqldb/dbutil.js +8 -0
  99. package/out/runtime/resolvers/sqldb/dbutil.js.map +1 -1
  100. package/out/runtime/resolvers/sqldb/impl.d.ts +1 -0
  101. package/out/runtime/resolvers/sqldb/impl.d.ts.map +1 -1
  102. package/out/runtime/resolvers/sqldb/impl.js +7 -0
  103. package/out/runtime/resolvers/sqldb/impl.js.map +1 -1
  104. package/out/runtime/resolvers/vector/lancedb-store.d.ts +16 -0
  105. package/out/runtime/resolvers/vector/lancedb-store.d.ts.map +1 -0
  106. package/out/runtime/resolvers/vector/lancedb-store.js +159 -0
  107. package/out/runtime/resolvers/vector/lancedb-store.js.map +1 -0
  108. package/out/runtime/resolvers/vector/types.d.ts +32 -0
  109. package/out/runtime/resolvers/vector/types.d.ts.map +1 -0
  110. package/out/runtime/resolvers/vector/types.js +2 -0
  111. package/out/runtime/resolvers/vector/types.js.map +1 -0
  112. package/out/runtime/services/documentFetcher.d.ts.map +1 -1
  113. package/out/runtime/services/documentFetcher.js +21 -6
  114. package/out/runtime/services/documentFetcher.js.map +1 -1
  115. package/out/runtime/state.d.ts +19 -1
  116. package/out/runtime/state.d.ts.map +1 -1
  117. package/out/runtime/state.js +36 -1
  118. package/out/runtime/state.js.map +1 -1
  119. package/out/syntaxes/agentlang.monarch.js +1 -1
  120. package/out/syntaxes/agentlang.monarch.js.map +1 -1
  121. package/package.json +19 -19
  122. package/src/api/http.ts +197 -37
  123. package/src/cli/main.ts +3 -0
  124. package/src/language/agentlang-validator.ts +3 -0
  125. package/src/language/agentlang.langium +3 -1
  126. package/src/language/error-reporter.ts +1028 -0
  127. package/src/language/generated/ast.ts +77 -5
  128. package/src/language/generated/grammar.ts +320 -190
  129. package/src/language/parser.ts +31 -100
  130. package/src/language/syntax.ts +8 -0
  131. package/src/runtime/api.ts +31 -0
  132. package/src/runtime/defs.ts +2 -1
  133. package/src/runtime/document-retriever.ts +311 -0
  134. package/src/runtime/embeddings/chunker.ts +52 -14
  135. package/src/runtime/embeddings/openai.ts +27 -9
  136. package/src/runtime/embeddings/provider.ts +22 -1
  137. package/src/runtime/integration-client.ts +158 -0
  138. package/src/runtime/integrations.ts +20 -11
  139. package/src/runtime/interpreter.ts +164 -14
  140. package/src/runtime/loader.ts +83 -5
  141. package/src/runtime/logger.ts +12 -1
  142. package/src/runtime/module.ts +78 -3
  143. package/src/runtime/modules/ai.ts +263 -76
  144. package/src/runtime/modules/core.ts +4 -0
  145. package/src/runtime/modules/messaging.ts +228 -0
  146. package/src/runtime/resolvers/interface.ts +19 -1
  147. package/src/runtime/resolvers/sqldb/database.ts +158 -130
  148. package/src/runtime/resolvers/sqldb/dbutil.ts +8 -0
  149. package/src/runtime/resolvers/sqldb/impl.ts +8 -0
  150. package/src/runtime/resolvers/vector/lancedb-store.ts +187 -0
  151. package/src/runtime/resolvers/vector/types.ts +39 -0
  152. package/src/runtime/services/documentFetcher.ts +21 -6
  153. package/src/runtime/state.ts +40 -1
  154. package/src/syntaxes/agentlang.monarch.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"agentlang-validator.d.ts","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,SAAS,CAAC;AACpE,OAAO,EAAyC,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,iBAAiB,QAOnE;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;CAiB/E"}
1
+ {"version":3,"file":"agentlang-validator.d.ts","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,SAAS,CAAC;AACpE,OAAO,EAAyC,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,iBAAiB,QAOnE;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;CAoB/E"}
@@ -14,12 +14,16 @@ export function registerValidationChecks(services) {
14
14
  */
15
15
  export class AgentlangValidator {
16
16
  checkUniqueAttributes(def, accept) {
17
+ var _a;
17
18
  // create a set of visited functions
18
19
  // and report an error when we see one we've already seen
19
20
  const reported = new Set();
20
21
  if (def.$type === 'PublicEventDefinition') {
21
22
  def = def.def;
22
23
  }
24
+ if (!((_a = def === null || def === void 0 ? void 0 : def.schema) === null || _a === void 0 ? void 0 : _a.attributes)) {
25
+ return;
26
+ }
23
27
  def.schema.attributes.forEach((a) => {
24
28
  if (reported.has(a.name)) {
25
29
  accept('error', `'${def.name} " - attribute has non-unique name '${a.name}'.`, {
@@ -1 +1 @@
1
- {"version":3,"file":"agentlang-validator.js","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,QAA2B;IAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;IACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;IACzD,MAAM,MAAM,GAAuC;QACjD,gBAAgB,EAAE,SAAS,CAAC,qBAAqB;KAClD,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B,qBAAqB,CAAC,GAAqB,EAAE,MAA0B;QACrE,oCAAoC;QACpC,yDAAyD;QACzD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,KAAK,KAAK,uBAAuB,EAAE,CAAC;YAC1C,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;QAChB,CAAC;QACD,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAsB,EAAE,EAAE;YACvD,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,IAAI,uCAAuC,CAAC,CAAC,IAAI,IAAI,EAAE;oBAC7E,IAAI,EAAE,CAAC;oBACP,QAAQ,EAAE,MAAM;iBACjB,CAAC,CAAC;YACL,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"agentlang-validator.js","sourceRoot":"","sources":["../../src/language/agentlang-validator.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,QAA2B;IAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;IACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;IACzD,MAAM,MAAM,GAAuC;QACjD,gBAAgB,EAAE,SAAS,CAAC,qBAAqB;KAClD,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B,qBAAqB,CAAC,GAAqB,EAAE,MAA0B;;QACrE,oCAAoC;QACpC,yDAAyD;QACzD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,KAAK,KAAK,uBAAuB,EAAE,CAAC;YAC1C,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,CAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,0CAAE,UAAU,CAAA,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAsB,EAAE,EAAE;YACvD,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,IAAI,uCAAuC,CAAC,CAAC,IAAI,IAAI,EAAE;oBAC7E,IAAI,EAAE,CAAC;oBACP,QAAQ,EAAE,MAAM;iBACjB,CAAC,CAAC;YACL,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,53 @@
1
+ import { LangiumDocument } from 'langium';
2
+ export type ErrorCategory = 'SYNTAX ERROR' | 'UNEXPECTED TOKEN' | 'MISSING TOKEN' | 'VALIDATION ERROR';
3
+ export interface ErrorRegion {
4
+ startLine: number;
5
+ startCol: number;
6
+ endLine: number;
7
+ endCol: number;
8
+ }
9
+ export interface AgentlangError {
10
+ category: ErrorCategory;
11
+ file: string;
12
+ region: ErrorRegion;
13
+ message: string;
14
+ hint?: string;
15
+ }
16
+ export declare function collectErrors(document: LangiumDocument): AgentlangError[];
17
+ export declare const KNOWN_DECORATORS: string[];
18
+ /**
19
+ * Restricted Damerau-Levenshtein distance between two strings.
20
+ * Handles insertions, deletions, substitutions, and adjacent transpositions.
21
+ * Comparison is case-insensitive.
22
+ */
23
+ export declare function editDistance(a: string, b: string): number;
24
+ /**
25
+ * Find the closest matches to `input` from a list of `candidates`.
26
+ * Returns up to `maxResults` candidates sorted by ascending distance.
27
+ *
28
+ * The effective max distance scales with input length to avoid noisy
29
+ * suggestions on short inputs:
30
+ * length 1-3 → max 1, length 4-6 → max 2, length 7+ → max 3
31
+ */
32
+ export declare function suggest(input: string, candidates: string[], maxDistance?: number, maxResults?: number): string[];
33
+ /**
34
+ * Format suggestion list into a hint string:
35
+ * - 0 matches → undefined
36
+ * - 1 match → "Did you mean `X`?"
37
+ * - 2+ matches → "These names seem close:\n X\n Y"
38
+ */
39
+ export declare function formatSuggestions(suggestions: string[]): string | undefined;
40
+ /** Top-level definition keywords in agentlang */
41
+ export declare const KNOWN_KEYWORDS: string[];
42
+ /**
43
+ * All grammar keywords that conflict with identifier (ID) positions.
44
+ * When a user writes e.g. `entity query { ... }`, the lexer tokenizes `query`
45
+ * as a keyword token instead of ID, causing a confusing parse error.
46
+ * This set lets us detect that case and produce a clear message.
47
+ */
48
+ export declare const RESERVED_KEYWORDS: Set<string>;
49
+ export declare function renderSnippet(source: string, region: ErrorRegion, contextLines?: number): string;
50
+ export declare function formatError(err: AgentlangError, source: string): string;
51
+ export declare function formatErrors(errors: AgentlangError[], source: string): string;
52
+ export declare function getFormattedErrors(document: LangiumDocument): string | undefined;
53
+ //# sourceMappingURL=error-reporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-reporter.d.ts","sourceRoot":"","sources":["../../src/language/error-reporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAM1C,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,kBAAkB,GAClB,eAAe,GACf,kBAAkB,CAAC;AAEvB,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,aAAa,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAMD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,cAAc,EAAE,CAwFzE;AAwCD,eAAO,MAAM,gBAAgB,UAoC5B,CAAC;AA8jBF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAgCzD;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAAE,EACpB,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,GAAE,MAAU,GACrB,MAAM,EAAE,CAQV;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAK3E;AAMD,iDAAiD;AACjD,eAAO,MAAM,cAAc,UAgB1B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAyC5B,CAAC;AAMH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,EACnB,YAAY,GAAE,MAAU,GACvB,MAAM,CAgCR;AAeD,wBAAgB,WAAW,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAqBvE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAM7E;AAsBD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAKhF"}