claude-team-mcp 0.6.0__tar.gz → 0.6.1__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 (84) hide show
  1. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.pebbles/events.jsonl +3 -0
  2. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.pebbles/pebbles.db +0 -0
  3. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/CHANGELOG.md +5 -0
  4. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/PKG-INFO +1 -1
  5. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/pyproject.toml +1 -1
  6. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/cli_backends/codex.py +4 -4
  7. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/worker_prompt.py +1 -1
  8. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_cli_backends.py +7 -7
  9. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/uv.lock +1 -1
  10. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.beads/issues.jsonl +0 -0
  11. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.claude/settings.json +0 -0
  12. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.claude/settings.local.json +0 -0
  13. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.claude-plugin/marketplace.json +0 -0
  14. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.claude-plugin/plugin.json +0 -0
  15. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.gitattributes +0 -0
  16. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.gitignore +0 -0
  17. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.mcp.json +0 -0
  18. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.pebbles/.gitignore +0 -0
  19. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/.pebbles/config.json +0 -0
  20. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/CLAUDE.md +0 -0
  21. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/HAPPY_INTEGRATION_RESEARCH.md +0 -0
  22. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/Makefile +0 -0
  23. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/NOTES.md +0 -0
  24. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/README.md +0 -0
  25. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/commands/check-workers.md +0 -0
  26. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/commands/cleanup-worktrees.md +0 -0
  27. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/commands/merge-worker.md +0 -0
  28. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/commands/pr-worker.md +0 -0
  29. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/commands/spawn-workers.md +0 -0
  30. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/commands/team-summary.md +0 -0
  31. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/config/mcporter.json +0 -0
  32. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/docs/ISSUE_TRACKER_ABSTRACTION.md +0 -0
  33. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/scripts/install-commands.py +0 -0
  34. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/settings.json +0 -0
  35. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/__init__.py +0 -0
  36. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/__main__.py +0 -0
  37. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/cli_backends/__init__.py +0 -0
  38. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/cli_backends/base.py +0 -0
  39. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/cli_backends/claude.py +0 -0
  40. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/colors.py +0 -0
  41. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/formatting.py +0 -0
  42. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/idle_detection.py +0 -0
  43. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/issue_tracker/__init__.py +0 -0
  44. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/iterm_utils.py +0 -0
  45. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/names.py +0 -0
  46. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/profile.py +0 -0
  47. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/registry.py +0 -0
  48. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/schemas/__init__.py +0 -0
  49. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/schemas/codex.py +0 -0
  50. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/server.py +0 -0
  51. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/session_state.py +0 -0
  52. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/subprocess_cache.py +0 -0
  53. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/__init__.py +0 -0
  54. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/adopt_worker.py +0 -0
  55. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/annotate_worker.py +0 -0
  56. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/check_idle_workers.py +0 -0
  57. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/close_workers.py +0 -0
  58. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/discover_workers.py +0 -0
  59. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/examine_worker.py +0 -0
  60. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/issue_tracker_help.py +0 -0
  61. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/list_workers.py +0 -0
  62. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/list_worktrees.py +0 -0
  63. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/message_workers.py +0 -0
  64. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/read_worker_logs.py +0 -0
  65. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/spawn_workers.py +0 -0
  66. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/tools/wait_idle_workers.py +0 -0
  67. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/utils/__init__.py +0 -0
  68. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/utils/constants.py +0 -0
  69. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/utils/errors.py +0 -0
  70. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/utils/worktree_detection.py +0 -0
  71. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/src/claude_team_mcp/worktree.py +0 -0
  72. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/__init__.py +0 -0
  73. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_codex_schema.py +0 -0
  74. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_colors.py +0 -0
  75. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_formatting.py +0 -0
  76. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_idle_detection.py +0 -0
  77. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_issue_tracker.py +0 -0
  78. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_issue_tracker_integration.py +0 -0
  79. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_iterm_utils.py +0 -0
  80. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_names.py +0 -0
  81. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_registry.py +0 -0
  82. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_session_state.py +0 -0
  83. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_worker_prompt.py +0 -0
  84. {claude_team_mcp-0.6.0 → claude_team_mcp-0.6.1}/tests/test_worktree_detection.py +0 -0
@@ -54,3 +54,6 @@
54
54
  {"type":"create","timestamp":"2026-01-21T19:06:11.932386Z","issue_id":"cic-c09","payload":{"description":"Three tests in test_cli_backends.py are failing because they expect --full-auto flag but implementation uses --dangerously-bypass-approvals-and-sandbox. Need to investigate which is correct and update either the implementation or tests accordingly.","priority":"2","title":"Fix failing Codex CLI tests","type":"task"}}
55
55
  {"type":"status_update","timestamp":"2026-01-21T19:06:35.580259Z","issue_id":"cic-c09","payload":{"status":"in_progress"}}
56
56
  {"type":"close","timestamp":"2026-01-21T19:08:45.621746Z","issue_id":"cic-c09","payload":{}}
57
+ {"type":"create","timestamp":"2026-01-21T19:49:17.679651Z","issue_id":"cic-13e","payload":{"description":"Codex CLI should use --dangerously-bypass-approvals-and-sandbox instead of --full-auto when skip_permissions is requested.","priority":"1","title":"Fix Codex skip permissions flag","type":"bug"}}
58
+ {"type":"status_update","timestamp":"2026-01-21T19:49:19.650961Z","issue_id":"cic-13e","payload":{"status":"in_progress"}}
59
+ {"type":"close","timestamp":"2026-01-21T19:50:32.252535Z","issue_id":"cic-13e","payload":{}}
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.6.1] - 2026-01-21
11
+
12
+ ### Fixed
13
+ - Correct Codex skip-permissions flag (use `--dangerously-bypass-approvals-and-sandbox`)
14
+
10
15
  ## [0.6.0] - 2026-01-21
