sibyl-memory-cli 0.3.2__tar.gz → 0.3.3__tar.gz

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
  Metadata-Version: 2.4
2
2
  Name: sibyl-memory-cli
3
- Version: 0.3.2
3
+ Version: 0.3.3
4
4
  Summary: Command-line interface for the Sibyl Memory Plugin. `sibyl init` activates, `sibyl upgrade` runs the staker / subscription flow, `sibyl status` shows current tier and DB stats, `sibyl whoami` gives a one-line account summary, `sibyl devices` lists active devices and supports per-device revoke.
5
5
  Author-email: "SIBYL, Sibyl Labs LLC" <sibyl@sibyllabs.org>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "sibyl-memory-cli"
7
- version = "0.3.2"
7
+ version = "0.3.3"
8
8
  description = "Command-line interface for the Sibyl Memory Plugin. `sibyl init` activates, `sibyl upgrade` runs the staker / subscription flow, `sibyl status` shows current tier and DB stats, `sibyl whoami` gives a one-line account summary, `sibyl devices` lists active devices and supports per-device revoke."
9
9
  authors = [{ name = "SIBYL, Sibyl Labs LLC", email = "sibyl@sibyllabs.org" }]
10
10
  license = { text = "MIT" }
@@ -46,7 +46,11 @@ def _client_version() -> str:
46
46
  # ---- Defaults ----------------------------------------------------------
47
47
 
48
48
  API_BASE = os.environ.get("SIBYL_API_BASE", "https://api.sibyllabs.org")
49
- ACTIVATE_BASE = os.environ.get("SIBYL_ACTIVATE_BASE", "https://sibyllabs.org/plugin/activate")
49
+ # Dedicated short-URL auth subdomain (2026-05-20). Trust + phishing resistance:
50
+ # the URL the user sees in their terminal + browser is purpose-specific and
51
+ # short enough to read at a glance. Legacy URL `sibyllabs.org/plugin/activate
52
+ # ?session=<uuid>` still resolves so older CLI installs continue to work.
53
+ ACTIVATE_BASE = os.environ.get("SIBYL_ACTIVATE_BASE", "https://auth.sibyllabs.org")
50
54
  UPGRADE_BASE = os.environ.get("SIBYL_UPGRADE_BASE", "https://sibyllabs.org/plugin/upgrade")
51
55
 
52
56
  DEFAULT_CRED_PATH = Path("~/.sibyl-memory/credentials.json").expanduser()
@@ -236,7 +240,16 @@ def cmd_init(args: argparse.Namespace) -> int:
236
240
  session_id = str(uuid.uuid4())
237
241
  pairing_code = _gen_pairing_code()
238
242
  code_hash = _hash_pairing_code(pairing_code, session_id)
239
- activate_url = f"{ACTIVATE_BASE}?session={session_id}"
243
+ # Path-based URL on the dedicated auth subdomain (2026-05-20).
244
+ # auth.sibyllabs.org/<uuid> reads cleaner in the terminal than the old
245
+ # query-string form and aligns the wallet popup's "X wants you to sign in"
246
+ # header with the browser URL bar.
247
+ if ACTIVATE_BASE.rstrip("/").endswith(".sibyllabs.org") or ACTIVATE_BASE.rstrip("/").endswith("/auth"):
248
+ activate_url = f"{ACTIVATE_BASE.rstrip('/')}/{session_id}"
249
+ else:
250
+ # Legacy fallback: anyone with SIBYL_ACTIVATE_BASE pointing at the old
251
+ # /plugin/activate path keeps the query-string shape.
252
+ activate_url = f"{ACTIVATE_BASE}?session={session_id}"
240
253
 
241
254
  # Pre-register the session + pairing code hash with the server.
242
255
  # The code itself never leaves the user's machine until they type it
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sibyl-memory-cli
3
- Version: 0.3.2
3
+ Version: 0.3.3
4
4
  Summary: Command-line interface for the Sibyl Memory Plugin. `sibyl init` activates, `sibyl upgrade` runs the staker / subscription flow, `sibyl status` shows current tier and DB stats, `sibyl whoami` gives a one-line account summary, `sibyl devices` lists active devices and supports per-device revoke.
5
5
  Author-email: "SIBYL, Sibyl Labs LLC" <sibyl@sibyllabs.org>
6
6
  License: MIT