@pome-sh/cli 0.38.0 → 0.39.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.
- package/dist/build-info.json +3 -3
- package/dist/src/cli/main.js +5 -66
- package/package.json +1 -1
package/dist/build-info.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"package": "pome-sh",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"git_sha": "
|
|
5
|
-
"build_time": "2026-08-
|
|
3
|
+
"version": "0.39.0",
|
|
4
|
+
"git_sha": "ba0167a6952cd2e837514246b574e2bd2465ed19",
|
|
5
|
+
"build_time": "2026-08-30T05:01:31.878Z"
|
|
6
6
|
}
|
package/dist/src/cli/main.js
CHANGED
|
@@ -9,7 +9,7 @@ import '../../chunk-PASFBRK4.js';
|
|
|
9
9
|
import { LINEAR_CHECKS } from '../../chunk-TSOSDKXP.js';
|
|
10
10
|
import '../../chunk-3FZY376K.js';
|
|
11
11
|
import '../../chunk-5NPGY73F.js';
|
|
12
|
-
import { TWIN_NAME_LIST,
|
|
12
|
+
import { TWIN_NAME_LIST, createGitHubSmokeApp } from '../../chunk-RPPF2KDQ.js';
|
|
13
13
|
import { readManifest, writeManifest, MANIFEST_JSON, readRequiredManifest, normalizeManifestTwins } from '../../chunk-DFOQGAKS.js';
|
|
14
14
|
import '../../chunk-XDU6TD4O.js';
|
|
15
15
|
import { MOUNTED_TWINS, deriveAgentSlug, exitCodeFor, HostedUsageError, HostedOrchError } from '../../chunk-NNXVR46L.js';
|
|
@@ -26,7 +26,7 @@ import '../../chunk-2K6BJ3PI.js';
|
|
|
26
26
|
import '../../chunk-FBSA5L36.js';
|
|
27
27
|
import { Command } from 'commander';
|
|
28
28
|
import { existsSync, readFileSync, realpathSync, statSync, constants } from 'node:fs';
|
|
29
|
-
import { mkdir, readFile,
|
|
29
|
+
import { mkdir, readFile, writeFile, readdir, copyFile, stat, cp } from 'node:fs/promises';
|
|
30
30
|
import { dirname, resolve, join, basename, relative, extname } from 'node:path';
|
|
31
31
|
import { fileURLToPath } from 'node:url';
|
|
32
32
|
import { execFile } from 'node:child_process';
|
|
@@ -4575,7 +4575,7 @@ function firstSentence(description) {
|
|
|
4575
4575
|
function resolveExampleRef(env = process.env) {
|
|
4576
4576
|
const override = env.POME_EXAMPLE_REF?.trim();
|
|
4577
4577
|
if (override) return override;
|
|
4578
|
-
const baked = "
|
|
4578
|
+
const baked = "ba0167a6952cd2e837514246b574e2bd2465ed19".trim() ;
|
|
4579
4579
|
return FULL_SHA.test(baked) ? baked : "main";
|
|
4580
4580
|
}
|
|
4581
4581
|
function rawUrlFor(example, file, ref) {
|
|
@@ -4929,7 +4929,7 @@ var DEFAULT_AGENT_COMMAND = `node ${DEFAULT_AGENT_FILE}`;
|
|
|
4929
4929
|
var MANIFEST_SCHEMA_URL = "https://pome.sh/schemas/v1/pome.json";
|
|
4930
4930
|
var MAX_UNREADABLE_PATHS_SHOWN = 5;
|
|
4931
4931
|
function readPackageVersion() {
|
|
4932
|
-
if ("0.
|
|
4932
|
+
if ("0.39.0".length > 0) return "0.39.0";
|
|
4933
4933
|
try {
|
|
4934
4934
|
const here = dirname(fileURLToPath(import.meta.url));
|
|
4935
4935
|
const candidates = [
|
|
@@ -5703,7 +5703,7 @@ function createProgram() {
|
|
|
5703
5703
|
})
|
|
5704
5704
|
);
|
|
5705
5705
|
});
|
|
5706
|
-
const twin = program.command("twin").summary("Run a twin on this machine").description("Start
|
|
5706
|
+
const twin = program.command("twin").summary("Run a twin on this machine").description("Start a twin on this machine, print its status or a starter seed file");
|
|
5707
5707
|
twin.command("start").argument(
|
|
5708
5708
|
"[name]",
|
|
5709
5709
|
`Twin name (${TWIN_NAME_LIST.join(" | ")}). Optional when --seed names exactly one twin.`
|
|
@@ -5728,21 +5728,6 @@ function createProgram() {
|
|
|
5728
5728
|
const { runTwinSeedCommand } = await import('../../twinSeed-7M4GOIBS.js');
|
|
5729
5729
|
await runTwinSeedCommand(names, options);
|
|
5730
5730
|
});
|
|
5731
|
-
twin.command("reset").argument("[name]", "Twin name", "github").summary("Reset a twin's saved state").description(
|
|
5732
|
-
"Delete the twin's database under `.pome/` or `.pome-data/`, and `.pome/twin-status.json`, the one file `pome twin status` reads for every twin. A twin holding its state in memory has nothing to delete."
|
|
5733
|
-
).action(async (name) => {
|
|
5734
|
-
if (!isTwinName(name)) {
|
|
5735
|
-
throw new Error(`Unknown twin '${name}'. Supported: ${TWIN_NAME_LIST.join(", ")}.`);
|
|
5736
|
-
}
|
|
5737
|
-
const dbPaths = name === "gmail" ? [".pome/gmail.db", ".pome-data/gmail/gmail.db"] : [`.pome/${name}.db`, `.pome-data/${name}/${name}.db`];
|
|
5738
|
-
for (const dbPath of dbPaths) {
|
|
5739
|
-
await rm(dbPath, { force: true });
|
|
5740
|
-
await rm(`${dbPath}-wal`, { force: true });
|
|
5741
|
-
await rm(`${dbPath}-shm`, { force: true });
|
|
5742
|
-
}
|
|
5743
|
-
await rm(".pome/twin-status.json", { force: true });
|
|
5744
|
-
console.log(`Standalone ${name} twin state reset.`);
|
|
5745
|
-
});
|
|
5746
5731
|
twin.command("status").description("Print standalone twin status").action(async () => {
|
|
5747
5732
|
if (!existsSync(".pome/twin-status.json")) {
|
|
5748
5733
|
console.log("No standalone twin status found.");
|
|
@@ -5750,15 +5735,6 @@ function createProgram() {
|
|
|
5750
5735
|
}
|
|
5751
5736
|
console.log(await import('node:fs/promises').then((fs) => fs.readFile(".pome/twin-status.json", "utf8")));
|
|
5752
5737
|
});
|
|
5753
|
-
program.command("endpoints").summary("List a twin's endpoints").argument("<name>", "Twin name").description("List the endpoints the github or gmail twin serves").action((name) => {
|
|
5754
|
-
const endpoints = name === "github" ? SUPPORTED_GITHUB_ENDPOINTS : name === "gmail" ? SUPPORTED_GMAIL_ENDPOINTS : null;
|
|
5755
|
-
if (!endpoints) {
|
|
5756
|
-
throw new Error("Endpoint listing is available for: github, gmail.");
|
|
5757
|
-
}
|
|
5758
|
-
for (const endpoint of endpoints) {
|
|
5759
|
-
console.log(`${endpoint} semantic`);
|
|
5760
|
-
}
|
|
5761
|
-
});
|
|
5762
5738
|
program.command("capture-server").summary("Record the agent's model calls").description(
|
|
5763
5739
|
"Boot an HTTP CONNECT-tunnel proxy that appends one LlmCallEvent per tunnel to events.jsonl. Spawned by `pome run`; agent traffic flows via HTTPS_PROXY."
|
|
5764
5740
|
).option("--port <port>", "TCP port to listen on (0 = ephemeral).", "8910").option(
|
|
@@ -5798,43 +5774,6 @@ function createProgram() {
|
|
|
5798
5774
|
});
|
|
5799
5775
|
return program;
|
|
5800
5776
|
}
|
|
5801
|
-
var SUPPORTED_GITHUB_ENDPOINTS = [
|
|
5802
|
-
"GET /repos/:owner/:repo",
|
|
5803
|
-
"GET /repos/:owner/:repo/issues",
|
|
5804
|
-
"GET /repos/:owner/:repo/issues/:number",
|
|
5805
|
-
"PATCH /repos/:owner/:repo/issues/:number",
|
|
5806
|
-
"POST /repos/:owner/:repo/issues/:number/comments",
|
|
5807
|
-
"GET /repos/:owner/:repo/labels",
|
|
5808
|
-
"POST /repos/:owner/:repo/labels",
|
|
5809
|
-
"GET /repos/:owner/:repo/issues/:number/labels",
|
|
5810
|
-
"POST /repos/:owner/:repo/issues/:number/labels",
|
|
5811
|
-
"DELETE /repos/:owner/:repo/issues/:number/labels/:name",
|
|
5812
|
-
"GET /repos/:owner/:repo/collaborators",
|
|
5813
|
-
"POST /repos/:owner/:repo/issues/:number/assignees"
|
|
5814
|
-
];
|
|
5815
|
-
var SUPPORTED_GMAIL_ENDPOINTS = [
|
|
5816
|
-
"GET /gmail/v1/users/:userId/profile",
|
|
5817
|
-
"GET|POST /gmail/v1/users/:userId/messages",
|
|
5818
|
-
"GET|DELETE /gmail/v1/users/:userId/messages/:id",
|
|
5819
|
-
"POST /gmail/v1/users/:userId/messages/{send,import,batchModify,batchDelete}",
|
|
5820
|
-
"POST /gmail/v1/users/:userId/messages/:id/{modify,trash,untrash}",
|
|
5821
|
-
"GET /gmail/v1/users/:userId/messages/:messageId/attachments/:id",
|
|
5822
|
-
"GET|POST /gmail/v1/users/:userId/drafts",
|
|
5823
|
-
"GET|PUT|DELETE /gmail/v1/users/:userId/drafts/:id",
|
|
5824
|
-
"POST /gmail/v1/users/:userId/drafts/send",
|
|
5825
|
-
"GET /gmail/v1/users/:userId/threads",
|
|
5826
|
-
"GET|DELETE /gmail/v1/users/:userId/threads/:id",
|
|
5827
|
-
"POST /gmail/v1/users/:userId/threads/:id/{modify,trash,untrash}",
|
|
5828
|
-
"GET|POST /gmail/v1/users/:userId/labels",
|
|
5829
|
-
"GET|PUT|PATCH|DELETE /gmail/v1/users/:userId/labels/:id",
|
|
5830
|
-
"GET /gmail/v1/users/:userId/history",
|
|
5831
|
-
"GET|POST /gmail/v1/users/:userId/settings/filters",
|
|
5832
|
-
"GET|DELETE /gmail/v1/users/:userId/settings/filters/:id",
|
|
5833
|
-
"GET /gmail/v1/users/:userId/settings/{forwardingAddresses,sendAs}",
|
|
5834
|
-
"GET /gmail/v1/users/:userId/settings/forwardingAddresses/:email",
|
|
5835
|
-
"GET /gmail/v1/users/:userId/settings/sendAs/:email",
|
|
5836
|
-
"POST /upload/gmail/v1/users/:userId/{messages,drafts} (media|multipart)"
|
|
5837
|
-
];
|
|
5838
5777
|
async function taskFiles(target) {
|
|
5839
5778
|
const resolved = resolve(target);
|
|
5840
5779
|
if (!existsSync(resolved)) {
|