conduct-cli 0.6.26__tar.gz → 0.6.28__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.
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/PKG-INFO +2 -2
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/pyproject.toml +2 -2
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/guard.py +18 -2
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli.egg-info/PKG-INFO +2 -2
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli.egg-info/requires.txt +1 -1
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/README.md +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/setup.cfg +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/setup.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/__init__.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/api.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/guardmcp.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/__init__.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/base.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/posttooluse.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/precompact.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/pretooluse.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/session_parser.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/session_start.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/hooks/stop.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/log_util.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/main.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/mcp_server.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/memory.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli/paxel.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli.egg-info/SOURCES.txt +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli.egg-info/dependency_links.txt +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli.egg-info/entry_points.txt +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/src/conduct_cli.egg-info/top_level.txt +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_bash_operator_signature.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_command_word_matcher.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_guard_policy.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_guard_savings.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_hook_syntax.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_journal_drain.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_log_util.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_proxy_env.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_signed_policy.py +0 -0
- {conduct_cli-0.6.26 → conduct_cli-0.6.28}/tests/test_switch.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: conduct-cli
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.28
|
|
4
4
|
Summary: CLI for Conduct AI — install agents, manage projects, run tests
|
|
5
5
|
Author-email: Conduct AI <hello@conductai.ai>
|
|
6
6
|
License: MIT
|
|
@@ -23,7 +23,7 @@ Description-Content-Type: text/markdown
|
|
|
23
23
|
Requires-Dist: pyyaml>=6.0
|
|
24
24
|
Requires-Dist: rich>=13.0
|
|
25
25
|
Provides-Extra: booster
|
|
26
|
-
Requires-Dist: agent-booster[watch]>=0.
|
|
26
|
+
Requires-Dist: agent-booster[watch]>=0.6.6; extra == "booster"
|
|
27
27
|
|
|
28
28
|
<!-- mcp-name: io.github.sseshachala/conduct-cli -->
|
|
29
29
|
# conduct-cli
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "conduct-cli"
|
|
7
|
-
version = "0.6.
|
|
7
|
+
version = "0.6.28"
|
|
8
8
|
description = "CLI for Conduct AI — install agents, manage projects, run tests"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "MIT" }
|
|
@@ -26,7 +26,7 @@ classifiers = [
|
|
|
26
26
|
dependencies = ["pyyaml>=6.0", "rich>=13.0"]
|
|
27
27
|
|
|
28
28
|
[project.optional-dependencies]
|
|
29
|
-
booster = ["agent-booster[watch]>=0.
|
|
29
|
+
booster = ["agent-booster[watch]>=0.6.6"]
|
|
30
30
|
|
|
31
31
|
[project.urls]
|
|
32
32
|
Homepage = "https://conductai.ai"
|
|
@@ -1025,7 +1025,8 @@ def _check_and_upgrade_packages() -> None:
|
|
|
1025
1025
|
try:
|
|
1026
1026
|
with urllib.request.urlopen(f"https://pypi.org/pypi/{pkg}/json", timeout=4) as r:
|
|
1027
1027
|
latest = __import__("json").loads(r.read())["info"]["version"]
|
|
1028
|
-
|
|
1028
|
+
from packaging.version import Version
|
|
1029
|
+
if Version(latest) > Version(current):
|
|
1029
1030
|
stale.append((pkg, current, latest))
|
|
1030
1031
|
except Exception:
|
|
1031
1032
|
pass # offline or PyPI down — skip silently
|
|
@@ -1217,7 +1218,7 @@ def cmd_guard_sync(args):
|
|
|
1217
1218
|
CONDUCT_DIR = Path.home() / ".conduct"
|
|
1218
1219
|
PROXY_ENV_FILE = CONDUCT_DIR / "env"
|
|
1219
1220
|
PROXY_OVERRIDE = CONDUCT_DIR / "env-override"
|
|
1220
|
-
DEFAULT_PROXY_URL = "https://api.conductai.ai/proxy
|
|
1221
|
+
DEFAULT_PROXY_URL = "https://api.conductai.ai/proxy"
|
|
1221
1222
|
SHELL_RC_MARKER = "# Conduct Guard Proxy — managed by `conduct guard sync`"
|
|
1222
1223
|
SHELL_SOURCE_LINE = "[ -f ~/.conduct/env ] && . ~/.conduct/env"
|
|
1223
1224
|
|
|
@@ -1488,6 +1489,21 @@ def _ensure_booster(root: Path) -> None:
|
|
|
1488
1489
|
pass
|
|
1489
1490
|
print(f" {GREEN}Agent Booster:{RESET} {symbols_count} symbols indexed — Read/Grep intercept active")
|
|
1490
1491
|
|
|
1492
|
+
# Keep BOOSTER_SECRET in .mcp.json in sync with ~/.booster/.secret
|
|
1493
|
+
secret_file = Path.home() / ".booster" / ".secret"
|
|
1494
|
+
mcp_json = root / ".mcp.json"
|
|
1495
|
+
if secret_file.exists() and mcp_json.exists():
|
|
1496
|
+
try:
|
|
1497
|
+
expected = secret_file.read_text().strip()
|
|
1498
|
+
data = json.loads(mcp_json.read_text())
|
|
1499
|
+
server = data.get("mcpServers", {}).get("agent-booster", {})
|
|
1500
|
+
if server.get("env", {}).get("BOOSTER_SECRET") != expected:
|
|
1501
|
+
server.setdefault("env", {})["BOOSTER_SECRET"] = expected
|
|
1502
|
+
mcp_json.write_text(json.dumps(data, indent=2) + "\n")
|
|
1503
|
+
print(f" {GREEN}Agent Booster:{RESET} refreshed BOOSTER_SECRET in .mcp.json")
|
|
1504
|
+
except Exception:
|
|
1505
|
+
pass
|
|
1506
|
+
|
|
1491
1507
|
|
|
1492
1508
|
def _report_savings(cfg: dict, base_url: str, api_key: str) -> None:
|
|
1493
1509
|
import subprocess
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: conduct-cli
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.28
|
|
4
4
|
Summary: CLI for Conduct AI — install agents, manage projects, run tests
|
|
5
5
|
Author-email: Conduct AI <hello@conductai.ai>
|
|
6
6
|
License: MIT
|
|
@@ -23,7 +23,7 @@ Description-Content-Type: text/markdown
|
|
|
23
23
|
Requires-Dist: pyyaml>=6.0
|
|
24
24
|
Requires-Dist: rich>=13.0
|
|
25
25
|
Provides-Extra: booster
|
|
26
|
-
Requires-Dist: agent-booster[watch]>=0.
|
|
26
|
+
Requires-Dist: agent-booster[watch]>=0.6.6; extra == "booster"
|
|
27
27
|
|
|
28
28
|
<!-- mcp-name: io.github.sseshachala/conduct-cli -->
|
|
29
29
|
# conduct-cli
|
|
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
|
|
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
|