@f5xc-salesdemos/xcsh 19.40.0 → 19.40.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/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@f5xc-salesdemos/xcsh",
|
|
4
|
-
"version": "19.40.
|
|
4
|
+
"version": "19.40.1",
|
|
5
5
|
"description": "Coding agent CLI with read, bash, edit, write tools and session management",
|
|
6
6
|
"homepage": "https://github.com/f5xc-salesdemos/xcsh",
|
|
7
7
|
"author": "Can Boluk",
|
|
@@ -51,13 +51,13 @@
|
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"@agentclientprotocol/sdk": "0.16.1",
|
|
53
53
|
"@mozilla/readability": "^0.6",
|
|
54
|
-
"@f5xc-salesdemos/xcsh-stats": "19.40.
|
|
55
|
-
"@f5xc-salesdemos/pi-agent-core": "19.40.
|
|
56
|
-
"@f5xc-salesdemos/pi-ai": "19.40.
|
|
57
|
-
"@f5xc-salesdemos/pi-natives": "19.40.
|
|
58
|
-
"@f5xc-salesdemos/pi-resource-management": "19.40.
|
|
59
|
-
"@f5xc-salesdemos/pi-tui": "19.40.
|
|
60
|
-
"@f5xc-salesdemos/pi-utils": "19.40.
|
|
54
|
+
"@f5xc-salesdemos/xcsh-stats": "19.40.1",
|
|
55
|
+
"@f5xc-salesdemos/pi-agent-core": "19.40.1",
|
|
56
|
+
"@f5xc-salesdemos/pi-ai": "19.40.1",
|
|
57
|
+
"@f5xc-salesdemos/pi-natives": "19.40.1",
|
|
58
|
+
"@f5xc-salesdemos/pi-resource-management": "19.40.1",
|
|
59
|
+
"@f5xc-salesdemos/pi-tui": "19.40.1",
|
|
60
|
+
"@f5xc-salesdemos/pi-utils": "19.40.1",
|
|
61
61
|
"@sinclair/typebox": "^0.34",
|
|
62
62
|
"@xterm/headless": "^6.0",
|
|
63
63
|
"ajv": "^8.20",
|
|
@@ -17,17 +17,17 @@ export interface BuildInfo {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
export const BUILD_INFO: BuildInfo = {
|
|
20
|
-
"version": "19.40.
|
|
21
|
-
"commit": "
|
|
22
|
-
"shortCommit": "
|
|
20
|
+
"version": "19.40.1",
|
|
21
|
+
"commit": "275f974ebd394297b46557d849ba1eefb2e323e1",
|
|
22
|
+
"shortCommit": "275f974",
|
|
23
23
|
"branch": "main",
|
|
24
|
-
"tag": "v19.40.
|
|
25
|
-
"commitDate": "2026-06-
|
|
26
|
-
"buildDate": "2026-06-
|
|
24
|
+
"tag": "v19.40.1",
|
|
25
|
+
"commitDate": "2026-06-23T02:31:15Z",
|
|
26
|
+
"buildDate": "2026-06-23T02:53:18.168Z",
|
|
27
27
|
"dirty": true,
|
|
28
28
|
"prNumber": "",
|
|
29
29
|
"repoUrl": "https://github.com/f5xc-salesdemos/xcsh",
|
|
30
30
|
"repoSlug": "f5xc-salesdemos/xcsh",
|
|
31
|
-
"commitUrl": "https://github.com/f5xc-salesdemos/xcsh/commit/
|
|
32
|
-
"releaseUrl": "https://github.com/f5xc-salesdemos/xcsh/releases/tag/v19.40.
|
|
31
|
+
"commitUrl": "https://github.com/f5xc-salesdemos/xcsh/commit/275f974ebd394297b46557d849ba1eefb2e323e1",
|
|
32
|
+
"releaseUrl": "https://github.com/f5xc-salesdemos/xcsh/releases/tag/v19.40.1"
|
|
33
33
|
};
|
|
@@ -33,6 +33,8 @@ Main branch: {{git.mainBranch}}
|
|
|
33
33
|
## F5 XC Platform Context
|
|
34
34
|
|
|
35
35
|
You are currently connected to F5 XC tenant: {{context.tenant}}, namespace: {{context.namespace}}.
|
|
36
|
+
{{#if context.apiUrl}}Console URL: {{context.apiUrl}}.
|
|
37
|
+
When navigating to the F5 XC console, you **MUST** use this URL as the base. Do NOT construct a URL from the tenant name — different environments use different domain patterns.{{/if}}
|
|
36
38
|
Credential source: {{context.credentialSource}}.
|
|
37
39
|
Auth status: {{context.authStatus}}.
|
|
38
40
|
All F5 XC operations should target this tenant and namespace unless explicitly told otherwise.
|
|
@@ -170,6 +170,8 @@ Configs you didn't validate become incidents. Assumptions you didn't test fail u
|
|
|
170
170
|
## F5 XC Platform Context
|
|
171
171
|
|
|
172
172
|
You are currently connected to F5 XC tenant: {{context.tenant}}, namespace: {{context.namespace}}.
|
|
173
|
+
{{#if context.apiUrl}}Console URL: {{context.apiUrl}}.
|
|
174
|
+
When navigating to the F5 XC console, you **MUST** use this URL as the base. Do NOT construct a URL from the tenant name — different environments use different domain patterns.{{/if}}
|
|
173
175
|
Credential source: {{context.credentialSource}}.
|
|
174
176
|
Auth status: {{context.authStatus}}.
|
|
175
177
|
All F5 XC operations should target this tenant and namespace unless explicitly told otherwise.
|
|
@@ -2,6 +2,8 @@ Navigates, clicks, types, scrolls, drags, queries DOM content, and captures scre
|
|
|
2
2
|
|
|
3
3
|
<instruction>
|
|
4
4
|
- `"open"` starts a headless session (or implicitly on first action); `"goto"` navigates to `url`; `"close"` releases the browser
|
|
5
|
+
- The browser launches in **headless** mode by default (no visible window). If the user asks to "open Chrome", "show a browser", or needs to see the browser window, tell them to run `/browser visible` first — this switches to a visible Chrome window. Use `/browser headless` to switch back.
|
|
6
|
+
- `catalog_workflow_runner` always uses a visible Chrome session — it does not share this setting.
|
|
5
7
|
- `"observe"` captures a numbered accessibility snapshot — prefer `click_id`/`type_id`/`fill_id` using returned `element_id` values; flags: `include_all`, `viewport_only`
|
|
6
8
|
- `"click"`, `"type"`, `"fill"`, `"press"`, `"scroll"`, `"drag"` for selector-based interactions — prefer ARIA/text selectors (`p-aria/[name="Sign in"]`, `p-text/Continue`) over brittle CSS
|
|
7
9
|
- `"click_id"`, `"type_id"`, `"fill_id"` to interact with observed elements without selectors
|
package/src/sdk.ts
CHANGED
|
@@ -1371,6 +1371,7 @@ export async function createAgentSession(options: CreateAgentSessionOptions = {}
|
|
|
1371
1371
|
namespace: string;
|
|
1372
1372
|
credentialSource: string;
|
|
1373
1373
|
authStatus: string;
|
|
1374
|
+
apiUrl?: string;
|
|
1374
1375
|
envVars?: Record<string, string>;
|
|
1375
1376
|
}
|
|
1376
1377
|
| undefined;
|
|
@@ -1387,6 +1388,7 @@ export async function createAgentSession(options: CreateAgentSessionOptions = {}
|
|
|
1387
1388
|
namespace: status.activeContextNamespace ?? "default",
|
|
1388
1389
|
credentialSource: status.credentialSource,
|
|
1389
1390
|
authStatus: status.authStatus,
|
|
1391
|
+
apiUrl: status.activeContextUrl ?? undefined,
|
|
1390
1392
|
};
|
|
1391
1393
|
const sensitiveKeys = contextServiceRef?.instance?.getActiveSensitiveKeys();
|
|
1392
1394
|
const ctxEnv = createContextEnv(settings, sensitiveKeys?.size ? { sensitiveKeys } : undefined);
|
package/src/tools/browser.ts
CHANGED
|
@@ -961,11 +961,12 @@ export class BrowserTool implements AgentTool<typeof browserSchema, BrowserToolD
|
|
|
961
961
|
const page = await untilAborted(signal, () => this.#resetBrowser(params));
|
|
962
962
|
const viewport = page.viewport();
|
|
963
963
|
details.viewport = viewport ?? DEFAULT_VIEWPORT;
|
|
964
|
-
|
|
964
|
+
const mode = this.#currentHeadless ? "headless" : "visible";
|
|
965
|
+
return toolResult(details).text(`Opened browser session (${mode})`).done();
|
|
965
966
|
}
|
|
966
967
|
case "close": {
|
|
967
968
|
await untilAborted(signal, () => this.#closeBrowser());
|
|
968
|
-
return toolResult(details).text("Closed
|
|
969
|
+
return toolResult(details).text("Closed browser session").done();
|
|
969
970
|
}
|
|
970
971
|
case "goto": {
|
|
971
972
|
const url = ensureParam(params.url, "url", params.action);
|