11
16
 
12
17
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-team-mcp
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: MCP server for managing multiple Claude Code sessions via iTerm2
5
5
  Project-URL: Homepage, https://github.com/Martian-Engineering/claude-team
6
6
  Project-URL: Repository, https://github.com/Martian-Engineering/claude-team
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "claude-team-mcp"
3
- version = "0.6.0"
3
+ version = "0.6.1"
4
4
  description = "MCP server for managing multiple Claude Code sessions via iTerm2"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -22,7 +22,7 @@ class CodexCLI(AgentCLI):
22
22
 
23
23
  Codex CLI characteristics:
24
24
  - Uses `codex` command
25
- - Has --full-auto flag for non-interactive mode
25
+ - Has --dangerously-bypass-approvals-and-sandbox flag for non-interactive mode
26
26
  - No known Stop hook equivalent (may need JSONL streaming or timeouts)
27
27
  """
28
28
 
@@ -50,7 +50,7 @@ class CodexCLI(AgentCLI):
50
50
  Build Codex CLI arguments for interactive mode.
51
51
 
52
52
  Args:
53
- dangerously_skip_permissions: Maps to --full-auto for Codex
53
+ dangerously_skip_permissions: Maps to --dangerously-bypass-approvals-and-sandbox for Codex
54
54
  settings_file: Ignored - Codex doesn't support settings injection
55
55
 
56
56
  Returns:
@@ -58,9 +58,9 @@ class CodexCLI(AgentCLI):
58
58
  """
59
59
  args: list[str] = []
60
60
 
61
- # Codex uses --full-auto for autonomous operation.
61
+ # Codex uses --dangerously-bypass-approvals-and-sandbox for autonomous operation.
62
62
  if dangerously_skip_permissions:
63
- args.append("--full-auto")
63
+ args.append("--dangerously-bypass-approvals-and-sandbox")
64
64
 
65
65
  # Note: settings_file is ignored - Codex doesn't support this
66
66
  # Idle detection uses session file polling instead
@@ -254,7 +254,7 @@ def _generate_codex_worker_prompt(
254
254
  Codex workers differ from Claude:
255
255
  - No claude-team MCP markers (Codex doesn't parse JSONL markers)
256
256
  - No Stop hook idle detection (uses output pattern matching or timeouts)
257
- - Runs with --full-auto instead of --dangerously-skip-permissions
257
+ - Runs with --dangerously-bypass-approvals-and-sandbox instead of --dangerously-skip-permissions
258
258
 
259
259
  Args:
260
260
  session_id: The unique identifier for this worker session
@@ -158,11 +158,11 @@ class TestCodexCLI:
158
158
  args = cli.build_args()
159
159
  assert args == []
160
160
 
161
- def test_build_args_skip_permissions_maps_to_full_auto(self):
162
- """skip_permissions should map to --full-auto for Codex."""
161
+ def test_build_args_skip_permissions_maps_to_bypass_approvals(self):
162
+ """skip_permissions should map to --dangerously-bypass-approvals-and-sandbox for Codex."""
163
163
  cli = CodexCLI()
164
164
  args = cli.build_args(dangerously_skip_permissions=True)
165
- assert "--full-auto" in args
165
+ assert "--dangerously-bypass-approvals-and-sandbox" in args
166
166
 
167
167
  def test_build_args_settings_file_ignored(self):
168
168
  """Settings file should be ignored (Codex doesn't support it)."""
@@ -195,20 +195,20 @@ class TestCodexCLI:
195
195
  cmd = cli.build_full_command()
196
196
  assert cmd == "codex"
197
197
 
198
- def test_build_full_command_with_full_auto(self):
199
- """build_full_command should add --full-auto."""
198
+ def test_build_full_command_with_bypass_approvals(self):
199
+ """build_full_command should add --dangerously-bypass-approvals-and-sandbox."""
200
200
  with patch.dict(os.environ, {}, clear=True):
201
201
  os.environ.pop("CLAUDE_TEAM_CODEX_COMMAND", None)
202
202
  cli = CodexCLI()
203
203
  cmd = cli.build_full_command(dangerously_skip_permissions=True)
204
- assert cmd == "codex --full-auto"
204
+ assert cmd == "codex --dangerously-bypass-approvals-and-sandbox"
205
205
 
206
206
  def test_build_full_command_with_env_var(self):
207
207
  """build_full_command should use CLAUDE_TEAM_CODEX_COMMAND."""
208
208
  with patch.dict(os.environ, {"CLAUDE_TEAM_CODEX_COMMAND": "happy codex"}):
209
209
  cli = CodexCLI()
210
210
  cmd = cli.build_full_command(dangerously_skip_permissions=True)
211
- assert cmd == "happy codex --full-auto"
211
+ assert cmd == "happy codex --dangerously-bypass-approvals-and-sandbox"
212
212
 
213
213
 
214
214
  class TestGetCliBackend:
@@ -114,7 +114,7 @@ wheels = [
114
114
 
115
115
  [[package]]
116
116
  name = "claude-team-mcp"
117
- version = "0.6.0"
117
+ version = "0.6.1"
118
118
  source = { editable = "." }
119
119
  dependencies = [
120
120
  { name = "iterm2" },