@agentteams/cli 0.1.97 → 0.1.99

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 (224) hide show
  1. package/.eslintcache +1 -1
  2. package/README.md +27 -11
  3. package/dist/api/sentry.d.ts +7 -0
  4. package/dist/api/sentry.d.ts.map +1 -0
  5. package/dist/api/sentry.js +18 -0
  6. package/dist/api/sentry.js.map +1 -0
  7. package/dist/commands/auth.d.ts +2 -0
  8. package/dist/commands/auth.d.ts.map +1 -1
  9. package/dist/commands/auth.js +15 -4
  10. package/dist/commands/auth.js.map +1 -1
  11. package/dist/commands/coaction.d.ts.map +1 -1
  12. package/dist/commands/coaction.js +6 -21
  13. package/dist/commands/coaction.js.map +1 -1
  14. package/dist/commands/codeReview.d.ts.map +1 -1
  15. package/dist/commands/codeReview.js +4 -5
  16. package/dist/commands/codeReview.js.map +1 -1
  17. package/dist/commands/document.d.ts +0 -1
  18. package/dist/commands/document.d.ts.map +1 -1
  19. package/dist/commands/document.js +1 -1
  20. package/dist/commands/document.js.map +1 -1
  21. package/dist/commands/index.d.ts.map +1 -1
  22. package/dist/commands/index.js +6 -0
  23. package/dist/commands/index.js.map +1 -1
  24. package/dist/commands/plan.d.ts.map +1 -1
  25. package/dist/commands/plan.js +42 -75
  26. package/dist/commands/plan.js.map +1 -1
  27. package/dist/commands/postmortem.d.ts.map +1 -1
  28. package/dist/commands/postmortem.js +1 -5
  29. package/dist/commands/postmortem.js.map +1 -1
  30. package/dist/commands/report.d.ts.map +1 -1
  31. package/dist/commands/report.js +7 -9
  32. package/dist/commands/report.js.map +1 -1
  33. package/dist/commands/sentry.d.ts +2 -0
  34. package/dist/commands/sentry.d.ts.map +1 -0
  35. package/dist/commands/sentry.js +26 -0
  36. package/dist/commands/sentry.js.map +1 -0
  37. package/dist/commands/task.js +2 -2
  38. package/dist/commands/task.js.map +1 -1
  39. package/dist/index.js +3 -1350
  40. package/dist/index.js.map +1 -1
  41. package/dist/mcp/context.js +1 -1
  42. package/dist/mcp/context.js.map +1 -1
  43. package/dist/mcp-registration/clients.d.ts.map +1 -1
  44. package/dist/mcp-registration/clients.js +92 -0
  45. package/dist/mcp-registration/clients.js.map +1 -1
  46. package/dist/mcp-registration/detect.d.ts +1 -0
  47. package/dist/mcp-registration/detect.d.ts.map +1 -1
  48. package/dist/mcp-registration/detect.js +25 -2
  49. package/dist/mcp-registration/detect.js.map +1 -1
  50. package/dist/mcp-registration/index.d.ts +2 -2
  51. package/dist/mcp-registration/index.d.ts.map +1 -1
  52. package/dist/mcp-registration/index.js +4 -0
  53. package/dist/mcp-registration/index.js.map +1 -1
  54. package/dist/mcp-registration/install.d.ts +2 -0
  55. package/dist/mcp-registration/install.d.ts.map +1 -1
  56. package/dist/mcp-registration/install.js +22 -2
  57. package/dist/mcp-registration/install.js.map +1 -1
  58. package/dist/mcp-registration/types.d.ts +8 -1
  59. package/dist/mcp-registration/types.d.ts.map +1 -1
  60. package/dist/mcp-registration/types.js +1 -0
  61. package/dist/mcp-registration/types.js.map +1 -1
  62. package/dist/program/agentConfig.d.ts +3 -0
  63. package/dist/program/agentConfig.d.ts.map +1 -0
  64. package/dist/program/agentConfig.js +14 -0
  65. package/dist/program/agentConfig.js.map +1 -0
  66. package/dist/program/attachment.d.ts +3 -0
  67. package/dist/program/attachment.d.ts.map +1 -0
  68. package/dist/program/attachment.js +17 -0
  69. package/dist/program/attachment.js.map +1 -0
  70. package/dist/program/auth.d.ts +3 -0
  71. package/dist/program/auth.d.ts.map +1 -0
  72. package/dist/program/auth.js +39 -0
  73. package/dist/program/auth.js.map +1 -0
  74. package/dist/program/changeSet.d.ts +4 -0
  75. package/dist/program/changeSet.d.ts.map +1 -0
  76. package/dist/program/changeSet.js +53 -0
  77. package/dist/program/changeSet.js.map +1 -0
  78. package/dist/program/coaction.d.ts +7 -0
  79. package/dist/program/coaction.d.ts.map +1 -0
  80. package/dist/program/coaction.js +81 -0
  81. package/dist/program/coaction.js.map +1 -0
  82. package/dist/program/codeReview.d.ts +4 -0
  83. package/dist/program/codeReview.d.ts.map +1 -0
  84. package/dist/program/codeReview.js +101 -0
  85. package/dist/program/codeReview.js.map +1 -0
  86. package/dist/program/comment.d.ts +4 -0
  87. package/dist/program/comment.d.ts.map +1 -0
  88. package/dist/program/comment.js +50 -0
  89. package/dist/program/comment.js.map +1 -0
  90. package/dist/program/config.d.ts +3 -0
  91. package/dist/program/config.d.ts.map +1 -0
  92. package/dist/program/config.js +9 -0
  93. package/dist/program/config.js.map +1 -0
  94. package/dist/program/convention.d.ts +4 -0
  95. package/dist/program/convention.d.ts.map +1 -0
  96. package/dist/program/convention.js +37 -0
  97. package/dist/program/convention.js.map +1 -0
  98. package/dist/program/dependency.d.ts +3 -0
  99. package/dist/program/dependency.d.ts.map +1 -0
  100. package/dist/program/dependency.js +15 -0
  101. package/dist/program/dependency.js.map +1 -0
  102. package/dist/program/doctor.d.ts +6 -0
  103. package/dist/program/doctor.d.ts.map +1 -0
  104. package/dist/program/doctor.js +31 -0
  105. package/dist/program/doctor.js.map +1 -0
  106. package/dist/program/document.d.ts +7 -0
  107. package/dist/program/document.d.ts.map +1 -0
  108. package/dist/program/document.js +87 -0
  109. package/dist/program/document.js.map +1 -0
  110. package/dist/program/feedback.d.ts +3 -0
  111. package/dist/program/feedback.d.ts.map +1 -0
  112. package/dist/program/feedback.js +10 -0
  113. package/dist/program/feedback.js.map +1 -0
  114. package/dist/program/index.d.ts +3 -0
  115. package/dist/program/index.d.ts.map +1 -0
  116. package/dist/program/index.js +68 -0
  117. package/dist/program/index.js.map +1 -0
  118. package/dist/program/init.d.ts +6 -0
  119. package/dist/program/init.d.ts.map +1 -0
  120. package/dist/program/init.js +50 -0
  121. package/dist/program/init.js.map +1 -0
  122. package/dist/program/linear.d.ts +3 -0
  123. package/dist/program/linear.d.ts.map +1 -0
  124. package/dist/program/linear.js +25 -0
  125. package/dist/program/linear.js.map +1 -0
  126. package/dist/program/mcp.d.ts +6 -0
  127. package/dist/program/mcp.d.ts.map +1 -0
  128. package/dist/program/mcp.js +95 -0
  129. package/dist/program/mcp.js.map +1 -0
  130. package/dist/program/options/completionReport.d.ts +5 -0
  131. package/dist/program/options/completionReport.d.ts.map +1 -0
  132. package/dist/program/options/completionReport.js +19 -0
  133. package/dist/program/options/completionReport.js.map +1 -0
  134. package/dist/program/options/connection.d.ts +3 -0
  135. package/dist/program/options/connection.d.ts.map +1 -0
  136. package/dist/program/options/connection.js +8 -0
  137. package/dist/program/options/connection.js.map +1 -0
  138. package/dist/program/options/output.d.ts +3 -0
  139. package/dist/program/options/output.d.ts.map +1 -0
  140. package/dist/program/options/output.js +6 -0
  141. package/dist/program/options/output.js.map +1 -0
  142. package/dist/program/options/pagination.d.ts +3 -0
  143. package/dist/program/options/pagination.d.ts.map +1 -0
  144. package/dist/program/options/pagination.js +6 -0
  145. package/dist/program/options/pagination.js.map +1 -0
  146. package/dist/program/options/resource.d.ts +6 -0
  147. package/dist/program/options/resource.d.ts.map +1 -0
  148. package/dist/program/options/resource.js +29 -0
  149. package/dist/program/options/resource.js.map +1 -0
  150. package/dist/program/plan.d.ts +7 -0
  151. package/dist/program/plan.d.ts.map +1 -0
  152. package/dist/program/plan.js +138 -0
  153. package/dist/program/plan.js.map +1 -0
  154. package/dist/program/postmortem.d.ts +4 -0
  155. package/dist/program/postmortem.d.ts.map +1 -0
  156. package/dist/program/postmortem.js +27 -0
  157. package/dist/program/postmortem.js.map +1 -0
  158. package/dist/program/report.d.ts +4 -0
  159. package/dist/program/report.d.ts.map +1 -0
  160. package/dist/program/report.js +39 -0
  161. package/dist/program/report.js.map +1 -0
  162. package/dist/program/resolve.d.ts +6 -0
  163. package/dist/program/resolve.d.ts.map +1 -0
  164. package/dist/program/resolve.js +30 -0
  165. package/dist/program/resolve.js.map +1 -0
  166. package/dist/program/search.d.ts +6 -0
  167. package/dist/program/search.d.ts.map +1 -0
  168. package/dist/program/search.js +43 -0
  169. package/dist/program/search.js.map +1 -0
  170. package/dist/program/sentry.d.ts +3 -0
  171. package/dist/program/sentry.d.ts.map +1 -0
  172. package/dist/program/sentry.js +19 -0
  173. package/dist/program/sentry.js.map +1 -0
  174. package/dist/program/shared.d.ts +32 -0
  175. package/dist/program/shared.d.ts.map +1 -0
  176. package/dist/program/shared.js +96 -0
  177. package/dist/program/shared.js.map +1 -0
  178. package/dist/program/sync.d.ts +6 -0
  179. package/dist/program/sync.d.ts.map +1 -0
  180. package/dist/program/sync.js +35 -0
  181. package/dist/program/sync.js.map +1 -0
  182. package/dist/program/task.d.ts +3 -0
  183. package/dist/program/task.d.ts.map +1 -0
  184. package/dist/program/task.js +13 -0
  185. package/dist/program/task.js.map +1 -0
  186. package/dist/program/worktree.d.ts +3 -0
  187. package/dist/program/worktree.d.ts.map +1 -0
  188. package/dist/program/worktree.js +30 -0
  189. package/dist/program/worktree.js.map +1 -0
  190. package/dist/utils/agentIdentity.d.ts +43 -0
  191. package/dist/utils/agentIdentity.d.ts.map +1 -1
  192. package/dist/utils/agentIdentity.js +45 -0
  193. package/dist/utils/agentIdentity.js.map +1 -1
  194. package/dist/utils/apiContext.d.ts.map +1 -1
  195. package/dist/utils/apiContext.js +6 -1
  196. package/dist/utils/apiContext.js.map +1 -1
  197. package/dist/utils/apiKeyInput.d.ts +1 -3
  198. package/dist/utils/apiKeyInput.d.ts.map +1 -1
  199. package/dist/utils/apiKeyInput.js +1 -9
  200. package/dist/utils/apiKeyInput.js.map +1 -1
  201. package/dist/utils/apiOrigin.d.ts +43 -0
  202. package/dist/utils/apiOrigin.d.ts.map +1 -0
  203. package/dist/utils/apiOrigin.js +78 -0
  204. package/dist/utils/apiOrigin.js.map +1 -0
  205. package/dist/utils/config.d.ts +9 -3
  206. package/dist/utils/config.d.ts.map +1 -1
  207. package/dist/utils/config.js +12 -4
  208. package/dist/utils/config.js.map +1 -1
  209. package/dist/utils/httpClient.d.ts.map +1 -1
  210. package/dist/utils/httpClient.js +50 -0
  211. package/dist/utils/httpClient.js.map +1 -1
  212. package/dist/utils/outputPolicy.d.ts +6 -7
  213. package/dist/utils/outputPolicy.d.ts.map +1 -1
  214. package/dist/utils/outputPolicy.js +0 -5
  215. package/dist/utils/outputPolicy.js.map +1 -1
  216. package/dist/utils/projectRootHash.d.ts +30 -0
  217. package/dist/utils/projectRootHash.d.ts.map +1 -0
  218. package/dist/utils/projectRootHash.js +43 -0
  219. package/dist/utils/projectRootHash.js.map +1 -0
  220. package/dist/utils/runnerTypes.d.ts +29 -0
  221. package/dist/utils/runnerTypes.d.ts.map +1 -0
  222. package/dist/utils/runnerTypes.js +40 -0
  223. package/dist/utils/runnerTypes.js.map +1 -0
  224. package/package.json +1 -1
