Skip to content

Commit b74d80f

Browse files
Added additional help for CLI and formatting changes: (#718)
1 parent 85bbcab commit b74d80f

File tree

3 files changed

+56
-43
lines changed

3 files changed

+56
-43
lines changed

src/codegate/pipeline/cli/cli.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
Available commands:
1818
- `version`: Show the version of CodeGate
1919
- `workspace`: Perform different operations on workspaces
20+
- `custom-instructions`: Set custom instructions for the workspace
2021
"""
2122

2223
NOT_FOUND_TEXT = "Command not found. Use `codegate -h` to see available commands."

src/codegate/pipeline/cli/commands.py

Lines changed: 53 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -178,11 +178,11 @@ async def _add_workspace(self, flags: Dict[str, str], args: List[str]) -> str:
178178
Add a workspace
179179
"""
180180
if args is None or len(args) == 0:
181-
return "Please provide a name. Use `codegate workspace add your_workspace_name`"
181+
return "Please provide a name. Use `codegate workspace add <workspace_name>`"
182182

183183
new_workspace_name = args[0]
184184
if not new_workspace_name:
185-
return "Please provide a name. Use `codegate workspace add your_workspace_name`"
185+
return "Please provide a name. Use `codegate workspace add <workspace_name>`"
186186

187187
try:
188188
ws = await self.workspace_crud.add_workspace(new_workspace_name)
@@ -204,15 +204,15 @@ async def _rename_workspace(self, flags: Dict[str, str], args: List[str]) -> str
204204
if args is None or len(args) < 2:
205205
return (
206206
"Please provide a name and a new name. "
207-
"Use `codegate workspace rename workspace_name new_workspace_name`"
207+
"Use `codegate workspace rename <workspace_name> <new_workspace_name>`"
208208
)
209209

210210
old_workspace_name = args[0]
211211
new_workspace_name = args[1]
212212
if not old_workspace_name or not new_workspace_name:
213213
return (
214214
"Please provide a name and a new name. "
215-
"Use `codegate workspace rename workspace_name new_workspace_name`"
215+
"Use `codegate workspace rename <workspace_name> <new_workspace_name>`"
216216
)
217217

218218
try:
@@ -233,11 +233,11 @@ async def _activate_workspace(self, flags: Dict[str, str], args: List[str]) -> s
233233
Activate a workspace
234234
"""
235235
if args is None or len(args) == 0:
236-
return "Please provide a name. Use `codegate workspace activate workspace_name`"
236+
return "Please provide a name. Use `codegate workspace activate <workspace_name>`"
237237

238238
workspace_name = args[0]
239239
if not workspace_name:
240-
return "Please provide a name. Use `codegate workspace activate workspace_name`"
240+
return "Please provide a name. Use `codegate workspace activate <workspace_name>`"
241241

242242
try:
243243
await self.workspace_crud.activate_workspace(workspace_name)
@@ -254,11 +254,11 @@ async def _archive_workspace(self, flags: Dict[str, str], args: List[str]) -> st
254254
Remove a workspace
255255
"""
256256
if args is None or len(args) == 0:
257-
return "Please provide a name. Use `codegate workspace archive workspace_name`"
257+
return "Please provide a name. Use `codegate workspace archive <workspace_name>`"
258258

259259
workspace_name = args[0]
260260
if not workspace_name:
261-
return "Please provide a name. Use `codegate workspace archive workspace_name`"
261+
return "Please provide a name. Use `codegate workspace archive <workspace_name>`"
262262

263263
try:
264264
await self.workspace_crud.soft_delete_workspace(workspace_name)
@@ -285,11 +285,11 @@ async def _restore_workspace(self, flags: Dict[str, str], args: List[str]) -> st
285285
Restore an archived workspace
286286
"""
287287
if args is None or len(args) == 0:
288-
return "Please provide a name. Use `codegate workspace restore workspace_name`"
288+
return "Please provide a name. Use `codegate workspace restore <workspace_name>`"
289289

290290
workspace_name = args[0]
291291
if not workspace_name:
292-
return "Please provide a name. Use `codegate workspace restore workspace_name`"
292+
return "Please provide a name. Use `codegate workspace restore <workspace_name>`"
293293

294294
try:
295295
await self.workspace_crud.recover_workspace(workspace_name)
@@ -306,11 +306,15 @@ async def _delete_archived_workspace(self, flags: Dict[str, str], args: List[str
306306
Hard delete an archived workspace
307307
"""
308308
if args is None or len(args) == 0:
309-
return "Please provide a name. Use `codegate workspace delete-archived workspace_name`"
309+
return (
310+
"Please provide a name. Use `codegate workspace delete-archived <workspace_name>`"
311+
)
310312

311313
workspace_name = args[0]
312314
if not workspace_name:
313-
return "Please provide a name. Use `codegate workspace delete-archived workspace_name`"
315+
return (
316+
"Please provide a name. Use `codegate workspace delete-archived <workspace_name>`"
317+
)
314318

315319
try:
316320
await self.workspace_crud.hard_delete_workspace(workspace_name)
@@ -328,30 +332,38 @@ def help(self) -> str:
328332
"### CodeGate Workspace\n\n"
329333
"Manage workspaces.\n\n"
330334
"**Usage**: `codegate workspace <command> [args]`\n\n"
331-
"Available commands:\n\n"
332-
"- `list`: List all workspaces\n\n"
333-
" - *args*: None\n\n"
334-
"- `add`: Add a workspace\n\n"
335-
" - *args*:\n\n"
336-
" - `workspace_name`\n\n"
337-
"- `activate`: Activate a workspace\n\n"
338-
" - *args*:\n\n"
339-
" - `workspace_name`\n\n"
340-
"- `archive`: Archive a workspace\n\n"
341-
" - *args*:\n\n"
342-
" - `workspace_name`\n\n"
343-
"- `rename`: Rename a workspace\n\n"
344-
" - *args*:\n\n"
335+
"Available commands:\n"
336+
"- `list`: List all workspaces\n"
337+
" - *args*: None\n"
338+
" - **Usage**: `codegate workspace list`\n"
339+
"- `add`: Add a workspace\n"
340+
" - *args*:\n"
341+
" - `workspace_name`\n"
342+
" - **Usage**: `codegate workspace add <workspace_name>`\n"
343+
"- `activate`: Activate a workspace\n"
344+
" - *args*:\n"
345+
" - `workspace_name`\n"
346+
" - **Usage**: `codegate workspace activate <workspace_name>`\n"
347+
"- `archive`: Archive a workspace\n"
348+
" - *args*:\n"
349+
" - `workspace_name`\n"
350+
" - **Usage**: `codegate workspace archive <workspace_name>`\n"
351+
"- `rename`: Rename a workspace\n"
352+
" - *args*:\n"
353+
" - `workspace_name`\n"
354+
" - `new_workspace_name`\n"
355+
" - **Usage**: `codegate workspace rename <workspace_name> <new_workspace_name>`\n"
356+
"- `list-archived`: List all archived workspaces\n"
357+
" - *args*: None\n"
358+
" - **Usage**: `codegate workspace list-archived`\n"
359+
"- `restore`: Restore an archived workspace\n"
360+
" - *args*:\n"
361+
" - `workspace_name`\n"
362+
" - **Usage**: `codegate workspace restore <workspace_name>`\n"
363+
"- `delete-archived`: Hard delete an archived workspace\n"
364+
" - *args*:\n"
345365
" - `workspace_name`\n"
346-
" - `new_workspace_name`\n\n"
347-
"- `list-archived`: List all archived workspaces\n\n"
348-
" - *args*: None\n\n"
349-
"- `restore`: Restore an archived workspace\n\n"
350-
" - *args*:\n\n"
351-
" - `workspace_name`\n\n"
352-
"- `delete-archived`: Hard delete an archived workspace\n\n"
353-
" - *args*:\n\n"
354-
" - `workspace_name`\n\n"
366+
" - **Usage**: `codegate workspace delete-archived <workspace_name>`\n"
355367
)
356368

