@pome-sh/cli 0.36.1 → 0.37.0

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "package": "pome-sh",
3
- "version": "0.36.1",
4
- "git_sha": "f47a76e4951781e34bc063b31b2b1c1bb400802b",
5
- "build_time": "2026-08-30T00:32:59.132Z"
3
+ "version": "0.37.0",
4
+ "git_sha": "cc0696be326889bdad4e58559dff013f090c1310",
5
+ "build_time": "2026-08-30T04:33:14.394Z"
6
6
  }
@@ -735,21 +735,11 @@ async function runSessionCreate(opts) {
735
735
  await writeSecretsFile(opts.secretsFile, formatEnvExport(session, twins));
736
736
  console.error(`Wrote sandbox secrets to ${opts.secretsFile} (mode 0600).`);
737
737
  }
738
- if (opts.format === "json") {
738
+ if (opts.json) {
739
739
  const payload = redactSession(session);
740
740
  console.log(JSON.stringify(payload, null, 2));
741
741
  return;
742
742
  }
743
- if (opts.format === "env") {
744
- if (opts.secretsFile) {
745
- return;
746
- }
747
- console.error(
748
- "Refusing to print environment exports. Use --secrets-file <path> to write them to a 0600 file."
749
- );
750
- process.exitCode = 2;
751
- return;
752
- }
753
743
  console.error(`Sandbox: ${session.session_id}`);
754
744
  console.error(`Expires: ${session.expires_at}`);
755
745
  if (opts.seedPath !== void 0) {
@@ -797,7 +787,7 @@ async function runSessionList(opts) {
797
787
  const all = await client.listSessions({ limit: fetchLimit });
798
788
  const filtered = all.filter((r) => matchesStateFilter(r.state, opts.state));
799
789
  const rows = filtered.slice(0, opts.limit);
800
- if (opts.format === "json") {
790
+ if (opts.json) {
801
791
  console.log(JSON.stringify(rows, null, 2));
802
792
  return;
803
793
  }
@@ -1,5 +1,5 @@
1
1
  import { newGroupId } from './chunk-JNXZBK3O.js';
2
- import { runTaskHosted, resolveRunAgentIdentity } from './chunk-77EGSHLT.js';
2
+ import { runTaskHosted, resolveRunAgentIdentity } from './chunk-3NQUFSIX.js';
3
3
  import { createHostedClient, parseTaskFile, outcomeOf, isNarrated, criterionPhrase, narratorReadingLines } from './chunk-BS47AE55.js';
4
4
  import './chunk-VPXIGCZW.js';
5
5
  import './chunk-NW7HGA2K.js';
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { DEFAULT_CONTROL_PLANE_URL, DEFAULT_DASHBOARD_URL, clearLocalCredentials, friendlyHostedError, SESSION_TWIN_NAMES, runSessionCreate, runSessionList, runSessionStop, resolveCredentials, runTaskHosted, discoverRunSet, VERDICT_ARTIFACT_VERSION, persistCredentialsAfterLogin, DEFAULT_DOCS_SITE_ORIGIN, resolveSeams, resolveCachedAgentId, readLinkCache, postAgentResolver, writeLinkCache, ensurePomeGitignored } from '../../chunk-77EGSHLT.js';
2
+ import { DEFAULT_CONTROL_PLANE_URL, DEFAULT_DASHBOARD_URL, clearLocalCredentials, friendlyHostedError, SESSION_TWIN_NAMES, runSessionCreate, runSessionList, runSessionStop, resolveCredentials, runTaskHosted, discoverRunSet, VERDICT_ARTIFACT_VERSION, persistCredentialsAfterLogin, DEFAULT_DOCS_SITE_ORIGIN, resolveSeams, resolveCachedAgentId, readLinkCache, postAgentResolver, writeLinkCache, ensurePomeGitignored } from '../../chunk-3NQUFSIX.js';
3
3
  import { assetPath, runTask, resolvePackageRoot, DEMO_TASK_NAME, demoTaskPath } from '../../chunk-AEFXTGW3.js';
4
4
  import { parseTaskFile, scoreStatus, runScoreLine, narratorReadingLines, readLatestRun, readMetaSummary, outcomeOf, readConfigTwins, scoreCountsSummary, criterionRowLine, readCodeCriteria, createHostedClient, toTwinHttpEvent, redactJsonl, scoreFromFinalizeResponse, parseGitHubSeedState, uploadRunBlobs, isPreSatisfied } from '../../chunk-BS47AE55.js';
5
5
  import '../../chunk-VPXIGCZW.js';
@@ -4642,7 +4642,7 @@ function firstSentence(description) {
4642
4642
  function resolveExampleRef(env = process.env) {
4643
4643
  const override = env.POME_EXAMPLE_REF?.trim();
4644
4644
  if (override) return override;
4645
- const baked = "f47a76e4951781e34bc063b31b2b1c1bb400802b".trim() ;
4645
+ const baked = "cc0696be326889bdad4e58559dff013f090c1310".trim() ;
4646
4646
  return FULL_SHA.test(baked) ? baked : "main";
4647
4647
  }
4648
4648
  function rawUrlFor(example, file, ref) {
@@ -4991,13 +4991,12 @@ async function loadTrialEvents(runDir) {
4991
4991
 
4992
4992
  // src/cli/main.ts
4993
4993
  var PACKAGE_VERSION = readPackageVersion();
4994
- var SESSION_CREATE_FORMATS = /* @__PURE__ */ new Set(["text", "json", "env"]);
4995
4994
  var DEFAULT_AGENT_FILE = "examples/agents/scripted-triage-agent.ts";
4996
4995
  var DEFAULT_AGENT_COMMAND = `node ${DEFAULT_AGENT_FILE}`;
4997
4996
  var MANIFEST_SCHEMA_URL = "https://pome.sh/schemas/v1/pome.json";
4998
4997
  var MAX_UNREADABLE_PATHS_SHOWN = 5;
4999
4998
  function readPackageVersion() {
5000
- if ("0.36.1".length > 0) return "0.36.1";
4999
+ if ("0.37.0".length > 0) return "0.37.0";
5001
5000
  try {
5002
5001
  const here = dirname(fileURLToPath(import.meta.url));
5003
5002
  const candidates = [
@@ -5293,23 +5292,13 @@ function createProgram() {
5293
5292
  ).option(
5294
5293
  "--secrets-file <path>",
5295
5294
  "Write shell exports containing session secrets to a local file with mode 0600"
5296
- ).option(
5297
- "--format <fmt>",
5298
- "Output format: text, json, or env. env writes the exports to --secrets-file instead of printing them.",
5299
- "text"
5300
- ).action(
5295
+ ).option("--json", "Print the sandbox as JSON instead of the human summary.", false).action(
5301
5296
  async (opts) => {
5302
5297
  try {
5303
- const format = opts.format.trim().toLowerCase();
5304
- if (!SESSION_CREATE_FORMATS.has(format)) {
5305
- console.error("Unknown session create format. Use one of: text, json, env.");
5306
- process.exitCode = 2;
5307
- return;
5308
- }
5309
5298
  await runSessionCreate({
5310
5299
  apiBaseUrl: opts.apiUrl,
5311
5300
  twins: opts.twin ?? [],
5312
- format,
5301
+ json: opts.json,
5313
5302
  secretsFile: opts.secretsFile,
5314
5303
  seedPath: opts.seed
5315
5304
  });
@@ -5327,7 +5316,7 @@ function createProgram() {
5327
5316
  "--state <state>",
5328
5317
  "Filter by sandbox state: running, ready, done, expired, or all. `running` also matches the server-side `ready` state, the way the dashboard shows them in one column.",
5329
5318
  "running"
5330
- ).option("--format <fmt>", "Output format: text or json", "text").action(
5319
+ ).option("--json", "Print the sandboxes as JSON.", false).action(
5331
5320
  async (opts) => {
5332
5321
  const validStates = [
5333
5322
  "running",
@@ -5348,7 +5337,7 @@ function createProgram() {
5348
5337
  apiBaseUrl: opts.apiUrl,
5349
5338
  limit: Number.parseInt(opts.limit, 10) || 20,
5350
5339
  state: opts.state,
5351
- format: opts.format
5340
+ json: opts.json
5352
5341
  });
5353
5342
  } catch (err) {
5354
5343
  console.error(friendlyHostedError(err));
@@ -5514,7 +5503,7 @@ function createProgram() {
5514
5503
  taskForRuns.config.runs
5515
5504
  );
5516
5505
  if (k > 1) {
5517
- const { runTrialGroup } = await import('../../runTrialGroup-FZUMQLDH.js');
5506
+ const { runTrialGroup } = await import('../../runTrialGroup-YACZ2WTV.js');
5518
5507
  const fileForRerun = relative(process.cwd(), file);
5519
5508
  const rerunCommand = defaultTask ? options.trials !== void 0 ? `pome run -n ${k}` : "pome run" : `pome run ${fileForRerun && !fileForRerun.startsWith("..") ? fileForRerun : file} -n ${k}`;
5520
5509
  const groupResult = await runTrialGroup({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pome-sh/cli",
3
- "version": "0.36.1",
3
+ "version": "0.37.0",
4
4
  "description": "Test AI agents against digital twins of real SaaS APIs. Records tool-call traces and scores them on pome.sh.",
5
5
  "keywords": [
6
6
  "ai",