struere 0.9.1 → 0.9.3
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/dist/bin/struere.js +179 -31
- package/dist/cli/commands/templates.d.ts.map +1 -1
- package/dist/cli/index.js +179 -32
- package/dist/cli/utils/convex.d.ts +0 -2
- package/dist/cli/utils/convex.d.ts.map +1 -1
- package/dist/cli/utils/extractor.d.ts +7 -1
- package/dist/cli/utils/extractor.d.ts.map +1 -1
- package/dist/cli/utils/plugin.d.ts.map +1 -1
- package/dist/cli/utils/whatsapp.d.ts.map +1 -1
- package/dist/types.d.ts +8 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/bin/struere.js
CHANGED
|
@@ -20573,6 +20573,7 @@ var TYPE_DECLARATIONS = `declare module 'struere' {
|
|
|
20573
20573
|
systemPrompt: string | (() => string | Promise<string>)
|
|
20574
20574
|
model?: ModelConfig
|
|
20575
20575
|
tools?: string[]
|
|
20576
|
+
firstMessageSuggestions?: string[]
|
|
20576
20577
|
}
|
|
20577
20578
|
|
|
20578
20579
|
export interface JSONSchemaProperty {
|
|
@@ -21450,7 +21451,14 @@ var BUILTIN_TOOLS = [
|
|
|
21450
21451
|
"whatsapp.listTemplates",
|
|
21451
21452
|
"whatsapp.getConversation",
|
|
21452
21453
|
"whatsapp.getStatus",
|
|
21453
|
-
"agent.chat"
|
|
21454
|
+
"agent.chat",
|
|
21455
|
+
"airtable.listBases",
|
|
21456
|
+
"airtable.listTables",
|
|
21457
|
+
"airtable.listRecords",
|
|
21458
|
+
"airtable.getRecord",
|
|
21459
|
+
"airtable.createRecords",
|
|
21460
|
+
"airtable.updateRecords",
|
|
21461
|
+
"airtable.deleteRecords"
|
|
21454
21462
|
];
|
|
21455
21463
|
function extractSyncPayload(resources) {
|
|
21456
21464
|
const customToolsMap = new Map;
|
|
@@ -21558,8 +21566,7 @@ function extractAgentPayload(agent, customToolsMap) {
|
|
|
21558
21566
|
return {
|
|
21559
21567
|
name: toolName,
|
|
21560
21568
|
description: getBuiltinToolDescription(toolName),
|
|
21561
|
-
parameters: getBuiltinToolParameters(toolName)
|
|
21562
|
-
isBuiltin: true
|
|
21569
|
+
parameters: getBuiltinToolParameters(toolName)
|
|
21563
21570
|
};
|
|
21564
21571
|
}
|
|
21565
21572
|
const customTool = customToolsMap.get(toolName);
|
|
@@ -21571,8 +21578,7 @@ function extractAgentPayload(agent, customToolsMap) {
|
|
|
21571
21578
|
name: customTool.name,
|
|
21572
21579
|
description: customTool.description,
|
|
21573
21580
|
parameters: customTool.parameters || { type: "object", properties: {} },
|
|
21574
|
-
handlerCode: extractHandlerCode(customTool._originalHandler || customTool.handler)
|
|
21575
|
-
isBuiltin: false
|
|
21581
|
+
handlerCode: extractHandlerCode(customTool._originalHandler || customTool.handler)
|
|
21576
21582
|
};
|
|
21577
21583
|
});
|
|
21578
21584
|
return {
|
|
@@ -21580,6 +21586,8 @@ function extractAgentPayload(agent, customToolsMap) {
|
|
|
21580
21586
|
slug: agent.slug,
|
|
21581
21587
|
version: agent.version,
|
|
21582
21588
|
description: agent.description,
|
|
21589
|
+
firstMessageSuggestions: agent.firstMessageSuggestions,
|
|
21590
|
+
threadContextParams: agent.threadContextParams,
|
|
21583
21591
|
systemPrompt,
|
|
21584
21592
|
model: {
|
|
21585
21593
|
provider: agent.model?.provider || "xai",
|
|
@@ -21613,7 +21621,14 @@ function getBuiltinToolDescription(name) {
|
|
|
21613
21621
|
"whatsapp.listTemplates": "List available WhatsApp message templates",
|
|
21614
21622
|
"whatsapp.getConversation": "Get WhatsApp conversation history with a phone number",
|
|
21615
21623
|
"whatsapp.getStatus": "Get WhatsApp connection status for this organization",
|
|
21616
|
-
"agent.chat": "Send a message to another agent and get its response"
|
|
21624
|
+
"agent.chat": "Send a message to another agent and get its response",
|
|
21625
|
+
"airtable.listBases": "List all Airtable bases accessible with the configured token",
|
|
21626
|
+
"airtable.listTables": "List all tables in an Airtable base",
|
|
21627
|
+
"airtable.listRecords": "List records from an Airtable table with optional filtering and sorting",
|
|
21628
|
+
"airtable.getRecord": "Get a single record from an Airtable table by ID",
|
|
21629
|
+
"airtable.createRecords": "Create up to 10 records in an Airtable table",
|
|
21630
|
+
"airtable.updateRecords": "Update up to 10 records in an Airtable table",
|
|
21631
|
+
"airtable.deleteRecords": "Delete up to 10 records from an Airtable table"
|
|
21617
21632
|
};
|
|
21618
21633
|
return descriptions[name] || name;
|
|
21619
21634
|
}
|
|
@@ -21849,6 +21864,67 @@ function getBuiltinToolParameters(name) {
|
|
|
21849
21864
|
context: { type: "object", description: "Optional context data to pass to the target agent" }
|
|
21850
21865
|
},
|
|
21851
21866
|
required: ["agent", "message"]
|
|
21867
|
+
},
|
|
21868
|
+
"airtable.listBases": {
|
|
21869
|
+
type: "object",
|
|
21870
|
+
properties: {}
|
|
21871
|
+
},
|
|
21872
|
+
"airtable.listTables": {
|
|
21873
|
+
type: "object",
|
|
21874
|
+
properties: {
|
|
21875
|
+
baseId: { type: "string", description: 'Airtable base ID (e.g., "appXXXXXXXXXXXXXX")' }
|
|
21876
|
+
},
|
|
21877
|
+
required: ["baseId"]
|
|
21878
|
+
},
|
|
21879
|
+
"airtable.listRecords": {
|
|
21880
|
+
type: "object",
|
|
21881
|
+
properties: {
|
|
21882
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
21883
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
21884
|
+
pageSize: { type: "number", description: "Number of records per page (max 100)" },
|
|
21885
|
+
offset: { type: "string", description: "Pagination offset from a previous response" },
|
|
21886
|
+
filterByFormula: { type: "string", description: `Airtable formula to filter records (e.g., "{Status} = 'Active'")` },
|
|
21887
|
+
sort: { type: "array", items: { type: "object", properties: { field: { type: "string" }, direction: { type: "string", enum: ["asc", "desc"] } }, required: ["field"] }, description: "Sort configuration" },
|
|
21888
|
+
fields: { type: "array", items: { type: "string" }, description: "Only return specific field names" },
|
|
21889
|
+
view: { type: "string", description: "Name or ID of an Airtable view to use" }
|
|
21890
|
+
},
|
|
21891
|
+
required: ["baseId", "tableIdOrName"]
|
|
21892
|
+
},
|
|
21893
|
+
"airtable.getRecord": {
|
|
21894
|
+
type: "object",
|
|
21895
|
+
properties: {
|
|
21896
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
21897
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
21898
|
+
recordId: { type: "string", description: 'Record ID (e.g., "recXXXXXXXXXXXXXX")' }
|
|
21899
|
+
},
|
|
21900
|
+
required: ["baseId", "tableIdOrName", "recordId"]
|
|
21901
|
+
},
|
|
21902
|
+
"airtable.createRecords": {
|
|
21903
|
+
type: "object",
|
|
21904
|
+
properties: {
|
|
21905
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
21906
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
21907
|
+
records: { type: "array", items: { type: "object", properties: { fields: { type: "object", description: "Field values for the record" } }, required: ["fields"] }, description: "Array of records to create (max 10)" }
|
|
21908
|
+
},
|
|
21909
|
+
required: ["baseId", "tableIdOrName", "records"]
|
|
21910
|
+
},
|
|
21911
|
+
"airtable.updateRecords": {
|
|
21912
|
+
type: "object",
|
|
21913
|
+
properties: {
|
|
21914
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
21915
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
21916
|
+
records: { type: "array", items: { type: "object", properties: { id: { type: "string", description: "Record ID to update" }, fields: { type: "object", description: "Field values to update" } }, required: ["id", "fields"] }, description: "Array of records to update (max 10)" }
|
|
21917
|
+
},
|
|
21918
|
+
required: ["baseId", "tableIdOrName", "records"]
|
|
21919
|
+
},
|
|
21920
|
+
"airtable.deleteRecords": {
|
|
21921
|
+
type: "object",
|
|
21922
|
+
properties: {
|
|
21923
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
21924
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
21925
|
+
recordIds: { type: "array", items: { type: "string" }, description: "Array of record IDs to delete (max 10)" }
|
|
21926
|
+
},
|
|
21927
|
+
required: ["baseId", "tableIdOrName", "recordIds"]
|
|
21852
21928
|
}
|
|
21853
21929
|
};
|
|
21854
21930
|
return schemas[name] || { type: "object", properties: {} };
|
|
@@ -24535,11 +24611,47 @@ import { readFileSync as readFileSync4 } from "fs";
|
|
|
24535
24611
|
|
|
24536
24612
|
// src/cli/utils/whatsapp.ts
|
|
24537
24613
|
var CONVEX_URL4 = process.env.STRUERE_CONVEX_URL || "https://rapid-wildebeest-172.convex.cloud";
|
|
24614
|
+
function getSiteUrl2() {
|
|
24615
|
+
return CONVEX_URL4.replace(".cloud", ".site");
|
|
24616
|
+
}
|
|
24538
24617
|
function getToken3() {
|
|
24539
24618
|
const credentials = loadCredentials();
|
|
24540
24619
|
const apiKey = getApiKey();
|
|
24541
24620
|
return apiKey || credentials?.token || null;
|
|
24542
24621
|
}
|
|
24622
|
+
async function httpPost(path, body) {
|
|
24623
|
+
const apiKey = getApiKey();
|
|
24624
|
+
if (!apiKey)
|
|
24625
|
+
return { error: "Not authenticated" };
|
|
24626
|
+
const siteUrl = getSiteUrl2();
|
|
24627
|
+
try {
|
|
24628
|
+
const response = await fetch(`${siteUrl}${path}`, {
|
|
24629
|
+
method: "POST",
|
|
24630
|
+
headers: {
|
|
24631
|
+
"Content-Type": "application/json",
|
|
24632
|
+
Authorization: `Bearer ${apiKey}`
|
|
24633
|
+
},
|
|
24634
|
+
body: JSON.stringify(body),
|
|
24635
|
+
signal: AbortSignal.timeout(30000)
|
|
24636
|
+
});
|
|
24637
|
+
const text = await response.text();
|
|
24638
|
+
let json;
|
|
24639
|
+
try {
|
|
24640
|
+
json = JSON.parse(text);
|
|
24641
|
+
} catch {
|
|
24642
|
+
return { error: text || `HTTP ${response.status}` };
|
|
24643
|
+
}
|
|
24644
|
+
if (!response.ok) {
|
|
24645
|
+
return { error: String(json.error || json.message || text) };
|
|
24646
|
+
}
|
|
24647
|
+
return { data: json };
|
|
24648
|
+
} catch (err) {
|
|
24649
|
+
if (err instanceof DOMException && err.name === "TimeoutError") {
|
|
24650
|
+
return { error: "Request timed out after 30s" };
|
|
24651
|
+
}
|
|
24652
|
+
return { error: `Network error: ${err instanceof Error ? err.message : String(err)}` };
|
|
24653
|
+
}
|
|
24654
|
+
}
|
|
24543
24655
|
async function convexAction(path, args) {
|
|
24544
24656
|
const token = getToken3();
|
|
24545
24657
|
if (!token)
|
|
@@ -24599,15 +24711,34 @@ async function convexQuery3(path, args) {
|
|
|
24599
24711
|
return { error: `Unexpected response: ${text}` };
|
|
24600
24712
|
}
|
|
24601
24713
|
async function listWhatsAppConnections(env2) {
|
|
24714
|
+
if (getApiKey()) {
|
|
24715
|
+
const result = await httpPost("/v1/templates/connections", {});
|
|
24716
|
+
if (result.error)
|
|
24717
|
+
return result;
|
|
24718
|
+
return { data: result.data.data };
|
|
24719
|
+
}
|
|
24602
24720
|
return convexQuery3("whatsapp:listConnections", { environment: env2 });
|
|
24603
24721
|
}
|
|
24604
24722
|
async function listTemplates(connectionId, env2) {
|
|
24723
|
+
if (getApiKey()) {
|
|
24724
|
+
return httpPost("/v1/templates/list", { connectionId });
|
|
24725
|
+
}
|
|
24605
24726
|
return convexAction("whatsappActions:listTemplates", {
|
|
24606
24727
|
connectionId,
|
|
24607
24728
|
environment: env2
|
|
24608
24729
|
});
|
|
24609
24730
|
}
|
|
24610
24731
|
async function createTemplate(connectionId, env2, name, language, category, components, allowCategoryChange) {
|
|
24732
|
+
if (getApiKey()) {
|
|
24733
|
+
return httpPost("/v1/templates/create", {
|
|
24734
|
+
connectionId,
|
|
24735
|
+
name,
|
|
24736
|
+
language,
|
|
24737
|
+
category,
|
|
24738
|
+
components,
|
|
24739
|
+
...allowCategoryChange !== undefined && { allowCategoryChange }
|
|
24740
|
+
});
|
|
24741
|
+
}
|
|
24611
24742
|
return convexAction("whatsappActions:createTemplate", {
|
|
24612
24743
|
connectionId,
|
|
24613
24744
|
environment: env2,
|
|
@@ -24619,6 +24750,9 @@ async function createTemplate(connectionId, env2, name, language, category, comp
|
|
|
24619
24750
|
});
|
|
24620
24751
|
}
|
|
24621
24752
|
async function deleteTemplate(connectionId, env2, name) {
|
|
24753
|
+
if (getApiKey()) {
|
|
24754
|
+
return httpPost("/v1/templates/delete", { connectionId, name });
|
|
24755
|
+
}
|
|
24622
24756
|
return convexAction("whatsappActions:deleteTemplate", {
|
|
24623
24757
|
connectionId,
|
|
24624
24758
|
environment: env2,
|
|
@@ -24626,6 +24760,9 @@ async function deleteTemplate(connectionId, env2, name) {
|
|
|
24626
24760
|
});
|
|
24627
24761
|
}
|
|
24628
24762
|
async function getTemplateStatus(connectionId, env2, name) {
|
|
24763
|
+
if (getApiKey()) {
|
|
24764
|
+
return httpPost("/v1/templates/status", { connectionId, name });
|
|
24765
|
+
}
|
|
24629
24766
|
return convexAction("whatsappActions:getTemplateStatus", {
|
|
24630
24767
|
connectionId,
|
|
24631
24768
|
environment: env2,
|
|
@@ -24671,27 +24808,34 @@ async function ensureAuth2() {
|
|
|
24671
24808
|
async function resolveConnectionId(env2, connectionIdFlag) {
|
|
24672
24809
|
if (connectionIdFlag)
|
|
24673
24810
|
return connectionIdFlag;
|
|
24674
|
-
const
|
|
24811
|
+
const out = createOutput();
|
|
24812
|
+
out.start("Fetching WhatsApp connections");
|
|
24675
24813
|
const { data, error } = await listWhatsAppConnections(env2);
|
|
24676
24814
|
if (error || !data) {
|
|
24677
|
-
|
|
24678
|
-
|
|
24815
|
+
out.fail("Failed to fetch connections");
|
|
24816
|
+
out.error(error ?? "Unknown error");
|
|
24679
24817
|
process.exit(1);
|
|
24680
24818
|
}
|
|
24681
24819
|
const connections = data;
|
|
24682
24820
|
const connected = connections.filter((c) => c.status === "connected");
|
|
24683
24821
|
if (connected.length === 0) {
|
|
24684
|
-
|
|
24685
|
-
|
|
24822
|
+
out.fail("No connected WhatsApp numbers found");
|
|
24823
|
+
out.info("Connect a phone number in the dashboard first");
|
|
24686
24824
|
process.exit(1);
|
|
24687
24825
|
}
|
|
24688
24826
|
if (connected.length === 1) {
|
|
24689
24827
|
const c = connected[0];
|
|
24690
24828
|
const label = c.label || (c.phoneNumber ? `+${c.phoneNumber}` : c._id);
|
|
24691
|
-
|
|
24829
|
+
out.succeed(`Using connection: ${label}`);
|
|
24692
24830
|
return c._id;
|
|
24693
24831
|
}
|
|
24694
|
-
|
|
24832
|
+
if (!isInteractive2()) {
|
|
24833
|
+
const c = connected[0];
|
|
24834
|
+
const label = c.label || (c.phoneNumber ? `+${c.phoneNumber}` : c._id);
|
|
24835
|
+
out.succeed(`Auto-selected connection: ${label}`);
|
|
24836
|
+
return c._id;
|
|
24837
|
+
}
|
|
24838
|
+
out.succeed(`Found ${connected.length} connections`);
|
|
24695
24839
|
console.log();
|
|
24696
24840
|
for (let i = 0;i < connected.length; i++) {
|
|
24697
24841
|
const c = connected[i];
|
|
@@ -24721,16 +24865,17 @@ templatesCommand.command("list").description("List all message templates").optio
|
|
|
24721
24865
|
await ensureAuth2();
|
|
24722
24866
|
const env2 = opts.env;
|
|
24723
24867
|
const connectionId = await resolveConnectionId(env2, opts.connection);
|
|
24724
|
-
const
|
|
24868
|
+
const out = createOutput();
|
|
24869
|
+
out.start("Fetching templates");
|
|
24725
24870
|
const { data, error } = await listTemplates(connectionId, env2);
|
|
24726
24871
|
if (error) {
|
|
24727
|
-
|
|
24728
|
-
|
|
24872
|
+
out.fail("Failed to fetch templates");
|
|
24873
|
+
out.error(error);
|
|
24729
24874
|
process.exit(1);
|
|
24730
24875
|
}
|
|
24731
24876
|
const result = data;
|
|
24732
24877
|
const templates = result?.data ?? [];
|
|
24733
|
-
|
|
24878
|
+
out.succeed(`Found ${templates.length} templates`);
|
|
24734
24879
|
if (opts.json) {
|
|
24735
24880
|
console.log(JSON.stringify(templates, null, 2));
|
|
24736
24881
|
return;
|
|
@@ -24783,15 +24928,16 @@ templatesCommand.command("create <name>").description("Create a new message temp
|
|
|
24783
24928
|
console.log(source_default.red("Components must be a JSON array"));
|
|
24784
24929
|
process.exit(1);
|
|
24785
24930
|
}
|
|
24786
|
-
const
|
|
24931
|
+
const out = createOutput();
|
|
24932
|
+
out.start(`Creating template "${name}"`);
|
|
24787
24933
|
const { data, error } = await createTemplate(connectionId, env2, name, opts.language, opts.category.toUpperCase(), components, opts.allowCategoryChange);
|
|
24788
24934
|
if (error) {
|
|
24789
|
-
|
|
24790
|
-
|
|
24935
|
+
out.fail("Failed to create template");
|
|
24936
|
+
out.error(error);
|
|
24791
24937
|
process.exit(1);
|
|
24792
24938
|
}
|
|
24793
24939
|
const result = data;
|
|
24794
|
-
|
|
24940
|
+
out.succeed(`Template "${name}" created`);
|
|
24795
24941
|
if (opts.json) {
|
|
24796
24942
|
console.log(JSON.stringify(result, null, 2));
|
|
24797
24943
|
} else {
|
|
@@ -24816,34 +24962,36 @@ templatesCommand.command("delete <name>").description("Delete a message template
|
|
|
24816
24962
|
return;
|
|
24817
24963
|
}
|
|
24818
24964
|
}
|
|
24819
|
-
const
|
|
24965
|
+
const out = createOutput();
|
|
24966
|
+
out.start(`Deleting template "${name}"`);
|
|
24820
24967
|
const { error } = await deleteTemplate(connectionId, env2, name);
|
|
24821
24968
|
if (error) {
|
|
24822
|
-
|
|
24823
|
-
|
|
24969
|
+
out.fail("Failed to delete template");
|
|
24970
|
+
out.error(error);
|
|
24824
24971
|
process.exit(1);
|
|
24825
24972
|
}
|
|
24826
|
-
|
|
24973
|
+
out.succeed(`Template "${name}" deleted`);
|
|
24827
24974
|
console.log();
|
|
24828
24975
|
});
|
|
24829
24976
|
templatesCommand.command("status <name>").description("Check template approval status").option("--env <environment>", "Environment (development|production)", "development").option("--connection <id>", "WhatsApp connection ID").option("--json", "Output raw JSON").action(async (name, opts) => {
|
|
24830
24977
|
await ensureAuth2();
|
|
24831
24978
|
const env2 = opts.env;
|
|
24832
24979
|
const connectionId = await resolveConnectionId(env2, opts.connection);
|
|
24833
|
-
const
|
|
24980
|
+
const out = createOutput();
|
|
24981
|
+
out.start(`Checking status for "${name}"`);
|
|
24834
24982
|
const { data, error } = await getTemplateStatus(connectionId, env2, name);
|
|
24835
24983
|
if (error) {
|
|
24836
|
-
|
|
24837
|
-
|
|
24984
|
+
out.fail("Failed to fetch template status");
|
|
24985
|
+
out.error(error);
|
|
24838
24986
|
process.exit(1);
|
|
24839
24987
|
}
|
|
24840
24988
|
const result = data;
|
|
24841
24989
|
const templates = result?.data ?? [];
|
|
24842
24990
|
if (templates.length === 0) {
|
|
24843
|
-
|
|
24991
|
+
out.fail(`Template "${name}" not found`);
|
|
24844
24992
|
process.exit(1);
|
|
24845
24993
|
}
|
|
24846
|
-
|
|
24994
|
+
out.succeed(`Template "${name}" found`);
|
|
24847
24995
|
if (opts.json) {
|
|
24848
24996
|
console.log(JSON.stringify(templates, null, 2));
|
|
24849
24997
|
return;
|
|
@@ -24865,7 +25013,7 @@ templatesCommand.command("status <name>").description("Check template approval s
|
|
|
24865
25013
|
// package.json
|
|
24866
25014
|
var package_default = {
|
|
24867
25015
|
name: "struere",
|
|
24868
|
-
version: "0.9.
|
|
25016
|
+
version: "0.9.3",
|
|
24869
25017
|
description: "Build, test, and deploy AI agents",
|
|
24870
25018
|
keywords: [
|
|
24871
25019
|
"ai",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAqHnC,eAAO,MAAM,gBAAgB,SACsB,CAAA"}
|
package/dist/cli/index.js
CHANGED
|
@@ -1236,6 +1236,7 @@ var TYPE_DECLARATIONS = `declare module 'struere' {
|
|
|
1236
1236
|
systemPrompt: string | (() => string | Promise<string>)
|
|
1237
1237
|
model?: ModelConfig
|
|
1238
1238
|
tools?: string[]
|
|
1239
|
+
firstMessageSuggestions?: string[]
|
|
1239
1240
|
}
|
|
1240
1241
|
|
|
1241
1242
|
export interface JSONSchemaProperty {
|
|
@@ -2126,7 +2127,14 @@ var BUILTIN_TOOLS = [
|
|
|
2126
2127
|
"whatsapp.listTemplates",
|
|
2127
2128
|
"whatsapp.getConversation",
|
|
2128
2129
|
"whatsapp.getStatus",
|
|
2129
|
-
"agent.chat"
|
|
2130
|
+
"agent.chat",
|
|
2131
|
+
"airtable.listBases",
|
|
2132
|
+
"airtable.listTables",
|
|
2133
|
+
"airtable.listRecords",
|
|
2134
|
+
"airtable.getRecord",
|
|
2135
|
+
"airtable.createRecords",
|
|
2136
|
+
"airtable.updateRecords",
|
|
2137
|
+
"airtable.deleteRecords"
|
|
2130
2138
|
];
|
|
2131
2139
|
function extractSyncPayload(resources) {
|
|
2132
2140
|
const customToolsMap = new Map;
|
|
@@ -2234,8 +2242,7 @@ function extractAgentPayload(agent, customToolsMap) {
|
|
|
2234
2242
|
return {
|
|
2235
2243
|
name: toolName,
|
|
2236
2244
|
description: getBuiltinToolDescription(toolName),
|
|
2237
|
-
parameters: getBuiltinToolParameters(toolName)
|
|
2238
|
-
isBuiltin: true
|
|
2245
|
+
parameters: getBuiltinToolParameters(toolName)
|
|
2239
2246
|
};
|
|
2240
2247
|
}
|
|
2241
2248
|
const customTool = customToolsMap.get(toolName);
|
|
@@ -2247,8 +2254,7 @@ function extractAgentPayload(agent, customToolsMap) {
|
|
|
2247
2254
|
name: customTool.name,
|
|
2248
2255
|
description: customTool.description,
|
|
2249
2256
|
parameters: customTool.parameters || { type: "object", properties: {} },
|
|
2250
|
-
handlerCode: extractHandlerCode(customTool._originalHandler || customTool.handler)
|
|
2251
|
-
isBuiltin: false
|
|
2257
|
+
handlerCode: extractHandlerCode(customTool._originalHandler || customTool.handler)
|
|
2252
2258
|
};
|
|
2253
2259
|
});
|
|
2254
2260
|
return {
|
|
@@ -2256,6 +2262,8 @@ function extractAgentPayload(agent, customToolsMap) {
|
|
|
2256
2262
|
slug: agent.slug,
|
|
2257
2263
|
version: agent.version,
|
|
2258
2264
|
description: agent.description,
|
|
2265
|
+
firstMessageSuggestions: agent.firstMessageSuggestions,
|
|
2266
|
+
threadContextParams: agent.threadContextParams,
|
|
2259
2267
|
systemPrompt,
|
|
2260
2268
|
model: {
|
|
2261
2269
|
provider: agent.model?.provider || "xai",
|
|
@@ -2289,7 +2297,14 @@ function getBuiltinToolDescription(name) {
|
|
|
2289
2297
|
"whatsapp.listTemplates": "List available WhatsApp message templates",
|
|
2290
2298
|
"whatsapp.getConversation": "Get WhatsApp conversation history with a phone number",
|
|
2291
2299
|
"whatsapp.getStatus": "Get WhatsApp connection status for this organization",
|
|
2292
|
-
"agent.chat": "Send a message to another agent and get its response"
|
|
2300
|
+
"agent.chat": "Send a message to another agent and get its response",
|
|
2301
|
+
"airtable.listBases": "List all Airtable bases accessible with the configured token",
|
|
2302
|
+
"airtable.listTables": "List all tables in an Airtable base",
|
|
2303
|
+
"airtable.listRecords": "List records from an Airtable table with optional filtering and sorting",
|
|
2304
|
+
"airtable.getRecord": "Get a single record from an Airtable table by ID",
|
|
2305
|
+
"airtable.createRecords": "Create up to 10 records in an Airtable table",
|
|
2306
|
+
"airtable.updateRecords": "Update up to 10 records in an Airtable table",
|
|
2307
|
+
"airtable.deleteRecords": "Delete up to 10 records from an Airtable table"
|
|
2293
2308
|
};
|
|
2294
2309
|
return descriptions[name] || name;
|
|
2295
2310
|
}
|
|
@@ -2525,6 +2540,67 @@ function getBuiltinToolParameters(name) {
|
|
|
2525
2540
|
context: { type: "object", description: "Optional context data to pass to the target agent" }
|
|
2526
2541
|
},
|
|
2527
2542
|
required: ["agent", "message"]
|
|
2543
|
+
},
|
|
2544
|
+
"airtable.listBases": {
|
|
2545
|
+
type: "object",
|
|
2546
|
+
properties: {}
|
|
2547
|
+
},
|
|
2548
|
+
"airtable.listTables": {
|
|
2549
|
+
type: "object",
|
|
2550
|
+
properties: {
|
|
2551
|
+
baseId: { type: "string", description: 'Airtable base ID (e.g., "appXXXXXXXXXXXXXX")' }
|
|
2552
|
+
},
|
|
2553
|
+
required: ["baseId"]
|
|
2554
|
+
},
|
|
2555
|
+
"airtable.listRecords": {
|
|
2556
|
+
type: "object",
|
|
2557
|
+
properties: {
|
|
2558
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
2559
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
2560
|
+
pageSize: { type: "number", description: "Number of records per page (max 100)" },
|
|
2561
|
+
offset: { type: "string", description: "Pagination offset from a previous response" },
|
|
2562
|
+
filterByFormula: { type: "string", description: `Airtable formula to filter records (e.g., "{Status} = 'Active'")` },
|
|
2563
|
+
sort: { type: "array", items: { type: "object", properties: { field: { type: "string" }, direction: { type: "string", enum: ["asc", "desc"] } }, required: ["field"] }, description: "Sort configuration" },
|
|
2564
|
+
fields: { type: "array", items: { type: "string" }, description: "Only return specific field names" },
|
|
2565
|
+
view: { type: "string", description: "Name or ID of an Airtable view to use" }
|
|
2566
|
+
},
|
|
2567
|
+
required: ["baseId", "tableIdOrName"]
|
|
2568
|
+
},
|
|
2569
|
+
"airtable.getRecord": {
|
|
2570
|
+
type: "object",
|
|
2571
|
+
properties: {
|
|
2572
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
2573
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
2574
|
+
recordId: { type: "string", description: 'Record ID (e.g., "recXXXXXXXXXXXXXX")' }
|
|
2575
|
+
},
|
|
2576
|
+
required: ["baseId", "tableIdOrName", "recordId"]
|
|
2577
|
+
},
|
|
2578
|
+
"airtable.createRecords": {
|
|
2579
|
+
type: "object",
|
|
2580
|
+
properties: {
|
|
2581
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
2582
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
2583
|
+
records: { type: "array", items: { type: "object", properties: { fields: { type: "object", description: "Field values for the record" } }, required: ["fields"] }, description: "Array of records to create (max 10)" }
|
|
2584
|
+
},
|
|
2585
|
+
required: ["baseId", "tableIdOrName", "records"]
|
|
2586
|
+
},
|
|
2587
|
+
"airtable.updateRecords": {
|
|
2588
|
+
type: "object",
|
|
2589
|
+
properties: {
|
|
2590
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
2591
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
2592
|
+
records: { type: "array", items: { type: "object", properties: { id: { type: "string", description: "Record ID to update" }, fields: { type: "object", description: "Field values to update" } }, required: ["id", "fields"] }, description: "Array of records to update (max 10)" }
|
|
2593
|
+
},
|
|
2594
|
+
required: ["baseId", "tableIdOrName", "records"]
|
|
2595
|
+
},
|
|
2596
|
+
"airtable.deleteRecords": {
|
|
2597
|
+
type: "object",
|
|
2598
|
+
properties: {
|
|
2599
|
+
baseId: { type: "string", description: "Airtable base ID" },
|
|
2600
|
+
tableIdOrName: { type: "string", description: "Table ID or name" },
|
|
2601
|
+
recordIds: { type: "array", items: { type: "string" }, description: "Array of record IDs to delete (max 10)" }
|
|
2602
|
+
},
|
|
2603
|
+
required: ["baseId", "tableIdOrName", "recordIds"]
|
|
2528
2604
|
}
|
|
2529
2605
|
};
|
|
2530
2606
|
return schemas[name] || { type: "object", properties: {} };
|
|
@@ -5237,17 +5313,52 @@ evalCommand.addCommand(runCommand);
|
|
|
5237
5313
|
// src/cli/commands/templates.ts
|
|
5238
5314
|
import { Command as Command14 } from "commander";
|
|
5239
5315
|
import chalk16 from "chalk";
|
|
5240
|
-
import ora12 from "ora";
|
|
5241
5316
|
import { readFileSync as readFileSync4 } from "fs";
|
|
5242
5317
|
import { confirm as confirm5 } from "@inquirer/prompts";
|
|
5243
5318
|
|
|
5244
5319
|
// src/cli/utils/whatsapp.ts
|
|
5245
5320
|
var CONVEX_URL4 = process.env.STRUERE_CONVEX_URL || "https://rapid-wildebeest-172.convex.cloud";
|
|
5321
|
+
function getSiteUrl2() {
|
|
5322
|
+
return CONVEX_URL4.replace(".cloud", ".site");
|
|
5323
|
+
}
|
|
5246
5324
|
function getToken3() {
|
|
5247
5325
|
const credentials = loadCredentials();
|
|
5248
5326
|
const apiKey = getApiKey();
|
|
5249
5327
|
return apiKey || credentials?.token || null;
|
|
5250
5328
|
}
|
|
5329
|
+
async function httpPost(path, body) {
|
|
5330
|
+
const apiKey = getApiKey();
|
|
5331
|
+
if (!apiKey)
|
|
5332
|
+
return { error: "Not authenticated" };
|
|
5333
|
+
const siteUrl = getSiteUrl2();
|
|
5334
|
+
try {
|
|
5335
|
+
const response = await fetch(`${siteUrl}${path}`, {
|
|
5336
|
+
method: "POST",
|
|
5337
|
+
headers: {
|
|
5338
|
+
"Content-Type": "application/json",
|
|
5339
|
+
Authorization: `Bearer ${apiKey}`
|
|
5340
|
+
},
|
|
5341
|
+
body: JSON.stringify(body),
|
|
5342
|
+
signal: AbortSignal.timeout(30000)
|
|
5343
|
+
});
|
|
5344
|
+
const text = await response.text();
|
|
5345
|
+
let json;
|
|
5346
|
+
try {
|
|
5347
|
+
json = JSON.parse(text);
|
|
5348
|
+
} catch {
|
|
5349
|
+
return { error: text || `HTTP ${response.status}` };
|
|
5350
|
+
}
|
|
5351
|
+
if (!response.ok) {
|
|
5352
|
+
return { error: String(json.error || json.message || text) };
|
|
5353
|
+
}
|
|
5354
|
+
return { data: json };
|
|
5355
|
+
} catch (err) {
|
|
5356
|
+
if (err instanceof DOMException && err.name === "TimeoutError") {
|
|
5357
|
+
return { error: "Request timed out after 30s" };
|
|
5358
|
+
}
|
|
5359
|
+
return { error: `Network error: ${err instanceof Error ? err.message : String(err)}` };
|
|
5360
|
+
}
|
|
5361
|
+
}
|
|
5251
5362
|
async function convexAction(path, args) {
|
|
5252
5363
|
const token = getToken3();
|
|
5253
5364
|
if (!token)
|
|
@@ -5307,15 +5418,34 @@ async function convexQuery3(path, args) {
|
|
|
5307
5418
|
return { error: `Unexpected response: ${text}` };
|
|
5308
5419
|
}
|
|
5309
5420
|
async function listWhatsAppConnections(env) {
|
|
5421
|
+
if (getApiKey()) {
|
|
5422
|
+
const result = await httpPost("/v1/templates/connections", {});
|
|
5423
|
+
if (result.error)
|
|
5424
|
+
return result;
|
|
5425
|
+
return { data: result.data.data };
|
|
5426
|
+
}
|
|
5310
5427
|
return convexQuery3("whatsapp:listConnections", { environment: env });
|
|
5311
5428
|
}
|
|
5312
5429
|
async function listTemplates(connectionId, env) {
|
|
5430
|
+
if (getApiKey()) {
|
|
5431
|
+
return httpPost("/v1/templates/list", { connectionId });
|
|
5432
|
+
}
|
|
5313
5433
|
return convexAction("whatsappActions:listTemplates", {
|
|
5314
5434
|
connectionId,
|
|
5315
5435
|
environment: env
|
|
5316
5436
|
});
|
|
5317
5437
|
}
|
|
5318
5438
|
async function createTemplate(connectionId, env, name, language, category, components, allowCategoryChange) {
|
|
5439
|
+
if (getApiKey()) {
|
|
5440
|
+
return httpPost("/v1/templates/create", {
|
|
5441
|
+
connectionId,
|
|
5442
|
+
name,
|
|
5443
|
+
language,
|
|
5444
|
+
category,
|
|
5445
|
+
components,
|
|
5446
|
+
...allowCategoryChange !== undefined && { allowCategoryChange }
|
|
5447
|
+
});
|
|
5448
|
+
}
|
|
5319
5449
|
return convexAction("whatsappActions:createTemplate", {
|
|
5320
5450
|
connectionId,
|
|
5321
5451
|
environment: env,
|
|
@@ -5327,6 +5457,9 @@ async function createTemplate(connectionId, env, name, language, category, compo
|
|
|
5327
5457
|
});
|
|
5328
5458
|
}
|
|
5329
5459
|
async function deleteTemplate(connectionId, env, name) {
|
|
5460
|
+
if (getApiKey()) {
|
|
5461
|
+
return httpPost("/v1/templates/delete", { connectionId, name });
|
|
5462
|
+
}
|
|
5330
5463
|
return convexAction("whatsappActions:deleteTemplate", {
|
|
5331
5464
|
connectionId,
|
|
5332
5465
|
environment: env,
|
|
@@ -5334,6 +5467,9 @@ async function deleteTemplate(connectionId, env, name) {
|
|
|
5334
5467
|
});
|
|
5335
5468
|
}
|
|
5336
5469
|
async function getTemplateStatus(connectionId, env, name) {
|
|
5470
|
+
if (getApiKey()) {
|
|
5471
|
+
return httpPost("/v1/templates/status", { connectionId, name });
|
|
5472
|
+
}
|
|
5337
5473
|
return convexAction("whatsappActions:getTemplateStatus", {
|
|
5338
5474
|
connectionId,
|
|
5339
5475
|
environment: env,
|
|
@@ -5379,27 +5515,34 @@ async function ensureAuth2() {
|
|
|
5379
5515
|
async function resolveConnectionId(env, connectionIdFlag) {
|
|
5380
5516
|
if (connectionIdFlag)
|
|
5381
5517
|
return connectionIdFlag;
|
|
5382
|
-
const
|
|
5518
|
+
const out = createOutput();
|
|
5519
|
+
out.start("Fetching WhatsApp connections");
|
|
5383
5520
|
const { data, error } = await listWhatsAppConnections(env);
|
|
5384
5521
|
if (error || !data) {
|
|
5385
|
-
|
|
5386
|
-
|
|
5522
|
+
out.fail("Failed to fetch connections");
|
|
5523
|
+
out.error(error ?? "Unknown error");
|
|
5387
5524
|
process.exit(1);
|
|
5388
5525
|
}
|
|
5389
5526
|
const connections = data;
|
|
5390
5527
|
const connected = connections.filter((c) => c.status === "connected");
|
|
5391
5528
|
if (connected.length === 0) {
|
|
5392
|
-
|
|
5393
|
-
|
|
5529
|
+
out.fail("No connected WhatsApp numbers found");
|
|
5530
|
+
out.info("Connect a phone number in the dashboard first");
|
|
5394
5531
|
process.exit(1);
|
|
5395
5532
|
}
|
|
5396
5533
|
if (connected.length === 1) {
|
|
5397
5534
|
const c = connected[0];
|
|
5398
5535
|
const label = c.label || (c.phoneNumber ? `+${c.phoneNumber}` : c._id);
|
|
5399
|
-
|
|
5536
|
+
out.succeed(`Using connection: ${label}`);
|
|
5537
|
+
return c._id;
|
|
5538
|
+
}
|
|
5539
|
+
if (!isInteractive()) {
|
|
5540
|
+
const c = connected[0];
|
|
5541
|
+
const label = c.label || (c.phoneNumber ? `+${c.phoneNumber}` : c._id);
|
|
5542
|
+
out.succeed(`Auto-selected connection: ${label}`);
|
|
5400
5543
|
return c._id;
|
|
5401
5544
|
}
|
|
5402
|
-
|
|
5545
|
+
out.succeed(`Found ${connected.length} connections`);
|
|
5403
5546
|
console.log();
|
|
5404
5547
|
for (let i = 0;i < connected.length; i++) {
|
|
5405
5548
|
const c = connected[i];
|
|
@@ -5429,16 +5572,17 @@ templatesCommand.command("list").description("List all message templates").optio
|
|
|
5429
5572
|
await ensureAuth2();
|
|
5430
5573
|
const env = opts.env;
|
|
5431
5574
|
const connectionId = await resolveConnectionId(env, opts.connection);
|
|
5432
|
-
const
|
|
5575
|
+
const out = createOutput();
|
|
5576
|
+
out.start("Fetching templates");
|
|
5433
5577
|
const { data, error } = await listTemplates(connectionId, env);
|
|
5434
5578
|
if (error) {
|
|
5435
|
-
|
|
5436
|
-
|
|
5579
|
+
out.fail("Failed to fetch templates");
|
|
5580
|
+
out.error(error);
|
|
5437
5581
|
process.exit(1);
|
|
5438
5582
|
}
|
|
5439
5583
|
const result = data;
|
|
5440
5584
|
const templates = result?.data ?? [];
|
|
5441
|
-
|
|
5585
|
+
out.succeed(`Found ${templates.length} templates`);
|
|
5442
5586
|
if (opts.json) {
|
|
5443
5587
|
console.log(JSON.stringify(templates, null, 2));
|
|
5444
5588
|
return;
|
|
@@ -5491,15 +5635,16 @@ templatesCommand.command("create <name>").description("Create a new message temp
|
|
|
5491
5635
|
console.log(chalk16.red("Components must be a JSON array"));
|
|
5492
5636
|
process.exit(1);
|
|
5493
5637
|
}
|
|
5494
|
-
const
|
|
5638
|
+
const out = createOutput();
|
|
5639
|
+
out.start(`Creating template "${name}"`);
|
|
5495
5640
|
const { data, error } = await createTemplate(connectionId, env, name, opts.language, opts.category.toUpperCase(), components, opts.allowCategoryChange);
|
|
5496
5641
|
if (error) {
|
|
5497
|
-
|
|
5498
|
-
|
|
5642
|
+
out.fail("Failed to create template");
|
|
5643
|
+
out.error(error);
|
|
5499
5644
|
process.exit(1);
|
|
5500
5645
|
}
|
|
5501
5646
|
const result = data;
|
|
5502
|
-
|
|
5647
|
+
out.succeed(`Template "${name}" created`);
|
|
5503
5648
|
if (opts.json) {
|
|
5504
5649
|
console.log(JSON.stringify(result, null, 2));
|
|
5505
5650
|
} else {
|
|
@@ -5524,34 +5669,36 @@ templatesCommand.command("delete <name>").description("Delete a message template
|
|
|
5524
5669
|
return;
|
|
5525
5670
|
}
|
|
5526
5671
|
}
|
|
5527
|
-
const
|
|
5672
|
+
const out = createOutput();
|
|
5673
|
+
out.start(`Deleting template "${name}"`);
|
|
5528
5674
|
const { error } = await deleteTemplate(connectionId, env, name);
|
|
5529
5675
|
if (error) {
|
|
5530
|
-
|
|
5531
|
-
|
|
5676
|
+
out.fail("Failed to delete template");
|
|
5677
|
+
out.error(error);
|
|
5532
5678
|
process.exit(1);
|
|
5533
5679
|
}
|
|
5534
|
-
|
|
5680
|
+
out.succeed(`Template "${name}" deleted`);
|
|
5535
5681
|
console.log();
|
|
5536
5682
|
});
|
|
5537
5683
|
templatesCommand.command("status <name>").description("Check template approval status").option("--env <environment>", "Environment (development|production)", "development").option("--connection <id>", "WhatsApp connection ID").option("--json", "Output raw JSON").action(async (name, opts) => {
|
|
5538
5684
|
await ensureAuth2();
|
|
5539
5685
|
const env = opts.env;
|
|
5540
5686
|
const connectionId = await resolveConnectionId(env, opts.connection);
|
|
5541
|
-
const
|
|
5687
|
+
const out = createOutput();
|
|
5688
|
+
out.start(`Checking status for "${name}"`);
|
|
5542
5689
|
const { data, error } = await getTemplateStatus(connectionId, env, name);
|
|
5543
5690
|
if (error) {
|
|
5544
|
-
|
|
5545
|
-
|
|
5691
|
+
out.fail("Failed to fetch template status");
|
|
5692
|
+
out.error(error);
|
|
5546
5693
|
process.exit(1);
|
|
5547
5694
|
}
|
|
5548
5695
|
const result = data;
|
|
5549
5696
|
const templates = result?.data ?? [];
|
|
5550
5697
|
if (templates.length === 0) {
|
|
5551
|
-
|
|
5698
|
+
out.fail(`Template "${name}" not found`);
|
|
5552
5699
|
process.exit(1);
|
|
5553
5700
|
}
|
|
5554
|
-
|
|
5701
|
+
out.succeed(`Template "${name}" found`);
|
|
5555
5702
|
if (opts.json) {
|
|
5556
5703
|
console.log(JSON.stringify(templates, null, 2));
|
|
5557
5704
|
return;
|
|
@@ -5573,7 +5720,7 @@ templatesCommand.command("status <name>").description("Check template approval s
|
|
|
5573
5720
|
// package.json
|
|
5574
5721
|
var package_default = {
|
|
5575
5722
|
name: "struere",
|
|
5576
|
-
version: "0.9.
|
|
5723
|
+
version: "0.9.3",
|
|
5577
5724
|
description: "Build, test, and deploy AI agents",
|
|
5578
5725
|
keywords: [
|
|
5579
5726
|
"ai",
|
|
@@ -38,7 +38,6 @@ export interface SyncPayload {
|
|
|
38
38
|
description: string;
|
|
39
39
|
parameters: unknown;
|
|
40
40
|
handlerCode?: string;
|
|
41
|
-
isBuiltin: boolean;
|
|
42
41
|
}>;
|
|
43
42
|
}>;
|
|
44
43
|
entityTypes: Array<{
|
|
@@ -220,7 +219,6 @@ export interface PullStateAgent {
|
|
|
220
219
|
description: string;
|
|
221
220
|
parameters: unknown;
|
|
222
221
|
handlerCode?: string;
|
|
223
|
-
isBuiltin: boolean;
|
|
224
222
|
}>;
|
|
225
223
|
}
|
|
226
224
|
export interface PullStateEntityType {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convex.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/convex.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,aAAa,EAAE,OAAO,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,aAAa,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoB9G;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwDjG;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,YAAY,EAAE,MAAM,CAAA;QACpB,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAA;YAChB,IAAI,EAAE,MAAM,CAAA;YACZ,WAAW,CAAC,EAAE,MAAM,CAAA;YACpB,SAAS,CAAC,EAAE,MAAM,CAAA;SACnB,CAAA;QACD,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,MAAM,CAAA;YACZ,WAAW,EAAE,MAAM,CAAA;YACnB,UAAU,EAAE,OAAO,CAAA;YACnB,WAAW,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"convex.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/convex.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,13 @@ export interface SyncPayload {
|
|
|
5
5
|
slug: string;
|
|
6
6
|
version: string;
|
|
7
7
|
description?: string;
|
|
8
|
+
firstMessageSuggestions?: string[];
|
|
9
|
+
threadContextParams?: Array<{
|
|
10
|
+
name: string;
|
|
11
|
+
type: 'string' | 'number' | 'boolean';
|
|
12
|
+
required?: boolean;
|
|
13
|
+
description?: string;
|
|
14
|
+
}>;
|
|
8
15
|
systemPrompt: string;
|
|
9
16
|
model: {
|
|
10
17
|
provider: string;
|
|
@@ -17,7 +24,6 @@ export interface SyncPayload {
|
|
|
17
24
|
description: string;
|
|
18
25
|
parameters: unknown;
|
|
19
26
|
handlerCode?: string;
|
|
20
|
-
isBuiltin: boolean;
|
|
21
27
|
}>;
|
|
22
28
|
}>;
|
|
23
29
|
entityTypes: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractor.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"extractor.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/plugin.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,qBAAqB,88JA6HjC,CAAA;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAkB5C;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/plugin.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,qBAAqB,88JA6HjC,CAAA;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAkB5C;AAsKD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAc1D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/whatsapp.ts"],"names":[],"mappings":"AAIA,KAAK,WAAW,GAAG,aAAa,GAAG,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/whatsapp.ts"],"names":[],"mappings":"AAIA,KAAK,WAAW,GAAG,aAAa,GAAG,YAAY,CAAA;AA+G/C,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,WAAW;WAnGyB,OAAO;YAAU,MAAM;GA0G7G;AAED,wBAAsB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW;WA5Ga,OAAO;YAAU,MAAM;GAoH7G;AAED,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC1C,mBAAmB,CAAC,EAAE,OAAO;WA7HwD,OAAO;YAAU,MAAM;GAkJ7G;AAED,wBAAsB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;WApJF,OAAO;YAAU,MAAM;GA6J7G;AAED,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM;WA/JL,OAAO;YAAU,MAAM;GAwK7G"}
|
package/dist/types.d.ts
CHANGED
|
@@ -189,6 +189,12 @@ export interface StruereProject {
|
|
|
189
189
|
name: string;
|
|
190
190
|
};
|
|
191
191
|
}
|
|
192
|
+
export interface ThreadContextParam {
|
|
193
|
+
name: string;
|
|
194
|
+
type: 'string' | 'number' | 'boolean';
|
|
195
|
+
required?: boolean;
|
|
196
|
+
description?: string;
|
|
197
|
+
}
|
|
192
198
|
export interface AgentConfig {
|
|
193
199
|
name: string;
|
|
194
200
|
slug: string;
|
|
@@ -197,6 +203,8 @@ export interface AgentConfig {
|
|
|
197
203
|
systemPrompt: string | (() => string | Promise<string>);
|
|
198
204
|
model?: ModelConfig;
|
|
199
205
|
tools?: string[];
|
|
206
|
+
firstMessageSuggestions?: string[];
|
|
207
|
+
threadContextParams?: ThreadContextParam[];
|
|
200
208
|
}
|
|
201
209
|
export interface TriggerAction {
|
|
202
210
|
tool: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|