summaryrefslogtreecommitdiffhomepage
path: root/packages/console/core/script
diff options
context:
space:
mode:
authorFrank <[email protected]>2026-02-22 18:41:34 -0500
committerFrank <[email protected]>2026-02-22 22:19:44 -0500
commit5712cff5c453a185ac75a160f76ca06135d6ab2d (patch)
tree6838fedd40aed31421265fdc8b9fe5826d396f86 /packages/console/core/script
parentee754c46f992dd4024e56e93246421246d16d13f (diff)
downloadopencode-5712cff5c453a185ac75a160f76ca06135d6ab2d.tar.gz
opencode-5712cff5c453a185ac75a160f76ca06135d6ab2d.zip
zen: track session in usage
Diffstat (limited to 'packages/console/core/script')
-rwxr-xr-xpackages/console/core/script/promote-lite.ts22
-rwxr-xr-xpackages/console/core/script/update-lite.ts28
2 files changed, 50 insertions, 0 deletions
diff --git a/packages/console/core/script/promote-lite.ts b/packages/console/core/script/promote-lite.ts
new file mode 100755
index 000000000..8fd58c805
--- /dev/null
+++ b/packages/console/core/script/promote-lite.ts
@@ -0,0 +1,22 @@
+#!/usr/bin/env bun
+
+import { $ } from "bun"
+import path from "path"
+import { LiteData } from "../src/lite"
+
+const stage = process.argv[2]
+if (!stage) throw new Error("Stage is required")
+
+const root = path.resolve(process.cwd(), "..", "..", "..")
+
+// read the secret
+const ret = await $`bun sst secret list`.cwd(root).text()
+const lines = ret.split("\n")
+const value = lines.find((line) => line.startsWith("ZEN_LITE_LIMITS"))?.split("=")[1]
+if (!value) throw new Error("ZEN_LITE_LIMITS not found")
+
+// validate value
+LiteData.validate(JSON.parse(value))
+
+// update the secret
+await $`bun sst secret set ZEN_LITE_LIMITS ${value} --stage ${stage}`
diff --git a/packages/console/core/script/update-lite.ts b/packages/console/core/script/update-lite.ts
new file mode 100755
index 000000000..2f3e66835
--- /dev/null
+++ b/packages/console/core/script/update-lite.ts
@@ -0,0 +1,28 @@
+#!/usr/bin/env bun
+
+import { $ } from "bun"
+import path from "path"
+import os from "os"
+import { LiteData } from "../src/lite"
+
+const root = path.resolve(process.cwd(), "..", "..", "..")
+const secrets = await $`bun sst secret list`.cwd(root).text()
+
+// read value
+const lines = secrets.split("\n")
+const oldValue = lines.find((line) => line.startsWith("ZEN_LITE_LIMITS"))?.split("=")[1] ?? "{}"
+if (!oldValue) throw new Error("ZEN_LITE_LIMITS not found")
+
+// store the prettified json to a temp file
+const filename = `lite-${Date.now()}.json`
+const tempFile = Bun.file(path.join(os.tmpdir(), filename))
+await tempFile.write(JSON.stringify(JSON.parse(oldValue), null, 2))
+console.log("tempFile", tempFile.name)
+
+// open temp file in vim and read the file on close
+await $`vim ${tempFile.name}`
+const newValue = JSON.stringify(JSON.parse(await tempFile.text()))
+LiteData.validate(JSON.parse(newValue))
+
+// update the secret
+await $`bun sst secret set ZEN_LITE_LIMITS ${newValue}`