@inkeep/agents-cli 0.68.4 → 0.70.0
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.
|
@@ -29,6 +29,7 @@ function formatTemplate(value, references) {
|
|
|
29
29
|
const maybeGroups = args.at(-1);
|
|
30
30
|
const variableName = isPlainObject(maybeGroups) && typeof maybeGroups.variableName === "string" ? maybeGroups.variableName.trim() : void 0;
|
|
31
31
|
if (!variableName) return match;
|
|
32
|
+
if (variableName.startsWith("$")) return match;
|
|
32
33
|
if (variableName.startsWith("headers.")) {
|
|
33
34
|
const headerPath = variableName.slice(8);
|
|
34
35
|
if (!headerPath || !references.headersReference) return match;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","names":[],"sources":["../../../../src/commands/pull-v4/utils/templates.ts"],"sourcesContent":["import { isPlainObject } from './shared';\n\nconst QUOTE = Object.freeze({\n single: \"'\",\n double: '\"',\n template: '`',\n});\n\ntype Quote = (typeof QUOTE)[keyof typeof QUOTE];\n\nexport const TEMPLATE_VARIABLE_REGEX = /\\{\\{(?!\\{)(?<variableName>[^{}]+)}}/g;\n\ninterface TemplateReplacementReferences {\n contextReference?: string;\n headersReference?: string;\n}\n\nexport function formatStringLiteral(value: string): string {\n const hasSingleQuote = value.includes(QUOTE.single);\n const hasDoubleQuote = value.includes(QUOTE.double);\n const quote =\n value.includes('\\n') || value.includes('${') || (hasSingleQuote && hasDoubleQuote)\n ? QUOTE.template\n : hasSingleQuote\n ? QUOTE.double\n : QUOTE.single;\n if (quote === QUOTE.template) {\n // TODO: should escape variables except when we inject context variables and headers\n // value = value.replaceAll('${', '\\\\${');\n }\n return escapeStringLiteral(value, quote);\n}\n\nexport function collectTemplateVariableNames(value: string): string[] {\n const variables: string[] = [];\n for (const match of value.matchAll(TEMPLATE_VARIABLE_REGEX)) {\n const variableName = match.groups?.variableName?.trim();\n if (variableName) {\n variables.push(variableName);\n }\n }\n return variables;\n}\n\nexport function formatTemplate(value: string, references: TemplateReplacementReferences): string {\n if (!value.length) {\n return value;\n }\n\n let didReplace = false;\n const rewrittenValue = value.replace(\n TEMPLATE_VARIABLE_REGEX,\n (match: string, ...args: unknown[]): string => {\n const maybeGroups = args.at(-1);\n const variableName =\n isPlainObject(maybeGroups) && typeof maybeGroups.variableName === 'string'\n ? maybeGroups.variableName.trim()\n : undefined;\n\n if (!variableName) {\n return match;\n }\n\n if (variableName.startsWith('headers.')) {\n const headerPath = variableName.slice('headers.'.length);\n if (!headerPath || !references.headersReference) {\n return match;\n }\n didReplace = true;\n return `\\${${references.headersReference}.toTemplate(${JSON.stringify(headerPath)})}`;\n }\n\n if (!references.contextReference) {\n return match;\n }\n\n didReplace = true;\n return `\\${${references.contextReference}.toTemplate(${JSON.stringify(variableName)})}`;\n }\n );\n\n return didReplace ? rewrittenValue : value;\n}\n\nexport function formatPropertyName(key: string): string {\n if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(key)) {\n return key;\n }\n return formatStringLiteral(key);\n}\n\nfunction escapeStringLiteral(value: string, quote: Quote): string {\n return [quote, value.replaceAll('\\\\', '\\\\\\\\').replaceAll(quote, `\\\\${quote}`), quote].join('');\n}\n"],"mappings":";;;AAEA,MAAM,QAAQ,OAAO,OAAO;CAC1B,QAAQ;CACR,QAAQ;CACR,UAAU;CACX,CAAC;AAIF,MAAa,0BAA0B;AAOvC,SAAgB,oBAAoB,OAAuB;CACzD,MAAM,iBAAiB,MAAM,SAAS,MAAM,OAAO;CACnD,MAAM,iBAAiB,MAAM,SAAS,MAAM,OAAO;CACnD,MAAM,QACJ,MAAM,SAAS,KAAK,IAAI,MAAM,SAAS,KAAK,IAAK,kBAAkB,iBAC/D,MAAM,WACN,iBACE,MAAM,SACN,MAAM;AACd,KAAI,UAAU,MAAM,UAAU;AAI9B,QAAO,oBAAoB,OAAO,MAAM;;AAG1C,SAAgB,6BAA6B,OAAyB;CACpE,MAAM,YAAsB,EAAE;AAC9B,MAAK,MAAM,SAAS,MAAM,SAAS,wBAAwB,EAAE;EAC3D,MAAM,eAAe,MAAM,QAAQ,cAAc,MAAM;AACvD,MAAI,aACF,WAAU,KAAK,aAAa;;AAGhC,QAAO;;AAGT,SAAgB,eAAe,OAAe,YAAmD;AAC/F,KAAI,CAAC,MAAM,OACT,QAAO;CAGT,IAAI,aAAa;CACjB,MAAM,iBAAiB,MAAM,QAC3B,0BACC,OAAe,GAAG,SAA4B;EAC7C,MAAM,cAAc,KAAK,GAAG,GAAG;EAC/B,MAAM,eACJ,cAAc,YAAY,IAAI,OAAO,YAAY,iBAAiB,WAC9D,YAAY,aAAa,MAAM,GAC/B;AAEN,MAAI,CAAC,aACH,QAAO;AAGT,MAAI,aAAa,WAAW,WAAW,EAAE;GACvC,MAAM,aAAa,aAAa,MAAM,EAAkB;AACxD,OAAI,CAAC,cAAc,CAAC,WAAW,iBAC7B,QAAO;AAET,gBAAa;AACb,UAAO,MAAM,WAAW,iBAAiB,cAAc,KAAK,UAAU,WAAW,CAAC;;AAGpF,MAAI,CAAC,WAAW,iBACd,QAAO;AAGT,eAAa;AACb,SAAO,MAAM,WAAW,iBAAiB,cAAc,KAAK,UAAU,aAAa,CAAC;GAEvF;AAED,QAAO,aAAa,iBAAiB;;AAGvC,SAAgB,mBAAmB,KAAqB;AACtD,KAAI,6BAA6B,KAAK,IAAI,CACxC,QAAO;AAET,QAAO,oBAAoB,IAAI;;AAGjC,SAAS,oBAAoB,OAAe,OAAsB;AAChE,QAAO;EAAC;EAAO,MAAM,WAAW,MAAM,OAAO,CAAC,WAAW,OAAO,KAAK,QAAQ;EAAE;EAAM,CAAC,KAAK,GAAG"}
|
|
1
|
+
{"version":3,"file":"templates.js","names":[],"sources":["../../../../src/commands/pull-v4/utils/templates.ts"],"sourcesContent":["import { isPlainObject } from './shared';\n\nconst QUOTE = Object.freeze({\n single: \"'\",\n double: '\"',\n template: '`',\n});\n\ntype Quote = (typeof QUOTE)[keyof typeof QUOTE];\n\nexport const TEMPLATE_VARIABLE_REGEX = /\\{\\{(?!\\{)(?<variableName>[^{}]+)}}/g;\n\ninterface TemplateReplacementReferences {\n contextReference?: string;\n headersReference?: string;\n}\n\nexport function formatStringLiteral(value: string): string {\n const hasSingleQuote = value.includes(QUOTE.single);\n const hasDoubleQuote = value.includes(QUOTE.double);\n const quote =\n value.includes('\\n') || value.includes('${') || (hasSingleQuote && hasDoubleQuote)\n ? QUOTE.template\n : hasSingleQuote\n ? QUOTE.double\n : QUOTE.single;\n if (quote === QUOTE.template) {\n // TODO: should escape variables except when we inject context variables and headers\n // value = value.replaceAll('${', '\\\\${');\n }\n return escapeStringLiteral(value, quote);\n}\n\nexport function collectTemplateVariableNames(value: string): string[] {\n const variables: string[] = [];\n for (const match of value.matchAll(TEMPLATE_VARIABLE_REGEX)) {\n const variableName = match.groups?.variableName?.trim();\n if (variableName) {\n variables.push(variableName);\n }\n }\n return variables;\n}\n\nexport function formatTemplate(value: string, references: TemplateReplacementReferences): string {\n if (!value.length) {\n return value;\n }\n\n let didReplace = false;\n const rewrittenValue = value.replace(\n TEMPLATE_VARIABLE_REGEX,\n (match: string, ...args: unknown[]): string => {\n const maybeGroups = args.at(-1);\n const variableName =\n isPlainObject(maybeGroups) && typeof maybeGroups.variableName === 'string'\n ? maybeGroups.variableName.trim()\n : undefined;\n\n if (!variableName) {\n return match;\n }\n\n if (variableName.startsWith('$')) {\n return match;\n }\n\n if (variableName.startsWith('headers.')) {\n const headerPath = variableName.slice('headers.'.length);\n if (!headerPath || !references.headersReference) {\n return match;\n }\n didReplace = true;\n return `\\${${references.headersReference}.toTemplate(${JSON.stringify(headerPath)})}`;\n }\n\n if (!references.contextReference) {\n return match;\n }\n\n didReplace = true;\n return `\\${${references.contextReference}.toTemplate(${JSON.stringify(variableName)})}`;\n }\n );\n\n return didReplace ? rewrittenValue : value;\n}\n\nexport function formatPropertyName(key: string): string {\n if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(key)) {\n return key;\n }\n return formatStringLiteral(key);\n}\n\nfunction escapeStringLiteral(value: string, quote: Quote): string {\n return [quote, value.replaceAll('\\\\', '\\\\\\\\').replaceAll(quote, `\\\\${quote}`), quote].join('');\n}\n"],"mappings":";;;AAEA,MAAM,QAAQ,OAAO,OAAO;CAC1B,QAAQ;CACR,QAAQ;CACR,UAAU;CACX,CAAC;AAIF,MAAa,0BAA0B;AAOvC,SAAgB,oBAAoB,OAAuB;CACzD,MAAM,iBAAiB,MAAM,SAAS,MAAM,OAAO;CACnD,MAAM,iBAAiB,MAAM,SAAS,MAAM,OAAO;CACnD,MAAM,QACJ,MAAM,SAAS,KAAK,IAAI,MAAM,SAAS,KAAK,IAAK,kBAAkB,iBAC/D,MAAM,WACN,iBACE,MAAM,SACN,MAAM;AACd,KAAI,UAAU,MAAM,UAAU;AAI9B,QAAO,oBAAoB,OAAO,MAAM;;AAG1C,SAAgB,6BAA6B,OAAyB;CACpE,MAAM,YAAsB,EAAE;AAC9B,MAAK,MAAM,SAAS,MAAM,SAAS,wBAAwB,EAAE;EAC3D,MAAM,eAAe,MAAM,QAAQ,cAAc,MAAM;AACvD,MAAI,aACF,WAAU,KAAK,aAAa;;AAGhC,QAAO;;AAGT,SAAgB,eAAe,OAAe,YAAmD;AAC/F,KAAI,CAAC,MAAM,OACT,QAAO;CAGT,IAAI,aAAa;CACjB,MAAM,iBAAiB,MAAM,QAC3B,0BACC,OAAe,GAAG,SAA4B;EAC7C,MAAM,cAAc,KAAK,GAAG,GAAG;EAC/B,MAAM,eACJ,cAAc,YAAY,IAAI,OAAO,YAAY,iBAAiB,WAC9D,YAAY,aAAa,MAAM,GAC/B;AAEN,MAAI,CAAC,aACH,QAAO;AAGT,MAAI,aAAa,WAAW,IAAI,CAC9B,QAAO;AAGT,MAAI,aAAa,WAAW,WAAW,EAAE;GACvC,MAAM,aAAa,aAAa,MAAM,EAAkB;AACxD,OAAI,CAAC,cAAc,CAAC,WAAW,iBAC7B,QAAO;AAET,gBAAa;AACb,UAAO,MAAM,WAAW,iBAAiB,cAAc,KAAK,UAAU,WAAW,CAAC;;AAGpF,MAAI,CAAC,WAAW,iBACd,QAAO;AAGT,eAAa;AACb,SAAO,MAAM,WAAW,iBAAiB,cAAc,KAAK,UAAU,aAAa,CAAC;GAEvF;AAED,QAAO,aAAa,iBAAiB;;AAGvC,SAAgB,mBAAmB,KAAqB;AACtD,KAAI,6BAA6B,KAAK,IAAI,CACxC,QAAO;AAET,QAAO,oBAAoB,IAAI;;AAGjC,SAAS,oBAAoB,OAAe,OAAsB;AAChE,QAAO;EAAC;EAAO,MAAM,WAAW,MAAM,OAAO,CAAC,WAAW,OAAO,KAAK,QAAQ;EAAE;EAAM,CAAC,KAAK,GAAG"}
|
package/dist/package.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inkeep/agents-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.70.0",
|
|
4
4
|
"description": "Inkeep CLI tool",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -39,8 +39,8 @@
|
|
|
39
39
|
"tsx": "^4.20.5",
|
|
40
40
|
"yaml": "^2.7.0",
|
|
41
41
|
"zod": "^4.3.6",
|
|
42
|
-
"@inkeep/agents-
|
|
43
|
-
"@inkeep/agents-
|
|
42
|
+
"@inkeep/agents-core": "^0.70.0",
|
|
43
|
+
"@inkeep/agents-sdk": "^0.70.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/degit": "^2.8.6",
|