agentlang 0.9.11 → 0.10.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.
Files changed (48) hide show
  1. package/out/language/generated/ast.d.ts +60 -42
  2. package/out/language/generated/ast.d.ts.map +1 -1
  3. package/out/language/generated/ast.js +45 -31
  4. package/out/language/generated/ast.js.map +1 -1
  5. package/out/language/generated/grammar.d.ts.map +1 -1
  6. package/out/language/generated/grammar.js +294 -327
  7. package/out/language/generated/grammar.js.map +1 -1
  8. package/out/language/main.cjs +336 -358
  9. package/out/language/main.cjs.map +2 -2
  10. package/out/language/parser.d.ts +11 -1
  11. package/out/language/parser.d.ts.map +1 -1
  12. package/out/language/parser.js +56 -6
  13. package/out/language/parser.js.map +1 -1
  14. package/out/language/syntax.d.ts +8 -0
  15. package/out/language/syntax.d.ts.map +1 -1
  16. package/out/language/syntax.js +11 -2
  17. package/out/language/syntax.js.map +1 -1
  18. package/out/runtime/agents/common.d.ts +2 -2
  19. package/out/runtime/agents/common.js +1 -1
  20. package/out/runtime/interpreter.d.ts.map +1 -1
  21. package/out/runtime/interpreter.js +104 -87
  22. package/out/runtime/interpreter.js.map +1 -1
  23. package/out/runtime/modules/ai.d.ts +2 -5
  24. package/out/runtime/modules/ai.d.ts.map +1 -1
  25. package/out/runtime/modules/ai.js +28 -19
  26. package/out/runtime/modules/ai.js.map +1 -1
  27. package/out/runtime/services/documentFetcher.js +2 -2
  28. package/out/runtime/services/documentFetcher.js.map +1 -1
  29. package/out/runtime/util.d.ts +10 -0
  30. package/out/runtime/util.d.ts.map +1 -1
  31. package/out/runtime/util.js +27 -2
  32. package/out/runtime/util.js.map +1 -1
  33. package/out/utils/fs/index.d.ts +12 -2
  34. package/out/utils/fs/index.d.ts.map +1 -1
  35. package/out/utils/fs/index.js +27 -6
  36. package/out/utils/fs/index.js.map +1 -1
  37. package/package.json +1 -1
  38. package/src/language/agentlang.langium +6 -9
  39. package/src/language/generated/ast.ts +66 -43
  40. package/src/language/generated/grammar.ts +294 -327
  41. package/src/language/parser.ts +65 -4
  42. package/src/language/syntax.ts +21 -2
  43. package/src/runtime/agents/common.ts +1 -1
  44. package/src/runtime/interpreter.ts +111 -84
  45. package/src/runtime/modules/ai.ts +35 -25
  46. package/src/runtime/services/documentFetcher.ts +2 -2
  47. package/src/runtime/util.ts +45 -2
  48. package/src/utils/fs/index.ts +30 -6
@@ -1 +1 @@
1
- {"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../src/runtime/interpreter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../src/runtime/interpreter.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { isBinExpr, isGroup, isLiteral, isNegExpr, isNotExpr, isReturn, } from '../language/generated/ast.js';
2
- import { defineAgentEvent, getOneOfRef, getRelationship, getWorkflow, Instance, isAgentEventInstance, isBetweenRelationship, isContainsRelationship, isEmptyWorkflow, isEntityInstance, isEventInstance, isInstanceOfType, isOneToOneBetweenRelationship, isTimer, makeInstance, maybeInstanceAsString, newInstanceAttributes, PlaceholderRecordEntry, setMetaAttributes, } from './module.js';
2
+ import { Agent, defineAgentEvent, getOneOfRef, getRelationship, getWorkflow, Instance, isAgentEventInstance, isBetweenRelationship, isContainsRelationship, isEmptyWorkflow, isEntityInstance, isEventInstance, isInstanceOfType, isOneToOneBetweenRelationship, isTimer, makeInstance, maybeInstanceAsString, newInstanceAttributes, PlaceholderRecordEntry, setMetaAttributes, } from './module.js';
3
3
  import { Resolver } from './resolvers/interface.js';
4
4
  import { ResolverAuthInfo } from './resolvers/authinfo.js';
5
5
  import { SqlDbResolver } from './resolvers/sqldb/impl.js';
6
6
  import { CrudType, DefaultModuleName, escapeFqName, escapeQueryName, fqNameFromPath, isCoreModule, isFqName, isPath, isString, makeCoreModuleName, makeFqName, nameToPath, preprocessRawConfig, QuerySuffix, restoreSpecialChars, splitRefs, } from './util.js';
7
7
  import { getResolver, getResolverNameForPath } from './resolvers/registry.js';
8
- import { parseStatement, parseWorkflow } from '../language/parser.js';
8
+ import { extractQueryOptions, parseStatement, parseWorkflow, } from '../language/parser.js';
9
9
  import { AdminSession, AdminUserId } from './auth/defs.js';
10
10
  import { AgentEntityName, AgentFqName, AgentInstance, findAgentByName, normalizeGeneratedCode, saveFlowStepResult, } from './modules/ai.js';
11
11
  import { logger } from './logger.js';
@@ -1219,17 +1219,18 @@ async function maybeValidateOneOfRefs(inst, env) {
1219
1219
  }
1220
1220
  }
