@autocode-cli/autocode 0.1.15 → 0.1.18

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.
Files changed (212) hide show
  1. package/README.md +38 -38
  2. package/dist/cli/commands/comment.d.ts +1 -1
  3. package/dist/cli/commands/comment.js +11 -11
  4. package/dist/cli/commands/comment.js.map +1 -1
  5. package/dist/cli/commands/init.js +1 -1
  6. package/dist/cli/commands/init.js.map +1 -1
  7. package/dist/cli/commands/list.d.ts +1 -1
  8. package/dist/cli/commands/list.d.ts.map +1 -1
  9. package/dist/cli/commands/list.js +65 -22
  10. package/dist/cli/commands/list.js.map +1 -1
  11. package/dist/cli/commands/move.d.ts +1 -1
  12. package/dist/cli/commands/move.js +12 -12
  13. package/dist/cli/commands/move.js.map +1 -1
  14. package/dist/cli/commands/new.d.ts +1 -1
  15. package/dist/cli/commands/new.d.ts.map +1 -1
  16. package/dist/cli/commands/new.js +26 -13
  17. package/dist/cli/commands/new.js.map +1 -1
  18. package/dist/cli/commands/next.d.ts +1 -1
  19. package/dist/cli/commands/next.js +15 -15
  20. package/dist/cli/commands/next.js.map +1 -1
  21. package/dist/cli/commands/parent.d.ts +9 -0
  22. package/dist/cli/commands/parent.d.ts.map +1 -0
  23. package/dist/cli/commands/parent.js +94 -0
  24. package/dist/cli/commands/parent.js.map +1 -0
  25. package/dist/cli/commands/serve.js +8 -8
  26. package/dist/cli/commands/serve.js.map +1 -1
  27. package/dist/cli/commands/show.d.ts +1 -1
  28. package/dist/cli/commands/show.d.ts.map +1 -1
  29. package/dist/cli/commands/show.js +51 -31
  30. package/dist/cli/commands/show.js.map +1 -1
  31. package/dist/cli/commands/stats.js +2 -2
  32. package/dist/cli/commands/stats.js.map +1 -1
  33. package/dist/cli/commands/sync.js +3 -3
  34. package/dist/cli/commands/sync.js.map +1 -1
  35. package/dist/cli/parser.d.ts.map +1 -1
  36. package/dist/cli/parser.js +5 -3
  37. package/dist/cli/parser.js.map +1 -1
  38. package/dist/core/column.js +2 -2
  39. package/dist/core/column.js.map +1 -1
  40. package/dist/core/hierarchy.d.ts +97 -0
  41. package/dist/core/hierarchy.d.ts.map +1 -0
  42. package/dist/core/hierarchy.js +274 -0
  43. package/dist/core/hierarchy.js.map +1 -0
  44. package/dist/core/issue.d.ts +62 -0
  45. package/dist/core/issue.d.ts.map +1 -0
  46. package/dist/core/issue.js +247 -0
  47. package/dist/core/issue.js.map +1 -0
  48. package/dist/core/sync.d.ts +9 -9
  49. package/dist/core/sync.d.ts.map +1 -1
  50. package/dist/core/sync.js +61 -58
  51. package/dist/core/sync.js.map +1 -1
  52. package/dist/core/workflow.d.ts +22 -20
  53. package/dist/core/workflow.d.ts.map +1 -1
  54. package/dist/core/workflow.js +68 -51
  55. package/dist/core/workflow.js.map +1 -1
  56. package/dist/index.d.ts +1 -1
  57. package/dist/index.js +1 -1
  58. package/dist/server/api-autocomplete.test.d.ts +6 -0
  59. package/dist/server/api-autocomplete.test.d.ts.map +1 -0
  60. package/dist/server/api-autocomplete.test.js +249 -0
  61. package/dist/server/api-autocomplete.test.js.map +1 -0
  62. package/dist/server/api.d.ts.map +1 -1
  63. package/dist/server/api.js +216 -106
  64. package/dist/server/api.js.map +1 -1
  65. package/dist/server/dashboard/pages/column-prompt.d.ts +1 -1
  66. package/dist/server/dashboard/pages/column-prompt.d.ts.map +1 -1
  67. package/dist/server/dashboard/pages/column-prompt.js +11 -11
  68. package/dist/server/dashboard/pages/column-prompt.js.map +1 -1
  69. package/dist/server/dashboard/pages/column-terminal.d.ts +1 -1
  70. package/dist/server/dashboard/pages/column-terminal.d.ts.map +1 -1
  71. package/dist/server/dashboard/pages/column-terminal.js +14 -14
  72. package/dist/server/dashboard/pages/column-terminal.js.map +1 -1
  73. package/dist/server/dashboard/pages/index.d.ts +3 -1
  74. package/dist/server/dashboard/pages/index.d.ts.map +1 -1
  75. package/dist/server/dashboard/pages/index.js +3 -1
  76. package/dist/server/dashboard/pages/index.js.map +1 -1
  77. package/dist/server/dashboard/pages/issue-graph.d.ts +9 -0
  78. package/dist/server/dashboard/pages/issue-graph.d.ts.map +1 -0
  79. package/dist/server/dashboard/pages/issue-graph.js +581 -0
  80. package/dist/server/dashboard/pages/issue-graph.js.map +1 -0
  81. package/dist/server/dashboard/pages/issue-view.d.ts +8 -0
  82. package/dist/server/dashboard/pages/issue-view.d.ts.map +1 -0
  83. package/dist/server/dashboard/pages/{ticket-view.js → issue-view.js} +128 -128
  84. package/dist/server/dashboard/pages/issue-view.js.map +1 -0
  85. package/dist/server/dashboard/pages/main-dashboard.d.ts.map +1 -1
  86. package/dist/server/dashboard/pages/main-dashboard.js +23 -22
  87. package/dist/server/dashboard/pages/main-dashboard.js.map +1 -1
  88. package/dist/server/dashboard/pages/new-issue.d.ts +8 -0
  89. package/dist/server/dashboard/pages/new-issue.d.ts.map +1 -0
  90. package/dist/server/dashboard/pages/new-issue.js +648 -0
  91. package/dist/server/dashboard/pages/new-issue.js.map +1 -0
  92. package/dist/server/dashboard/pages/new-issue.test.d.ts +6 -0
  93. package/dist/server/dashboard/pages/new-issue.test.d.ts.map +1 -0
  94. package/dist/server/dashboard/pages/new-issue.test.js +349 -0
  95. package/dist/server/dashboard/pages/new-issue.test.js.map +1 -0
  96. package/dist/server/dashboard/pages/pipeline-configurator.js +1 -1
  97. package/dist/server/dashboard/pages/shared.d.ts +2 -2
  98. package/dist/server/dashboard/pages/shared.d.ts.map +1 -1
  99. package/dist/server/dashboard/pages/shared.js +5 -5
  100. package/dist/server/dashboard/pages/shared.js.map +1 -1
  101. package/dist/server/dashboard/pages/stats-page.js +11 -11
  102. package/dist/server/dashboard/scripts/index.js +134 -134
  103. package/dist/server/dashboard/styles/base.js +2 -2
  104. package/dist/server/dashboard/styles/board.d.ts +1 -1
  105. package/dist/server/dashboard/styles/board.js +10 -10
  106. package/dist/server/dashboard.d.ts +1 -1
  107. package/dist/server/dashboard.d.ts.map +1 -1
  108. package/dist/server/dashboard.js +1 -1
  109. package/dist/server/dashboard.js.map +1 -1
  110. package/dist/server/index.d.ts.map +1 -1
  111. package/dist/server/index.js +40 -24
  112. package/dist/server/index.js.map +1 -1
  113. package/dist/server/websocket.d.ts +6 -6
  114. package/dist/server/websocket.d.ts.map +1 -1
  115. package/dist/server/websocket.js +10 -10
  116. package/dist/server/websocket.js.map +1 -1
  117. package/dist/services/claude.d.ts +13 -13
  118. package/dist/services/claude.d.ts.map +1 -1
  119. package/dist/services/claude.js +98 -98
  120. package/dist/services/claude.js.map +1 -1
  121. package/dist/services/issue-io.d.ts +81 -0
  122. package/dist/services/issue-io.d.ts.map +1 -0
  123. package/dist/services/{ticket-io.js → issue-io.js} +54 -53
  124. package/dist/services/issue-io.js.map +1 -0
  125. package/dist/services/stats.d.ts +1 -1
  126. package/dist/services/stats.d.ts.map +1 -1
  127. package/dist/types/index.d.ts +6 -4
  128. package/dist/types/index.d.ts.map +1 -1
  129. package/dist/utils/fs.d.ts +2 -2
  130. package/dist/utils/fs.d.ts.map +1 -1
  131. package/dist/utils/fs.js +2 -2
  132. package/dist/utils/fs.js.map +1 -1
  133. package/package.json +3 -3
  134. package/templates/catalog.yaml +2 -2
  135. package/templates/prompts/api-endpoints-test.en.md +2 -2
  136. package/templates/prompts/api-endpoints-test.fr.md +2 -2
  137. package/templates/prompts/backlog.en.md +6 -6
  138. package/templates/prompts/backlog.fr.md +1 -1
  139. package/templates/prompts/changelog.en.md +6 -6
  140. package/templates/prompts/changelog.fr.md +3 -3
  141. package/templates/prompts/dashboard-responsive.en.md +1 -1
  142. package/templates/prompts/deploy-prod.en.md +3 -3
  143. package/templates/prompts/deploy-prod.fr.md +3 -3
  144. package/templates/prompts/deploy-staging.en.md +3 -3
  145. package/templates/prompts/deploy-staging.fr.md +3 -3
  146. package/templates/prompts/design.en.md +5 -5
  147. package/templates/prompts/design.fr.md +3 -3
  148. package/templates/prompts/dev.en.md +4 -4
  149. package/templates/prompts/dev.fr.md +3 -3
  150. package/templates/prompts/done.en.md +5 -5
  151. package/templates/prompts/done.fr.md +2 -2
  152. package/templates/prompts/error-handling-review.en.md +1 -1
  153. package/templates/prompts/error-handling-review.fr.md +1 -1
  154. package/templates/prompts/file-watcher-test.en.md +4 -4
  155. package/templates/prompts/file-watcher-test.fr.md +1 -1
  156. package/templates/prompts/git-commit.en.md +5 -5
  157. package/templates/prompts/git-commit.fr.md +3 -3
  158. package/templates/prompts/git-push.en.md +3 -3
  159. package/templates/prompts/git-push.fr.md +3 -3
  160. package/templates/prompts/git-tag.en.md +3 -3
  161. package/templates/prompts/git-tag.fr.md +3 -3
  162. package/templates/prompts/in-progress.en.md +6 -6
  163. package/templates/prompts/in-progress.fr.md +3 -3
  164. package/templates/prompts/qualification.en.md +8 -8
  165. package/templates/prompts/qualification.fr.md +3 -3
  166. package/templates/prompts/retest-cypress.en.md +3 -3
  167. package/templates/prompts/retest-cypress.fr.md +3 -3
  168. package/templates/prompts/retest-playwright.en.md +4 -4
  169. package/templates/prompts/retest-playwright.fr.md +3 -3
  170. package/templates/prompts/retest.en.md +4 -4
  171. package/templates/prompts/retest.fr.md +3 -3
  172. package/templates/prompts/review-best-practices.en.md +3 -3
  173. package/templates/prompts/review-best-practices.fr.md +3 -3
  174. package/templates/prompts/review-code.en.md +4 -4
  175. package/templates/prompts/review-code.fr.md +3 -3
  176. package/templates/prompts/review-consistency.en.md +3 -3
  177. package/templates/prompts/review-consistency.fr.md +3 -3
  178. package/templates/prompts/review-no-duplication.en.md +3 -3
  179. package/templates/prompts/review-no-duplication.fr.md +3 -3
  180. package/templates/prompts/review-security.en.md +4 -4
  181. package/templates/prompts/review-security.fr.md +3 -3
  182. package/templates/prompts/specification.en.md +5 -5
  183. package/templates/prompts/specification.fr.md +3 -3
  184. package/templates/prompts/splitter.en.md +13 -13
  185. package/templates/prompts/splitter.fr.md +3 -3
  186. package/templates/prompts/template-validation.en.md +1 -1
  187. package/templates/prompts/template-validation.fr.md +1 -1
  188. package/templates/prompts/testing-coverage.en.md +1 -1
  189. package/templates/prompts/testing-coverage.fr.md +1 -1
  190. package/templates/prompts/testing-cypress.en.md +4 -4
  191. package/templates/prompts/testing-cypress.fr.md +3 -3
  192. package/templates/prompts/testing-integration.en.md +4 -4
  193. package/templates/prompts/testing-integration.fr.md +3 -3
  194. package/templates/prompts/testing-playwright.en.md +4 -4
  195. package/templates/prompts/testing-playwright.fr.md +3 -3
  196. package/templates/prompts/testing-unit.en.md +4 -4
  197. package/templates/prompts/testing-unit.fr.md +3 -3
  198. package/templates/prompts/update-docs.en.md +3 -3
  199. package/templates/prompts/update-docs.fr.md +3 -3
  200. package/templates/prompts/validate-staging.en.md +3 -3
  201. package/templates/prompts/validate-staging.fr.md +3 -3
  202. package/templates/prompts/websocket-test.en.md +1 -1
  203. package/dist/core/ticket.d.ts +0 -50
  204. package/dist/core/ticket.d.ts.map +0 -1
  205. package/dist/core/ticket.js +0 -224
  206. package/dist/core/ticket.js.map +0 -1
  207. package/dist/server/dashboard/pages/ticket-view.d.ts +0 -8
  208. package/dist/server/dashboard/pages/ticket-view.d.ts.map +0 -1
  209. package/dist/server/dashboard/pages/ticket-view.js.map +0 -1
  210. package/dist/services/ticket-io.d.ts +0 -80
  211. package/dist/services/ticket-io.d.ts.map +0 -1
  212. package/dist/services/ticket-io.js.map +0 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # AutoCode CLI
