arbella 0.1.2 → 0.1.3
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/README.md +12 -0
- package/dist/index.js +31 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -44,6 +44,7 @@ Needs Node 18+.
|
|
|
44
44
|
```sh
|
|
45
45
|
npm install -g arbella
|
|
46
46
|
arbella --help
|
|
47
|
+
arbella update # later: update arbella itself
|
|
47
48
|
```
|
|
48
49
|
|
|
49
50
|
## What it does
|
|
@@ -71,6 +72,7 @@ Supported today: **Claude Code**, **Codex**, and **Cursor**. Cursor support cove
|
|
|
71
72
|
| [`arbella push`](#arbella-push) | Snapshot your setup and push it — the everyday one |
|
|
72
73
|
| [`arbella pull <url>`](#arbella-pull) | Rebuild your setup on a fresh machine |
|
|
73
74
|
| [`arbella status`](#arbella-status) | Show what a push would change — read-only |
|
|
75
|
+
| [`arbella update`](#arbella-update) | Update arbella itself through npm |
|
|
74
76
|
| [`arbella auth`](#arbella-auth) | Sign in to your repo host |
|
|
75
77
|
| [`arbella secrets`](#arbella-secrets) | Move credentials between machines, off Git |
|
|
76
78
|
|
|
@@ -143,6 +145,16 @@ arbella status --json # pipe it somewhere
|
|
|
143
145
|
|
|
144
146
|
New and modified files, plugin drift, the secrets it would skip. Writes nothing, installs nothing.
|
|
145
147
|
|
|
148
|
+
### `arbella update`
|
|
149
|
+
|
|
150
|
+
Updates the Arbella CLI package itself. It does not touch your backed-up Claude, Codex, or Cursor setup.
|
|
151
|
+
|
|
152
|
+
```sh
|
|
153
|
+
arbella update # npm install -g arbella@latest
|
|
154
|
+
arbella update --version 0.1.2 # pin a specific release
|
|
155
|
+
arbella update --dry-run # show the npm command only
|
|
156
|
+
```
|
|
157
|
+
|
|
146
158
|
### `arbella auth`
|
|
147
159
|
|
|
148
160
|
Handles sign-in to your repo host. You rarely call it yourself — `push` and `pull` sign in on their own when they hit a private repo. It's here for when you'd rather log in ahead of time, or check where you stand.
|
package/dist/index.js
CHANGED
|
@@ -7699,6 +7699,35 @@ function renderChangeLine(c) {
|
|
|
7699
7699
|
return `${sigil} ${c.repoPath}${linkTag}`;
|
|
7700
7700
|
}
|
|
7701
7701
|
|
|
7702
|
+
// src/commands/update.ts
|
|
7703
|
+
init_version();
|
|
7704
|
+
init_install();
|
|
7705
|
+
init_log();
|
|
7706
|
+
function normalizeVersion(version) {
|
|
7707
|
+
const trimmed = version?.trim();
|
|
7708
|
+
if (!trimmed) return "latest";
|
|
7709
|
+
if (trimmed.startsWith("arbella@")) return trimmed.slice("arbella@".length);
|
|
7710
|
+
return trimmed.replace(/^v(?=\d)/, "");
|
|
7711
|
+
}
|
|
7712
|
+
function packageSpec(version) {
|
|
7713
|
+
return `arbella@${normalizeVersion(version)}`;
|
|
7714
|
+
}
|
|
7715
|
+
function register7(program) {
|
|
7716
|
+
program.command("update").description("Update arbella itself through npm").option("--version <version>", "install a specific arbella version or npm tag instead of latest").option("--dry-run", "show the npm command without running it").action(async (opts) => {
|
|
7717
|
+
await run6(opts);
|
|
7718
|
+
});
|
|
7719
|
+
}
|
|
7720
|
+
async function run6(opts = {}) {
|
|
7721
|
+
const spec = packageSpec(opts.version);
|
|
7722
|
+
if (opts.dryRun) {
|
|
7723
|
+
log.info(`Would run: npm install -g ${spec}`);
|
|
7724
|
+
return;
|
|
7725
|
+
}
|
|
7726
|
+
log.info(`Updating arbella ${getPackageVersion()} -> ${spec}`);
|
|
7727
|
+
await npmInstallGlobal(spec);
|
|
7728
|
+
log.success(`arbella updated (${spec}).`);
|
|
7729
|
+
}
|
|
7730
|
+
|
|
7702
7731
|
// src/commands/secrets.ts
|
|
7703
7732
|
import path23 from "path";
|
|
7704
7733
|
import * as clack2 from "@clack/prompts";
|
|
@@ -7912,7 +7941,7 @@ function assertBundle(value) {
|
|
|
7912
7941
|
init_fs();
|
|
7913
7942
|
init_log();
|
|
7914
7943
|
var DEFAULT_BLOB_FILE = "arbella-secrets.blob";
|
|
7915
|
-
function
|
|
7944
|
+
function register8(program) {
|
|
7916
7945
|
const secrets = program.command("secrets").description(
|
|
7917
7946
|
"Move secret files (auth tokens / credentials) between machines via an encrypted, passphrase-protected blob. Never uses git."
|
|
7918
7947
|
);
|
|
@@ -8106,6 +8135,7 @@ Supported tools: ${supported}.`
|
|
|
8106
8135
|
register5(program);
|
|
8107
8136
|
register6(program);
|
|
8108
8137
|
register7(program);
|
|
8138
|
+
register8(program);
|
|
8109
8139
|
return program;
|
|
8110
8140
|
}
|
|
8111
8141
|
async function main(argv = process.argv) {
|