claude-dev-cli 0.8.3__py3-none-any.whl → 0.8.4__py3-none-any.whl

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.

Potentially problematic release.


This version of claude-dev-cli might be problematic. Click here for more details.

@@ -9,7 +9,7 @@ Features:
9
9
  - Interactive and single-shot modes
10
10
  """
11
11
 
12
- __version__ = "0.8.3"
12
+ __version__ = "0.8.4"
13
13
  __author__ = "Julio"
14
14
  __license__ = "MIT"
15
15
 
claude_dev_cli/config.py CHANGED
@@ -84,6 +84,13 @@ class Config:
84
84
 
85
85
  def _ensure_config_dir(self) -> None:
86
86
  """Ensure configuration directory exists."""
87
+ # Check if config_dir exists as a file (not directory)
88
+ if self.config_dir.exists() and not self.config_dir.is_dir():
89
+ raise RuntimeError(
90
+ f"Configuration path {self.config_dir} exists but is not a directory. "
91
+ f"Please remove or rename this file."
92
+ )
93
+
87
94
  self.config_dir.mkdir(parents=True, exist_ok=True)
88
95
  self.usage_log.touch(exist_ok=True)
89
96
 
@@ -101,8 +108,28 @@ class Config:
101
108
  self._save_config(default_config)
102
109
  return default_config
103
110
 
104
- with open(self.config_file, 'r') as f:
105
- return json.load(f)
111
+ # Check if config_file is actually a directory
112
+ if self.config_file.is_dir():
113
+ raise RuntimeError(
114
+ f"Configuration file {self.config_file} is a directory. "
115
+ f"Please remove this directory."
116
+ )
117
+
118
+ try:
119
+ with open(self.config_file, 'r') as f:
120
+ config = json.load(f)
121
+
122
+ # Ensure required keys exist (for backwards compatibility)
123
+ if "context" not in config:
124
+ config["context"] = ContextConfig().model_dump()
125
+ if "summarization" not in config:
126
+ config["summarization"] = SummarizationConfig().model_dump()
127
+
128
+ return config
129
+ except (json.JSONDecodeError, IOError) as e:
130
+ raise RuntimeError(
131
+ f"Failed to load configuration from {self.config_file}: {e}"
132
+ )
106
133
 
107
134
  def _save_config(self, data: Optional[Dict] = None) -> None:
108
135
  """Save configuration to file."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-dev-cli
3
- Version: 0.8.3
3
+ Version: 0.8.4
4
4
  Summary: A powerful CLI tool for developers using Claude AI with multi-API routing, test generation, code review, and usage tracking
5
5
  Author-email: Julio <thinmanj@users.noreply.github.com>
6
6
  License: MIT
@@ -1,7 +1,7 @@
1
- claude_dev_cli/__init__.py,sha256=4-FONrbZl8GAHKPOWIDbvA7AmSZsTv8CRep1rwl1w5Y,469
1
+ claude_dev_cli/__init__.py,sha256=wrVuckSPHJ8HPx4itIIXeljGPYG9GkmV1kOJlAWVYcE,469
2
2
  claude_dev_cli/cli.py,sha256=hy2HjU7oEWgGwNB7apBKFQmzjhYrxhHxTqtJ18iePZE,61164
3
3
  claude_dev_cli/commands.py,sha256=RKGx2rv56PM6eErvA2uoQ20hY8babuI5jav8nCUyUOk,3964
4
- claude_dev_cli/config.py,sha256=hisG91dUfDwuSdBhmYovU-rrGv__nFq-6fp7S288cSw,10471
4
+ claude_dev_cli/config.py,sha256=lQJ6_3G9tYJ2C3RIvNi0APi_ECtAWR5n0FyD-7Fl3I4,11654
5
5
  claude_dev_cli/context.py,sha256=1TlLzpREFZDEIuU7RAtlkjxARKWZpnxHHvK283sUAZE,26714
6
6
  claude_dev_cli/core.py,sha256=yaLjEixDvPzvUy4fJ2UB7nMpPPLyKACjR-RuM-1OQBY,4780
7
7
  claude_dev_cli/history.py,sha256=v952xORhxZD0ayrrMaIbTLfe6kOW5fYryoeEmQLlQPg,10163
@@ -17,9 +17,9 @@ claude_dev_cli/plugins/base.py,sha256=H4HQet1I-a3WLCfE9F06Lp8NuFvVoIlou7sIgyJFK-
17
17
  claude_dev_cli/plugins/diff_editor/__init__.py,sha256=gqR5S2TyIVuq-sK107fegsutQ7Z-sgAIEbtc71FhXIM,101
18
18
  claude_dev_cli/plugins/diff_editor/plugin.py,sha256=M1bUoqpasD3ZNQo36Fu_8g92uySPZyG_ujMbj5UplsU,3073
19
19
  claude_dev_cli/plugins/diff_editor/viewer.py,sha256=1IOXIKw_01ppJx5C1dQt9Kr6U1TdAHT8_iUT5r_q0NM,17169
20
- claude_dev_cli-0.8.3.dist-info/licenses/LICENSE,sha256=DGueuJwMJtMwgLO5mWlS0TaeBrFwQuNpNZ22PU9J2bw,1062
21
- claude_dev_cli-0.8.3.dist-info/METADATA,sha256=zgkMO_8g4hwJ7ccfDqGqXM-d3OfghrhxsWt7JK0evgs,17356
22
- claude_dev_cli-0.8.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
23
- claude_dev_cli-0.8.3.dist-info/entry_points.txt,sha256=zymgUIIVpFTARkFmxAuW2A4BQsNITh_L0uU-XunytHg,85
24
- claude_dev_cli-0.8.3.dist-info/top_level.txt,sha256=m7MF6LOIuTe41IT5Fgt0lc-DK1EgM4gUU_IZwWxK0pg,15
25
- claude_dev_cli-0.8.3.dist-info/RECORD,,
20
+ claude_dev_cli-0.8.4.dist-info/licenses/LICENSE,sha256=DGueuJwMJtMwgLO5mWlS0TaeBrFwQuNpNZ22PU9J2bw,1062
21
+ claude_dev_cli-0.8.4.dist-info/METADATA,sha256=tazTVOQIM_Rtv9UkLb55Y_HPiEZQ2av6L2Opq4lxpTs,17356
22
+ claude_dev_cli-0.8.4.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
23
+ claude_dev_cli-0.8.4.dist-info/entry_points.txt,sha256=zymgUIIVpFTARkFmxAuW2A4BQsNITh_L0uU-XunytHg,85
24
+ claude_dev_cli-0.8.4.dist-info/top_level.txt,sha256=m7MF6LOIuTe41IT5Fgt0lc-DK1EgM4gUU_IZwWxK0pg,15
25
+ claude_dev_cli-0.8.4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5