Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
065ed7d
feat: add --verbose and --concise flags to agent publish authoring-bu…
sreckomileta Apr 27, 2026
0bb20b9
chore: update command snapshot for --verbose and --concise flags
sreckomileta Apr 27, 2026
64f5452
feat: add hidden --agent-json flag to agent preview start
andresrivas-sf Apr 28, 2026
3348722
Update messages/agent.preview.start.md
andresrivas-sf Apr 28, 2026
28fe2f1
test: add NUTs for --verbose and --concise flags on agent publish aut…
sreckomileta Apr 28, 2026
a955e42
fix: address PR review comments on --agent-json flag
andresrivas-sf Apr 28, 2026
1b77efd
chore: update command-snapshot.json with agent-json flag
andresrivas-sf Apr 29, 2026
0da5975
test: fix NUTs
EstebanRomero84 Apr 30, 2026
966347d
docs: add error codes to command help
EstebanRomero84 Apr 30, 2026
9a00b01
Merge pull request #408 from salesforcecli/er/fix-nuts
WillieRuemmele Apr 30, 2026
ae959cf
chore: bump @salesforce/agents to 1.3.0
andresrivas-sf Apr 30, 2026
40197ff
chore: Merge branch 'main' into ar/W-22203672/agent-json-flag-preview…
andresrivas-sf Apr 30, 2026
d14d199
feat: add agent trace read command
WillieRuemmele Apr 30, 2026
4eca978
feat: add NUTs for agent trace read
WillieRuemmele Apr 30, 2026
ede5495
test: use static fixture for --agent-json NUT to avoid live compile A…
andresrivas-sf Apr 30, 2026
8010fee
refactor: extract loadAgentJson to common, simplify NUT fixture path …
andresrivas-sf Apr 30, 2026
090e128
fix: patch fixture defaultAgentUser so preview sessions API accepts it
andresrivas-sf May 1, 2026
5dc2713
test: add ensureExitCode=0 to surface actual agent-json NUT failure
andresrivas-sf May 1, 2026
39b92a7
fix: use valid agentType value in compiled-agent.json fixture
andresrivas-sf May 1, 2026
39e157f
fix: set agentType to AgentforceServiceAgent in compiled-agent fixture
andresrivas-sf May 1, 2026
94952aa
fix: use EinsteinServiceAgent agentType in fixture; bump @salesforce/…
andresrivas-sf May 1, 2026
3d0ba3d
fix: stop patching defaultAgentUser in agent-json NUT
andresrivas-sf May 1, 2026
833fbec
fix: compile agent in NUT instead of using static fixture
andresrivas-sf May 1, 2026
29d59f9
fix(deps): bump yaml from 2.8.3 to 2.8.4
dependabot[bot] May 2, 2026
884b830
Merge pull request #412 from salesforcecli/dependabot-npm_and_yarn-ya…
svc-cli-bot May 3, 2026
144ad8e
chore(release): 1.34.1 [skip ci]
svc-cli-bot May 3, 2026
a809026
Merge pull request #405 from salesforcecli/ar/W-22203672/agent-json-f…
EstebanRomero84 May 4, 2026
2dc1762
chore(release): 1.35.0 [skip ci]
svc-cli-bot May 4, 2026
85f14a9
Merge branch 'main' into sem/addVerboseFlag
sreckomileta May 4, 2026
9d78e75
Merge pull request #404 from salesforcecli/sem/addVerboseFlag
npiccolo May 4, 2026
e2670cf
feat(agent/test/run-eval): promote command to GA and delegate logic t…
andresrivas-sf May 5, 2026
f48d2b0
fix(agent/test/run-eval): address pre-PR review findings
andresrivas-sf May 5, 2026
7f9c353
fix(agent/test/run-eval): update command snapshot to reflect --wait r…
andresrivas-sf May 5, 2026
8a5b531
chore(release): 1.36.0 [skip ci]
svc-cli-bot May 7, 2026
9f32ecb
Merge pull request #407 from salesforcecli/wr/ngt
WillieRuemmele May 7, 2026
ae5534a
test: expect oclif parse exit code 2 for invalid-input NUTs
shetzel May 7, 2026
9ea48ee
fix: use nonZero ensureExitCode for invalid-input NUTs
shetzel May 7, 2026
d1c8709
Merge pull request #414 from salesforcecli/sh/fix-NUTs
EstebanRomero84 May 7, 2026
76324bd
chore(release): 1.36.1 [skip ci]
svc-cli-bot May 7, 2026
af9e270
Merge branch 'main' into afr/W-22203426/eval-refactor-to-library
WillieRuemmele May 7, 2026
4633bbd
chore: bump agents
WillieRuemmele May 7, 2026
0b1ef4d
Merge pull request #413 from salesforcecli/afr/W-22203426/eval-refact…
WillieRuemmele May 7, 2026
00f6055
chore(release): 1.37.0 [skip ci]
svc-cli-bot May 7, 2026
ca2a3bc
Merge branch 'wr/deleteTraces' into wr/readTraces
sreckomileta May 8, 2026
32a5448
Merge branch 'main' into wr/readTraces
WillieRuemmele May 8, 2026
79ec729
chore: merge main, resolve conflict, bump agents
WillieRuemmele May 8, 2026
1e32f60
fix(nuts): pass cwd to all preview execCmd calls so session cache is …
WillieRuemmele May 8, 2026
e9c21f9
fix(trace): scan .sfdx/agents on disk to find ended sessions
WillieRuemmele May 8, 2026
eb464aa
fix(trace): fall back to trace file order when turn index has no planId
WillieRuemmele May 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,48 @@
# [1.37.0](https://github.com/salesforcecli/plugin-agent/compare/1.36.1...1.37.0) (2026-05-07)