1221
1221
  }
1222
- function maybeSetQueryClauses(inst, crud) {
1223
- if (crud.groupByClause) {
1224
- inst.setGroupBy(crud.groupByClause.colNames);
1222
+ function maybeSetQueryClauses(inst, qopts) {
1223
+ if (qopts.groupByClause) {
1224
+ inst.setGroupBy(qopts.groupByClause.colNames);
1225
1225
  }
1226
- if (crud.orderByClause) {
1227
- inst.setOrderBy(crud.orderByClause.colNames, crud.orderByClause.order === '@desc');
1226
+ if (qopts.orderByClause) {
1227
+ inst.setOrderBy(qopts.orderByClause.colNames, qopts.orderByClause.order === '@desc');
1228
1228
  }
1229
1229
  }
1230
1230
  async function evaluateCrudMap(crud, env) {
1231
1231
  var _a, _b, _c;
1232
- if (!env.isInUpsertMode() && crud.upsert.length > 0) {
1232
+ const qopts = extractQueryOptions(crud);
1233
+ if (!env.isInUpsertMode() && qopts.upsert !== undefined) {
1233
1234
  return await evaluateUpsert(crud, env);
1234
1235
  }
1235
1236
  const inst = crud.source
@@ -1241,23 +1242,23 @@ async function evaluateCrudMap(crud, env) {
1241
1242
  const qattrs = inst.queryAttributes;
1242
1243
  const onlyAggregates = inst.aggregates !== undefined && qattrs === undefined;
1243
1244
  const isQueryAll = onlyAggregates || crud.name.endsWith(QuerySuffix);
1244
- const distinct = crud.distinct.length > 0;
1245
- maybeSetQueryClauses(inst, crud);
1245
+ const distinct = qopts.distinct !== undefined;
1246
+ maybeSetQueryClauses(inst, qopts);
1246
1247
  if (attrs.size > 0) {
1247
1248
  await maybeValidateOneOfRefs(inst, env);
1248
1249
  }
1249
- if (crud.into) {
1250
+ if (qopts.into) {
1250
1251
  if (attrs.size > 0) {
1251
1252
  throw new Error(`Query pattern for ${entryName} with 'into' clause cannot be used to update attributes`);
1252
1253
  }
1253
1254
  if (qattrs === undefined && !isQueryAll) {
1254
1255
  throw new Error(`Pattern for ${entryName} with 'into' clause must be a query`);
1255
1256
  }
1256
- if (crud.joins.length > 0) {
1257
- await evaluateJoinQuery(crud.joins, crud.into, crud.where, inst, distinct, env);
1257
+ if (qopts.joins && qopts.joins.length > 0) {
1258
+ await evaluateJoinQuery(qopts.joins, qopts.into, qopts.where, inst, distinct, env);
1258
1259
  }
1259
1260
  else {
1260
- await evaluateJoinQueryWithRelationships(crud.into, inst, crud.relationships, distinct, env);
1261
+ await evaluateJoinQueryWithRelationships(qopts.into, inst, crud.relationships || [], distinct, env);
1261
1262
  }
1262
1263
  return;
1263
1264
  }
@@ -1733,7 +1734,7 @@ async function agentInvoke(agent, msg, env) {
1733
1734
  const obj = agent.maybeValidateJsonResponse(result);
1734
1735
  if (obj !== undefined) {
1735
1736
  env.setLastResult(obj);
1736
- env.addToScratchPad(agent.getFqName(), obj);
1737
+ env.addToScratchPad(Agent.NormalizeName(agent.getFqName()), obj);
1737
1738
  }
1738
1739
  break;
1739
1740
  }
@@ -1815,93 +1816,109 @@ export async function restartFlow(flowContext, userData, env) {
1815
1816
  }
1816
1817
  }
1817
1818
  const MaxFlowSteps = 25;
1819
+ const MaxFlowRetries = 10;
1818
1820
  async function iterateOnFlow(flow, rootAgent, msg, env) {
1819
1821
  var _a;
1820
1822
  rootAgent.disableSession();
1821
- const initContext = msg;
1822
- const s = `Now consider the following flowchart and return the next step:\n${flow}\n
1823
+ const chatId = (_a = env.getActiveEventInstance()) === null || _a === void 0 ? void 0 : _a.lookup('chatId');
1824
+ const iterId = chatId || crypto.randomUUID();
1825
+ let step = '';
1826
+ let fullFlowRetries = 0;
1827
+ while (true) {
1828
+ try {
1829
+ const initContext = msg;
1830
+ const s = `Now consider the following flowchart and return the next step:\n${flow}\n
1823
1831
  If you understand from the context that a step with no further possible steps has been evaluated,
1824
1832
  terminate the flowchart by returning DONE. Never return to the top or root step of the flowchart, instead return DONE.
1825
1833
  Important: Return only the next flow-step or DONE. Do not return any additional description, like your thinking process.\n`;
1826
- env.setFlowContext(initContext);
1827
- await agentInvoke(rootAgent, s, env);
1828
- const rootModuleName = rootAgent.moduleName;
1829
- let preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
1830
- let step = preprocResult.step;
1831
- let needAgentProcessing = preprocResult.needAgentProcessing;
1832
- let context = initContext;
1833
- let stepc = 0;
1834
- const chatId = (_a = env.getActiveEventInstance()) === null || _a === void 0 ? void 0 : _a.lookup('chatId');
1835
- const iterId = chatId || crypto.randomUUID();
1836
- console.debug(`Starting iteration ${iterId} on flow: ${flow}`);
1837
- const executedSteps = new Set();
1838
- const monitoringEnabled = isMonitoringEnabled();
1839
- if (monitoringEnabled) {
1840
- env.flagMonitorEntryAsFlow().incrementMonitor();
1841
- }
1842
- let isfxc = false;
1843
- try {
1844
- while (step != 'DONE' && !executedSteps.has(step)) {
1845
- if (stepc > MaxFlowSteps) {
1846
- throw new Error(`Flow execution exceeded maximum steps limit`);
1834
+ env.setFlowContext(initContext);
1835
+ await agentInvoke(rootAgent, s, env);
1836
+ const rootModuleName = rootAgent.moduleName;
1837
+ let preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
1838
+ step = preprocResult.step;
1839
+ let needAgentProcessing = preprocResult.needAgentProcessing;
1840
+ let context = initContext;
1841
+ let stepc = 0;
1842
+ console.debug(`Starting iteration ${iterId} on flow: ${flow}`);
1843
+ const executedSteps = new Set();
1844
+ const monitoringEnabled = isMonitoringEnabled();
1845
+ let isfxc = false;
1846
+ if (monitoringEnabled) {
1847
+ env.flagMonitorEntryAsFlow().incrementMonitor();
1847
1848
  }
1848
- executedSteps.add(step);
1849
- ++stepc;
1850
- const agent = needAgentProcessing
1851
- ? AgentInstance.FromFlowStep(step, rootAgent, context)
1852
- : undefined;
1853
- if (agent) {
1854
- console.debug(`\n---------------------------------------------------\n`);
1855
- console.debug(`Starting to execute flow step ${step} with agent ${agent.name} with iteration ID ${iterId} and context: \n${context}`);
1856
- isfxc = agent.isFlowExecutor();
1857
- const isdec = agent.isDecisionExecutor();
1858
- if (isfxc || isdec)
1849
+ while (step != 'DONE' && !executedSteps.has(step)) {
1850
+ if (stepc > MaxFlowSteps) {
1851
+ throw new Error(`Flow execution exceeded maximum steps limit`);
1852
+ }
1853
+ executedSteps.add(step);
1854
+ ++stepc;
1855
+ const agent = needAgentProcessing
1856
+ ? AgentInstance.FromFlowStep(step, rootAgent, context)
1857
+ : undefined;
1858
+ if (agent) {
1859
+ console.debug(`Starting to execute flow step ${step} with agent ${agent.name} with iteration ID ${iterId} and context: \n${context}`);
1860
+ isfxc = agent.isFlowExecutor();
1861
+ const isdec = agent.isDecisionExecutor();
1862
+ if (isfxc || isdec)
1863
+ env.setFlowContext(context);
1864
+ else
1865
+ env.setFlowContext(initContext);
1866
+ if (monitoringEnabled) {
1867
+ env.appendEntryToMonitor(step);
1868
+ }
1869
+ const inst = agent.swapInstruction('');
1870
+ await agentInvoke(agent, inst, env);
1871
+ }
1872
+ else {
1873
+ rootAgent.maybeAddScratchData(env);
1874
+ }
1875
+ if (monitoringEnabled)
1876
+ env.setMonitorEntryResult(env.getLastResult());
1877
+ if (env.isSuspended()) {
1878
+ console.debug(`${iterId} suspending iteration on step ${step}`);
1879
+ await saveFlowSuspension(rootAgent, context, step, env);
1880
+ env.releaseSuspension();
1881
+ return;
1882
+ }
1883
+ const r = env.getLastResult();
1884
+ const rs = maybeInstanceAsString(r);
1885
+ console.debug(`\n----> Completed execution of step ${step}, iteration id ${iterId} with result:\n${rs}`);
1886
+ context = `${context}\n${step} --> ${rs}\n`;
1887
+ if (chatId) {
1888
+ const suspEnv = new Environment(env.name, env);
1889
+ suspEnv.softSuspend();
1890
+ await saveFlowSuspension(rootAgent, context, step, suspEnv);
1891
+ await saveFlowStepResult(chatId, step, rs, suspEnv.getSuspensionId(), env);
1892
+ }
1893
+ if (isfxc) {
1894
+ preprocResult = await preprocessStep(rs, rootModuleName, env);
1895
+ }
1896
+ else {
1859
1897
  env.setFlowContext(context);
1860
- else
1861
- env.setFlowContext(initContext);
1862
- if (monitoringEnabled) {
1863
- env.appendEntryToMonitor(step);
1898
+ await agentInvoke(rootAgent, `${s}\n${context}`, env);
1899
+ preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
1864
1900
  }
1865
- const inst = agent.swapInstruction('');
1866
- await agentInvoke(agent, inst, env);
1867
- }
1868
- else {
1869
- rootAgent.maybeAddScratchData(env);
1870
- }
1871
- if (monitoringEnabled)
1872
- env.setMonitorEntryResult(env.getLastResult());
1873
- if (env.isSuspended()) {
1874
- console.debug(`${iterId} suspending iteration on step ${step}`);
1875
- await saveFlowSuspension(rootAgent, context, step, env);
1876
- env.releaseSuspension();
1877
- return;
1901
+ step = preprocResult.step;
1902
+ needAgentProcessing = preprocResult.needAgentProcessing;
1878
1903
  }
1879
- const r = env.getLastResult();
1880
- const rs = maybeInstanceAsString(r);
1881
- console.debug(`\n----> Completed execution of step ${step}, iteration id ${iterId} with result:\n${rs}`);
1882
- context = `${context}\n${step} --> ${rs}\n`;
1883
- if (chatId) {
1884
- const suspEnv = new Environment(env.name, env);
1885
- suspEnv.softSuspend();
1886
- await saveFlowSuspension(rootAgent, context, step, suspEnv);
1887
- await saveFlowStepResult(chatId, step, rs, suspEnv.getSuspensionId(), env);
1888
- }
1889
- if (isfxc) {
1890
- preprocResult = await preprocessStep(rs, rootModuleName, env);
1904
+ }
1905
+ catch (reason) {
1906
+ if (fullFlowRetries < MaxFlowRetries) {
1907
+ msg = `The previous attempt failed at step ${step} with the error ${reason}. Restart the flow the appropriate step
1908
+ (maybe even from the first step) and try to fix the issue.`;
1909
+ ++fullFlowRetries;
1910
+ continue;
1891
1911
  }
1892
1912
  else {
1893
- env.setFlowContext(context);
1894
- await agentInvoke(rootAgent, `${s}\n${context}`, env);
1895
- preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
1913
+ throw new Error(reason);
1896
1914
  }
1897
- step = preprocResult.step;
1898
- needAgentProcessing = preprocResult.needAgentProcessing;
1899
1915
  }
1916
+ finally {
1917
+ env.decrementMonitor().revokeLastResult().setMonitorFlowResult();
1918
+ }
1919
+ console.debug(`No more flow steps, completed iteration ${iterId} on flow:\n${flow}`);
1920
+ break;
1900
1921
  }
1901
- finally {
1902
- env.decrementMonitor().revokeLastResult().setMonitorFlowResult();
1903
- }
1904
- console.debug(`No more flow steps, completed iteration ${iterId} on flow:\n${flow}`);
1905
1922
  }
1906
1923
  async function preprocessStep(spec, activeModuleName, env) {
1907
1924
  let needAgentProcessing = true;