copex 0.2.1__tar.gz → 0.7.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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: copex
3
- Version: 0.2.1
3
+ Version: 0.7.1
4
4
  Summary: Copilot Extended - Resilient wrapper for GitHub Copilot SDK with auto-retry, Ralph Wiggum loops, and more
5
5
  Project-URL: Homepage, https://github.com/Arthur742Ramos/copex
6
6
  Project-URL: Repository, https://github.com/Arthur742Ramos/copex
@@ -233,6 +233,15 @@ copex interactive
233
233
  copex interactive --model claude-sonnet-4.5 --reasoning high
234
234
  ```
235
235
 
236
+ Interactive slash commands:
237
+ - `/model <name>` - Change model
238
+ - `/reasoning <level>` - Change reasoning effort
239
+ - `/models` - List available models
240
+ - `/new` - Start a new session
241
+ - `/status` - Show current settings
242
+ - `/tools` - Toggle full tool call list
243
+ - `/help` - Show commands
244
+
236
245
  ### Other commands
237
246
 
238
247
  ```bash
@@ -202,6 +202,15 @@ copex interactive
202
202
  copex interactive --model claude-sonnet-4.5 --reasoning high
203
203
  ```
204
204
 
205
+ Interactive slash commands:
206
+ - `/model <name>` - Change model
207
+ - `/reasoning <level>` - Change reasoning effort
208
+ - `/models` - List available models
209
+ - `/new` - Start a new session
210
+ - `/status` - Show current settings
211
+ - `/tools` - Toggle full tool call list
212
+ - `/help` - Show commands
213
+
205
214
  ### Other commands
206
215
 
207
216
  ```bash
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "copex"
7
- version = "0.2.1"
7
+ version = "0.7.1"
8
8
  description = "Copilot Extended - Resilient wrapper for GitHub Copilot SDK with auto-retry, Ralph Wiggum loops, and more"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -52,6 +52,5 @@ target-version = "py310"
52
52
 
53
53
  [tool.ruff.lint]
54
54
  select = ["E", "F", "I", "W"]
55
+ ignore = ["E501"]
55
56
 
56
- [tool.pytest.ini_options]
57
- asyncio_mode = "auto"
@@ -1,26 +1,25 @@
1
1
  """Copex - Copilot Extended: A resilient wrapper for GitHub Copilot SDK."""
2
2
 
3
+ # Checkpointing
4
+ from copex.checkpoint import Checkpoint, CheckpointedRalph, CheckpointStore
3
5
  from copex.client import Copex
4
6
  from copex.config import CopexConfig, find_copilot_cli
5
- from copex.models import Model, ReasoningEffort
6
7
 
7
- # Ralph Wiggum loops
8
- from copex.ralph import RalphWiggum, RalphConfig, RalphState, ralph_loop
9
-
10
- # Persistence
11
- from copex.persistence import SessionStore, PersistentSession, Message, SessionData
12
-
13
- # Checkpointing
14
- from copex.checkpoint import CheckpointStore, Checkpoint, CheckpointedRalph
8
+ # MCP integration
9
+ from copex.mcp import MCPClient, MCPManager, MCPServerConfig, MCPTool, load_mcp_config
15
10
 
16
11
  # Metrics
17
12
  from copex.metrics import MetricsCollector, RequestMetrics, SessionMetrics, get_collector
13
+ from copex.models import Model, ReasoningEffort
18
14
 
19
- # Parallel tools
20
- from copex.tools import ToolRegistry, ParallelToolExecutor, ToolResult
15
+ # Persistence
16
+ from copex.persistence import Message, PersistentSession, SessionData, SessionStore
21
17
 
22
- # MCP integration
23
- from copex.mcp import MCPClient, MCPManager, MCPServerConfig, MCPTool, load_mcp_config
18
+ # Ralph Wiggum loops
19
+ from copex.ralph import RalphConfig, RalphState, RalphWiggum, ralph_loop
20
+
21
+ # Parallel tools
22
+ from copex.tools import ParallelToolExecutor, ToolRegistry, ToolResult
24
23
 
25
24
  __all__ = [
26
25
  # Core
@@ -59,4 +58,4 @@ __all__ = [
59
58
  "MCPTool",
60
59
  "load_mcp_config",
61
60
  ]
62
- __version__ = "0.1.0"
61
+ __version__ = "0.4.2"
@@ -63,13 +63,13 @@ class CheckpointStore:
63
63
 
64
64
  Usage:
65
65
  store = CheckpointStore()
66
-
66
+
67
67
  # Create checkpoint
68
68
  cp = store.create("my-loop", prompt, iteration, ...)
69
-
69
+
70
70
  # Update on each iteration
71
71
  store.update(cp.checkpoint_id, iteration=5, history=[...])
72
-
72
+
73
73
  # Resume after crash
74
74
  cp = store.get_latest("my-loop")
75
75
  """
@@ -374,21 +374,18 @@ class CheckpointedRalph:
374
374
  Returns:
375
375
  Final checkpoint state
376
376
  """
377
- from copex.ralph import RalphWiggum, RalphConfig
377
+ from copex.ralph import RalphConfig, RalphWiggum
378
378
 
379
379
  # Check for existing checkpoint to resume
380
380
  if resume:
381
381
  existing = self.store.get_latest(self.loop_id)
382
382
  if existing and not existing.completed:
383
383
  self._checkpoint = existing
384
- start_iteration = existing.iteration
385
384
  history = existing.history
386
385
  else:
387
386
  self._checkpoint = None
388
- start_iteration = 0
389
387
  history = []
390
388
  else:
391
- start_iteration = 0
392
389
  history = []
393
390
 
394
391
  # Create new checkpoint if needed