claude-dev-cli 0.16.0__tar.gz → 0.16.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.

Potentially problematic release.


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

Files changed (54) hide show
  1. {claude_dev_cli-0.16.0/src/claude_dev_cli.egg-info → claude_dev_cli-0.16.1}/PKG-INFO +1 -1
  2. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/pyproject.toml +1 -1
  3. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/__init__.py +1 -1
  4. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/workflows.py +49 -1
  5. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1/src/claude_dev_cli.egg-info}/PKG-INFO +1 -1
  6. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/LICENSE +0 -0
  7. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/MANIFEST.in +0 -0
  8. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/README.md +0 -0
  9. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/setup.cfg +0 -0
  10. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/cli.py +0 -0
  11. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/commands.py +0 -0
  12. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/config.py +0 -0
  13. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/context.py +0 -0
  14. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/core.py +0 -0
  15. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/history.py +0 -0
  16. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/input_sources.py +0 -0
  17. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/multi_file_handler.py +0 -0
  18. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/path_utils.py +0 -0
  19. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/plugins/__init__.py +0 -0
  20. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/plugins/base.py +0 -0
  21. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/plugins/diff_editor/__init__.py +0 -0
  22. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/plugins/diff_editor/plugin.py +0 -0
  23. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/plugins/diff_editor/viewer.py +0 -0
  24. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/providers/__init__.py +0 -0
  25. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/providers/anthropic.py +0 -0
  26. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/providers/base.py +0 -0
  27. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/providers/factory.py +0 -0
  28. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/providers/ollama.py +0 -0
  29. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/providers/openai.py +0 -0
  30. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/secure_storage.py +0 -0
  31. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/template_manager.py +0 -0
  32. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/templates.py +0 -0
  33. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/toon_utils.py +0 -0
  34. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/usage.py +0 -0
  35. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli/warp_integration.py +0 -0
  36. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli.egg-info/SOURCES.txt +0 -0
  37. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli.egg-info/dependency_links.txt +0 -0
  38. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli.egg-info/entry_points.txt +0 -0
  39. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli.egg-info/requires.txt +0 -0
  40. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/src/claude_dev_cli.egg-info/top_level.txt +0 -0
  41. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_cli.py +0 -0
  42. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_commands.py +0 -0
  43. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_config.py +0 -0
  44. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_context.py +0 -0
  45. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_core.py +0 -0
  46. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_diff_editor.py +0 -0
  47. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_history.py +0 -0
  48. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_input_sources.py +0 -0
  49. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_multi_file_handler.py +0 -0
  50. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_path_utils.py +0 -0
  51. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_secure_storage.py +0 -0
  52. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_template_manager.py +0 -0
  53. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/tests/test_toon_utils.py +0 -0
  54. {claude_dev_cli-0.16.0 → claude_dev_cli-0.16.1}/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.16.0
3
+ Version: 0.16.1
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.16.0"
7
+ version = "0.16.1"
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.16.0"
12
+ __version__ = "0.16.1"
13
13
  __author__ = "Julio"
14
14
  __license__ = "MIT"
15
15
 
@@ -130,6 +130,7 @@ class WorkflowEngine:
130
130
  generate_tests, code_review, debug_code,
131
131
  generate_docs, refactor_code, git_commit_message
132
132
  )
133
+ from claude_dev_cli.core import ClaudeClient
133
134
 
134
135
  # Map commands to functions
135
136
  command_map = {
@@ -141,11 +142,23 @@ class WorkflowEngine:
141
142
  'git commit': git_commit_message,
142
143
  }
143
144
 
145
+ # Handle special commands that need different execution
146
+ if command == 'ask':
147
+ return self._execute_ask_command(interpolated_args)
148
+ elif command in ['generate code', 'generate feature']:
149
+ # These are CLI-only commands that would need file generation logic
150
+ # For now, redirect to shell equivalent
151
+ return StepResult(
152
+ success=False,
153
+ output="",
154
+ error=f"Command '{command}' not yet supported in workflows. Use shell step with 'cdc {command}' instead."
155
+ )
156
+
144
157
  if command not in command_map:
145
158
  return StepResult(
146
159
  success=False,
147
160
  output="",
148
- error=f"Unknown command: {command}"
161
+ error=f"Unknown command: {command}. Supported: {', '.join(command_map.keys())}, ask"
149
162
  )
150
163
 
151
164
  try:
@@ -159,6 +172,8 @@ class WorkflowEngine:
159
172
  func_args['error_message'] = interpolated_args['error']
160
173
  if 'api' in interpolated_args:
161
174
  func_args['api_config_name'] = interpolated_args['api']
175
+ if 'model' in interpolated_args:
176
+ func_args['model'] = interpolated_args['model']
162
177
 
163
178
  # Execute
164
179
  result = func(**func_args)
@@ -180,6 +195,39 @@ class WorkflowEngine:
180
195
  error=str(e)
181
196
  )
182
197
 
198
+ def _execute_ask_command(self, args: Dict[str, Any]) -> StepResult:
199
+ """Execute an ask command step."""
200
+ try:
201
+ from claude_dev_cli.core import ClaudeClient
202
+
203
+ prompt = args.get('prompt', args.get('question', ''))
204
+ if not prompt:
205
+ return StepResult(
206
+ success=False,
207
+ output="",
208
+ error="ask command requires 'prompt' or 'question' argument"
209
+ )
210
+
211
+ api = args.get('api')
212
+ model = args.get('model')
213
+ system = args.get('system')
214
+
215
+ client = ClaudeClient(api_config_name=api)
216
+ result = client.call(prompt, system_prompt=system, model=model)
217
+
218
+ return StepResult(
219
+ success=True,
220
+ output=result,
221
+ metadata={'command': 'ask'}
222
+ )
223
+
224
+ except Exception as e:
225
+ return StepResult(
226
+ success=False,
227
+ output="",
228
+ error=str(e)
229
+ )
230
+
183
231
  def _execute_shell_step(self, step: Dict[str, Any], context: WorkflowContext) -> StepResult:
184
232
  """Execute a shell command step."""
185
233
  command = step['shell']
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-dev-cli
3
- Version: 0.16.0
3
+ Version: 0.16.1
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