2
2
 
3
- Filesystem-based ticket management system with web dashboard.
3
+ Filesystem-based issue tracking system with web dashboard.
4
4
 
5
5
  **[Live Demo](https://evkoh.gitlab.io/autocode/)** | **[Interactive Kanban Demo](https://evkoh.gitlab.io/autocode/demo.html)**
6
6
 
@@ -12,8 +12,8 @@ Filesystem-based ticket management system with web dashboard.
12
12
  ### Dashboard
13
13
  ![AutoCode Dashboard](https://gitlab.com/evkoh/autocode/-/raw/main/public/screenshots/dashboard.png)
14
14
 
15
- ### Ticket Modal
16
- ![AutoCode Ticket Modal](https://gitlab.com/evkoh/autocode/-/raw/main/public/screenshots/ticket-modal.png)
15
+ ### Issue Modal
16
+ ![AutoCode Issue Modal](https://gitlab.com/evkoh/autocode/-/raw/main/public/screenshots/issue-modal.png)
17
17
 
18
18
  ### Architecture
19
19
  ![AutoCode Architecture](https://gitlab.com/evkoh/autocode/-/raw/main/public/screenshots/architecture.png)
@@ -30,16 +30,16 @@ npm install -g @autocode-cli/autocode
30
30
  # Initialize project structure
31
31
  autocode init
32
32
 
33
- # Create a new ticket (with all options)
33
+ # Create a new issue (with all options)
34
34
  autocode new "Implement user authentication" "OAuth2 login with Google and GitHub" --priority P1 --labels "feature,auth" --acceptance "Login button visible,OAuth flow works,Token stored" --semver minor --column backlog
35
35
 
36
- # List all tickets
36
+ # List all issues
37
37
  autocode list
38
38
 
39
- # Show ticket details
39
+ # Show issue details
40
40
  autocode show AC-000001
41
41
 
42
- # Move ticket to next column
42
+ # Move issue to next column
43
43
  autocode next AC-000001
44
44
 
45
45
  # Start web dashboard
@@ -51,12 +51,12 @@ autocode serve
51
51
  | Command | Description |
52
52
  |---------|-------------|
53
53
  | `init` | Initialize autocode project structure |
54
- | `new <title> [description] [-p P0-P3] [-l labels] [-a criteria] [-s semver]` | Create a new ticket |
55
- | `list` | List all tickets |
56
- | `show <ticket-key>` | Show ticket details |
57
- | `move <ticket-key> <column-slug>` | Move ticket to specific column |
58
- | `next <ticket-key>` | Advance ticket to next column |
59
- | `comment <ticket-key> <text>` | Add comment to ticket |
54
+ | `new <title> [description] [-p P0-P3] [-l labels] [-a criteria] [-s semver]` | Create a new issue |
55
+ | `list` | List all issues |
56
+ | `show <issue-key>` | Show issue details |
57
+ | `move <issue-key> <column-slug>` | Move issue to specific column |
58
+ | `next <issue-key>` | Advance issue to next column |
59
+ | `comment <issue-key> <text>` | Add comment to issue |
60
60
  | `serve` | Start web dashboard |
61
61
 
62
62
  ## Options
@@ -94,8 +94,8 @@ autocode serve
94
94
 
95
95
  The default workflow includes 15 columns following a TDD approach (test before AND after refactoring):
96
96
 
97
- 0. **Backlog** - New tickets waiting to be prioritized
98
- 1. **Ready** - Tickets ready to start
97
+ 0. **Backlog** - New issues waiting to be prioritized
98
+ 1. **Ready** - Issues ready to start
99
99
  2. **In Progress** - Currently being worked on
100
100
  3. **Testing Playwright** - Manual testing before refactoring
101
101
  4. **Testing Cypress** - E2E tests before refactoring
@@ -115,13 +115,13 @@ The default workflow includes 15 columns following a TDD approach (test before A
115
115
  ```
116
116
  autodoc/
117
117
  ├── .autocode/
118
- │ └── .seq # Ticket sequence counter
118
+ │ └── .seq # Issue sequence counter
119
119
  ├── 00_backlog/
120
120
  │ ├── ACTION.fr.md # Column instructions (French, default)
121
121
  │ ├── ACTION.en.md # Column instructions (English)
122
- │ └── tickets/
123
- │ └── AC-000001__ticket_title/
124
- │ └── issue.md # Ticket content
122
+ │ └── issues/ # Issues folder
123
+ │ └── AC-000001__issue_title/
124
+ │ └── issue.md # Issue content
125
125
  ├── 01_ready/
126
126
  ├── 02_in-progress/
127
127
  ├── 03_testing-playwright/
@@ -138,9 +138,9 @@ autodoc/
138
138
  └── 14_done/
139
139
  ```
140
140
 
141
- ## Ticket Format
141
+ ## Issue Format
142
142
 
143
- Tickets are stored as Markdown files with YAML front matter:
143
+ Issues are stored as Markdown files with YAML front matter:
144
144
 
145
145
  ```yaml
146
146
  ---
@@ -166,7 +166,7 @@ history:
166
166
  to: "Backlog"
167
167
  ---
168
168
 
169
- # Ticket Title
169
+ # Issue Title
170
170
 
171
171
  ## Context
172
172
 
@@ -179,20 +179,20 @@ When running `autocode serve`:
179
179
 
180
180
  | Method | Endpoint | Description |
181
181
  |--------|----------|-------------|
182
- | GET | `/api/tickets` | List all tickets |
183
- | GET | `/api/tickets/:key` | Get ticket details |
184
- | POST | `/api/tickets` | Create new ticket |
185
- | PATCH | `/api/tickets/:key` | Update ticket |
186
- | POST | `/api/tickets/:key/comments` | Add comment |
187
- | POST | `/api/tickets/:key/move` | Move to column |
188
- | POST | `/api/tickets/:key/next` | Advance to next column |
189
- | POST | `/api/tickets/:key/archive` | Archive ticket (move to Done) |
190
- | GET | `/api/tickets/:key/log` | Get claude-code.log for ticket |
191
- | GET | `/api/tickets/:key/log/:columnSlug` | Get column-specific log |
192
- | GET | `/api/tickets/:key/prompt/:columnSlug` | Get Claude prompt for column |
193
- | GET | `/api/tickets/:key/attachments` | List ticket attachments |
194
- | POST | `/api/tickets/:key/attachments` | Upload attachment |
195
- | DELETE | `/api/tickets/:key/attachments/:filename` | Delete attachment |
182
+ | GET | `/api/issues` | List all issues |
183
+ | GET | `/api/issues/:key` | Get issue details |
184
+ | POST | `/api/issues` | Create new issue |
185
+ | PATCH | `/api/issues/:key` | Update issue |
186
+ | POST | `/api/issues/:key/comments` | Add comment |
187
+ | POST | `/api/issues/:key/move` | Move to column |
188
+ | POST | `/api/issues/:key/next` | Advance to next column |
189
+ | POST | `/api/issues/:key/archive` | Archive issue (move to Done) |
190
+ | GET | `/api/issues/:key/log` | Get claude-code.log for issue |
191
+ | GET | `/api/issues/:key/log/:columnSlug` | Get column-specific log |
192
+ | GET | `/api/issues/:key/prompt/:columnSlug` | Get Claude prompt for column |
193
+ | GET | `/api/issues/:key/attachments` | List issue attachments |
194
+ | POST | `/api/issues/:key/attachments` | Upload attachment |
195
+ | DELETE | `/api/issues/:key/attachments/:filename` | Delete attachment |
196
196
  | GET | `/api/columns` | List all columns |
197
197
  | GET | `/api/columns/:slug/actions` | Get column ACTION content |
198
198
  | POST | `/api/columns/:slug/actions` | Update column ACTION content |
@@ -202,8 +202,8 @@ When running `autocode serve`:
202
202
 
203
203
  | Variable | Description | Default |
204
204
  |----------|-------------|---------|
205
- | `AUTOCODE_ROOT` | Root directory for tickets | `autodoc` |
205
+ | `AUTOCODE_ROOT` | Root directory for issues | `autodoc` |
206
206
  | `AUTOCODE_LANG` | Language (en/fr) | `fr` |
207
207
  | `AUTOCODE_PORT` | Dashboard port | `3333` |
208
208
  | `AUTOCODE_CLAUDE` | Enable Claude integration | `true` |
209
- | `AUTOCODE_CLAUDE_TIMEOUT` | Claude timeout (ms) | `900000` |
209
+ | `AUTOCODE_CLAUDE_TIMEOUT` | Claude timeout (ms) | `900000` |
@@ -1,5 +1,5 @@
1
1
  /**
2
- * comment command - Add comment to ticket
2
+ * comment command - Add comment to issue
3
3
  */
4
4
  import { Command } from 'commander';
5
5
  /**
@@ -1,8 +1,8 @@
1
1
  /**
2
- * comment command - Add comment to ticket
2
+ * comment command - Add comment to issue
3
3
  */
4
4
  import { Command } from 'commander';
5
- import { addComment, getTicket } from '../../core/ticket.js';
5
+ import { addComment, getIssue } from '../../core/issue.js';
6
6
  import { getConfig } from '../../utils/config.js';
7
7
  import { logger } from '../../utils/logger.js';
8
8
  /**
@@ -11,27 +11,27 @@ import { logger } from '../../utils/logger.js';
11
11
  export function commentCommand() {
12
12
  const cmd = new Command('comment');
13
13
  cmd
14
- .description('Add a comment to a ticket')
15
- .argument('<ticket-key>', 'Ticket key (e.g., AC-000001)')
14
+ .description('Add a comment to an issue')
15
+ .argument('<issue-key>', 'Issue key (e.g., AC-000001)')
16
16
  .argument('<text>', 'Comment text')
17
17
  .option('--source <source>', 'Comment source (user or claude)', 'claude')
18
18
  .action((key, text, options) => {
19
19
  const config = getConfig();
20
20
  const source = options.source === 'user' ? 'user' : 'claude';
21
- // Get current ticket
22
- const ticket = getTicket(config.root, key);
23
- if (!ticket) {
24
- logger.error(`Ticket '${key}' not found`);
21
+ // Get current issue
22
+ const issue = getIssue(config.root, key);
23
+ if (!issue) {
24
+ logger.error(`Issue '${key}' not found`);
25
25
  process.exit(1);
26
26
  }
27
27
  // Add comment with source
28
- const updated = addComment(config.root, key, text, ticket.status, source);
28
+ const updated = addComment(config.root, key, text, issue.status, source);
29
29
  if (!updated) {
30
- logger.error(`Failed to add comment to ticket '${key}'`);
30
+ logger.error(`Failed to add comment to issue '${key}'`);
31
31
  process.exit(1);
32
32
  }
33
33
  logger.success(`Added comment to ${logger.bold(key)}`);
34
- logger.row('Column', ticket.status);
34
+ logger.row('Column', issue.status);
35
35
  logger.row('Source', source);
36
36
  logger.row('Comments', String(updated.comments.length));
37
37
  });
@@ -1 +1 @@
1
- {"version":3,"file":"comment.js","sourceRoot":"","sources":["../../../src/cli/commands/comment.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAEnC,GAAG;SACA,WAAW,CAAC,2BAA2B,CAAC;SACxC,QAAQ,CAAC,cAAc,EAAE,8BAA8B,CAAC;SACxD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;SAClC,MAAM,CAAC,mBAAmB,EAAE,iCAAiC,EAAE,QAAQ,CAAC;SACxE,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE7D,qBAAqB;QACrB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,oCAAoC,GAAG,GAAG,CAAC,CAAC;YACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,oBAAoB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"comment.js","sourceRoot":"","sources":["../../../src/cli/commands/comment.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAEnC,GAAG;SACA,WAAW,CAAC,2BAA2B,CAAC;SACxC,QAAQ,CAAC,aAAa,EAAE,6BAA6B,CAAC;SACtD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;SAClC,MAAM,CAAC,mBAAmB,EAAE,iCAAiC,EAAE,QAAQ,CAAC;SACxE,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE7D,oBAAoB;QACpB,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,mCAAmC,GAAG,GAAG,CAAC,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,oBAAoB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -56,7 +56,7 @@ export function initCommand() {
56
56
  // Setup gitignore
57
57
  setupGitignore(rootDir);
58
58
  logger.success(`Autocode initialized in ${rootDir}`);
59
- logger.info('Run `autocode new "Your ticket title" "Description" --priority P1 --labels "labels" --acceptance "criteria" --semver minor --column backlog` to create your first ticket');
59
+ logger.info('Run `autocode new "Your issue title" "Description" --priority P1 --labels "labels" --acceptance "criteria" --semver minor --column backlog` to create your first issue');
60
60
  });
61
61
  return cmd;
62
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAa,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C;;GAEG;AACH,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,OAAO,wBAAwB,CAAC;IAEpD,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,qBAAqB;QAC/B,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE;QAC/B,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,mCAAmC,OAAO,IAAI;QACjE,CAAC,CAAC,+BAA+B,OAAO,IAAI,CAAC;IAE/C,aAAa,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhC,GAAG;SACA,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,YAAY,CAAC;SAC1D,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,IAAI,CAAC;SACrD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAClB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;QAE5B,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,cAAc,OAAO,kBAAkB,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,4BAA4B,OAAO,KAAK,CAAC,CAAC;QAEtD,wBAAwB;QACxB,SAAS,CAAC,OAAO,CAAC,CAAC;QAEnB,0BAA0B;QAC1B,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE/B,mBAAmB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;QAED,2CAA2C;QAC3C,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAgB,CAAC,CAAC;QAEvD,kBAAkB;QAClB,cAAc,CAAC,OAAO,CAAC,CAAC;QAExB,MAAM,CAAC,OAAO,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,0KAA0K,CAAC,CAAC;IAC1L,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAa,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C;;GAEG;AACH,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,OAAO,wBAAwB,CAAC;IAEpD,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,qBAAqB;QAC/B,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE;QAC/B,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,mCAAmC,OAAO,IAAI;QACjE,CAAC,CAAC,+BAA+B,OAAO,IAAI,CAAC;IAE/C,aAAa,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhC,GAAG;SACA,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,YAAY,CAAC;SAC1D,MAAM,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,IAAI,CAAC;SACrD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAClB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;QAE5B,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,cAAc,OAAO,kBAAkB,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,4BAA4B,OAAO,KAAK,CAAC,CAAC;QAEtD,wBAAwB;QACxB,SAAS,CAAC,OAAO,CAAC,CAAC;QAEnB,0BAA0B;QAC1B,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE/B,mBAAmB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;QAED,2CAA2C;QAC3C,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAgB,CAAC,CAAC;QAEvD,kBAAkB;QAClB,cAAc,CAAC,OAAO,CAAC,CAAC;QAExB,MAAM,CAAC,OAAO,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,wKAAwK,CAAC,CAAC;IACxL,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * list command - List tickets
2
+ * list command - List issues
3
3
  */
4
4
  import { Command } from 'commander';
5
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CA+DrC"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAoFrC"}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * list command - List tickets
2
+ * list command - List issues
3
3
  */
4
4
  import { Command } from 'commander';
5
- import { listTickets, listTicketsInColumn } from '../../core/ticket.js';
5
+ import { listIssues, listIssuesInColumn, getIssue } from '../../core/issue.js';
6
6
  import { getColumnBySlug } from '../../core/column.js';
7
7
  import { getConfig } from '../../utils/config.js';
8
8
  import { logger } from '../../utils/logger.js';
@@ -12,36 +12,47 @@ import { logger } from '../../utils/logger.js';
12
12
  export function listCommand() {
13
13
  const cmd = new Command('list');
14
14
  cmd
15
- .description('List tickets')
15
+ .description('List issues')
16
16
  .option('-c, --column <column-slug>', 'Filter by column (name or slug)')
17
17
  .option('-p, --priority <priority>', 'Filter by priority (P0-P3)')
18
18
  .option('-l, --label <label>', 'Filter by label')
19
+ .option('--parent <key>', 'Filter by parent issue key')
20
+ .option('--tree', 'Display as tree hierarchy')
19
21
  .option('--json', 'Output as JSON')
20
22
  .action((options) => {
21
23
  const config = getConfig();
22
- let tickets;
23
- // Get tickets
24
+ let issues;
25
+ // Get issues
24
26
  if (options.column) {
25
27
  const column = getColumnBySlug(options.column);
26
28
  if (!column) {
27
29
  logger.error(`Column '${options.column}' not found`);
28
30
  process.exit(1);
29
31
  }
30
- tickets = listTicketsInColumn(config.root, column.slug);
32
+ issues = listIssuesInColumn(config.root, column.slug);
31
33
  }
32
34
  else {
33
- tickets = listTickets(config.root);
35
+ issues = listIssues(config.root);
34
36
  }
35
37
  // Apply filters
36
38
  if (options.priority) {
37
39
  const p = options.priority.toUpperCase();
38
- tickets = tickets.filter(t => t.priority === p);
40
+ issues = issues.filter(t => t.priority === p);
39
41
  }
40
42
  if (options.label) {
41
- tickets = tickets.filter(t => t.labels.includes(options.label));
43
+ issues = issues.filter(t => t.labels.includes(options.label));
44
+ }
45
+ // Filter by parent
46
+ if (options.parent) {
47
+ const parent = getIssue(config.root, options.parent);
48
+ if (!parent) {
49
+ logger.error(`Parent issue '${options.parent}' not found`);
50
+ process.exit(1);
51
+ }
52
+ issues = issues.filter(t => t.parent_key === options.parent);
42
53
  }
43
54
  // Sort by priority then by key
44
- tickets.sort((a, b) => {
55
+ issues.sort((a, b) => {
45
56
  const priorityOrder = { P0: 0, P1: 1, P2: 2, P3: 3 };
46
57
  const pDiff = priorityOrder[a.priority] - priorityOrder[b.priority];
47
58
  if (pDiff !== 0)
@@ -50,29 +61,61 @@ export function listCommand() {
50
61
  });
51
62
  // Output
52
63
  if (options.json) {
53
- console.log(JSON.stringify(tickets, null, 2));
64
+ console.log(JSON.stringify(issues, null, 2));
65
+ return;
66
+ }
67
+ if (issues.length === 0) {
68
+ logger.info('No issues found');
54
69
  return;
55
70
  }
56
- if (tickets.length === 0) {
57
- logger.info('No tickets found');
71
+ // Tree display
72
+ if (options.tree) {
73
+ const allIssues = listIssues(config.root);
74
+ logger.info(`Issue hierarchy:`);
75
+ logger.separator();
76
+ printIssueTree(allIssues, null, 0);
58
77
  return;
59
78
  }
60
- logger.info(`Found ${tickets.length} ticket(s)`);
79
+ logger.info(`Found ${issues.length} issue(s)`);
61
80
  logger.separator();
62
- for (const ticket of tickets) {
63
- printTicketSummary(ticket);
81
+ for (const issue of issues) {
82
+ printIssueSummary(issue);
64
83
  }
65
84
  });
66
85
  return cmd;
67
86
  }
68
87
  /**
69
- * Print a single ticket summary line
88
+ * Print a single issue summary line
70
89
  */
71
- function printTicketSummary(ticket) {
72
- const key = logger.cyan(ticket.key);
73
- const priority = logger.priority(ticket.priority);
74
- const title = ticket.title.substring(0, 50) + (ticket.title.length > 50 ? '...' : '');
75
- const status = logger.dim(`[${ticket.status}]`);
90
+ function printIssueSummary(issue) {
91
+ const key = logger.cyan(issue.key);
92
+ const priority = logger.priority(issue.priority);
93
+ const title = issue.title.substring(0, 50) + (issue.title.length > 50 ? '...' : '');
94
+ const status = logger.dim(`[${issue.status}]`);
76
95
  console.log(`${key} ${priority} ${title} ${status}`);
77
96
  }
97
+ /**
98
+ * Print issues as a tree hierarchy
99
+ */
100
+ function printIssueTree(issues, parentKey, indent) {
101
+ const children = issues.filter(t => t.parent_key === parentKey);
102
+ // Sort by priority then key
103
+ children.sort((a, b) => {
104
+ const priorityOrder = { P0: 0, P1: 1, P2: 2, P3: 3 };
105
+ const pDiff = priorityOrder[a.priority] - priorityOrder[b.priority];
106
+ if (pDiff !== 0)
107
+ return pDiff;
108
+ return a.key.localeCompare(b.key);
109
+ });
110
+ for (const issue of children) {
111
+ const prefix = indent > 0 ? ' '.repeat(indent - 1) + '└─ ' : '';
112
+ const key = logger.cyan(issue.key);
113
+ const priority = logger.priority(issue.priority);
114
+ const title = issue.title.substring(0, 40) + (issue.title.length > 40 ? '...' : '');
115
+ const status = logger.dim(`[${issue.status.substring(0, 12)}]`);
116
+ console.log(`${prefix}${key} ${priority} ${title} ${status}`);
117
+ // Recurse for children
118
+ printIssueTree(issues, issue.key, indent + 1);
119
+ }
120
+ }
78
121
  //# sourceMappingURL=list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhC,GAAG;SACA,WAAW,CAAC,cAAc,CAAC;SAC3B,MAAM,CAAC,4BAA4B,EAAE,iCAAiC,CAAC;SACvE,MAAM,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;SACjE,MAAM,CAAC,qBAAqB,EAAE,iBAAiB,CAAC;SAChD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAClB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAI,OAAiB,CAAC;QAEtB,cAAc;QACd,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,CAAC,KAAK,CAAC,WAAW,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAED,gBAAgB;QAChB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAc,CAAC;YACrD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,+BAA+B;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpB,MAAM,aAAa,GAA6B,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YAC/E,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YACpE,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC9B,OAAO,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,SAAS;QACT,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,YAAY,CAAC,CAAC;QACjD,MAAM,CAAC,SAAS,EAAE,CAAC;QAEnB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAEhD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,QAAQ,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/cli/commands/list.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * move command - Move ticket to a different column
2
+ * move command - Move issue to a different column
3
3
  */
4
4
  import { Command } from 'commander';
5
5
  /**
@@ -1,8 +1,8 @@
1
1
  /**
2
- * move command - Move ticket to a different column
2
+ * move command - Move issue to a different column
3
3
  */
4
4
  import { Command } from 'commander';
5
- import { moveTicket, getTicket } from '../../core/ticket.js';
5
+ import { moveIssue, getIssue } from '../../core/issue.js';
6
6
  import { getColumnBySlug, getColumns } from '../../core/column.js';
7
7
  import { validateTransition } from '../../core/workflow.js';
8
8
  import { getConfig } from '../../utils/config.js';
@@ -13,16 +13,16 @@ import { logger } from '../../utils/logger.js';
13
13
  export function moveCommand() {
14
14
  const cmd = new Command('move');
15
15
  cmd
16
- .description('Move ticket to a different column')
17
- .argument('<ticket-key>', 'Ticket key (e.g., AC-000001)')
16
+ .description('Move issue to a different column')
17
+ .argument('<issue-key>', 'Issue key (e.g., AC-000001)')
18
18
  .argument('<column-slug>', 'Target column (name or slug)')
19
19
  .option('-f, --force', 'Force move (skip validation)')
20
20
  .action((key, column, options) => {
21
21
  const config = getConfig();
22
- // Get current ticket
23
- const ticket = getTicket(config.root, key);
24
- if (!ticket) {
25
- logger.error(`Ticket '${key}' not found`);
22
+ // Get current issue
23
+ const issue = getIssue(config.root, key);
24
+ if (!issue) {
25
+ logger.error(`Issue '${key}' not found`);
26
26
  process.exit(1);
27
27
  }
28
28
  // Resolve target column
@@ -37,7 +37,7 @@ export function moveCommand() {
37
37
  }
38
38
  // Validate transition
39
39
  if (!options.force) {
40
- const validation = validateTransition(ticket.column_slug, targetColumn.slug);
40
+ const validation = validateTransition(issue.column_slug, targetColumn.slug);
41
41
  if (!validation.valid) {
42
42
  logger.error(validation.reason || 'Invalid transition');
43
43
  logger.info('Use --force to override');
@@ -45,13 +45,13 @@ export function moveCommand() {
45
45
  }
46
46
  }
47
47
  // Perform move
48
- const updated = moveTicket(config.root, key, targetColumn.slug, options.force);
48
+ const updated = moveIssue(config.root, key, targetColumn.slug, options.force);
49
49
  if (!updated) {
50
- logger.error(`Failed to move ticket '${key}'`);
50
+ logger.error(`Failed to move issue '${key}'`);
51
51
  process.exit(1);
52
52
  }
53
53
  logger.success(`Moved ${logger.bold(key)} to ${logger.cyan(targetColumn.name)}`);
54
- logger.row('From', ticket.status);
54
+ logger.row('From', issue.status);
55
55
  logger.row('To', updated.status);
56
56
  });
57
57
  return cmd;
@@ -1 +1 @@
1
- {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../src/cli/commands/move.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../src/cli/commands/move.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * new command - Create a new ticket
2
+ * new command - Create a new issue
3
3
  */
4
4
  import { Command } from 'commander';
5
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/new.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAiEpC"}
1
+ {"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/new.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAgFpC"}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * new command - Create a new ticket
2
+ * new command - Create a new issue
3
3
  */
4
4
  import { Command } from 'commander';
5
- import { createTicket, moveTicket } from '../../core/ticket.js';
5
+ import { createIssue, moveIssue, getIssue } from '../../core/issue.js';
6
6
  import { getColumnBySlug, getColumns } from '../../core/column.js';
7
7
  import { getConfig } from '../../utils/config.js';
8
8
  import { logger } from '../../utils/logger.js';
@@ -12,27 +12,37 @@ import { logger } from '../../utils/logger.js';
12
12
  export function newCommand() {
13
13
  const cmd = new Command('new');
14
14
  cmd
15
- .description('Create a new ticket')
16
- .argument('<title>', 'Ticket title')
17
- .argument('[description]', 'Ticket description')
15
+ .description('Create a new issue')
16
+ .argument('<title>', 'Issue title')
17
+ .argument('[description]', 'Issue description')
18
18
  .option('-p, --priority <priority>', 'Priority (P0-P3)', 'P2')
19
19
  .option('-l, --labels <labels>', 'Comma-separated labels')
20
20
  .option('-a, --acceptance <criteria>', 'Comma-separated acceptance criteria')
21
21
  .option('-s, --semver <type>', 'Semver type (major/minor/patch/none)', 'patch')
22
22
  .option('-c, --column <column-slug>', 'Target column (default: backlog)')
23
+ .option('--parent <key>', 'Parent issue key (creates child issue)')
23
24
  .action((title, description, options) => {
24
25
  const config = getConfig();
26
+ // Validate parent if provided
27
+ if (options.parent) {
28
+ const parent = getIssue(config.root, options.parent);
29
+ if (!parent) {
30
+ logger.error(`Parent issue '${options.parent}' not found`);
31
+ process.exit(1);
32
+ }
33
+ }
25
34
  const priority = validatePriority(options.priority);
26
35
  const semver = validateSemver(options.semver);
27
36
  const labels = options.labels ? options.labels.split(',').map((l) => l.trim()) : [];
28
37
  const acceptanceCriteria = options.acceptance ? options.acceptance.split(',').map((c) => c.trim()) : [];
29
- let ticket = createTicket(config.root, {
38
+ let issue = createIssue(config.root, {
30
39
  title,
31
40
  priority,
32
41
  labels,
33
42
  description: description || '',
34
43
  acceptance_criteria: acceptanceCriteria,
35
44
  semver,
45
+ parent_key: options.parent,
36
46
  });
37
47
  // Move to target column if specified
38
48
  if (options.column) {
@@ -45,15 +55,18 @@ export function newCommand() {
45
55
  }
46
56
  process.exit(1);
47
57
  }
48
- const moved = moveTicket(config.root, ticket.key, targetColumn.slug, true);
58
+ const moved = moveIssue(config.root, issue.key, targetColumn.slug, true);
49
59
  if (moved) {
50
- ticket = moved;
60
+ issue = moved;
51
61
  }
52
62
  }
53
- logger.success(`Created ticket ${logger.bold(ticket.key)}`);
54
- logger.row('Title', ticket.title);
55
- logger.row('Priority', logger.priority(ticket.priority));
56
- logger.row('Status', ticket.status);
63
+ logger.success(`Created issue ${logger.bold(issue.key)}`);
64
+ logger.row('Title', issue.title);
65
+ logger.row('Priority', logger.priority(issue.priority));
66
+ logger.row('Status', issue.status);
67
+ if (issue.parent_key) {
68
+ logger.row('Parent', issue.parent_key);
69
+ }
57
70
  if (labels.length > 0) {
58
71
  logger.row('Labels', labels.join(', '));
59
72
  }
@@ -61,7 +74,7 @@ export function newCommand() {
61
74
  logger.row('Acceptance', acceptanceCriteria.length + ' criteria');
62
75
  }
63
76
  logger.blank();
64
- logger.info(`View with: autocode show ${ticket.key}`);
77
+ logger.info(`View with: autocode show ${issue.key}`);
65
78
  });
66
79
  return cmd;
67
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../src/cli/commands/new.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../src/cli/commands/new.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAE/B,GAAG;SACA,WAAW,CAAC,oBAAoB,CAAC;SACjC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;SAClC,QAAQ,CAAC,eAAe,EAAE,mBAAmB,CAAC;SAC9C,MAAM,CAAC,2BAA2B,EAAE,kBAAkB,EAAE,IAAI,CAAC;SAC7D,MAAM,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;SACzD,MAAM,CAAC,6BAA6B,EAAE,qCAAqC,CAAC;SAC5E,MAAM,CAAC,qBAAqB,EAAE,sCAAsC,EAAE,OAAO,CAAC;SAC9E,MAAM,CAAC,4BAA4B,EAAE,kCAAkC,CAAC;SACxE,MAAM,CAAC,gBAAgB,EAAE,wCAAwC,CAAC;SAClE,MAAM,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,8BAA8B;QAC9B,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,CAAC,KAAK,CAAC,iBAAiB,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,MAAM,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEhH,IAAI,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE;YACnC,KAAK;YACL,QAAQ;YACR,MAAM;YACN,WAAW,EAAE,WAAW,IAAI,EAAE;YAC9B,mBAAmB,EAAE,kBAAkB;YACvC,MAAM;YACN,UAAU,EAAE,OAAO,CAAC,MAAM;SAC3B,CAAC,CAAC;QAEH,qCAAqC;QACrC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,CAAC,KAAK,CAAC,WAAW,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC;gBACrD,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAClC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC/C,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,GAAG,KAAK,CAAC;YAChB,CAAC;QACH,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,iBAAiB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEnC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,kBAAkB,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,4BAA4B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,KAAa;IACrC,MAAM,KAAK,GAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAc,CAAC;IAE9C,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,qBAAqB,KAAK,aAAa,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAa;IACnC,MAAM,KAAK,GAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAgB,CAAC;IAEhD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,mBAAmB,KAAK,gBAAgB,CAAC,CAAC;IACtD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * next command - Advance ticket to next column
2
+ * next command - Advance issue to next column
3
3
  */
4
4
  import { Command } from 'commander';
5
5
  /**