feat(launcher): mycodex 默认启用 --dangerously-bypass-approvals-and-sandbox
This commit is contained in:
@@ -46,9 +46,9 @@ _BACKENDS: dict[str, dict] = {
|
|||||||
"binary": "codex",
|
"binary": "codex",
|
||||||
"env_bin": "CODEX_BIN",
|
"env_bin": "CODEX_BIN",
|
||||||
"sessions_root": lambda: Path.home() / ".codex" / "sessions",
|
"sessions_root": lambda: Path.home() / ".codex" / "sessions",
|
||||||
"session_pattern": "**/*.jsonl",
|
"session_pattern": "**/*.jsonl",
|
||||||
"default_args": [],
|
"default_args": ["--dangerously-bypass-approvals-and-sandbox"],
|
||||||
"not_found_msg": (
|
"not_found_msg": (
|
||||||
"[red]codex CLI not found in PATH.[/red] Install with "
|
"[red]codex CLI not found in PATH.[/red] Install with "
|
||||||
"[cyan]npm install -g @openai/codex[/cyan] or set [cyan]CODEX_BIN[/cyan]."
|
"[cyan]npm install -g @openai/codex[/cyan] or set [cyan]CODEX_BIN[/cyan]."
|
||||||
),
|
),
|
||||||
|
|||||||
+8
-8
@@ -251,7 +251,7 @@ class TestCodexSubcommand:
|
|||||||
result = runner.invoke(cli, ["codex"])
|
result = runner.invoke(cli, ["codex"])
|
||||||
assert result.exit_code == 0
|
assert result.exit_code == 0
|
||||||
mock_run.assert_called_once()
|
mock_run.assert_called_once()
|
||||||
assert mock_run.call_args[0][0] == ["/usr/bin/codex"]
|
assert mock_run.call_args[0][0] == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox"]
|
||||||
|
|
||||||
def test_missing_binary_error(self) -> None:
|
def test_missing_binary_error(self) -> None:
|
||||||
runner = CliRunner()
|
runner = CliRunner()
|
||||||
@@ -294,11 +294,11 @@ class TestCodexPassthrough:
|
|||||||
|
|
||||||
def test_resume_subcommand_passes_through(self, tmp_path: Path) -> None:
|
def test_resume_subcommand_passes_through(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["resume", "abc123"], tmp_path)
|
cmd = self._invoke(["resume", "abc123"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "resume", "abc123"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "resume", "abc123"]
|
||||||
|
|
||||||
def test_continue_subcommand_passes_through(self, tmp_path: Path) -> None:
|
def test_continue_subcommand_passes_through(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["continue"], tmp_path)
|
cmd = self._invoke(["continue"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "continue"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "continue"]
|
||||||
|
|
||||||
|
|
||||||
class TestCodexResumeOptions:
|
class TestCodexResumeOptions:
|
||||||
@@ -320,23 +320,23 @@ class TestCodexResumeOptions:
|
|||||||
|
|
||||||
def test_r_flag_maps_to_resume(self, tmp_path: Path) -> None:
|
def test_r_flag_maps_to_resume(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["-r", "abc123"], tmp_path)
|
cmd = self._invoke(["-r", "abc123"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "resume", "abc123"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "resume", "abc123"]
|
||||||
|
|
||||||
def test_resume_flag_maps_to_resume(self, tmp_path: Path) -> None:
|
def test_resume_flag_maps_to_resume(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["--resume", "abc123"], tmp_path)
|
cmd = self._invoke(["--resume", "abc123"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "resume", "abc123"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "resume", "abc123"]
|
||||||
|
|
||||||
def test_continue_flag_maps_to_continue(self, tmp_path: Path) -> None:
|
def test_continue_flag_maps_to_continue(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["--continue"], tmp_path)
|
cmd = self._invoke(["--continue"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "continue"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "continue"]
|
||||||
|
|
||||||
def test_last_flag_maps_to_resume_last(self, tmp_path: Path) -> None:
|
def test_last_flag_maps_to_resume_last(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["--last"], tmp_path)
|
cmd = self._invoke(["--last"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "resume", "--last"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "resume", "--last"]
|
||||||
|
|
||||||
def test_all_flag_maps_to_resume_all(self, tmp_path: Path) -> None:
|
def test_all_flag_maps_to_resume_all(self, tmp_path: Path) -> None:
|
||||||
cmd = self._invoke(["--all"], tmp_path)
|
cmd = self._invoke(["--all"], tmp_path)
|
||||||
assert cmd == ["/usr/bin/codex", "resume", "--all"]
|
assert cmd == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "resume", "--all"]
|
||||||
|
|
||||||
|
|
||||||
class TestCodexListSessions:
|
class TestCodexListSessions:
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ class TestMycodexEntrypoint:
|
|||||||
mock_run.return_value = MagicMock(returncode=0)
|
mock_run.return_value = MagicMock(returncode=0)
|
||||||
result = runner.invoke(codex_cli, [])
|
result = runner.invoke(codex_cli, [])
|
||||||
assert result.exit_code == 0
|
assert result.exit_code == 0
|
||||||
assert mock_run.call_args[0][0] == ["/usr/bin/codex"]
|
assert mock_run.call_args[0][0] == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox"]
|
||||||
|
|
||||||
def test_version_shows_mycodex(self) -> None:
|
def test_version_shows_mycodex(self) -> None:
|
||||||
runner = CliRunner()
|
runner = CliRunner()
|
||||||
@@ -104,4 +104,4 @@ class TestMycodexEntrypoint:
|
|||||||
mock_run.return_value = MagicMock(returncode=0)
|
mock_run.return_value = MagicMock(returncode=0)
|
||||||
result = runner.invoke(codex_cli, ["--cwd", str(tmp_path), "-r", "abc123"])
|
result = runner.invoke(codex_cli, ["--cwd", str(tmp_path), "-r", "abc123"])
|
||||||
assert result.exit_code == 0
|
assert result.exit_code == 0
|
||||||
assert mock_run.call_args[0][0] == ["/usr/bin/codex", "resume", "abc123"]
|
assert mock_run.call_args[0][0] == ["/usr/bin/codex", "--dangerously-bypass-approvals-and-sandbox", "resume", "abc123"]
|
||||||
|
|||||||
Reference in New Issue
Block a user