### Bug Fixes

- **agent/test/run-eval:** address pre-PR review findings ([f48d2b0](https://github.com/salesforcecli/plugin-agent/commit/f48d2b0d064cdc2c778e97be66f4edf7cf78738d))
- **agent/test/run-eval:** update command snapshot to reflect --wait removal ([7f9c353](https://github.com/salesforcecli/plugin-agent/commit/7f9c3533bbb497ff1847c048a47fb8641f0b2519))

### Features

- **agent/test/run-eval:** promote command to GA and delegate logic to @salesforce/agents ([e2670cf](https://github.com/salesforcecli/plugin-agent/commit/e2670cf7449b835c852c4985df2b236e05707fd6))

## [1.36.1](https://github.com/salesforcecli/plugin-agent/compare/1.36.0...1.36.1) (2026-05-07)

### Bug Fixes

- use nonZero ensureExitCode for invalid-input NUTs ([9ea48ee](https://github.com/salesforcecli/plugin-agent/commit/9ea48eeae8e324ac4280a92cc53fad2d3ffaf8ff))

# [1.36.0](https://github.com/salesforcecli/plugin-agent/compare/1.35.0...1.36.0) (2026-05-07)

### Features

- add --verbose and --concise flags to agent publish authoring-bundle ([065ed7d](https://github.com/salesforcecli/plugin-agent/commit/065ed7d3d12f3e20bc79b7e8fc07ec637f1aace4))

# [1.35.0](https://github.com/salesforcecli/plugin-agent/compare/1.34.1...1.35.0) (2026-05-04)

### Bug Fixes

- address PR review comments on --agent-json flag ([a955e42](https://github.com/salesforcecli/plugin-agent/commit/a955e42d08630756461ccb4af073bcd84ff1a104))
- compile agent in NUT instead of using static fixture ([833fbec](https://github.com/salesforcecli/plugin-agent/commit/833fbecc9c9ce14160ffafb21041be6b34028ed1))
- patch fixture defaultAgentUser so preview sessions API accepts it ([090e128](https://github.com/salesforcecli/plugin-agent/commit/090e128af75722d9f7f6ce89c9c082ae995b7865))
- set agentType to AgentforceServiceAgent in compiled-agent fixture ([39e157f](https://github.com/salesforcecli/plugin-agent/commit/39e157f4ada11489c3366bbefc08cfef466df7ce))
- stop patching defaultAgentUser in agent-json NUT ([3d0ba3d](https://github.com/salesforcecli/plugin-agent/commit/3d0ba3dbfa9037bddc05587a60ccf3763d8d073a))
- use EinsteinServiceAgent agentType in fixture; bump @salesforce/agents to 1.4.0 ([94952aa](https://github.com/salesforcecli/plugin-agent/commit/94952aab888578de6f1c6d46a69dd325d5874a65))
- use valid agentType value in compiled-agent.json fixture ([39b92a7](https://github.com/salesforcecli/plugin-agent/commit/39b92a792e4a7577161432e0373487162d79fe8c))

### Features

- add hidden --agent-json flag to agent preview start ([64f5452](https://github.com/salesforcecli/plugin-agent/commit/64f5452c351afae4f007046160181d75d3df5a60))

## [1.34.1](https://github.com/salesforcecli/plugin-agent/compare/1.34.0...1.34.1) (2026-05-03)

### Bug Fixes

- **deps:** bump yaml from 2.8.3 to 2.8.4 ([29d59f9](https://github.com/salesforcecli/plugin-agent/commit/29d59f9163e3ef5b36ef6b262f2fbd5ea9fd48f8))

# [1.34.0](https://github.com/salesforcecli/plugin-agent/compare/1.33.0...1.34.0) (2026-04-27)

### Bug Fixes
Expand Down
166 changes: 141 additions & 25 deletions README.md

Large diffs are not rendered by default.

33 changes: 27 additions & 6 deletions command-snapshot.json
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@
"flagAliases": [],
"flagChars": ["d", "n", "o", "x"],
"flags": [
"agent-json",
"apex-debug",
"api-name",
"api-version",
Expand Down Expand Up @@ -142,6 +143,7 @@
"flagAliases": [],
"flagChars": ["n", "o"],
"flags": [
"agent-json",
"api-name",
"api-version",
"authoring-bundle",
Expand All @@ -157,8 +159,8 @@
"alias": [],
"command": "agent:publish:authoring-bundle",
"flagAliases": [],
"flagChars": ["n", "o"],
"flags": ["api-name", "api-version", "flags-dir", "json", "skip-retrieve", "target-org"],
"flagChars": ["n", "o", "v"],
"flags": ["api-name", "api-version", "concise", "flags-dir", "json", "skip-retrieve", "target-org", "verbose"],
"plugin": "@salesforce/plugin-agent"
},
{
Expand All @@ -182,7 +184,17 @@
"command": "agent:test:results",
"flagAliases": [],
"flagChars": ["d", "i", "o"],
"flags": ["api-version", "flags-dir", "job-id", "json", "output-dir", "result-format", "target-org", "verbose"],
"flags": [
"api-version",
"flags-dir",
"job-id",
"json",
"output-dir",
"result-format",
"target-org",
"test-runner",
"verbose"
],
"plugin": "@salesforce/plugin-agent"
},
{
Expand All @@ -198,6 +210,7 @@
"output-dir",
"result-format",
"target-org",
"test-runner",
"use-most-recent",
"verbose",
"wait"
Expand All @@ -217,6 +230,7 @@
"output-dir",
"result-format",
"target-org",
"test-runner",
"verbose",
"wait"
],
Expand All @@ -226,7 +240,7 @@
"alias": [],
"command": "agent:test:run-eval",
"flagAliases": [],
"flagChars": ["n", "o", "s", "w"],
"flagChars": ["n", "o", "s"],
"flags": [
"api-name",
"api-version",
Expand All @@ -236,8 +250,7 @@
"no-normalize",
"result-format",
"spec",
"target-org",
"wait"
"target-org"
],
"plugin": "@salesforce/plugin-agent"
},
Expand All @@ -257,6 +270,14 @@
"flags": ["agent", "flags-dir", "json", "session-id", "since"],
"plugin": "@salesforce/plugin-agent"
},
{
"alias": [],
"command": "agent:trace:read",
"flagAliases": [],
"flagChars": ["d", "f", "s", "t"],
"flags": ["dimension", "flags-dir", "format", "json", "session-id", "turn"],
"plugin": "@salesforce/plugin-agent"
},
{
"alias": [],
"command": "agent:validate:authoring-bundle",
Expand Down
4 changes: 4 additions & 0 deletions messages/agent.preview.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,10 @@ Use real actions in the org; if not specified, preview uses AI to simulate (mock

Enable Apex debug logging during the agent preview conversation.

# flags.agent-json.summary

Path to a pre-compiled AgentJSON file to use instead of compiling the Agent Script file. Intended for internal use and testing.

# examples

- Preview an agent by choosing from the list of available local Agent Script or published agents. If previewing a local Agent Script agent, use simulated mode. Use the org with alias "my-dev-org".
Expand Down
4 changes: 4 additions & 0 deletions messages/agent.preview.start.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ API name of the activated published agent you want to preview.

API name of the authoring bundle metadata component that contains the agent's Agent Script file.

# flags.agent-json.summary

Path to a pre-compiled AgentJSON file to use instead of compiling the Agent Script file. Intended for internal use and testing.

# flags.use-live-actions.summary

Execute real actions in the org (Apex classes, flows, etc.). Required with --authoring-bundle.
Expand Down
16 changes: 16 additions & 0 deletions messages/agent.publish.authoring-bundle.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,14 @@ This command uses the API name of the authoring bundle.

<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --target-org my-dev-org

- Publish with verbose output to see all retrieved and deployed metadata components:

<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --verbose

- Publish with concise output showing only essential information:

<%= config.bin %> <%= command.id %> --api-name MyAuthoringbundle --concise

# flags.api-name.summary

API name of the authoring bundle you want to publish; if not specified, the command provides a list that you can choose from.
Expand All @@ -32,6 +40,14 @@ API name of the authoring bundle to publish

Don't retrieve the metadata associated with the agent to your DX project.

# flags.verbose.summary

Display detailed output showing all metadata components retrieved and deployed during the publish process.

# flags.concise.summary

Display minimal output with only essential information about the publish operation.

# error.missingRequiredFlags

Required flag(s) missing: %s.
Expand Down
2 changes: 1 addition & 1 deletion messages/agent.test.list.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ List the available agent tests in your org.

# description

The command outputs a table with the name (API name) of each test along with its unique ID and the date it was created in the org.
The command outputs a table with the name (API name) of each test along with its unique ID, type ('agentforce-studio' or 'testing-center'), and the date it was created in the org.

# examples

Expand Down
4 changes: 0 additions & 4 deletions messages/agent.test.run-eval.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,6 @@ Path to test spec file (YAML or JSON). Supports reading from stdin when piping c

Agent DeveloperName (also called API name) to resolve agent_id and agent_version_id. Auto-inferred from the YAML spec's subjectName.

# flags.wait.summary

Number of minutes to wait for results.

# flags.result-format.summary

Format of the agent test results.
Expand Down
171 changes: 171 additions & 0 deletions messages/agent.trace.read.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
# summary

Read and analyze trace files from an agent preview session.

# description

Reads trace files recorded during an agent preview session and outputs them in one of three formats.

**--format summary** (default): A per-turn narrative showing topic routing, actions executed, and the agent's response. Use this to quickly understand what happened in a session.

**--format detail**: Diagnostic drill-down into a specific dimension (--dimension required). Filters output to only the trace steps relevant to that dimension, minimizing noise.

**--format raw**: Unprocessed trace JSON. Use this as a fallback when the trace schema has changed or you need to perform custom analysis.

Available dimensions for --format detail: actions, grounding, routing, errors.

Use --turn N to scope output to a single conversation turn.

# flags.session-id.summary

Session ID to read traces for.

# flags.format.summary

Output format: summary (default), detail, or raw. Use detail with --dimension to drill into a specific aspect of the trace.

# flags.dimension.summary

Dimension to drill into when using --format detail. One of: actions, grounding, routing, errors. Required when --format is detail.

# flags.turn.summary

Scope output to this conversation turn number.

# error.detailRequiresDimension

--format detail requires --dimension. Specify one of: actions, grounding, routing, errors.

# error.sessionNotFound

Session '%s' was not found in the local session cache. Run "sf agent trace list" to see available sessions.

# error.turnIndexNotFound

No turn index found for session '%s'. Cannot filter by --turn without a turn index.

# error.turnNotFound

Turn %s was not found in session '%s'.

# error.parseFailedAll

Trace parsing failed for all files: %s. The trace schema may have changed. Try --format raw to access unprocessed trace data.

# warn.dimensionIgnored

--dimension is ignored when --format is '%s'. Use --format detail to drill into a dimension.

# warn.parseFailed

Trace parsing failed for some files (skipped): %s. Try --format raw to access unprocessed trace data.

# output.empty

No traces found for this session.

# output.emptyDimension

No '%s' data found in the traces for this session.

# output.tableHeader.turn

Turn

# output.tableHeader.topic

Topic

# output.tableHeader.userInput

User Input

# output.tableHeader.agentResponse

Agent Response

# output.tableHeader.actionsExecuted

Actions Executed

# output.tableHeader.latencyMs

Latency

# output.tableHeader.error

Error

# output.tableHeader.action

Action

# output.tableHeader.input

Input

# output.tableHeader.output

Output

# output.tableHeader.prompt

Prompt

# output.tableHeader.response

Response

# output.tableHeader.intent

Intent

# output.tableHeader.fromTopic

From Topic

# output.tableHeader.toTopic

To Topic

# output.tableHeader.source

Source

# output.tableHeader.errorCode

Error Code

# output.tableHeader.message

Message

# examples

- Show a session summary (all turns):

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID>

- Show summary for a single turn:

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --turn 2

- Drill into action execution across all turns:

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension actions

- Drill into routing decisions for a specific turn:

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension routing --turn 1

- Show all errors across the session:

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format detail --dimension errors

- Output raw trace JSON for custom parsing:

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --format raw

- Return results as JSON:

<%= config.bin %> <%= command.id %> --session-id <SESSION_ID> --json
Loading
Loading