@@ -0,0 +1,19 @@
1
+ export function addGitToggleOption(command) {
2
+ return command.option('--no-git', 'Disable git metrics auto-collection');
3
+ }
4
+ export function addCompletionReportMetricsOptions(command) {
5
+ return addGitToggleOption(addCompletionReportMetricValueOptions(command));
6
+ }
7
+ export function addCompletionReportMetricValueOptions(command) {
8
+ return command
9
+ .option('--commit-hash <hash>', 'Git commit hash (manual override)')
10
+ .option('--branch-name <name>', 'Branch name (manual override)')
11
+ .option('--files-modified <n>', 'Number of modified files (manual override)')
12
+ .option('--lines-added <n>', 'Number of added lines (manual override)')
13
+ .option('--lines-deleted <n>', 'Number of deleted lines (manual override)')
14
+ .option('--duration-seconds <n>', 'Duration in seconds (manual only)')
15
+ .option('--commit-start <hash>', 'Commit range start hash (manual only)')
16
+ .option('--commit-end <hash>', 'Commit range end hash (manual only)')
17
+ .option('--pull-request-id <id>', 'Pull request ID (manual only)');
18
+ }
19
+ //# sourceMappingURL=completionReport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completionReport.js","sourceRoot":"","sources":["../../../src/program/options/completionReport.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,qCAAqC,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,OAAgB;IAChE,OAAO,kBAAkB,CAAC,qCAAqC,CAAC,OAAO,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,OAAgB;IACpE,OAAO,OAAO;SACX,MAAM,CAAC,sBAAsB,EAAE,mCAAmC,CAAC;SACnE,MAAM,CAAC,sBAAsB,EAAE,+BAA+B,CAAC;SAC/D,MAAM,CAAC,sBAAsB,EAAE,4CAA4C,CAAC;SAC5E,MAAM,CAAC,mBAAmB,EAAE,yCAAyC,CAAC;SACtE,MAAM,CAAC,qBAAqB,EAAE,2CAA2C,CAAC;SAC1E,MAAM,CAAC,wBAAwB,EAAE,mCAAmC,CAAC;SACrE,MAAM,CAAC,uBAAuB,EAAE,uCAAuC,CAAC;SACxE,MAAM,CAAC,qBAAqB,EAAE,qCAAqC,CAAC;SACpE,MAAM,CAAC,wBAAwB,EAAE,+BAA+B,CAAC,CAAC;AACvE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function addConnectionOptions(command: Command): Command;
3
+ //# sourceMappingURL=connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/program/options/connection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAK9D"}
@@ -0,0 +1,8 @@
1
+ import { createApiKeyFileOption } from '../shared.js';
2
+ export function addConnectionOptions(command) {
3
+ return command
4
+ .option('--api-url <url>', 'Override API URL (optional)')
5
+ .addOption(createApiKeyFileOption())
6
+ .option('--project-id <id>', 'Override project ID (optional)');
7
+ }
8
+ //# sourceMappingURL=connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/program/options/connection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO,OAAO;SACX,MAAM,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;SACxD,SAAS,CAAC,sBAAsB,EAAE,CAAC;SACnC,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function addOutputOptions(command: Command): Command;
3
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/program/options/output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAI1D"}
@@ -0,0 +1,6 @@
1
+ export function addOutputOptions(command) {
2
+ return command
3
+ .option('--output-file <path>', 'Write full output to a file (stdout prints a short summary)')
4
+ .option('--verbose', 'Print full raw output to stdout; with --output-file, also echo it', false);
5
+ }
6
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../src/program/options/output.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,OAAO,OAAO;SACX,MAAM,CAAC,sBAAsB,EAAE,6DAA6D,CAAC;SAC7F,MAAM,CAAC,WAAW,EAAE,mEAAmE,EAAE,KAAK,CAAC,CAAC;AACrG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from 'commander';
2
+ export declare function addPaginationOptions(command: Command): Command;
3
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/program/options/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAI9D"}
@@ -0,0 +1,6 @@
1
+ export function addPaginationOptions(command) {
2
+ return command
3
+ .option('--page <number>', 'Page number (list only)')
4
+ .option('--page-size <number>', 'Page size (list only)');
5
+ }
6
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../src/program/options/pagination.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,OAAO,OAAO;SACX,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;SACpD,MAAM,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Command } from 'commander';
2
+ export declare function addJsonResourceLeaf(parent: Command, resource: string, action: string, description: string, configure?: (command: Command) => Command, options?: {
3
+ connection?: boolean;
4
+ commandAction?: string;
5
+ }): Command;
6
+ //# sourceMappingURL=resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../../src/program/options/resource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,SAAS,GAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAA8B,EAC/D,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7D,OAAO,CAsBT"}
@@ -0,0 +1,29 @@
1
+ import { CONVENTION_HINT, executeCommand, handleError, printCommandResult } from '../shared.js';
2
+ import { addConnectionOptions } from './connection.js';
3
+ import { addOutputOptions } from './output.js';
4
+ export function addJsonResourceLeaf(parent, resource, action, description, configure = (command) => command, options = {}) {
5
+ let command = configure(parent.command(action).description(description));
6
+ if (options.connection !== false)
7
+ command = addConnectionOptions(command);
8
+ command = addOutputOptions(command).addHelpText('after', CONVENTION_HINT);
9
+ command.action(async (leafOptions) => {
10
+ try {
11
+ const { outputFile, verbose, ...actionOptions } = leafOptions;
12
+ const commandAction = options.commandAction ?? action;
13
+ const result = await executeCommand(resource, commandAction, actionOptions);
14
+ printCommandResult({
15
+ result,
16
+ outputFile,
17
+ verbose,
18
+ resource,
19
+ action: commandAction,
20
+ });
21
+ }
22
+ catch (error) {
23
+ console.error(handleError(error));
24
+ process.exit(1);
25
+ }
26
+ });
27
+ return command;
28
+ }
29
+ //# sourceMappingURL=resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../../src/program/options/resource.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,UAAU,mBAAmB,CACjC,MAAe,EACf,QAAgB,EAChB,MAAc,EACd,WAAmB,EACnB,YAA2C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAC/D,UAA4D,EAAE;IAE9D,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;IACzE,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK;QAAE,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC1E,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAC1E,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;QACnC,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,GAAG,WAAW,CAAC;YAC9D,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,MAAM,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;YAC5E,kBAAkB,CAAC;gBACjB,MAAM;gBACN,UAAU;gBACV,OAAO;gBACP,QAAQ;gBACR,MAAM,EAAE,aAAa;aACtB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Command } from './shared.js';
2
+ /**
3
+ * 액션 인벤토리: list/get/create/update/delete/download/cleanup/start/finish/quick/status/set-status/upload-html/link-issue/unlink-issue/list-issues.
4
+ * get/show와 link-issue/issue는 별칭이었으며 get과 link-issue만 유지합니다.
5
+ */
6
+ export declare function registerPlanCommand(program: Command): void;
7
+ //# sourceMappingURL=plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/program/plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAoE,MAAM,aAAa,CAAC;AAMxG;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+L1D"}
@@ -0,0 +1,138 @@
1
+ import { CONVENTION_HINT, executeCommand, handleError, printCommandResult } from './shared.js';
2
+ import { addCompletionReportMetricsOptions, addGitToggleOption } from './options/completionReport.js';
3
+ import { addOutputOptions } from './options/output.js';
4
+ import { addPaginationOptions } from './options/pagination.js';
5
+ import { RUNNER_TYPE_OPTION_DESCRIPTION } from '../utils/runnerTypes.js';
6
+ /**
7
+ * 액션 인벤토리: list/get/create/update/delete/download/cleanup/start/finish/quick/status/set-status/upload-html/link-issue/unlink-issue/list-issues.
8
+ * get/show와 link-issue/issue는 별칭이었으며 get과 link-issue만 유지합니다.
9
+ */
10
+ export function registerPlanCommand(program) {
11
+ const planCommand = program.command('plan').description('Manage plans').addHelpText('after', CONVENTION_HINT);
12
+ const addLeaf = (name, description, configure = (command) => command) => {
13
+ const command = addOutputOptions(configure(planCommand.command(name).description(description))).addHelpText('after', CONVENTION_HINT);
14
+ command.action(async (options) => {
15
+ try {
16
+ const { outputFile, verbose, ...actionOptions } = options;
17
+ const result = await executeCommand('plan', name, actionOptions);
18
+ printCommandResult({
19
+ result,
20
+ outputFile,
21
+ verbose,
22
+ resource: 'plan',
23
+ action: name,
24
+ });
25
+ }
26
+ catch (error) {
27
+ console.error(handleError(error));
28
+ process.exit(1);
29
+ }
30
+ });
31
+ return command;
32
+ };
33
+ addLeaf('list', 'List plans', (command) => addPaginationOptions(command)
34
+ .option('--title <title>', 'Plan title')
35
+ .option('--search <text>', 'Plan title/ID search keyword')
36
+ .option('--status <status>', 'Plan status')
37
+ .option('--type <type>', 'Plan type (FEATURE, BUG_FIX, ISSUE, REFACTOR, CHORE)')
38
+ .option('--assigned-to <id>', 'Agent config ID or name'));
39
+ addLeaf('get', 'Get a plan', (command) => command.option('--id <id>', 'Plan ID').option('--include-deps', 'Include dependencies in plan output', false));
40
+ addLeaf('status', 'Get plan lifecycle status', (command) => command.option('--id <id>', 'Plan ID'));
41
+ addLeaf('set-status', 'Set plan lifecycle status', (command) => command.option('--id <id>', 'Plan ID').option('--status <status>', 'Plan status'));
42
+ addLeaf('upload-html', 'Upload a legacy V1 plan HTML preview', (command) => command
43
+ .option('--id <id>', 'Plan ID')
44
+ .option('--file <path>', 'Read plan HTML summary from a local file')
45
+ .option('--stdin', 'Read plan HTML summary from stdin', false)
46
+ .option('--source-label <label>', 'Optional source label for uploaded plan HTML summary'));
47
+ addLeaf('start', 'Start plan execution', (command) => addGitToggleOption(command)
48
+ .option('--id <id>', 'Plan ID')
49
+ .option('--assigned-to <id>', 'Agent config ID or name')
50
+ .option('--task <text>', 'Task summary')
51
+ .option('--runner-type <type>', RUNNER_TYPE_OPTION_DESCRIPTION)
52
+ .option('--model <model>', 'Model ID snapshot')
53
+ .option('--fast', 'Request fast mode for the selected model when supported', false));
54
+ addLeaf('finish', 'Finish a plan and optionally attach a completion report', (command) => addCompletionReportMetricsOptions(command)
55
+ .option('--id <id>', 'Plan ID')
56
+ .option('--task <text>', 'Task summary')
57
+ .option('--report-title <title>', 'Completion report title')
58
+ .option('--report-file <path>', 'Read completion report content from a local file')
59
+ .option('--keep-temp', 'Keep the uploaded file under .agentteams/cli/temp/ instead of deleting it after upload', false)
60
+ .option('--report-status <status>', 'Completion report status: COMPLETED, FAILED, PARTIAL')
61
+ .option('--quality-score <n>', 'Quality score 0-100')
62
+ .option('--review-recommendation <value>', 'Code review recommendation: REQUIRED or NOT_NEEDED')
63
+ .option('--review-reason <text>', 'One-line reason for the review recommendation')
64
+ .option('--repository-remote-url <url>', 'Repository remote origin URL (defaults to git origin)')
65
+ .option('--runner-type <type>', RUNNER_TYPE_OPTION_DESCRIPTION)
66
+ .option('--model <model>', 'Model ID snapshot')
67
+ .option('--fast', 'Request fast mode for the selected model when supported', false));
68
+ addLeaf('create', 'Create a plan', (command) => addGitToggleOption(command)
69
+ .option('--title <title>', 'Plan title')
70
+ .option('--content <content>', 'Plan content (plain text or Tiptap JSON)')
71
+ .option('--interpret-escapes', 'Interpret \\n sequences in --content as newlines', false)
72
+ .option('--file <path>', 'Read plan content from a local file')
73
+ .option('--keep-temp', 'Keep the uploaded file under .agentteams/cli/temp/ instead of deleting it after upload', false)
74
+ .option('--html-file <path>', 'Read a legacy V1 plan HTML preview from a local file')
75
+ .option('--html-stdin', 'Read a legacy V1 plan HTML preview from stdin', false)
76
+ .option('--source-label <label>', 'Optional source label for uploaded plan HTML summary')
77
+ .option('--template <name>', 'Plan content template (refactor-minimal, quick-minimal)')
78
+ .option('--status <status>', 'Ignored because new plans start as BACKLOG')
79
+ .option('--type <type>', 'Plan type (FEATURE, BUG_FIX, ISSUE, REFACTOR, CHORE)')
80
+ .option('--complexity <level>', 'Plan complexity (MINIMAL, STANDARD, FULL; required)')
81
+ .option('--priority <priority>', 'Plan priority (LOW, MEDIUM, HIGH)')
82
+ .option('--repository-remote-url <url>', 'Repository remote origin URL (defaults to git origin)')
83
+ .option('--runner-type <type>', RUNNER_TYPE_OPTION_DESCRIPTION)
84
+ .option('--model <model>', 'Model ID snapshot')
85
+ .option('--fast', 'Request fast mode for the selected model when supported', false));
86
+ addLeaf('update', 'Update a plan', (command) => command
87
+ .option('--id <id>', 'Plan ID')
88
+ .option('--title <title>', 'Plan title')
89
+ .option('--content <content>', 'Plan content (plain text or Tiptap JSON)')
90
+ .option('--interpret-escapes', 'Interpret \\n sequences in --content as newlines', false)
91
+ .option('--file <path>', 'Read plan content from a local file')
92
+ .option('--keep-temp', 'Keep the uploaded file under .agentteams/cli/temp/ instead of deleting it after upload', false)
93
+ .option('--html-file <path>', 'Read a legacy V1 plan HTML preview from a local file')
94
+ .option('--html-stdin', 'Read a legacy V1 plan HTML preview from stdin', false)
95
+ .option('--source-label <label>', 'Optional source label for uploaded plan HTML summary')
96
+ .option('--status <status>', 'Plan status')
97
+ .option('--type <type>', 'Plan type (FEATURE, BUG_FIX, ISSUE, REFACTOR, CHORE)')
98
+ .option('--complexity <level>', 'Plan complexity (MINIMAL, STANDARD, FULL)')
99
+ .option('--complexity-reason <text>', 'Reason for changing complexity (recorded as a MODIFICATION comment)')
100
+ .option('--priority <priority>', 'Plan priority (LOW, MEDIUM, HIGH)'));
101
+ addLeaf('delete', 'Delete a plan', (command) => command.option('--id <id>', 'Plan ID'));
102
+ addLeaf('download', 'Download a plan runbook', (command) => command.option('--id <id>', 'Plan ID'));
103
+ addLeaf('cleanup', 'Remove downloaded plan runbooks', (command) => command.option('--id <id>', 'Plan ID (omit to remove all downloaded plans)'));
104
+ addLeaf('quick', 'Create and finish a quick log', (command) => addCompletionReportMetricsOptions(command)
105
+ .option('--title <title>', 'Plan title')
106
+ .option('--content <content>', 'Plan content')
107
+ .option('--interpret-escapes', 'Interpret \\n sequences in --content as newlines', false)
108
+ .option('--file <path>', 'Read plan content from a local file')
109
+ .option('--keep-temp', 'Keep uploaded files under .agentteams/cli/temp/ instead of deleting them after upload', false)
110
+ .option('--type <type>', 'Plan type (FEATURE, BUG_FIX, ISSUE, REFACTOR, CHORE)')
111
+ .option('--complexity <level>', 'Plan complexity (MINIMAL, STANDARD, FULL)')
112
+ .option('--priority <priority>', 'Plan priority (LOW, MEDIUM, HIGH)')
113
+ .option('--repository-remote-url <url>', 'Repository remote origin URL (defaults to git origin)')
114
+ .option('--assigned-to <id>', 'Agent config ID or name')
115
+ .option('--report-title <title>', 'Completion report title')
116
+ .option('--report-file <path>', 'Read completion report content from a local file')
117
+ .option('--report-status <status>', 'Completion report status: COMPLETED, FAILED, PARTIAL')
118
+ .option('--quality-score <n>', 'Quality score 0-100')
119
+ .option('--review-recommendation <value>', 'Code review recommendation: REQUIRED or NOT_NEEDED')
120
+ .option('--review-reason <text>', 'One-line reason for the review recommendation')
121
+ .option('--runner-type <type>', RUNNER_TYPE_OPTION_DESCRIPTION)
122
+ .option('--model <model>', 'Model ID snapshot')
123
+ .option('--fast', 'Request fast mode for the selected model when supported', false));
124
+ // 러너(@agentteams/runner)는 CLI와 별도로 배포되므로, CLI만 먼저 올라간 환경의
125
+ // 구 러너가 여전히 `plan issue`를 호출합니다. 한 릴리스 동안 숨은 별칭으로 흡수합니다.
126
+ // (별칭이어도 command.name()은 'link-issue'라 액션 분기는 그대로입니다.)
127
+ addLeaf('link-issue', 'Link an external issue to a plan', (command) => command
128
+ .alias('issue')
129
+ .option('--id <id>', 'Plan ID')
130
+ .option('--provider <provider>', 'External issue provider (GITHUB, GITLAB, LINEAR, SENTRY)')
131
+ .option('--external-id <id>', 'External issue ID')
132
+ .option('--external-url <url>', 'External issue URL (optional for SENTRY; verified by the server)')
133
+ .option('--title <title>', 'External issue title')
134
+ .option('--metadata <json>', 'Provider metadata as JSON (e.g. {"owner":"org","repo":"name"})'));
135
+ addLeaf('unlink-issue', 'Unlink an external issue from a plan', (command) => command.option('--id <id>', 'Plan ID').option('--issue-id <id>', 'PlanExternalIssue ID'));
136
+ addLeaf('list-issues', 'List external issues linked to a plan', (command) => command.option('--id <id>', 'Plan ID'));
137
+ }
138
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/program/plan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Command } from './shared.js';
2
+ /** 액션 인벤토리: list/get/create/update/delete/download. */
3
+ export declare function registerPostmortemCommand(program: Command): void;
4
+ //# sourceMappingURL=postmortem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postmortem.d.ts","sourceRoot":"","sources":["../../src/program/postmortem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAmB,MAAM,aAAa,CAAC;AAKvD,uDAAuD;AACvD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgChE"}
@@ -0,0 +1,27 @@
1
+ import { CONVENTION_HINT } from './shared.js';
2
+ import { addGitToggleOption } from './options/completionReport.js';
3
+ import { addPaginationOptions } from './options/pagination.js';
4
+ import { addJsonResourceLeaf } from './options/resource.js';
5
+ /** 액션 인벤토리: list/get/create/update/delete/download. */
6
+ export function registerPostmortemCommand(program) {
7
+ const root = program.command('postmortem').description('Manage post mortems').addHelpText('after', CONVENTION_HINT);
8
+ const addLeaf = (action, description, configure = (command) => command) => addJsonResourceLeaf(root, 'postmortem', action, description, configure);
9
+ const addContent = (command) => command
10
+ .option('--plan-id <id>', 'Plan ID')
11
+ .option('--title <title>', 'Post mortem title')
12
+ .option('--content <content>', 'Post mortem markdown content')
13
+ .option('--file <path>', 'Read postmortem content from a local file')
14
+ .option('--keep-temp', 'Keep the uploaded temporary file', false)
15
+ .option('--action-items <csv>', 'Action items (comma-separated)')
16
+ .option('--status <status>', 'Post mortem status');
17
+ addLeaf('list', 'List post mortems', (command) => addPaginationOptions(command)
18
+ .option('--plan-id <id>', 'Plan ID')
19
+ .option('--status <status>', 'Post mortem status')
20
+ .option('--search <text>', 'Title keyword search'));
21
+ addLeaf('get', 'Get a post mortem', (command) => command.option('--id <id>', 'Post mortem ID'));
22
+ addLeaf('create', 'Create a post mortem', (command) => addGitToggleOption(addContent(command)).option('--repository-remote-url <url>', 'Repository remote origin URL (defaults to git origin)'));
23
+ addLeaf('update', 'Update a post mortem', (command) => addContent(command.option('--id <id>', 'Post mortem ID')));
24
+ addLeaf('delete', 'Delete a post mortem', (command) => command.option('--id <id>', 'Post mortem ID'));
25
+ addLeaf('download', 'Download a post mortem', (command) => command.option('--id <id>', 'Post mortem ID'));
26
+ }
27
+ //# sourceMappingURL=postmortem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postmortem.js","sourceRoot":"","sources":["../../src/program/postmortem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,eAAe,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,uDAAuD;AACvD,MAAM,UAAU,yBAAyB,CAAC,OAAgB;IACxD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACpH,MAAM,OAAO,GAAG,CACd,MAAc,EACd,WAAmB,EACnB,YAA2C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAC/D,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,CAAC,OAAgB,EAAE,EAAE,CACtC,OAAO;SACJ,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC;SACnC,MAAM,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;SAC9C,MAAM,CAAC,qBAAqB,EAAE,8BAA8B,CAAC;SAC7D,MAAM,CAAC,eAAe,EAAE,2CAA2C,CAAC;SACpE,MAAM,CAAC,aAAa,EAAE,kCAAkC,EAAE,KAAK,CAAC;SAChE,MAAM,CAAC,sBAAsB,EAAE,gCAAgC,CAAC;SAChE,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAC;IACvD,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,OAAO,EAAE,EAAE,CAC/C,oBAAoB,CAAC,OAAO,CAAC;SAC1B,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC;SACnC,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;SACjD,MAAM,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CACrD,CAAC;IACF,OAAO,CAAC,KAAK,EAAE,mBAAmB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAChG,OAAO,CAAC,QAAQ,EAAE,sBAAsB,EAAE,CAAC,OAAO,EAAE,EAAE,CACpD,kBAAkB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAC5C,+BAA+B,EAC/B,uDAAuD,CACxD,CACF,CAAC;IACF,OAAO,CAAC,QAAQ,EAAE,sBAAsB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAClH,OAAO,CAAC,QAAQ,EAAE,sBAAsB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACtG,OAAO,CAAC,UAAU,EAAE,wBAAwB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAC5G,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Command } from './shared.js';
2
+ /** 액션 인벤토리: list/get/create/update/dismiss-review/delete/download. */
3
+ export declare function registerReportCommand(program: Command): void;
4
+ //# sourceMappingURL=report.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/program/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAmB,MAAM,aAAa,CAAC;AASvD,sEAAsE;AACtE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2C5D"}
@@ -0,0 +1,39 @@
1
+ import { CONVENTION_HINT } from './shared.js';
2
+ import { addCompletionReportMetricsOptions, addCompletionReportMetricValueOptions, } from './options/completionReport.js';
3
+ import { addPaginationOptions } from './options/pagination.js';
4
+ import { addJsonResourceLeaf } from './options/resource.js';
5
+ import { RUNNER_TYPE_OPTION_DESCRIPTION } from '../utils/runnerTypes.js';
6
+ /** 액션 인벤토리: list/get/create/update/dismiss-review/delete/download. */
7
+ export function registerReportCommand(program) {
8
+ const root = program.command('report').description('Manage completion reports').addHelpText('after', CONVENTION_HINT);
9
+ const addLeaf = (action, description, configure = (command) => command) => addJsonResourceLeaf(root, 'report', action, description, configure);
10
+ addLeaf('list', 'List completion reports', (command) => addPaginationOptions(command)
11
+ .option('--plan-id <id>', 'Plan ID')
12
+ .option('--status <status>', 'Report status')
13
+ .option('--search <text>', 'Title keyword search'));
14
+ addLeaf('get', 'Get a completion report', (command) => command.option('--id <id>', 'Report ID'));
15
+ addLeaf('create', 'Create a completion report', (command) => addCompletionReportMetricsOptions(command)
16
+ .option('--plan-id <id>', 'Plan ID')
17
+ .option('--title <title>', 'Report title')
18
+ .option('--file <path>', 'Read report content from a local file')
19
+ .option('--keep-temp', 'Keep the uploaded temporary file', false)
20
+ .option('--status <status>', 'Report status (COMPLETED, FAILED, PARTIAL)')
21
+ .option('--quality-score <n>', 'Quality score 0-100')
22
+ .option('--review-recommendation <value>', 'Code review recommendation: REQUIRED or NOT_NEEDED')
23
+ .option('--review-reason <text>', 'One-line reason for the review recommendation')
24
+ .option('--repository-remote-url <url>', 'Repository remote origin URL (defaults to git origin)')
25
+ .option('--runner-type <type>', RUNNER_TYPE_OPTION_DESCRIPTION)
26
+ .option('--model <model>', 'Model ID snapshot'));
27
+ addLeaf('update', 'Update a completion report', (command) => addCompletionReportMetricValueOptions(command)
28
+ .option('--id <id>', 'Report ID')
29
+ .option('--title <title>', 'Report title')
30
+ .option('--file <path>', 'Read report content from a local file')
31
+ .option('--status <status>', 'Report status (COMPLETED, FAILED, PARTIAL)')
32
+ .option('--quality-score <n>', 'Quality score 0-100')
33
+ .option('--review-recommendation <value>', 'Compatibility notice only')
34
+ .option('--review-reason <text>', 'Compatibility notice only'));
35
+ addLeaf('dismiss-review', 'Dismiss a report review recommendation', (command) => command.option('--id <id>', 'Report ID'));
36
+ addLeaf('delete', 'Delete a completion report', (command) => command.option('--id <id>', 'Report ID'));
37
+ addLeaf('download', 'Download a completion report', (command) => command.option('--id <id>', 'Report ID'));
38
+ }
39
+ //# sourceMappingURL=report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/program/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,eAAe,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EACL,iCAAiC,EACjC,qCAAqC,GACtC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAEzE,sEAAsE;AACtE,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACtH,MAAM,OAAO,GAAG,CACd,MAAc,EACd,WAAmB,EACnB,YAA2C,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAC/D,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACzE,OAAO,CAAC,MAAM,EAAE,yBAAyB,EAAE,CAAC,OAAO,EAAE,EAAE,CACrD,oBAAoB,CAAC,OAAO,CAAC;SAC1B,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC;SACnC,MAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC;SAC5C,MAAM,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,CACrD,CAAC;IACF,OAAO,CAAC,KAAK,EAAE,yBAAyB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IACjG,OAAO,CAAC,QAAQ,EAAE,4BAA4B,EAAE,CAAC,OAAO,EAAE,EAAE,CAC1D,iCAAiC,CAAC,OAAO,CAAC;SACvC,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC;SACnC,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC;SACzC,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;SAChE,MAAM,CAAC,aAAa,EAAE,kCAAkC,EAAE,KAAK,CAAC;SAChE,MAAM,CAAC,mBAAmB,EAAE,4CAA4C,CAAC;SACzE,MAAM,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;SACpD,MAAM,CAAC,iCAAiC,EAAE,oDAAoD,CAAC;SAC/F,MAAM,CAAC,wBAAwB,EAAE,+CAA+C,CAAC;SACjF,MAAM,CAAC,+BAA+B,EAAE,uDAAuD,CAAC;SAChG,MAAM,CAAC,sBAAsB,EAAE,8BAA8B,CAAC;SAC9D,MAAM,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAClD,CAAC;IACF,OAAO,CAAC,QAAQ,EAAE,4BAA4B,EAAE,CAAC,OAAO,EAAE,EAAE,CAC1D,qCAAqC,CAAC,OAAO,CAAC;SAC3C,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC;SAChC,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC;SACzC,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;SAChE,MAAM,CAAC,mBAAmB,EAAE,4CAA4C,CAAC;SACzE,MAAM,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;SACpD,MAAM,CAAC,iCAAiC,EAAE,2BAA2B,CAAC;SACtE,MAAM,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,CACjE,CAAC;IACF,OAAO,CAAC,gBAAgB,EAAE,wCAAwC,EAAE,CAAC,OAAO,EAAE,EAAE,CAC9E,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CACzC,CAAC;IACF,OAAO,CAAC,QAAQ,EAAE,4BAA4B,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IACvG,OAAO,CAAC,UAAU,EAAE,8BAA8B,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;AAC7G,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Command } from './shared.js';
2
+ /**
3
+ * 액션 인벤토리: 액션: get. 실사용 옵션: ref. 별칭/도움말 불일치: 없음.
4
+ */
5
+ export declare function registerResolveCommand(program: Command): void;
6
+ //# sourceMappingURL=resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/program/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAoE,MAAM,aAAa,CAAC;AAExG;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8B7D"}
@@ -0,0 +1,30 @@
1
+ import { CONVENTION_HINT, executeCommand, handleError, printCommandResult } from './shared.js';
2
+ /**
3
+ * 액션 인벤토리: 액션: get. 실사용 옵션: ref. 별칭/도움말 불일치: 없음.
4
+ */
5
+ export function registerResolveCommand(program) {
6
+ program
7
+ .command('resolve')
8
+ .description('Resolve an entity reference token to the right entity and fetch it')
9
+ .argument('<ref>', 'Reference token, e.g. "plan:agentteams_pln_<uuid>", "agentteams_doc_<uuid>", or a whole [label](type:id) link')
10
+ .option('--output-file <path>', 'Write full output to a file (stdout prints a short summary)')
11
+ .option('--verbose', 'Print full raw output to stdout; with --output-file, also echo it', false)
12
+ .addHelpText('after', `\nReturns a "kind" that tells you what to do next:\n file read "filePath" (the entity body was downloaded)\n record use "record" (structured payload, already inline)\n localFile read "filePath" (the reference carried a local path)\n external open "url" or run "suggestedCommand" (gh/glab)\n${CONVENTION_HINT}`)
13
+ .action(async (ref, options) => {
14
+ try {
15
+ const result = await executeCommand('resolve', 'get', { ref });
16
+ printCommandResult({
17
+ result,
18
+ outputFile: options.outputFile,
19
+ verbose: options.verbose,
20
+ resource: 'resolve',
21
+ action: 'get',
22
+ });
23
+ }
24
+ catch (error) {
25
+ console.error(handleError(error));
26
+ process.exit(1);
27
+ }
28
+ });
29
+ }
30
+ //# sourceMappingURL=resolve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/program/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAExG;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,oEAAoE,CAAC;SACjF,QAAQ,CACP,OAAO,EACP,+GAA+G,CAChH;SACA,MAAM,CAAC,sBAAsB,EAAE,6DAA6D,CAAC;SAC7F,MAAM,CAAC,WAAW,EAAE,mEAAmE,EAAE,KAAK,CAAC;SAC/F,WAAW,CACV,OAAO,EACP,sTAAsT,eAAe,EAAE,CACxU;SACA,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;QAC7B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YAE/D,kBAAkB,CAAC;gBACjB,MAAM;gBACN,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Command } from './shared.js';
2
+ /**
3
+ * 액션 인벤토리: 단일 액션형 커맨드. 실사용 옵션: query,types,limit,maxTokens 및 접속 옵션. limit은 유일한 페이징 옵션이며 별칭이 아님.
4
+ */
5
+ export declare function registerSearchCommand(program: Command): void;
6
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/program/search.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAMR,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0C5D"}
@@ -0,0 +1,43 @@
1
+ import { CONVENTION_HINT, createApiKeyFileOption, executeCommand, handleError, printCommandResult, } from './shared.js';
2
+ /**
3
+ * 액션 인벤토리: 단일 액션형 커맨드. 실사용 옵션: query,types,limit,maxTokens 및 접속 옵션. limit은 유일한 페이징 옵션이며 별칭이 아님.
4
+ */
5
+ export function registerSearchCommand(program) {
6
+ program
7
+ .command('search')
8
+ .description('Search across all entity types (plans, co-actions, reports, post-mortems, conventions, code reviews, documents)')
9
+ .option('--query <text>', 'Search query (required)')
10
+ .option('--types <types>', 'Comma-separated entity types to filter (PLAN, CO_ACTION, COMPLETION_REPORT, POST_MORTEM, CONVENTION, CODE_REVIEW, DOCUMENT)')
11
+ .option('--limit <n>', 'Max results (1-100, default: 20)')
12
+ .option('--max-tokens <n>', 'Token budget for response')
13
+ .option('--api-url <url>', 'Override API URL (optional)')
14
+ .addOption(createApiKeyFileOption())
15
+ .option('--project-id <id>', 'Override project ID (optional)')
16
+ .option('--output-file <path>', 'Write full output to a file (stdout prints a short summary)')
17
+ .option('--verbose', 'Print full raw output to stdout; with --output-file, also echo it', false)
18
+ .addHelpText('after', CONVENTION_HINT)
19
+ .action(async (options) => {
20
+ try {
21
+ const result = await executeCommand('search', '', {
22
+ query: options.query,
23
+ types: options.types,
24
+ limit: options.limit,
25
+ maxTokens: options.maxTokens,
26
+ apiUrl: options.apiUrl,
27
+ apiKey: options.apiKey,
28
+ projectId: options.projectId,
29
+ });
30
+ printCommandResult({
31
+ result,
32
+ outputFile: options.outputFile,
33
+ verbose: options.verbose,
34
+ resource: 'search',
35
+ });
36
+ }
37
+ catch (error) {
38
+ console.error(handleError(error));
39
+ process.exit(1);
40
+ }
41
+ });
42
+ }
43
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/program/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CACV,iHAAiH,CAClH;SACA,MAAM,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;SACnD,MAAM,CACL,iBAAiB,EACjB,6HAA6H,CAC9H;SACA,MAAM,CAAC,aAAa,EAAE,kCAAkC,CAAC;SACzD,MAAM,CAAC,kBAAkB,EAAE,2BAA2B,CAAC;SACvD,MAAM,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;SACxD,SAAS,CAAC,sBAAsB,EAAE,CAAC;SACnC,MAAM,CAAC,mBAAmB,EAAE,gCAAgC,CAAC;SAC7D,MAAM,CAAC,sBAAsB,EAAE,6DAA6D,CAAC;SAC7F,MAAM,CAAC,WAAW,EAAE,mEAAmE,EAAE,KAAK,CAAC;SAC/F,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC;SACrC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,EAAE,EAAE;gBAChD,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YAEH,kBAAkB,CAAC;gBACjB,MAAM;gBACN,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from './shared.js';
2
+ export declare function registerSentryCommand(program: Command): void;
3
+ //# sourceMappingURL=sentry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry.d.ts","sourceRoot":"","sources":["../../src/program/sentry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA2C,MAAM,aAAa,CAAC;AAG/E,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+B5D"}
@@ -0,0 +1,19 @@
1
+ import { CONVENTION_HINT, createApiKeyFileOption } from './shared.js';
2
+ import { addJsonResourceLeaf } from './options/resource.js';
3
+ export function registerSentryCommand(program) {
4
+ const root = program
5
+ .command('sentry')
6
+ .description('Read project-bound Sentry issues through the AgentTeams API')
7
+ .addHelpText('after', CONVENTION_HINT);
8
+ const issue = root.command('issue').description('List or read Sentry issues from the selected project');
9
+ const addConnection = (command) => command
10
+ .option('--api-url <url>', 'Override API URL (optional)')
11
+ .addOption(createApiKeyFileOption())
12
+ .option('--project-id <id>', 'Override AgentTeams project ID (optional)');
13
+ addJsonResourceLeaf(issue, 'sentry', 'list', 'List Sentry issues from the selected project', (command) => addConnection(command)
14
+ .option('--query <query>', 'Sentry issue search/filter query')
15
+ .option('--cursor <cursor>', 'Sentry cursor for the next page')
16
+ .option('--limit <number>', 'Page size from 1 to 100'), { connection: false, commandAction: 'issue-list' });
17
+ addJsonResourceLeaf(issue, 'sentry', 'get', 'Get a Sentry issue', (command) => addConnection(command).option('--issue-id <id>', 'Canonical numeric Sentry issue ID'), { connection: false, commandAction: 'issue-get' });
18
+ }
19
+ //# sourceMappingURL=sentry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry.js","sourceRoot":"","sources":["../../src/program/sentry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,eAAe,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,IAAI,GAAG,OAAO;SACjB,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,6DAA6D,CAAC;SAC1E,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,sDAAsD,CAAC,CAAC;IACxG,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,EAAE,CACzC,OAAO;SACJ,MAAM,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;SACxD,SAAS,CAAC,sBAAsB,EAAE,CAAC;SACnC,MAAM,CAAC,mBAAmB,EAAE,2CAA2C,CAAC,CAAC;IAC9E,mBAAmB,CACjB,KAAK,EACL,QAAQ,EACR,MAAM,EACN,8CAA8C,EAC9C,CAAC,OAAO,EAAE,EAAE,CACV,aAAa,CAAC,OAAO,CAAC;SACnB,MAAM,CAAC,iBAAiB,EAAE,kCAAkC,CAAC;SAC7D,MAAM,CAAC,mBAAmB,EAAE,iCAAiC,CAAC;SAC9D,MAAM,CAAC,kBAAkB,EAAE,yBAAyB,CAAC,EAC1D,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,CACnD,CAAC;IACF,mBAAmB,CACjB,KAAK,EACL,QAAQ,EACR,KAAK,EACL,oBAAoB,EACpB,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,iBAAiB,EAAE,mCAAmC,CAAC,EAClG,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,CAClD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { Command, Option } from 'commander';
2
+ import { executeCommand } from '../commands/index.js';
3
+ import type { DoctorResult } from '../commands/doctor.js';
4
+ import { formatAuthResultText } from '../utils/authFormat.js';
5
+ import { printDoctorResult, resolveDoctorExitCode } from '../utils/doctorOutput.js';
6
+ import { handleError } from '../utils/errors.js';
7
+ import { formatOutput } from '../utils/formatter.js';
8
+ import { printInitResult } from '../utils/initOutput.js';
9
+ import { executeValidatedInteractiveCommand, normalizeInteractiveFormat } from '../utils/interactiveCommand.js';
10
+ import { type OutputFormat } from '../utils/outputPolicy.js';
11
+ import { MCP_CLIENT_IDS } from '../mcp-registration/types.js';
12
+ export { Command, Option, executeCommand, executeValidatedInteractiveCommand, formatAuthResultText, formatOutput, handleError, MCP_CLIENT_IDS, normalizeInteractiveFormat, printDoctorResult, printInitResult, resolveDoctorExitCode, };
13
+ export type { DoctorResult, OutputFormat };
14
+ export declare function createApiKeyFileOption(): Option;
15
+ export declare function registerApiKeyHook(program: Command): void;
16
+ export declare function removedContractHint(text: string): string | undefined;
17
+ export declare function normalizeFormat(format: unknown): OutputFormat;
18
+ /**
19
+ * 출력 정책: 기본은 전체 결과, `--output-file`이 있으면 저장 경로 + 요약,
20
+ * 거기에 `--verbose`까지 있으면 요약 뒤에 전체 결과를 덧붙입니다.
21
+ */
22
+ export declare function printCommandResult(params: {
23
+ result: unknown;
24
+ outputFile?: string;
25
+ verbose?: boolean;
26
+ resource?: string;
27
+ action?: string;
28
+ }): void;
29
+ export declare const DEVICE_AUTH_OPTION_DESCRIPTION = "authorize with a short code on another device instead of a local browser callback (for SSH, containers, and other headless shells)";
30
+ export declare const DEVICE_AUTH_SET_DEFAULT_DESCRIPTION = "with --device-auth: remember device-code login as this machine's default in ~/.agentteams/config.json";
31
+ export declare const CONVENTION_HINT = "\nFor workflow rules and reporting guidelines, see: .agentteams/convention.md";
32
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/program/shared.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,kCAAkC,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAChH,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EACL,OAAO,EACP,MAAM,EACN,cAAc,EACd,kCAAkC,EAClC,oBAAoB,EACpB,YAAY,EACZ,WAAW,EACX,cAAc,EACd,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,EACf,qBAAqB,GACtB,CAAC;AACF,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AAE3C,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmBzD;AAoBD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQpE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAI7D;AAUD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,IAAI,CAcP;AAED,eAAO,MAAM,8BAA8B,uIAC2F,CAAC;AACvI,eAAO,MAAM,mCAAmC,0GACyD,CAAC;AAC1G,eAAO,MAAM,eAAe,kFAAkF,CAAC"}