forgexa-cli 1.36.3__tar.gz → 1.37.0__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.
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/PKG-INFO +1 -1
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/__init__.py +1 -1
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/agent_core.py +5 -3
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/daemon.py +3 -1
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli.egg-info/PKG-INFO +1 -1
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/pyproject.toml +1 -1
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/README.md +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/_build_config.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/_local_bind.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/autoupgrade.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/main.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli/py.typed +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli.egg-info/SOURCES.txt +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli.egg-info/dependency_links.txt +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli.egg-info/entry_points.txt +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli.egg-info/requires.txt +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/forgexa_cli.egg-info/top_level.txt +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/setup.cfg +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_auth_and_runtime_commands.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_autoupgrade.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_check_command.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_expiry_warnings_and_revoke.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_local_bind_commands.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_runtime_credentials.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_session_credentials.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_silent_install.py +0 -0
- {forgexa_cli-1.36.3 → forgexa_cli-1.37.0}/tests/test_upgrade_observability.py +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"""forgexa-cli — Forgexa command-line client."""
|
|
2
|
-
__version__ = "1.
|
|
2
|
+
__version__ = "1.37.0"
|
|
@@ -1427,9 +1427,10 @@ def prepare_claude_environment(
|
|
|
1427
1427
|
Claude use its default config, cache, and session locations under a
|
|
1428
1428
|
writable task sandbox.
|
|
1429
1429
|
|
|
1430
|
-
Mirror only stable authentication and settings files
|
|
1431
|
-
|
|
1432
|
-
|
|
1430
|
+
Mirror only stable authentication and settings files, including Claude
|
|
1431
|
+
Code's current credential store. Runtime state such as session-env,
|
|
1432
|
+
projects, task locks, and history must never cross into an isolated daemon
|
|
1433
|
+
invocation. Do not set CLAUDE_CODE_DEBUG_LOGS_DIR:
|
|
1433
1434
|
Claude Code 2.1.63 treats a directory supplied through that variable as
|
|
1434
1435
|
a file after TodoWrite and exits with EISDIR.
|
|
1435
1436
|
"""
|
|
@@ -1444,6 +1445,7 @@ def prepare_claude_environment(
|
|
|
1444
1445
|
|
|
1445
1446
|
source_files = [
|
|
1446
1447
|
(Path.home() / ".claude.json", sandbox_root / ".claude.json"),
|
|
1448
|
+
(Path.home() / ".claude" / ".credentials.json", home_claude_dir / ".credentials.json"),
|
|
1447
1449
|
(Path.home() / ".claude" / "settings.json", home_claude_dir / "settings.json"),
|
|
1448
1450
|
(Path.home() / ".claude" / "settings.local.json", home_claude_dir / "settings.local.json"),
|
|
1449
1451
|
]
|
|
@@ -910,7 +910,7 @@ except (ImportError, ModuleNotFoundError):
|
|
|
910
910
|
# DAEMON_VERSION is the protocol/logic version of the daemon code.
|
|
911
911
|
# Kept in sync with pyproject.toml version via bump-version.sh.
|
|
912
912
|
# CLIENT_TYPE identifies which packaging/distribution this daemon runs in.
|
|
913
|
-
DAEMON_VERSION = "1.
|
|
913
|
+
DAEMON_VERSION = "1.37.0"
|
|
914
914
|
|
|
915
915
|
|
|
916
916
|
def _detect_client_type() -> str:
|
|
@@ -4764,6 +4764,8 @@ class ProcessManager:
|
|
|
4764
4764
|
signals, which strongly indicates a pre-call CLI failure printed as
|
|
4765
4765
|
plain text (for example "API Error: 429 ...").
|
|
4766
4766
|
"""
|
|
4767
|
+
if result.failure_code == "all_agents_rate_limited":
|
|
4768
|
+
return False
|
|
4767
4769
|
error_text = ProcessManager._failure_pattern_channels(result).lower()
|
|
4768
4770
|
return (
|
|
4769
4771
|
any(p in error_text for p in ProcessManager.RATE_LIMIT_PATTERNS)
|
|
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
|
|
File without changes
|