fullcourtdefense-cli 1.7.11 → 1.7.12

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.
@@ -1181,7 +1181,7 @@ function compactScanHtml(args) {
1181
1181
  </div>
1182
1182
  <div class="note" id="backendStatus">Backend status: not checked yet.</div>
1183
1183
  </div>
1184
- <div class="steps">
1184
+ <div class="steps" id="scanSteps">
1185
1185
  <div class="step active" id="step-dot-1">1. Connect target</div>
1186
1186
  <div class="step" id="step-dot-2">2. Select scan type</div>
1187
1187
  <div class="step" id="step-dot-3">3. Run red-team scan</div>
@@ -1210,8 +1210,8 @@ function compactScanHtml(args) {
1210
1210
  <div id="step-1" class="stepSection">
1211
1211
  <div class="sectionTitle">
1212
1212
  <div>
1213
- <h2>Connect target</h2>
1214
- <div class="muted">Choose Run MCP Tool for a single action, or choose a scan target for red-team testing.</div>
1213
+ <h2 id="connectTitle">Run MCP Tool</h2>
1214
+ <div class="muted" id="connectSubtitle">Call one MCP tool from this machine. This is not a scan.</div>
1215
1215
  </div>
1216
1216
  </div>
1217
1217
  <div id="runner-fields">
@@ -1223,11 +1223,11 @@ function compactScanHtml(args) {
1223
1223
  <div class="two">
1224
1224
  <div>
1225
1225
  <label>Protected MCP HTTP/SSE URL</label>
1226
- <input id="runnerMcpUrl" placeholder="http://127.0.0.1:5066/mcp" />
1226
+ <input id="runnerMcpUrl" placeholder="Optional: http://127.0.0.1:5066/mcp" />
1227
1227
  </div>
1228
1228
  <div>
1229
1229
  <label>Tool name</label>
1230
- <input id="runnerTool" placeholder="lookup_customer" />
1230
+ <input id="runnerTool" placeholder="Example: lookup_customer_profile" />
1231
1231
  </div>
1232
1232
  </div>
1233
1233
  <div class="two">
@@ -1241,12 +1241,12 @@ function compactScanHtml(args) {
1241
1241
  </div>
1242
1242
  </div>
1243
1243
  <div class="two">
1244
- <div><label>Or stdio command</label><input id="runnerMcpCommand" placeholder="fullcourtdefense" /></div>
1245
- <div><label>Command args</label><input id="runnerMcpArgs" placeholder='mcp-gateway --mcp-command node --mcp-args "[&quot;./server.js&quot;]"' /></div>
1244
+ <div><label>Or stdio command</label><input id="runnerMcpCommand" placeholder="node" /></div>
1245
+ <div><label>Command args</label><input id="runnerMcpArgs" placeholder="C:\\path\\to\\mcp-server.js" /></div>
1246
1246
  </div>
1247
1247
  <label>Tool arguments JSON</label>
1248
1248
  <textarea id="runnerToolArgs" spellcheck="false">{
1249
- "customerId": "cus_123"
1249
+ "customerId": "RO-PB-10492"
1250
1250
  }</textarea>
1251
1251
  <div class="actions">
1252
1252
  <button class="primary" id="runMcpTool">Run MCP tool</button>
@@ -1361,11 +1361,11 @@ function compactScanHtml(args) {
1361
1361
  <b>Red-team console</b>
1362
1362
  <span class="pill" id="consoleStatus">Ready</span>
1363
1363
  </div>
1364
- <pre id="out">Full Court Defense Local Runner ready.
1364
+ <pre id="out">Full Court Defense Local Web Console ready.
1365
1365
 
1366
- Select Endpoint, RAG, or MCP above, then run a scan.
1367
- Quick uses the same critical/high attack selection as the web scanner.
1368
- Full uses the full web attack corpus bundled with the CLI.</pre>
1366
+ Choose Run MCP Tool for one live tool call.
1367
+ Choose Endpoint/RAG/MCP Scan for a local red-team scan.
1368
+ Local targets stay on this machine; saved scan reports go to Full Court Defense.</pre>
1369
1369
  </div>
1370
1370
  </div>
1371
1371
  </section>
@@ -1379,7 +1379,20 @@ Full uses the full web attack corpus bundled with the CLI.</pre>
1379
1379
  const sync = () => {
1380
1380
  document.querySelectorAll('.card').forEach(c => c.classList.toggle('active', c.dataset.target === target));
1381
1381
  ['runner','endpoint','rag','mcp','help'].forEach(id => byId(id + '-fields').classList.toggle('hidden', id !== target));
1382
- byId('scanActions').classList.toggle('hidden', target === 'runner');
1382
+ const scanTarget = ['endpoint','rag','mcp'].includes(target);
1383
+ byId('scanSteps').classList.toggle('hidden', !scanTarget);
1384
+ byId('scanActions').classList.toggle('hidden', !scanTarget);
1385
+ byId('connectTitle').textContent = target === 'runner'
1386
+ ? 'Run MCP Tool'
1387
+ : target === 'help'
1388
+ ? 'Local workflow options'
1389
+ : 'Connect scan target';
1390
+ byId('connectSubtitle').textContent = target === 'runner'
1391
+ ? 'Call one MCP tool from this machine. This is not a scan.'
1392
+ : target === 'help'
1393
+ ? 'Choose one-off tool run or local red-team scan.'
1394
+ : 'Choose the internal target to red-team from this machine.';
1395
+ if (!scanTarget) setStep(1);
1383
1396
  };
1384
1397
  const setStep = next => {
1385
1398
  step = next;
@@ -1398,7 +1411,7 @@ Full uses the full web attack corpus bundled with the CLI.</pre>
1398
1411
  byId('mcpCommand').value = qs.get('mcpCommand') || '';
1399
1412
  byId('mcpArgs').value = qs.get('mcpArgs') || '';
1400
1413
  byId('runnerMcpUrl').value = qs.get('mcpUrl') || '';
1401
- byId('runnerMcpCommand').value = qs.get('mcpCommand') || 'fullcourtdefense';
1414
+ byId('runnerMcpCommand').value = qs.get('mcpCommand') || '';
1402
1415
  byId('runnerMcpArgs').value = qs.get('mcpArgs') || '';
1403
1416
  byId('runnerTool').value = qs.get('mcpTool') || '';
1404
1417
  byId('runnerOperation').value = qs.get('operation') || '';
@@ -1506,18 +1519,18 @@ Full uses the full web attack corpus bundled with the CLI.</pre>
1506
1519
  byId('mcpArgs').value = '';
1507
1520
  byId('mcpTool').value = 'all';
1508
1521
  byId('runnerMcpUrl').value = '';
1509
- byId('runnerMcpCommand').value = 'fullcourtdefense';
1522
+ byId('runnerMcpCommand').value = '';
1510
1523
  byId('runnerMcpArgs').value = '';
1511
1524
  byId('runnerTool').value = '';
1512
1525
  byId('runnerOperation').value = '';
1513
- byId('runnerToolArgs').value = '{\\n "customerId": "cus_123"\\n}';
1526
+ byId('runnerToolArgs').value = '{\\n "customerId": "RO-PB-10492"\\n}';
1514
1527
  byId('mcpResultCard').classList.add('hidden');
1515
1528
  byId('mcpResultJson').value = '';
1516
1529
  byId('mcpResultTable').innerHTML = '';
1517
1530
  byId('mode').value = 'quick';
1518
1531
  byId('format').value = 'report';
1519
1532
  clearScanSummary();
1520
- setConsole('Full Court Defense Local Runner ready.\\n\\nSelect Endpoint, RAG, or MCP above, then run a scan.\\nQuick uses the same critical/high attack selection as the web scanner.\\nFull uses the full web attack corpus bundled with the CLI.', 'Ready');
1533
+ setConsole('Full Court Defense Local Web Console ready.\\n\\nChoose Run MCP Tool for one live tool call.\\nChoose Endpoint/RAG/MCP Scan for a local red-team scan.', 'Ready');
1521
1534
  };
1522
1535
  byId('command').onclick = () => { setConsole(renderCommand(payload()), 'Command'); };
1523
1536
  byId('connectNext').onclick = () => setStep(2);
package/dist/version.json CHANGED
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "1.7.11"
2
+ "version": "1.7.12"
3
3
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fullcourtdefense-cli",
3
- "version": "1.7.11",
3
+ "version": "1.7.12",
4
4
  "description": "Full Court Defense CLI — security scanning for AI agents from your terminal",
5
5
  "main": "dist/index.js",
6
6
  "bin": {