357369

@@ -403,10 +415,10 @@ async def _set_custom_instructions(self, flags: Dict[str, str], args: List[str])
403415
except crud.WorkspaceDoesNotExistError:
404416
return (
405417
f"Workspace custom instructions not updated. "
406-
f"Workspace `{workspace_name}` doesn't exist"
418+
f"Workspace **{workspace_name}** doesn't exist"
407419
)
408420

409-
return f"Workspace `{updated_worksapce.name}` custom instructions updated."
421+
return f"Workspace **{updated_worksapce.name}** custom instructions updated."
410422

411423
async def _show_custom_instructions(self, flags: Dict[str, str], args: List[str]) -> str:
412424
"""
@@ -421,7 +433,7 @@ async def _show_custom_instructions(self, flags: Dict[str, str], args: List[str]
421433
try:
422434
workspace = await self.workspace_crud.get_workspace_by_name(workspace_name)
423435
except crud.WorkspaceDoesNotExistError:
424-
return f"Workspace `{workspace_name}` doesn't exist"
436+
return f"Workspace **{workspace_name}** doesn't exist"
425437

426438
sysprompt = workspace.custom_instructions
427439
if not sysprompt:
@@ -444,9 +456,9 @@ async def _reset_custom_instructions(self, flags: Dict[str, str], args: List[str
444456
workspace_name, [""]
445457
)
446458
except crud.WorkspaceDoesNotExistError:
447-
return f"Workspace `{workspace_name}` doesn't exist"
459+
return f"Workspace **{workspace_name}** doesn't exist"
448460

449-
return f"Workspace `{updated_worksapce.name}` custom instructions reset."
461+
return f"Workspace **{updated_worksapce.name}** custom instructions reset."
450462

451463
@property
452464
def help(self) -> str:
@@ -455,7 +467,7 @@ def help(self) -> str:
455467
"Manage the custom instructionss of workspaces.\n\n"
456468
"*Note*: If you want to update the custom instructions using files please go to the "
457469
"[dashboard](http://localhost:9090).\n\n"
458-
"**Usage**: `codegate custom-instructions -w <workspace_name> <command>`\n\n"
470+
"**Usage**: `codegate custom-instructions -w <workspace_name> <command> [args]`\n\n"
459471
"*args*:\n"
460472
"- `workspace_name`: Optional workspace name. If not specified will use the "
461473
"active workspace\n\n"

tests/pipeline/workspace/test_workspace.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,9 @@ async def test_list_workspaces(mock_workspaces, expected_output):
5555
"args, existing_workspaces, expected_message",
5656
[
5757
# Case 1: No workspace name provided
58-
([], [], "Please provide a name. Use `codegate workspace add your_workspace_name`"),
58+
([], [], "Please provide a name. Use `codegate workspace add <workspace_name>`"),
5959
# Case 2: Workspace name is empty string
60-
([""], [], "Please provide a name. Use `codegate workspace add your_workspace_name`"),
60+
([""], [], "Please provide a name. Use `codegate workspace add <workspace_name>`"),
6161
# Case 3: Successful add
6262
(["myworkspace"], [], "Workspace **myworkspace** has been added"),
6363
],

0 commit comments

Comments
 (0)