akashcli 4.7.2__tar.gz → 4.7.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.
Files changed (33) hide show
  1. {akashcli-4.7.2 → akashcli-4.7.3}/PKG-INFO +1 -1
  2. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/__init__.py +1 -1
  3. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/cli.py +32 -5
  4. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli.egg-info/PKG-INFO +1 -1
  5. {akashcli-4.7.2 → akashcli-4.7.3}/pyproject.toml +1 -1
  6. {akashcli-4.7.2 → akashcli-4.7.3}/README.md +0 -0
  7. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/_net.py +0 -0
  8. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/auth.py +0 -0
  9. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/client.py +0 -0
  10. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/config.py +0 -0
  11. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/crypto.py +0 -0
  12. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/env_manager.py +0 -0
  13. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/exceptions.py +0 -0
  14. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/exec.py +0 -0
  15. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/integrity.py +0 -0
  16. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/logger.py +0 -0
  17. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/models.py +0 -0
  18. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/p2p.py +0 -0
  19. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/packages.py +0 -0
  20. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/relay.py +0 -0
  21. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/restore.py +0 -0
  22. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/snapshot_crypto.py +0 -0
  23. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/storage.py +0 -0
  24. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/terminal.py +0 -0
  25. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/updater.py +0 -0
  26. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/uploader.py +0 -0
  27. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli/utils.py +0 -0
  28. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli.egg-info/SOURCES.txt +0 -0
  29. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli.egg-info/dependency_links.txt +0 -0
  30. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli.egg-info/entry_points.txt +0 -0
  31. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli.egg-info/requires.txt +0 -0
  32. {akashcli-4.7.2 → akashcli-4.7.3}/akashcli.egg-info/top_level.txt +0 -0
  33. {akashcli-4.7.2 → akashcli-4.7.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akashcli
3
- Version: 4.7.2
3
+ Version: 4.7.3
4
4
  Summary: Akash CLI — secure remote shell relay, file vault, and device management
5
5
  License-Expression: MIT
6
6
  Keywords: akash,cli,relay,remote-shell,vault
@@ -2,7 +2,7 @@ try:
2
2
  from importlib.metadata import version
3
3
  __version__ = version("akashcli")
4
4
  except Exception:
5
- __version__ = "4.7.2"
5
+ __version__ = "4.7.3"
6
6
 
7
7
  AKASH_VERSION = __version__
8
8
 
@@ -2890,6 +2890,14 @@ def agent_info(
2890
2890
  except Exception:
2891
2891
  status = "offline (server unreachable)"
2892
2892
 
2893
+ csec = cached_profile.get("client_secret")
2894
+ mcp_url = None
2895
+ if csec:
2896
+ import urllib.parse
2897
+ dev_fp = _device_fingerprint()
2898
+ params = urllib.parse.urlencode({"cid": cid, "csec": csec, "dfp": dev_fp})
2899
+ mcp_url = f"{base}/mcp?{params}"
2900
+
2893
2901
  _p()
2894
2902
  print(f" {_C}╭─ 🤖 AGENT PERMISSION DETAILS: {_W}{name}{_RS} {_dim('(' + pid + ')')}")
2895
2903
  print(f" {_GR}│{_RS} {_DM}Profile ID :{_RS} {_ye(pid)}")
@@ -2897,6 +2905,9 @@ def agent_info(
2897
2905
  st_col = _G if "active" in status.lower() else (_Y if "pending" in status.lower() else _R)
2898
2906
  print(f" {_GR}│{_RS} {_DM}Status :{_RS} {st_col}{status.upper()}{_RS}")
2899
2907
  print(f" {_GR}│{_RS} {_DM}Active Scopes :{_RS} {_cy(scopes)}")
2908
+ print(f" {_GR}│{_RS} {_DM}Server URL :{_RS} {_cy(base)}")
2909
+ if mcp_url:
2910
+ print(f" {_GR}│{_RS} {_DM}Connection URL :{_RS} {_dim(mcp_url)}")
2900
2911
  print(f" {_GR}│{_RS}")
2901
2912
  print(f" {_GR}│{_RS} {_DM}PERMISSIONS BREAKDOWN:{_RS}")
2902
2913
  print(f" {_GR}│{_RS} • Code Reading : {_G}[ALLOWED]{_RS}")
@@ -3040,18 +3051,34 @@ def agent_create(
3040
3051
  try: agents_file.chmod(0o600)
3041
3052
  except OSError: pass
3042
3053
 
3054
+ cid = d["client_id"]
3055
+ csec = d["client_secret"]
3056
+ dev_fp = _device_fingerprint()
3057
+ import urllib.parse
3058
+ params = urllib.parse.urlencode({"cid": cid, "csec": csec, "dfp": dev_fp})
3059
+ mcp_url = f"{base}/mcp?{params}"
3060
+
3043
3061
  _p()
3044
3062
  _ok(f"Agent Credentials Issued & Saved Locally: {_cy(name)}")
3045
- print(f" {_DM}Profile ID :{_RS} {_C}{profile_id}{_RS}")
3046
- print(f" {_DM}Client ID :{_RS} {_ye(d['client_id'])}")
3047
- print(f" {_DM}Client Secret :{_RS} {_W}{d['client_secret']}{_RS}")
3048
- print(f" {_DM}Expires At :{_RS} {_dim(d['expires_at'][:19].replace('T', ' '))} UTC ({ttl} days)")
3063
+ print(f" {_DM}Profile ID :{_RS} {_C}{profile_id}{_RS}")
3064
+ print(f" {_DM}Client ID :{_RS} {_ye(cid)}")
3065
+ print(f" {_DM}Client Secret :{_RS} {_W}{csec}{_RS}")
3066
+ print(f" {_DM}Server URL :{_RS} {_cy(base)}")
3067
+ print(f" {_DM}Connection URL :{_RS} {_dim(mcp_url)}")
3068
+ print(f" {_DM}Expires At :{_RS} {_dim(d['expires_at'][:19].replace('T', ' '))} UTC ({ttl} days)")
3069
+ _p()
3070
+ print(" " + _C + "Claude Desktop / Cursor" + _RS + " " + _dim("(config.json)") + ":")
3071
+ claude_cfg = json.dumps({"mcpServers": {"akash": {"url": mcp_url}}}, indent=2)
3072
+ for c_line in claude_cfg.splitlines():
3073
+ print(" " + c_line)
3049
3074
  _p()
3050
- _info("To use in Cursor or Claude Desktop, add a Command MCP Server with:")
3075
+ _info("To run local worker or generate temporary share links:")
3051
3076
  if url:
3052
3077
  print(f" {_G}akash mcp serve --id {profile_id} --url {url}{_RS}")
3078
+ print(f" {_DM}akash mcp share {profile_id} --temp 30m --url {url}{_RS}")
3053
3079
  else:
3054
3080
  print(f" {_G}akash mcp serve --id {profile_id}{_RS}")
3081
+ print(f" {_DM}akash mcp share {profile_id} --temp 30m{_RS}")
3055
3082
  _p()
3056
3083
 
3057
3084
  @agent_app.command("requests")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akashcli
3
- Version: 4.7.2
3
+ Version: 4.7.3
4
4
  Summary: Akash CLI — secure remote shell relay, file vault, and device management
5
5
  License-Expression: MIT
6
6
  Keywords: akash,cli,relay,remote-shell,vault
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "akashcli"
3
- version = "4.7.2"
3
+ version = "4.7.3"
4
4
  description = "Akash CLI — secure remote shell relay, file vault, and device management"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.9"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes