claude-dev-cli 0.8.6__tar.gz → 0.8.8__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.

Potentially problematic release.


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

Files changed (42) hide show
  1. {claude_dev_cli-0.8.6/src/claude_dev_cli.egg-info → claude_dev_cli-0.8.8}/PKG-INFO +1 -1
  2. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/pyproject.toml +1 -1
  3. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/__init__.py +1 -1
  4. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/config.py +8 -4
  5. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/template_manager.py +16 -0
  6. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8/src/claude_dev_cli.egg-info}/PKG-INFO +1 -1
  7. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/LICENSE +0 -0
  8. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/MANIFEST.in +0 -0
  9. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/README.md +0 -0
  10. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/setup.cfg +0 -0
  11. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/cli.py +0 -0
  12. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/commands.py +0 -0
  13. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/context.py +0 -0
  14. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/core.py +0 -0
  15. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/history.py +0 -0
  16. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/plugins/__init__.py +0 -0
  17. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/plugins/base.py +0 -0
  18. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/plugins/diff_editor/__init__.py +0 -0
  19. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/plugins/diff_editor/plugin.py +0 -0
  20. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/plugins/diff_editor/viewer.py +0 -0
  21. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/secure_storage.py +0 -0
  22. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/templates.py +0 -0
  23. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/toon_utils.py +0 -0
  24. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/usage.py +0 -0
  25. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/warp_integration.py +0 -0
  26. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli/workflows.py +0 -0
  27. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli.egg-info/SOURCES.txt +0 -0
  28. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli.egg-info/dependency_links.txt +0 -0
  29. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli.egg-info/entry_points.txt +0 -0
  30. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli.egg-info/requires.txt +0 -0
  31. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/src/claude_dev_cli.egg-info/top_level.txt +0 -0
  32. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_cli.py +0 -0
  33. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_commands.py +0 -0
  34. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_config.py +0 -0
  35. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_context.py +0 -0
  36. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_core.py +0 -0
  37. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_diff_editor.py +0 -0
  38. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_history.py +0 -0
  39. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_secure_storage.py +0 -0
  40. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_template_manager.py +0 -0
  41. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_toon_utils.py +0 -0
  42. {claude_dev_cli-0.8.6 → claude_dev_cli-0.8.8}/tests/test_usage.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-dev-cli
3
- Version: 0.8.6
3
+ Version: 0.8.8
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
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "claude-dev-cli"
7
- version = "0.8.6"
7
+ version = "0.8.8"
8
8
  description = "A powerful CLI tool for developers using Claude AI with multi-API routing, test generation, code review, and usage tracking"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -9,7 +9,7 @@ Features:
9
9
  - Interactive and single-shot modes
10
10
  """
11
11
 
12
- __version__ = "0.8.6"
12
+ __version__ = "0.8.8"
13
13
  __author__ = "Julio"
14
14
  __license__ = "MIT"
15
15
 
@@ -288,10 +288,14 @@ class Config:
288
288
  current = cwd
289
289
  while current != current.parent:
290
290
  config_file = current / ".claude-dev-cli"
291
- if config_file.exists():
292
- with open(config_file, 'r') as f:
293
- data = json.load(f)
294
- return ProjectProfile(**data)
291
+ if config_file.exists() and config_file.is_file():
292
+ try:
293
+ with open(config_file, 'r') as f:
294
+ data = json.load(f)
295
+ return ProjectProfile(**data)
296
+ except (json.JSONDecodeError, IOError):
297
+ # Skip invalid project config files
298
+ pass
295
299
  current = current.parent
296
300
 
297
301
  return None
@@ -208,7 +208,23 @@ Include:
208
208
  def __init__(self, templates_dir: Path):
209
209
  self.templates_dir = templates_dir
210
210
  self.templates_file = templates_dir / "templates.json"
211
+
212
+ # Check if templates_dir exists as a file (not directory)
213
+ if self.templates_dir.exists() and not self.templates_dir.is_dir():
214
+ raise RuntimeError(
215
+ f"Templates directory path {self.templates_dir} exists but is not a directory. "
216
+ f"Please remove or rename this file."
217
+ )
218
+
211
219
  self.templates_dir.mkdir(parents=True, exist_ok=True)
220
+
221
+ # Check if templates_file is a directory (not file)
222
+ if self.templates_file.exists() and self.templates_file.is_dir():
223
+ raise RuntimeError(
224
+ f"Templates file {self.templates_file} is a directory. "
225
+ f"Please remove this directory."
226
+ )
227
+
212
228
  self._load_templates()
213
229
 
214
230
  def _load_templates(self) -> None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-dev-cli
3
- Version: 0.8.6
3
+ Version: 0.8.8
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
File without changes
File without changes
File without changes