@salesforce/plugin-agent 1.24.14-demo.9 → 1.24.14-nga.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.
- package/README.md +17 -16
- package/lib/commands/agent/generate/authoring-bundle.js +1 -1
- package/lib/commands/agent/generate/authoring-bundle.js.map +1 -1
- package/lib/commands/agent/preview.d.ts +4 -10
- package/lib/commands/agent/preview.js +104 -44
- package/lib/commands/agent/preview.js.map +1 -1
- package/lib/commands/agent/publish/authoring-bundle.js +13 -3
- package/lib/commands/agent/publish/authoring-bundle.js.map +1 -1
- package/lib/commands/agent/validate/authoring-bundle.js +16 -12
- package/lib/commands/agent/validate/authoring-bundle.js.map +1 -1
- package/lib/common.d.ts +8 -0
- package/lib/common.js +39 -0
- package/lib/common.js.map +1 -0
- package/lib/components/agent-preview-react.d.ts +3 -2
- package/lib/components/agent-preview-react.js +36 -13
- package/lib/components/agent-preview-react.js.map +1 -1
- package/messages/agent.preview.md +5 -1
- package/oclif.manifest.json +90 -84
- package/package.json +7 -5
package/README.md
CHANGED
|
@@ -112,7 +112,7 @@ EXAMPLES
|
|
|
112
112
|
$ sf agent activate --api-name Resort_Manager --target-org my-org
|
|
113
113
|
```
|
|
114
114
|
|
|
115
|
-
_See code: [src/commands/agent/activate.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
115
|
+
_See code: [src/commands/agent/activate.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/activate.ts)_
|
|
116
116
|
|
|
117
117
|
## `sf agent create`
|
|
118
118
|
|
|
@@ -174,7 +174,7 @@ EXAMPLES
|
|
|
174
174
|
$ sf agent create --name "Resort Manager" --spec specs/resortManagerAgent.yaml --preview
|
|
175
175
|
```
|
|
176
176
|
|
|
177
|
-
_See code: [src/commands/agent/create.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
177
|
+
_See code: [src/commands/agent/create.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/create.ts)_
|
|
178
178
|
|
|
179
179
|
## `sf agent deactivate`
|
|
180
180
|
|
|
@@ -214,7 +214,7 @@ EXAMPLES
|
|
|
214
214
|
$ sf agent deactivate --api-name Resort_Manager --target-org my-org
|
|
215
215
|
```
|
|
216
216
|
|
|
217
|
-
_See code: [src/commands/agent/deactivate.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
217
|
+
_See code: [src/commands/agent/deactivate.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/deactivate.ts)_
|
|
218
218
|
|
|
219
219
|
## `sf agent generate agent-spec`
|
|
220
220
|
|
|
@@ -319,7 +319,7 @@ EXAMPLES
|
|
|
319
319
|
$ sf agent generate agent-spec --tone formal --agent-user resortmanager@myorg.com
|
|
320
320
|
```
|
|
321
321
|
|
|
322
|
-
_See code: [src/commands/agent/generate/agent-spec.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
322
|
+
_See code: [src/commands/agent/generate/agent-spec.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/generate/agent-spec.ts)_
|
|
323
323
|
|
|
324
324
|
## `sf agent generate authoring-bundle`
|
|
325
325
|
|
|
@@ -367,7 +367,7 @@ EXAMPLES
|
|
|
367
367
|
other-package-dir/main/default/aiAuthoringBundles
|
|
368
368
|
```
|
|
369
369
|
|
|
370
|
-
_See code: [src/commands/agent/generate/authoring-bundle.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
370
|
+
_See code: [src/commands/agent/generate/authoring-bundle.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/generate/authoring-bundle.ts)_
|
|
371
371
|
|
|
372
372
|
## `sf agent generate template`
|
|
373
373
|
|
|
@@ -415,7 +415,7 @@ EXAMPLES
|
|
|
415
415
|
force-app/main/default/bots/My_Awesome_Agent/My_Awesome_Agent.bot-meta.xml --agent-version 1
|
|
416
416
|
```
|
|
417
417
|
|
|
418
|
-
_See code: [src/commands/agent/generate/template.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
418
|
+
_See code: [src/commands/agent/generate/template.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/generate/template.ts)_
|
|
419
419
|
|
|
420
420
|
## `sf agent generate test-spec`
|
|
421
421
|
|
|
@@ -476,7 +476,7 @@ EXAMPLES
|
|
|
476
476
|
force-app//main/default/aiEvaluationDefinitions/Resort_Manager_Tests.aiEvaluationDefinition-meta.xml
|
|
477
477
|
```
|
|
478
478
|
|
|
479
|
-
_See code: [src/commands/agent/generate/test-spec.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
479
|
+
_See code: [src/commands/agent/generate/test-spec.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/generate/test-spec.ts)_
|
|
480
480
|
|
|
481
481
|
## `sf agent preview`
|
|
482
482
|
|
|
@@ -485,7 +485,7 @@ Interact with an active agent to preview how the agent responds to your statemen
|
|
|
485
485
|
```
|
|
486
486
|
USAGE
|
|
487
487
|
$ sf agent preview [--flags-dir <value>] [--api-version <value>] (-c <value> -o <value>) [-n <value>]
|
|
488
|
-
[--authoring-bundle <value>] [-d <value>] [-x]
|
|
488
|
+
[--authoring-bundle <value>] [-d <value>] [-x] [--use-live-actions]
|
|
489
489
|
|
|
490
490
|
FLAGS
|
|
491
491
|
-c, --client-app=<value> Name of the linked client app to use for the agent connection.
|
|
@@ -497,6 +497,7 @@ FLAGS
|
|
|
497
497
|
--api-version=<value> Override the api version used for api requests made by this command
|
|
498
498
|
--authoring-bundle=<value> Preview a next-gen agent by specifying the API name of the authoring bundle metadata
|
|
499
499
|
component that implements it.
|
|
500
|
+
--use-live-actions Use real actions in the org; if not specified, preview uses AI to mock actions.
|
|
500
501
|
|
|
501
502
|
GLOBAL FLAGS
|
|
502
503
|
--flags-dir=<value> Import flag values from a directory.
|
|
@@ -541,7 +542,7 @@ EXAMPLES
|
|
|
541
542
|
transcripts/my-preview
|
|
542
543
|
```
|
|
543
544
|
|
|
544
|
-
_See code: [src/commands/agent/preview.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
545
|
+
_See code: [src/commands/agent/preview.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/preview.ts)_
|
|
545
546
|
|
|
546
547
|
## `sf agent publish authoring-bundle`
|
|
547
548
|
|
|
@@ -584,7 +585,7 @@ EXAMPLES
|
|
|
584
585
|
$ sf agent publish authoring-bundle --api-name MyAuthoringbundle --agent-name "My Fab Agent" --target-org my-org
|
|
585
586
|
```
|
|
586
587
|
|
|
587
|
-
_See code: [src/commands/agent/publish/authoring-bundle.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
588
|
+
_See code: [src/commands/agent/publish/authoring-bundle.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/publish/authoring-bundle.ts)_
|
|
588
589
|
|
|
589
590
|
## `sf agent test create`
|
|
590
591
|
|
|
@@ -639,7 +640,7 @@ EXAMPLES
|
|
|
639
640
|
$ sf agent test create --spec specs/Resort_Manager-testSpec.yaml --api-name Resort_Manager_Test --preview
|
|
640
641
|
```
|
|
641
642
|
|
|
642
|
-
_See code: [src/commands/agent/test/create.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
643
|
+
_See code: [src/commands/agent/test/create.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/test/create.ts)_
|
|
643
644
|
|
|
644
645
|
## `sf agent test list`
|
|
645
646
|
|
|
@@ -674,7 +675,7 @@ EXAMPLES
|
|
|
674
675
|
$ sf agent test list --target-org my-org
|
|
675
676
|
```
|
|
676
677
|
|
|
677
|
-
_See code: [src/commands/agent/test/list.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
678
|
+
_See code: [src/commands/agent/test/list.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/test/list.ts)_
|
|
678
679
|
|
|
679
680
|
## `sf agent test results`
|
|
680
681
|
|
|
@@ -740,7 +741,7 @@ FLAG DESCRIPTIONS
|
|
|
740
741
|
expression when using custom evaluations.
|
|
741
742
|
```
|
|
742
743
|
|
|
743
|
-
_See code: [src/commands/agent/test/results.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
744
|
+
_See code: [src/commands/agent/test/results.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/test/results.ts)_
|
|
744
745
|
|
|
745
746
|
## `sf agent test resume`
|
|
746
747
|
|
|
@@ -813,7 +814,7 @@ FLAG DESCRIPTIONS
|
|
|
813
814
|
expression when using custom evaluations.
|
|
814
815
|
```
|
|
815
816
|
|
|
816
|
-
_See code: [src/commands/agent/test/resume.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
817
|
+
_See code: [src/commands/agent/test/resume.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/test/resume.ts)_
|
|
817
818
|
|
|
818
819
|
## `sf agent test run`
|
|
819
820
|
|
|
@@ -887,7 +888,7 @@ FLAG DESCRIPTIONS
|
|
|
887
888
|
expression when using custom evaluations.
|
|
888
889
|
```
|
|
889
890
|
|
|
890
|
-
_See code: [src/commands/agent/test/run.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
891
|
+
_See code: [src/commands/agent/test/run.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/test/run.ts)_
|
|
891
892
|
|
|
892
893
|
## `sf agent validate authoring-bundle`
|
|
893
894
|
|
|
@@ -927,6 +928,6 @@ EXAMPLES
|
|
|
927
928
|
$ sf agent validate authoring-bundle --api-name MyAuthoringBundle
|
|
928
929
|
```
|
|
929
930
|
|
|
930
|
-
_See code: [src/commands/agent/validate/authoring-bundle.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-
|
|
931
|
+
_See code: [src/commands/agent/validate/authoring-bundle.ts](https://github.com/salesforcecli/plugin-agent/blob/1.24.14-nga.1/src/commands/agent/validate/authoring-bundle.ts)_
|
|
931
932
|
|
|
932
933
|
<!-- commandsstop -->
|
|
@@ -115,7 +115,7 @@ export default class AgentGenerateAuthoringBundle extends SfCommand {
|
|
|
115
115
|
// Write Agent file
|
|
116
116
|
const conn = targetOrg.getConnection(flags['api-version']);
|
|
117
117
|
const specContents = YAML.parse(readFileSync(spec, 'utf8'));
|
|
118
|
-
const agent = await Agent.
|
|
118
|
+
const agent = await Agent.createAgentScript(conn, { ...specContents, ...{ name, developerName: bundleApiName } });
|
|
119
119
|
// Create output directory if it doesn't exist
|
|
120
120
|
mkdirSync(targetOutputDir, { recursive: true });
|
|
121
121
|
writeFileSync(agentPath, agent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authoring-bundle.js","sourceRoot":"","sources":["../../../../src/commands/agent/generate/authoring-bundle.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"authoring-bundle.js","sourceRoot":"","sources":["../../../../src/commands/agent/generate/authoring-bundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
+
import { AuthInfo } from '@salesforce/core';
|
|
2
3
|
type BotVersionStatus = {
|
|
3
4
|
Status: 'Active' | 'Inactive';
|
|
4
5
|
};
|
|
@@ -9,15 +10,6 @@ export type AgentData = {
|
|
|
9
10
|
records: BotVersionStatus[];
|
|
10
11
|
};
|
|
11
12
|
};
|
|
12
|
-
type Choice<Value> = {
|
|
13
|
-
value: Value;
|
|
14
|
-
name?: string;
|
|
15
|
-
disabled?: boolean | string;
|
|
16
|
-
};
|
|
17
|
-
type AgentValue = {
|
|
18
|
-
Id: string;
|
|
19
|
-
DeveloperName: string;
|
|
20
|
-
};
|
|
21
13
|
export declare const UNSUPPORTED_AGENTS: string[];
|
|
22
14
|
export type AgentPreviewResult = void;
|
|
23
15
|
export default class AgentPreview extends SfCommand<AgentPreviewResult> {
|
|
@@ -34,12 +26,14 @@ export default class AgentPreview extends SfCommand<AgentPreviewResult> {
|
|
|
34
26
|
'authoring-bundle': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
27
|
'output-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
28
|
'apex-debug': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
29
|
+
'use-live-actions': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
37
30
|
};
|
|
38
31
|
run(): Promise<AgentPreviewResult>;
|
|
32
|
+
private getAgentChoices;
|
|
39
33
|
}
|
|
40
34
|
export declare const agentIsUnsupported: (devName: string) => boolean;
|
|
41
35
|
export declare const agentIsInactive: (agent: AgentData) => boolean;
|
|
42
36
|
export declare const validateAgent: (agent: AgentData) => boolean;
|
|
43
|
-
export declare const
|
|
37
|
+
export declare const getClientAppsFromAuth: (authInfo: AuthInfo) => string[];
|
|
44
38
|
export declare const resolveOutputDir: (outputDir: string | undefined, apexDebug: boolean | undefined) => Promise<string | undefined>;
|
|
45
39
|
export {};
|
|
@@ -13,14 +13,16 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
16
|
+
import * as path from 'node:path';
|
|
17
|
+
import { join, resolve } from 'node:path';
|
|
18
|
+
import { globSync } from 'glob';
|
|
19
|
+
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
20
|
+
import { AuthInfo, Connection, Lifecycle, Messages, SfError } from '@salesforce/core';
|
|
19
21
|
import React from 'react';
|
|
20
22
|
import { render } from 'ink';
|
|
21
23
|
import { env } from '@salesforce/kit';
|
|
22
|
-
import { AgentPreview as Preview } from '@salesforce/agents';
|
|
23
|
-
import {
|
|
24
|
+
import { AgentPreview as Preview, AgentSimulate, AgentSource, findAuthoringBundle, } from '@salesforce/agents';
|
|
25
|
+
import { confirm, input, select } from '@inquirer/prompts';
|
|
24
26
|
import { AgentPreviewReact } from '../../components/agent-preview-react.js';
|
|
25
27
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
26
28
|
const messages = Messages.loadMessages('@salesforce/plugin-agent', 'agent.preview');
|
|
@@ -55,58 +57,130 @@ export default class AgentPreview extends SfCommand {
|
|
|
55
57
|
summary: messages.getMessage('flags.apex-debug.summary'),
|
|
56
58
|
char: 'x',
|
|
57
59
|
}),
|
|
60
|
+
'use-live-actions': Flags.boolean({
|
|
61
|
+
summary: messages.getMessage('flags.use-live-actions.summary'),
|
|
62
|
+
default: false,
|
|
63
|
+
}),
|
|
58
64
|
};
|
|
59
65
|
async run() {
|
|
66
|
+
// STAGES OF PREVIEW
|
|
67
|
+
// get user's agent selection either from flags, or interaction
|
|
68
|
+
// if .agent selected, use the AgentSimulate class to preview
|
|
69
|
+
// if published agent, use AgentPreview for preview
|
|
70
|
+
// based on agent, differing auth mechanisms required
|
|
60
71
|
const { flags } = await this.parse(AgentPreview);
|
|
61
|
-
const { 'api-name': apiNameFlag } = flags;
|
|
72
|
+
const { 'api-name': apiNameFlag, 'use-live-actions': useLiveActions } = flags;
|
|
62
73
|
const conn = flags['target-org'].getConnection(flags['api-version']);
|
|
63
|
-
const
|
|
64
|
-
username: flags['target-org'].getUsername(),
|
|
65
|
-
});
|
|
66
|
-
if (!(flags['client-app'] ?? env.getString('SF_DEMO_AGENT_CLIENT_APP'))) {
|
|
67
|
-
throw new SfError('SF_DEMO_AGENT_CLIENT_APP is unset!');
|
|
68
|
-
}
|
|
69
|
-
const jwtConn = await Connection.create({
|
|
70
|
-
authInfo,
|
|
71
|
-
clientApp: env.getString('SF_DEMO_AGENT_CLIENT_APP') ?? flags['client-app'],
|
|
72
|
-
});
|
|
73
|
-
const agentsQuery = await conn.query('SELECT Id, DeveloperName, (SELECT Status FROM BotVersions) FROM BotDefinition WHERE IsDeleted = false');
|
|
74
|
-
if (agentsQuery.totalSize === 0)
|
|
75
|
-
throw new SfError('No Agents found in the org');
|
|
76
|
-
const agentsInOrg = agentsQuery.records;
|
|
74
|
+
const agentsInOrg = (await conn.query('SELECT Id, DeveloperName, (SELECT Status FROM BotVersions) FROM BotDefinition WHERE IsDeleted = false')).records;
|
|
77
75
|
let selectedAgent;
|
|
78
76
|
if (flags['authoring-bundle']) {
|
|
79
|
-
|
|
80
|
-
const
|
|
77
|
+
// user specified --authoring-bundle, we'll find the script and use it
|
|
78
|
+
const bundlePath = findAuthoringBundle(this.project.getPath(), flags['authoring-bundle']);
|
|
79
|
+
if (!bundlePath) {
|
|
80
|
+
throw new SfError(`Could not find authoring bundle for ${flags['authoring-bundle']}`);
|
|
81
|
+
}
|
|
81
82
|
selectedAgent = {
|
|
82
|
-
Id: agent?.Id ??
|
|
83
|
-
`Couldn't find an agent in ${agentsQuery.records.map((a) => a.DeveloperName).join(', ')} matching ${envAgentName ?? '!SF_DEMO_AGENT is unset!'}`,
|
|
84
83
|
DeveloperName: flags['authoring-bundle'],
|
|
84
|
+
source: AgentSource.SCRIPT,
|
|
85
|
+
path: join(bundlePath, `${flags['authoring-bundle']}.agent`),
|
|
85
86
|
};
|
|
86
87
|
}
|
|
87
88
|
else if (apiNameFlag) {
|
|
88
|
-
|
|
89
|
+
// user specified --api-name, it should be in the list of agents from the org
|
|
90
|
+
const agent = agentsInOrg.find((a) => a.DeveloperName === apiNameFlag);
|
|
91
|
+
if (!agent)
|
|
92
|
+
throw new Error(`No valid Agents were found with the Api Name ${apiNameFlag}.`);
|
|
93
|
+
validateAgent(agent);
|
|
94
|
+
selectedAgent = {
|
|
95
|
+
Id: agent.Id,
|
|
96
|
+
DeveloperName: agent.DeveloperName,
|
|
97
|
+
source: AgentSource.PUBLISHED,
|
|
98
|
+
};
|
|
89
99
|
if (!selectedAgent)
|
|
90
100
|
throw new Error(`No valid Agents were found with the Api Name ${apiNameFlag}.`);
|
|
91
|
-
validateAgent(selectedAgent);
|
|
92
101
|
}
|
|
93
102
|
else {
|
|
94
103
|
selectedAgent = await select({
|
|
95
104
|
message: 'Select an agent',
|
|
96
|
-
choices: getAgentChoices(agentsInOrg),
|
|
105
|
+
choices: this.getAgentChoices(agentsInOrg),
|
|
97
106
|
});
|
|
98
107
|
}
|
|
108
|
+
// we have the selected agent, create the appropriate connection
|
|
109
|
+
const authInfo = await AuthInfo.create({
|
|
110
|
+
username: flags['target-org'].getUsername(),
|
|
111
|
+
});
|
|
112
|
+
// Get client app - check flag first, then auth file, then env var
|
|
113
|
+
let clientApp = flags['client-app'];
|
|
114
|
+
if (!clientApp && selectedAgent?.source === AgentSource.PUBLISHED) {
|
|
115
|
+
const clientApps = getClientAppsFromAuth(authInfo);
|
|
116
|
+
if (clientApps.length === 1) {
|
|
117
|
+
clientApp = clientApps[0];
|
|
118
|
+
}
|
|
119
|
+
else if (clientApps.length > 1) {
|
|
120
|
+
clientApp = await select({
|
|
121
|
+
message: 'Select a client app',
|
|
122
|
+
choices: clientApps.map((app) => ({ value: app, name: app })),
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
throw new SfError('No client app found.');
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
if (useLiveActions && selectedAgent.source === AgentSource.PUBLISHED) {
|
|
130
|
+
void Lifecycle.getInstance().emitWarning('Published agents will always use real actions in your org, specifying --use-live-actions and selecting a published agent has no effect');
|
|
131
|
+
}
|
|
132
|
+
const jwtConn = selectedAgent?.source === AgentSource.PUBLISHED
|
|
133
|
+
? await Connection.create({
|
|
134
|
+
authInfo,
|
|
135
|
+
clientApp,
|
|
136
|
+
})
|
|
137
|
+
: await Connection.create({ authInfo });
|
|
99
138
|
const outputDir = await resolveOutputDir(flags['output-dir'], flags['apex-debug']);
|
|
100
|
-
|
|
101
|
-
agentPreview.
|
|
139
|
+
// Both classes share the same interface for the methods we need
|
|
140
|
+
const agentPreview = selectedAgent.source === AgentSource.PUBLISHED
|
|
141
|
+
? new Preview(jwtConn, selectedAgent.Id)
|
|
142
|
+
: new AgentSimulate(jwtConn, selectedAgent.path, useLiveActions);
|
|
143
|
+
agentPreview.setApexDebugMode(flags['apex-debug']);
|
|
102
144
|
const instance = render(React.createElement(AgentPreviewReact, {
|
|
103
145
|
connection: conn,
|
|
104
146
|
agent: agentPreview,
|
|
105
147
|
name: selectedAgent.DeveloperName,
|
|
106
148
|
outputDir,
|
|
149
|
+
isLocalAgent: selectedAgent.source === AgentSource.SCRIPT,
|
|
107
150
|
}), { exitOnCtrlC: false });
|
|
108
151
|
await instance.waitUntilExit();
|
|
109
152
|
}
|
|
153
|
+
getAgentChoices(agents) {
|
|
154
|
+
const choices = [];
|
|
155
|
+
// Add org agents
|
|
156
|
+
for (const agent of agents) {
|
|
157
|
+
if (agentIsInactive(agent) || agentIsUnsupported(agent.DeveloperName)) {
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
choices.push({
|
|
161
|
+
name: `${agent.DeveloperName} (Published)`,
|
|
162
|
+
value: {
|
|
163
|
+
Id: agent.Id,
|
|
164
|
+
DeveloperName: agent.DeveloperName,
|
|
165
|
+
source: AgentSource.PUBLISHED,
|
|
166
|
+
},
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
// Add local agents from .agent files
|
|
170
|
+
const localAgentPaths = globSync('**/*.agent', { cwd: this.project.getPath() });
|
|
171
|
+
for (const agentPath of localAgentPaths) {
|
|
172
|
+
const agentName = path.basename(agentPath, '.agent');
|
|
173
|
+
choices.push({
|
|
174
|
+
name: `${agentName} (Agent Script)`,
|
|
175
|
+
value: {
|
|
176
|
+
DeveloperName: agentName,
|
|
177
|
+
source: AgentSource.SCRIPT,
|
|
178
|
+
path: path.join(this.project.getPath(), agentPath),
|
|
179
|
+
},
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
return choices;
|
|
183
|
+
}
|
|
110
184
|
}
|
|
111
185
|
export const agentIsUnsupported = (devName) => UNSUPPORTED_AGENTS.includes(devName);
|
|
112
186
|
export const agentIsInactive = (agent) =>
|
|
@@ -125,21 +199,7 @@ export const validateAgent = (agent) => {
|
|
|
125
199
|
}
|
|
126
200
|
return true;
|
|
127
201
|
};
|
|
128
|
-
export const
|
|
129
|
-
let disabled = false;
|
|
130
|
-
if (agentIsInactive(agent))
|
|
131
|
-
disabled = '(Inactive)';
|
|
132
|
-
if (agentIsUnsupported(agent.DeveloperName))
|
|
133
|
-
disabled = '(Not Supported)';
|
|
134
|
-
return {
|
|
135
|
-
name: agent.DeveloperName,
|
|
136
|
-
value: {
|
|
137
|
-
Id: agent.Id,
|
|
138
|
-
DeveloperName: agent.DeveloperName,
|
|
139
|
-
},
|
|
140
|
-
disabled,
|
|
141
|
-
};
|
|
142
|
-
});
|
|
202
|
+
export const getClientAppsFromAuth = (authInfo) => Object.keys(authInfo.getFields().clientApps ?? {});
|
|
143
203
|
export const resolveOutputDir = async (outputDir, apexDebug) => {
|
|
144
204
|
if (!outputDir) {
|
|
145
205
|
const response = apexDebug
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/commands/agent/preview.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/commands/agent/preview.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ import { Agent, findAuthoringBundle } from '@salesforce/agents';
|
|
|
23
23
|
import { RequestStatus } from '@salesforce/source-deploy-retrieve';
|
|
24
24
|
import { ensureArray } from '@salesforce/kit';
|
|
25
25
|
import { promptForAgentFiles } from '../../../flags.js';
|
|
26
|
+
import { throwAgentCompilationError } from '../../../common.js';
|
|
26
27
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
27
28
|
const messages = Messages.loadMessages('@salesforce/plugin-agent', 'agent.publish.authoring-bundle');
|
|
28
29
|
export default class AgentPublishAuthoringBundle extends SfCommand {
|
|
@@ -85,9 +86,16 @@ export default class AgentPublishAuthoringBundle extends SfCommand {
|
|
|
85
86
|
mso.goto('Validate Bundle');
|
|
86
87
|
const targetOrg = flags['target-org'];
|
|
87
88
|
const conn = targetOrg.getConnection(flags['api-version']);
|
|
89
|
+
// Preserve the original accessToken by storing its value
|
|
90
|
+
const originalAccessToken = conn.accessToken;
|
|
88
91
|
// First compile the .agent file to get the Agent JSON
|
|
89
|
-
const
|
|
90
|
-
|
|
92
|
+
const compileResponse = await Agent.compileAgentScript(conn, readFileSync(join(authoringBundleDir, `${apiName}.agent`), 'utf8'));
|
|
93
|
+
if (compileResponse.status === 'success') {
|
|
94
|
+
mso.skipTo('Publish Agent');
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
throwAgentCompilationError(compileResponse.errors);
|
|
98
|
+
}
|
|
91
99
|
// Then publish the Agent JSON to create the agent
|
|
92
100
|
// Set up lifecycle listeners for retrieve events
|
|
93
101
|
Lifecycle.getInstance().on('scopedPreRetrieve', () => {
|
|
@@ -107,7 +115,9 @@ export default class AgentPublishAuthoringBundle extends SfCommand {
|
|
|
107
115
|
}
|
|
108
116
|
return Promise.resolve();
|
|
109
117
|
});
|
|
110
|
-
|
|
118
|
+
// Restore the original accessToken after compilation
|
|
119
|
+
conn.accessToken = originalAccessToken;
|
|
120
|
+
const result = await Agent.publishAgentJson(conn, this.project, compileResponse.compiledArtifact);
|
|
111
121
|
mso.stop();
|
|
112
122
|
return {
|
|
113
123
|
success: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authoring-bundle.js","sourceRoot":"","sources":["../../../../src/commands/agent/publish/authoring-bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,aAAa,EAA2B,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAmB,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"authoring-bundle.js","sourceRoot":"","sources":["../../../../src/commands/agent/publish/authoring-bundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,8 +19,8 @@ import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
|
19
19
|
import { Messages, SfError } from '@salesforce/core';
|
|
20
20
|
import { MultiStageOutput } from '@oclif/multi-stage-output';
|
|
21
21
|
import { Agent, findAuthoringBundle } from '@salesforce/agents';
|
|
22
|
-
import { Duration, sleep } from '@salesforce/kit';
|
|
23
22
|
import { colorize } from '@oclif/core/ux';
|
|
23
|
+
import { throwAgentCompilationError } from '../../../common.js';
|
|
24
24
|
import { promptForAgentFiles } from '../../../flags.js';
|
|
25
25
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
26
26
|
const messages = Messages.loadMessages('@salesforce/plugin-agent', 'agent.validate.authoring-bundle');
|
|
@@ -88,26 +88,30 @@ export default class AgentValidateAuthoringBundle extends SfCommand {
|
|
|
88
88
|
mso.skipTo('Validating Authoring Bundle');
|
|
89
89
|
const targetOrg = flags['target-org'];
|
|
90
90
|
const conn = targetOrg.getConnection(flags['api-version']);
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}
|
|
91
|
+
const result = await Agent.compileAgentScript(conn, readFileSync(join(authoringBundleDir, `${apiName}.agent`), 'utf8'));
|
|
92
|
+
if (result.status === 'success') {
|
|
93
|
+
mso.updateData({ status: 'COMPLETED' });
|
|
94
|
+
mso.stop('completed');
|
|
95
|
+
return {
|
|
96
|
+
success: true,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
throwAgentCompilationError(result.errors);
|
|
101
|
+
}
|
|
99
102
|
}
|
|
100
103
|
catch (error) {
|
|
101
104
|
// Handle validation errors
|
|
102
105
|
const err = SfError.wrap(error);
|
|
103
106
|
let count = 0;
|
|
104
|
-
const
|
|
107
|
+
const rawError = err.message ? err.message : err.name;
|
|
108
|
+
const formattedError = rawError
|
|
105
109
|
.split('\n')
|
|
106
110
|
.map((line) => {
|
|
107
111
|
count += 1;
|
|
108
112
|
const type = line.split(':')[0];
|
|
109
|
-
const rest = line.substring(line.indexOf(':')).trim();
|
|
110
|
-
return `- ${colorize('red', type)}
|
|
113
|
+
const rest = line.includes(':') ? line.substring(line.indexOf(':')).trim() : '';
|
|
114
|
+
return `- ${colorize('red', type)}${rest}`;
|
|
111
115
|
})
|
|
112
116
|
.join('\n');
|
|
113
117
|
mso.updateData({ errors: count.toString(), status: 'ERROR' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authoring-bundle.js","sourceRoot":"","sources":["../../../../src/commands/agent/validate/authoring-bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"authoring-bundle.js","sourceRoot":"","sources":["../../../../src/commands/agent/validate/authoring-bundle.ts"],"names":[],"mappings":"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"}
|
package/lib/common.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CompilationError } from '@salesforce/agents';
|
|
2
|
+
/**
|
|
3
|
+
* Utility function to generate SfError when there are agent compilation errors.
|
|
4
|
+
*
|
|
5
|
+
* @param compilationErrors - The compilation errors as strings, CompilationError objects, or array of either
|
|
6
|
+
* @throws SfError - Always throws a Salesforce CLI error
|
|
7
|
+
*/
|
|
8
|
+
export declare function throwAgentCompilationError(compilationErrors: CompilationError[]): never;
|
package/lib/common.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025, Salesforce, Inc.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { EOL } from 'node:os';
|
|
17
|
+
import { SfError } from '@salesforce/core';
|
|
18
|
+
/**
|
|
19
|
+
* Utility function to generate SfError when there are agent compilation errors.
|
|
20
|
+
*
|
|
21
|
+
* @param compilationErrors - The compilation errors as strings, CompilationError objects, or array of either
|
|
22
|
+
* @throws SfError - Always throws a Salesforce CLI error
|
|
23
|
+
*/
|
|
24
|
+
export function throwAgentCompilationError(compilationErrors) {
|
|
25
|
+
if (compilationErrors.length === 0) {
|
|
26
|
+
throw SfError.create({
|
|
27
|
+
name: 'CompileAgentScriptError',
|
|
28
|
+
message: 'Unknown compilation error occurred',
|
|
29
|
+
data: compilationErrors,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
const errors = compilationErrors;
|
|
33
|
+
throw SfError.create({
|
|
34
|
+
name: 'CompileAgentScriptError',
|
|
35
|
+
message: errors.map((e) => `${e.errorType}: ${e.description} [Ln ${e.lineStart}, Col ${e.colStart}]`).join(EOL),
|
|
36
|
+
data: errors,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,iBAAqC;IAC9E,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,yBAAyB;YAC/B,OAAO,EAAE,oCAAoC;YAC7C,IAAI,EAAE,iBAAiB;SACxB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,iBAAiB,CAAC;IAEjC,MAAM,OAAO,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,WAAW,QAAQ,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/G,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Connection } from '@salesforce/core';
|
|
3
|
-
import {
|
|
3
|
+
import { AgentPreviewBase } from '@salesforce/agents';
|
|
4
4
|
/**
|
|
5
5
|
* Ideas:
|
|
6
6
|
* - Limit height based on terminal height
|
|
@@ -10,7 +10,8 @@ import { AgentPreview } from '@salesforce/agents';
|
|
|
10
10
|
*/
|
|
11
11
|
export declare function AgentPreviewReact(props: {
|
|
12
12
|
readonly connection: Connection;
|
|
13
|
-
readonly agent:
|
|
13
|
+
readonly agent: AgentPreviewBase;
|
|
14
14
|
readonly name: string;
|
|
15
15
|
readonly outputDir: string | undefined;
|
|
16
|
+
readonly isLocalAgent: boolean;
|
|
16
17
|
}): React.ReactNode;
|
|
@@ -19,7 +19,7 @@ import * as process from 'node:process';
|
|
|
19
19
|
import React from 'react';
|
|
20
20
|
import { Box, Text, useInput } from 'ink';
|
|
21
21
|
import TextInput from 'ink-text-input';
|
|
22
|
-
import { SfError } from '@salesforce/core';
|
|
22
|
+
import { SfError, Lifecycle } from '@salesforce/core';
|
|
23
23
|
import { writeDebugLog } from '@salesforce/agents';
|
|
24
24
|
import { sleep } from '@salesforce/kit';
|
|
25
25
|
// Component to show a simple typing animation
|
|
@@ -38,8 +38,6 @@ function Typing() {
|
|
|
38
38
|
React.createElement(Text, { color: colors[1] }, "."),
|
|
39
39
|
React.createElement(Text, { color: colors[2] }, ".")));
|
|
40
40
|
}
|
|
41
|
-
// Split the content on newlines, then find the longest array element
|
|
42
|
-
const calculateWidth = (content) => content.split('\n').reduce((acc, line) => Math.max(acc, line.length), 0) + 4;
|
|
43
41
|
const saveTranscriptsToFile = (outputDir, messages, responses) => {
|
|
44
42
|
if (!outputDir)
|
|
45
43
|
return;
|
|
@@ -69,7 +67,7 @@ export function AgentPreviewReact(props) {
|
|
|
69
67
|
const [tempDir, setTempDir] = React.useState('');
|
|
70
68
|
const [responses, setResponses] = React.useState([]);
|
|
71
69
|
const [apexDebugLogs, setApexDebugLogs] = React.useState([]);
|
|
72
|
-
const { connection, agent, name, outputDir } = props;
|
|
70
|
+
const { connection, agent, name, outputDir, isLocalAgent } = props;
|
|
73
71
|
useInput((input, key) => {
|
|
74
72
|
if (key.escape) {
|
|
75
73
|
setSessionEnded(true);
|
|
@@ -95,6 +93,24 @@ export function AgentPreviewReact(props) {
|
|
|
95
93
|
void endSession();
|
|
96
94
|
}, [sessionEnded]);
|
|
97
95
|
React.useEffect(() => {
|
|
96
|
+
// Set up event listeners for agent compilation and simulation events
|
|
97
|
+
const lifecycle = Lifecycle.getInstance();
|
|
98
|
+
const handleCompilingEvent = () => {
|
|
99
|
+
setHeader('Compiling agent...');
|
|
100
|
+
return Promise.resolve();
|
|
101
|
+
};
|
|
102
|
+
const handleSimulationStartingEvent = () => {
|
|
103
|
+
setHeader('Starting session...');
|
|
104
|
+
return Promise.resolve();
|
|
105
|
+
};
|
|
106
|
+
const handleSessionStartedEvent = () => {
|
|
107
|
+
setHeader(`New session started with "${props.name}"`);
|
|
108
|
+
return Promise.resolve();
|
|
109
|
+
};
|
|
110
|
+
// Listen for the events
|
|
111
|
+
lifecycle.on('agents:compiling', handleCompilingEvent);
|
|
112
|
+
lifecycle.on('agents:simulation-starting', handleSimulationStartingEvent);
|
|
113
|
+
lifecycle.on('agents:session-started', handleSessionStartedEvent);
|
|
98
114
|
const startSession = async () => {
|
|
99
115
|
try {
|
|
100
116
|
const session = await agent.start();
|
|
@@ -106,7 +122,17 @@ export function AgentPreviewReact(props) {
|
|
|
106
122
|
const dateForDir = new Date().toISOString().replace(/:/g, '-').split('.')[0];
|
|
107
123
|
setTempDir(path.join(outputDir, `${dateForDir}--${session.sessionId}`));
|
|
108
124
|
}
|
|
109
|
-
|
|
125
|
+
// Add disclaimer for local agents before the agent's first message
|
|
126
|
+
const initialMessages = [];
|
|
127
|
+
if (isLocalAgent) {
|
|
128
|
+
initialMessages.push({
|
|
129
|
+
role: 'system',
|
|
130
|
+
content: 'Agent preview does not provide strict adherence to connection endpoint configuration and escalation is not supported.\n\nTo test escalation, publish your agent then use the desired connection endpoint (e.g., Web Page, SMS, etc).',
|
|
131
|
+
timestamp: new Date(),
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
initialMessages.push({ role: name, content: session.messages[0].message, timestamp: new Date() });
|
|
135
|
+
setMessages(initialMessages);
|
|
110
136
|
}
|
|
111
137
|
catch (e) {
|
|
112
138
|
const sfError = SfError.wrap(e);
|
|
@@ -117,23 +143,20 @@ export function AgentPreviewReact(props) {
|
|
|
117
143
|
}
|
|
118
144
|
};
|
|
119
145
|
void startSession();
|
|
120
|
-
}, []);
|
|
146
|
+
}, [agent, name, outputDir, props.name, isLocalAgent]);
|
|
121
147
|
React.useEffect(() => {
|
|
122
148
|
saveTranscriptsToFile(tempDir, messages, responses);
|
|
123
149
|
}, [tempDir, messages, responses]);
|
|
124
150
|
return (React.createElement(Box, { flexDirection: "column" },
|
|
125
151
|
React.createElement(Box, { flexDirection: "column", width: process.stdout.columns, borderStyle: "round", alignItems: "center", marginTop: 1, marginBottom: 1, paddingLeft: 1, paddingRight: 1 },
|
|
126
152
|
React.createElement(Text, { bold: true }, header)),
|
|
127
|
-
messages.length > 0 && (React.createElement(Box, { flexDirection: "column" }, messages.map(({ timestamp: ts, role, content }, idx) => (React.createElement(Box, { key: role + '__' + ts.toISOString() + '__' + idx.toString(), alignItems: role === 'user' ? 'flex-end' : 'flex-start', flexDirection: "column" },
|
|
153
|
+
messages.length > 0 && (React.createElement(Box, { flexDirection: "column" }, messages.map(({ timestamp: ts, role, content }, idx) => (React.createElement(Box, { key: role + '__' + ts.toISOString() + '__' + idx.toString(), alignItems: role === 'user' ? 'flex-end' : 'flex-start', flexDirection: "column" }, role === 'system' ? (React.createElement(Box, { width: process.stdout.columns, borderStyle: "round", borderColor: "yellow", paddingLeft: 1, paddingRight: 1, marginBottom: 1 },
|
|
154
|
+
React.createElement(Text, null, content))) : (React.createElement(React.Fragment, null,
|
|
128
155
|
React.createElement(Box, { flexDirection: "row", columnGap: 1 },
|
|
129
156
|
React.createElement(Text, null, role === 'user' ? 'You' : role),
|
|
130
157
|
React.createElement(Text, { color: "grey" }, ts.toLocaleString())),
|
|
131
|
-
React.createElement(Box
|
|
132
|
-
|
|
133
|
-
, {
|
|
134
|
-
// Use 70% of the terminal width, or the width of a single line of content, whichever is smaller
|
|
135
|
-
width: Math.min(process.stdout.columns * 0.7, calculateWidth(content)), borderStyle: "round", paddingLeft: 1, paddingRight: 1 },
|
|
136
|
-
React.createElement(Text, null, content))))))),
|
|
158
|
+
React.createElement(Box, { borderStyle: "round", paddingLeft: 1, paddingRight: 1 },
|
|
159
|
+
React.createElement(Text, null, content))))))))),
|
|
137
160
|
isTyping ? (React.createElement(Box, { flexDirection: "column" },
|
|
138
161
|
React.createElement(Box, { alignItems: "flex-start", flexDirection: "column" },
|
|
139
162
|
React.createElement(Box, { flexDirection: "row", columnGap: 1 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-preview-react.js","sourceRoot":"","sources":["../../src/components/agent-preview-react.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAc,OAAO,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-preview-react.js","sourceRoot":"","sources":["../../src/components/agent-preview-react.tsx"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ API name of the agent you want to interact with.
|
|
|
20
20
|
|
|
21
21
|
# flags.authoring-bundle.summary
|
|
22
22
|
|
|
23
|
-
Preview a next-gen agent by specifying the API name of the authoring bundle metadata component that implements it.
|
|
23
|
+
Preview a next-gen agent by specifying the API name of the authoring bundle metadata component that implements it.
|
|
24
24
|
|
|
25
25
|
# flags.client-app.summary
|
|
26
26
|
|
|
@@ -30,6 +30,10 @@ Name of the linked client app to use for the agent connection.
|
|
|
30
30
|
|
|
31
31
|
Directory where conversation transcripts are saved.
|
|
32
32
|
|
|
33
|
+
# flags.use-live-actions.summary
|
|
34
|
+
|
|
35
|
+
Use real actions in the org; if not specified, preview uses AI to mock actions.
|
|
36
|
+
|
|
33
37
|
# flags.apex-debug.summary
|
|
34
38
|
|
|
35
39
|
Enable Apex debug logging during the agent preview conversation.
|
package/oclif.manifest.json
CHANGED
|
@@ -319,6 +319,12 @@
|
|
|
319
319
|
"summary": "Enable Apex debug logging during the agent preview conversation.",
|
|
320
320
|
"allowNo": false,
|
|
321
321
|
"type": "boolean"
|
|
322
|
+
},
|
|
323
|
+
"use-live-actions": {
|
|
324
|
+
"name": "use-live-actions",
|
|
325
|
+
"summary": "Use real actions in the org; if not specified, preview uses AI to mock actions.",
|
|
326
|
+
"allowNo": false,
|
|
327
|
+
"type": "boolean"
|
|
322
328
|
}
|
|
323
329
|
},
|
|
324
330
|
"hasDynamicHelp": true,
|
|
@@ -796,89 +802,6 @@
|
|
|
796
802
|
"test-spec:generate:agent"
|
|
797
803
|
]
|
|
798
804
|
},
|
|
799
|
-
"agent:validate:authoring-bundle": {
|
|
800
|
-
"aliases": [],
|
|
801
|
-
"args": {},
|
|
802
|
-
"description": "Authoring bundles are metadata types that represent the next-gen Salesforce agents. Their exact metadata name is AiAuthoringBundle and they consist of a standard \"\\*-meta.xml\" metadata file and an agent file (with extension \".agent\") that fully describes the next-gen agent. Generate a local authoring bundle with the \"agent generate authoring-bundle\" command.\n\nThis command validates that the agent file (with extension \".agent\") that's part of the authoring bundle compiles without errors and can later be used to successfully create a next-gen agent.\n\nThis command requires the API name of the authoring bundle; if you don't provide it with the --api-name flag, the command prompts you for it.",
|
|
803
|
-
"examples": [
|
|
804
|
-
"Validate a local authoring bundle with API name MyAuthoringBundle:\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringBundle"
|
|
805
|
-
],
|
|
806
|
-
"flags": {
|
|
807
|
-
"json": {
|
|
808
|
-
"description": "Format output as json.",
|
|
809
|
-
"helpGroup": "GLOBAL",
|
|
810
|
-
"name": "json",
|
|
811
|
-
"allowNo": false,
|
|
812
|
-
"type": "boolean"
|
|
813
|
-
},
|
|
814
|
-
"flags-dir": {
|
|
815
|
-
"helpGroup": "GLOBAL",
|
|
816
|
-
"name": "flags-dir",
|
|
817
|
-
"summary": "Import flag values from a directory.",
|
|
818
|
-
"hasDynamicHelp": false,
|
|
819
|
-
"multiple": false,
|
|
820
|
-
"type": "option"
|
|
821
|
-
},
|
|
822
|
-
"target-org": {
|
|
823
|
-
"char": "o",
|
|
824
|
-
"name": "target-org",
|
|
825
|
-
"noCacheDefault": true,
|
|
826
|
-
"required": true,
|
|
827
|
-
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
828
|
-
"hasDynamicHelp": true,
|
|
829
|
-
"multiple": false,
|
|
830
|
-
"type": "option"
|
|
831
|
-
},
|
|
832
|
-
"api-version": {
|
|
833
|
-
"description": "Override the api version used for api requests made by this command",
|
|
834
|
-
"name": "api-version",
|
|
835
|
-
"hasDynamicHelp": false,
|
|
836
|
-
"multiple": false,
|
|
837
|
-
"type": "option"
|
|
838
|
-
},
|
|
839
|
-
"api-name": {
|
|
840
|
-
"char": "n",
|
|
841
|
-
"name": "api-name",
|
|
842
|
-
"summary": "API name of the authoring bundle you want to validate.",
|
|
843
|
-
"hasDynamicHelp": false,
|
|
844
|
-
"multiple": false,
|
|
845
|
-
"type": "option"
|
|
846
|
-
}
|
|
847
|
-
},
|
|
848
|
-
"hasDynamicHelp": true,
|
|
849
|
-
"hiddenAliases": [],
|
|
850
|
-
"id": "agent:validate:authoring-bundle",
|
|
851
|
-
"pluginAlias": "@salesforce/plugin-agent",
|
|
852
|
-
"pluginName": "@salesforce/plugin-agent",
|
|
853
|
-
"pluginType": "core",
|
|
854
|
-
"strict": true,
|
|
855
|
-
"summary": "Validate a local authoring bundle to ensure it compiles successfully and can be used to create a next-gen agent.",
|
|
856
|
-
"enableJsonFlag": true,
|
|
857
|
-
"requiresProject": true,
|
|
858
|
-
"FLAGGABLE_PROMPTS": {
|
|
859
|
-
"api-name": {
|
|
860
|
-
"message": "API name of the authoring bundle you want to validate.",
|
|
861
|
-
"promptMessage": "API name of the authoring bundle to validate"
|
|
862
|
-
}
|
|
863
|
-
},
|
|
864
|
-
"isESM": true,
|
|
865
|
-
"relativePath": [
|
|
866
|
-
"lib",
|
|
867
|
-
"commands",
|
|
868
|
-
"agent",
|
|
869
|
-
"validate",
|
|
870
|
-
"authoring-bundle.js"
|
|
871
|
-
],
|
|
872
|
-
"aliasPermutations": [],
|
|
873
|
-
"permutations": [
|
|
874
|
-
"agent:validate:authoring-bundle",
|
|
875
|
-
"validate:agent:authoring-bundle",
|
|
876
|
-
"validate:authoring-bundle:agent",
|
|
877
|
-
"agent:authoring-bundle:validate",
|
|
878
|
-
"authoring-bundle:agent:validate",
|
|
879
|
-
"authoring-bundle:validate:agent"
|
|
880
|
-
]
|
|
881
|
-
},
|
|
882
805
|
"agent:test:create": {
|
|
883
806
|
"aliases": [],
|
|
884
807
|
"args": {},
|
|
@@ -1475,7 +1398,90 @@
|
|
|
1475
1398
|
"authoring-bundle:agent:publish",
|
|
1476
1399
|
"authoring-bundle:publish:agent"
|
|
1477
1400
|
]
|
|
1401
|
+
},
|
|
1402
|
+
"agent:validate:authoring-bundle": {
|
|
1403
|
+
"aliases": [],
|
|
1404
|
+
"args": {},
|
|
1405
|
+
"description": "Authoring bundles are metadata types that represent the next-gen Salesforce agents. Their exact metadata name is AiAuthoringBundle and they consist of a standard \"\\*-meta.xml\" metadata file and an agent file (with extension \".agent\") that fully describes the next-gen agent. Generate a local authoring bundle with the \"agent generate authoring-bundle\" command.\n\nThis command validates that the agent file (with extension \".agent\") that's part of the authoring bundle compiles without errors and can later be used to successfully create a next-gen agent.\n\nThis command requires the API name of the authoring bundle; if you don't provide it with the --api-name flag, the command prompts you for it.",
|
|
1406
|
+
"examples": [
|
|
1407
|
+
"Validate a local authoring bundle with API name MyAuthoringBundle:\n<%= config.bin %> <%= command.id %> --api-name MyAuthoringBundle"
|
|
1408
|
+
],
|
|
1409
|
+
"flags": {
|
|
1410
|
+
"json": {
|
|
1411
|
+
"description": "Format output as json.",
|
|
1412
|
+
"helpGroup": "GLOBAL",
|
|
1413
|
+
"name": "json",
|
|
1414
|
+
"allowNo": false,
|
|
1415
|
+
"type": "boolean"
|
|
1416
|
+
},
|
|
1417
|
+
"flags-dir": {
|
|
1418
|
+
"helpGroup": "GLOBAL",
|
|
1419
|
+
"name": "flags-dir",
|
|
1420
|
+
"summary": "Import flag values from a directory.",
|
|
1421
|
+
"hasDynamicHelp": false,
|
|
1422
|
+
"multiple": false,
|
|
1423
|
+
"type": "option"
|
|
1424
|
+
},
|
|
1425
|
+
"target-org": {
|
|
1426
|
+
"char": "o",
|
|
1427
|
+
"name": "target-org",
|
|
1428
|
+
"noCacheDefault": true,
|
|
1429
|
+
"required": true,
|
|
1430
|
+
"summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
|
|
1431
|
+
"hasDynamicHelp": true,
|
|
1432
|
+
"multiple": false,
|
|
1433
|
+
"type": "option"
|
|
1434
|
+
},
|
|
1435
|
+
"api-version": {
|
|
1436
|
+
"description": "Override the api version used for api requests made by this command",
|
|
1437
|
+
"name": "api-version",
|
|
1438
|
+
"hasDynamicHelp": false,
|
|
1439
|
+
"multiple": false,
|
|
1440
|
+
"type": "option"
|
|
1441
|
+
},
|
|
1442
|
+
"api-name": {
|
|
1443
|
+
"char": "n",
|
|
1444
|
+
"name": "api-name",
|
|
1445
|
+
"summary": "API name of the authoring bundle you want to validate.",
|
|
1446
|
+
"hasDynamicHelp": false,
|
|
1447
|
+
"multiple": false,
|
|
1448
|
+
"type": "option"
|
|
1449
|
+
}
|
|
1450
|
+
},
|
|
1451
|
+
"hasDynamicHelp": true,
|
|
1452
|
+
"hiddenAliases": [],
|
|
1453
|
+
"id": "agent:validate:authoring-bundle",
|
|
1454
|
+
"pluginAlias": "@salesforce/plugin-agent",
|
|
1455
|
+
"pluginName": "@salesforce/plugin-agent",
|
|
1456
|
+
"pluginType": "core",
|
|
1457
|
+
"strict": true,
|
|
1458
|
+
"summary": "Validate a local authoring bundle to ensure it compiles successfully and can be used to create a next-gen agent.",
|
|
1459
|
+
"enableJsonFlag": true,
|
|
1460
|
+
"requiresProject": true,
|
|
1461
|
+
"FLAGGABLE_PROMPTS": {
|
|
1462
|
+
"api-name": {
|
|
1463
|
+
"message": "API name of the authoring bundle you want to validate.",
|
|
1464
|
+
"promptMessage": "API name of the authoring bundle to validate"
|
|
1465
|
+
}
|
|
1466
|
+
},
|
|
1467
|
+
"isESM": true,
|
|
1468
|
+
"relativePath": [
|
|
1469
|
+
"lib",
|
|
1470
|
+
"commands",
|
|
1471
|
+
"agent",
|
|
1472
|
+
"validate",
|
|
1473
|
+
"authoring-bundle.js"
|
|
1474
|
+
],
|
|
1475
|
+
"aliasPermutations": [],
|
|
1476
|
+
"permutations": [
|
|
1477
|
+
"agent:validate:authoring-bundle",
|
|
1478
|
+
"validate:agent:authoring-bundle",
|
|
1479
|
+
"validate:authoring-bundle:agent",
|
|
1480
|
+
"agent:authoring-bundle:validate",
|
|
1481
|
+
"authoring-bundle:agent:validate",
|
|
1482
|
+
"authoring-bundle:validate:agent"
|
|
1483
|
+
]
|
|
1478
1484
|
}
|
|
1479
1485
|
},
|
|
1480
|
-
"version": "1.24.14-
|
|
1486
|
+
"version": "1.24.14-nga.1"
|
|
1481
1487
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@salesforce/plugin-agent",
|
|
3
3
|
"description": "Commands to interact with Salesforce agents",
|
|
4
|
-
"version": "1.24.14-
|
|
4
|
+
"version": "1.24.14-nga.1",
|
|
5
5
|
"author": "Salesforce",
|
|
6
6
|
"bugs": "https://github.com/forcedotcom/cli/issues",
|
|
7
7
|
"dependencies": {
|
|
@@ -9,14 +9,16 @@
|
|
|
9
9
|
"@inquirer/prompts": "^7.8.6",
|
|
10
10
|
"@oclif/core": "^4",
|
|
11
11
|
"@oclif/multi-stage-output": "^0.8.23",
|
|
12
|
-
"@salesforce/agents": "
|
|
12
|
+
"@salesforce/agents": "nga",
|
|
13
13
|
"@salesforce/core": "^8.23.1",
|
|
14
14
|
"@salesforce/kit": "^3.2.3",
|
|
15
15
|
"@salesforce/sf-plugins-core": "^12.2.4",
|
|
16
|
-
"@salesforce/source-deploy-retrieve": "^12.
|
|
16
|
+
"@salesforce/source-deploy-retrieve": "^12.25.0",
|
|
17
17
|
"@salesforce/types": "^1.4.0",
|
|
18
|
+
"@types/glob": "^9.0.0",
|
|
18
19
|
"ansis": "^3.3.2",
|
|
19
20
|
"fast-xml-parser": "^4.5.1",
|
|
21
|
+
"glob": "^11.0.3",
|
|
20
22
|
"ink": "5.0.1",
|
|
21
23
|
"ink-text-input": "^6.0.0",
|
|
22
24
|
"inquirer-autocomplete-standalone": "^0.8.1",
|
|
@@ -229,7 +231,7 @@
|
|
|
229
231
|
"exports": "./lib/index.js",
|
|
230
232
|
"type": "module",
|
|
231
233
|
"sfdx": {
|
|
232
|
-
"publicKeyUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-agent/1.24.14-
|
|
233
|
-
"signatureUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-agent/1.24.14-
|
|
234
|
+
"publicKeyUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-agent/1.24.14-nga.1.crt",
|
|
235
|
+
"signatureUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-agent/1.24.14-nga.1.sig"
|
|
234
236
|
}
|
|
235
237
|
}
|