centy 0.0.21 → 0.0.23

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 (149) hide show
  1. package/README.md +4 -0
  2. package/bin/run.js +19 -2
  3. package/dist/commands/add/asset.d.ts +1 -0
  4. package/dist/commands/add/asset.d.ts.map +1 -1
  5. package/dist/commands/add/asset.js +14 -5
  6. package/dist/commands/add/asset.js.map +1 -1
  7. package/dist/commands/compact.d.ts.map +1 -1
  8. package/dist/commands/compact.js +9 -4
  9. package/dist/commands/compact.js.map +1 -1
  10. package/dist/commands/config.d.ts.map +1 -1
  11. package/dist/commands/config.js +9 -4
  12. package/dist/commands/config.js.map +1 -1
  13. package/dist/commands/create/doc.d.ts +1 -0
  14. package/dist/commands/create/doc.d.ts.map +1 -1
  15. package/dist/commands/create/doc.js +14 -5
  16. package/dist/commands/create/doc.js.map +1 -1
  17. package/dist/commands/create/issue.d.ts +1 -0
  18. package/dist/commands/create/issue.d.ts.map +1 -1
  19. package/dist/commands/create/issue.js +5 -2
  20. package/dist/commands/create/issue.js.map +1 -1
  21. package/dist/commands/create/pr.d.ts +1 -0
  22. package/dist/commands/create/pr.d.ts.map +1 -1
  23. package/dist/commands/create/pr.js +5 -1
  24. package/dist/commands/create/pr.js.map +1 -1
  25. package/dist/commands/delete/asset.d.ts +1 -0
  26. package/dist/commands/delete/asset.d.ts.map +1 -1
  27. package/dist/commands/delete/asset.js +14 -5
  28. package/dist/commands/delete/asset.js.map +1 -1
  29. package/dist/commands/delete/doc.d.ts +1 -0
  30. package/dist/commands/delete/doc.d.ts.map +1 -1
  31. package/dist/commands/delete/doc.js +14 -5
  32. package/dist/commands/delete/doc.js.map +1 -1
  33. package/dist/commands/delete/issue.d.ts +1 -0
  34. package/dist/commands/delete/issue.d.ts.map +1 -1
  35. package/dist/commands/delete/issue.js +14 -5
  36. package/dist/commands/delete/issue.js.map +1 -1
  37. package/dist/commands/delete/pr.d.ts +1 -0
  38. package/dist/commands/delete/pr.d.ts.map +1 -1
  39. package/dist/commands/delete/pr.js +14 -5
  40. package/dist/commands/delete/pr.js.map +1 -1
  41. package/dist/commands/get/asset.d.ts +1 -0
  42. package/dist/commands/get/asset.d.ts.map +1 -1
  43. package/dist/commands/get/asset.js +14 -5
  44. package/dist/commands/get/asset.js.map +1 -1
  45. package/dist/commands/get/doc.d.ts +2 -0
  46. package/dist/commands/get/doc.d.ts.map +1 -1
  47. package/dist/commands/get/doc.js +97 -17
  48. package/dist/commands/get/doc.js.map +1 -1
  49. package/dist/commands/get/issue.d.ts +1 -0
  50. package/dist/commands/get/issue.d.ts.map +1 -1
  51. package/dist/commands/get/issue.js +64 -28
  52. package/dist/commands/get/issue.js.map +1 -1
  53. package/dist/commands/get/pr.d.ts +2 -0
  54. package/dist/commands/get/pr.d.ts.map +1 -1
  55. package/dist/commands/get/pr.js +135 -40
  56. package/dist/commands/get/pr.js.map +1 -1
  57. package/dist/commands/list/assets.d.ts +1 -0
  58. package/dist/commands/list/assets.d.ts.map +1 -1
  59. package/dist/commands/list/assets.js +14 -5
  60. package/dist/commands/list/assets.js.map +1 -1
  61. package/dist/commands/list/docs.d.ts +1 -0
  62. package/dist/commands/list/docs.d.ts.map +1 -1
  63. package/dist/commands/list/docs.js +14 -5
  64. package/dist/commands/list/docs.js.map +1 -1
  65. package/dist/commands/list/issues.d.ts +1 -0
  66. package/dist/commands/list/issues.d.ts.map +1 -1
  67. package/dist/commands/list/issues.js +14 -5
  68. package/dist/commands/list/issues.js.map +1 -1
  69. package/dist/commands/list/prs.d.ts +1 -0
  70. package/dist/commands/list/prs.d.ts.map +1 -1
  71. package/dist/commands/list/prs.js +14 -5
  72. package/dist/commands/list/prs.js.map +1 -1
  73. package/dist/commands/manifest.d.ts.map +1 -1
  74. package/dist/commands/manifest.js +9 -4
  75. package/dist/commands/manifest.js.map +1 -1
  76. package/dist/commands/start.d.ts +2 -0
  77. package/dist/commands/start.d.ts.map +1 -1
  78. package/dist/commands/start.js +56 -2
  79. package/dist/commands/start.js.map +1 -1
  80. package/dist/commands/update/doc.d.ts +1 -0
  81. package/dist/commands/update/doc.d.ts.map +1 -1
  82. package/dist/commands/update/doc.js +14 -5
  83. package/dist/commands/update/doc.js.map +1 -1
  84. package/dist/commands/update/issue.d.ts +1 -0
  85. package/dist/commands/update/issue.d.ts.map +1 -1
  86. package/dist/commands/update/issue.js +14 -5
  87. package/dist/commands/update/issue.js.map +1 -1
  88. package/dist/commands/update/pr.d.ts +1 -0
  89. package/dist/commands/update/pr.d.ts.map +1 -1
  90. package/dist/commands/update/pr.js +14 -5
  91. package/dist/commands/update/pr.js.map +1 -1
  92. package/dist/commands/update.d.ts.map +1 -1
  93. package/dist/commands/update.js +9 -4
  94. package/dist/commands/update.js.map +1 -1
  95. package/dist/commands/version.d.ts.map +1 -1
  96. package/dist/commands/version.js +9 -4
  97. package/dist/commands/version.js.map +1 -1
  98. package/dist/daemon/daemon-get-docs-by-slug.d.ts +6 -0
  99. package/dist/daemon/daemon-get-docs-by-slug.d.ts.map +1 -0
  100. package/dist/daemon/daemon-get-docs-by-slug.js +17 -0
  101. package/dist/daemon/daemon-get-docs-by-slug.js.map +1 -0
  102. package/dist/daemon/daemon-get-prs-by-uuid.d.ts +6 -0
  103. package/dist/daemon/daemon-get-prs-by-uuid.d.ts.map +1 -0
  104. package/dist/daemon/daemon-get-prs-by-uuid.js +17 -0
  105. package/dist/daemon/daemon-get-prs-by-uuid.js.map +1 -0
  106. package/dist/daemon/load-proto.d.ts +3 -1
  107. package/dist/daemon/load-proto.d.ts.map +1 -1
  108. package/dist/daemon/load-proto.js.map +1 -1
  109. package/dist/daemon/types.d.ts +26 -0
  110. package/dist/daemon/types.d.ts.map +1 -1
  111. package/dist/flags/project-flag.d.ts +6 -0
  112. package/dist/flags/project-flag.d.ts.map +1 -0
  113. package/dist/flags/project-flag.js +9 -0
  114. package/dist/flags/project-flag.js.map +1 -0
  115. package/dist/lib/start/prompt-for-install.d.ts +13 -0
  116. package/dist/lib/start/prompt-for-install.d.ts.map +1 -0
  117. package/dist/lib/start/prompt-for-install.js +12 -0
  118. package/dist/lib/start/prompt-for-install.js.map +1 -0
  119. package/dist/utils/ask-yes-no.d.ts +10 -0
  120. package/dist/utils/ask-yes-no.d.ts.map +1 -0
  121. package/dist/utils/ask-yes-no.js +26 -0
  122. package/dist/utils/ask-yes-no.js.map +1 -0
  123. package/dist/utils/cross-project-search.d.ts +7 -0
  124. package/dist/utils/cross-project-search.d.ts.map +1 -0
  125. package/dist/utils/cross-project-search.js +7 -0
  126. package/dist/utils/cross-project-search.js.map +1 -0
  127. package/dist/utils/ensure-initialized.d.ts +10 -0
  128. package/dist/utils/ensure-initialized.d.ts.map +1 -0
  129. package/dist/utils/ensure-initialized.js +26 -0
  130. package/dist/utils/ensure-initialized.js.map +1 -0
  131. package/dist/utils/format-cross-project-hint.d.ts +9 -0
  132. package/dist/utils/format-cross-project-hint.d.ts.map +1 -0
  133. package/dist/utils/format-cross-project-hint.js +17 -0
  134. package/dist/utils/format-cross-project-hint.js.map +1 -0
  135. package/dist/utils/format-cross-project-json.d.ts +9 -0
  136. package/dist/utils/format-cross-project-json.d.ts.map +1 -0
  137. package/dist/utils/format-cross-project-json.js +16 -0
  138. package/dist/utils/format-cross-project-json.js.map +1 -0
  139. package/dist/utils/is-not-found-error.d.ts +5 -0
  140. package/dist/utils/is-not-found-error.d.ts.map +1 -0
  141. package/dist/utils/is-not-found-error.js +14 -0
  142. package/dist/utils/is-not-found-error.js.map +1 -0
  143. package/dist/utils/resolve-project-path.d.ts +17 -0
  144. package/dist/utils/resolve-project-path.d.ts.map +1 -0
  145. package/dist/utils/resolve-project-path.js +72 -0
  146. package/dist/utils/resolve-project-path.js.map +1 -0
  147. package/oclif.manifest.json +203 -22
  148. package/package.json +1 -1
  149. package/proto/centy.proto +275 -4
@@ -1,6 +1,8 @@
1
1
  import { Args, Command, Flags } from '@oclif/core';
2
2
  import { daemonDeleteIssue } from '../../daemon/daemon-delete-issue.js';
3
- import { daemonIsInitialized } from '../../daemon/daemon-is-initialized.js';
3
+ import { projectFlag } from '../../flags/project-flag.js';
4
+ import { ensureInitialized, NotInitializedError, } from '../../utils/ensure-initialized.js';
5
+ import { resolveProjectPath } from '../../utils/resolve-project-path.js';
4
6
  /**
5
7
  * Delete an issue
6
8
  */
@@ -16,6 +18,7 @@ export default class DeleteIssue extends Command {
16
18
  '<%= config.bin %> delete issue 1',
17
19
  '<%= config.bin %> delete issue abc123-uuid',
18
20
  '<%= config.bin %> delete issue 1 --force',
21
+ '<%= config.bin %> delete issue 1 --project centy-daemon',
19
22
  ];
20
23
  static flags = {
21
24
  force: Flags.boolean({
@@ -23,13 +26,19 @@ export default class DeleteIssue extends Command {
23
26
  description: 'Skip confirmation prompt',
24
27
  default: false,
25
28
  }),
29
+ project: projectFlag,
26
30
  };
27
31
  async run() {
28
32
  const { args, flags } = await this.parse(DeleteIssue);
29
- const cwd = process.env['CENTY_CWD'] ?? process.cwd();
30
- const initStatus = await daemonIsInitialized({ projectPath: cwd });
31
- if (!initStatus.initialized) {
32
- this.error('.centy folder not initialized. Run "centy init" first.');
33
+ const cwd = await resolveProjectPath(flags.project);
34
+ try {
35
+ await ensureInitialized(cwd);
36
+ }
37
+ catch (error) {
38
+ if (error instanceof NotInitializedError) {
39
+ this.error(error.message);
40
+ }
41
+ throw error instanceof Error ? error : new Error(String(error));
33
42
  }
34
43
  if (!flags.force) {
35
44
  const readline = await import('node:readline');
@@ -1 +1 @@
1
- {"version":3,"file":"issue.js","sourceRoot":"","sources":["../../../src/commands/delete/issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAA;AAE3E;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,OAAO;IAC9C,MAAM,CAAU,IAAI,GAAG;QACrB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;YACd,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,WAAW,GAAG,iBAAiB,CAAA;IAE/C,MAAM,CAAU,QAAQ,GAAG;QACzB,kCAAkC;QAClC,4CAA4C;QAC5C,0CAA0C;KAC3C,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QACrD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QAErD,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAA;QACtE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;YAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;gBAClC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAS,OAAO,CAAC,EAAE;gBACjD,EAAE,CAAC,QAAQ,CACT,yCAAyC,IAAI,CAAC,EAAE,UAAU,EAC1D,OAAO,CACR,CAAA;YACH,CAAC,CAAC,CAAA;YACF,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC;YACvC,WAAW,EAAE,GAAG;YAChB,OAAO,EAAE,IAAI,CAAC,EAAE;SACjB,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IACtC,CAAC"}
1
+ {"version":3,"file":"issue.js","sourceRoot":"","sources":["../../../src/commands/delete/issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAExE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,OAAO;IAC9C,MAAM,CAAU,IAAI,GAAG;QACrB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;YACd,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,WAAW,GAAG,iBAAiB,CAAA;IAE/C,MAAM,CAAU,QAAQ,GAAG;QACzB,kCAAkC;QAClC,4CAA4C;QAC5C,0CAA0C;QAC1C,yDAAyD;KAC1D,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,OAAO,EAAE,WAAW;KACrB,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QACrD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEnD,IAAI,CAAC;YACH,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;gBACzC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC3B,CAAC;YACD,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QACjE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;YAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;gBAClC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAS,OAAO,CAAC,EAAE;gBACjD,EAAE,CAAC,QAAQ,CACT,yCAAyC,IAAI,CAAC,EAAE,UAAU,EAC1D,OAAO,CACR,CAAA;YACH,CAAC,CAAC,CAAA;YACF,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC;YACvC,WAAW,EAAE,GAAG;YAChB,OAAO,EAAE,IAAI,CAAC,EAAE;SACjB,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IACtC,CAAC"}
@@ -10,6 +10,7 @@ export default class DeletePr extends Command {
10
10
  static examples: string[];
11
11
  static flags: {
12
12
  force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
13
+ project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
14
  };
14
15
  run(): Promise<void>;
15
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pr.d.ts","sourceRoot":"","sources":["../../../src/commands/delete/pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAKlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAA0B;IAErD,OAAgB,QAAQ,WAIvB;IAED,OAAgB,KAAK;;MAMpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAuClC"}
1
+ {"version":3,"file":"pr.d.ts","sourceRoot":"","sources":["../../../src/commands/delete/pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAUlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAA0B;IAErD,OAAgB,QAAQ,WAKvB;IAED,OAAgB,KAAK;;;MAOpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA2ClC"}
@@ -1,6 +1,8 @@
1
1
  import { Args, Command, Flags } from '@oclif/core';
2
2
  import { daemonDeletePr } from '../../daemon/daemon-delete-pr.js';
3
- import { daemonIsInitialized } from '../../daemon/daemon-is-initialized.js';
3
+ import { projectFlag } from '../../flags/project-flag.js';
4
+ import { ensureInitialized, NotInitializedError, } from '../../utils/ensure-initialized.js';
5
+ import { resolveProjectPath } from '../../utils/resolve-project-path.js';
4
6
  /**
5
7
  * Delete a pull request
6
8
  */
@@ -16,6 +18,7 @@ export default class DeletePr extends Command {
16
18
  '<%= config.bin %> delete pr 1',
17
19
  '<%= config.bin %> delete pr abc123-uuid',
18
20
  '<%= config.bin %> delete pr 1 --force',
21
+ '<%= config.bin %> delete pr 1 --project centy-daemon',
19
22
  ];
20
23
  static flags = {
21
24
  force: Flags.boolean({
@@ -23,13 +26,19 @@ export default class DeletePr extends Command {
23
26
  description: 'Skip confirmation prompt',
24
27
  default: false,
25
28
  }),
29
+ project: projectFlag,
26
30
  };
27
31
  async run() {
28
32
  const { args, flags } = await this.parse(DeletePr);
29
- const cwd = process.env['CENTY_CWD'] ?? process.cwd();
30
- const initStatus = await daemonIsInitialized({ projectPath: cwd });
31
- if (!initStatus.initialized) {
32
- this.error('.centy folder not initialized. Run "centy init" first.');
33
+ const cwd = await resolveProjectPath(flags.project);
34
+ try {
35
+ await ensureInitialized(cwd);
36
+ }
37
+ catch (error) {
38
+ if (error instanceof NotInitializedError) {
39
+ this.error(error.message);
40
+ }
41
+ throw error instanceof Error ? error : new Error(String(error));
33
42
  }
34
43
  if (!flags.force) {
35
44
  const readline = await import('node:readline');
@@ -1 +1 @@
1
- {"version":3,"file":"pr.js","sourceRoot":"","sources":["../../../src/commands/delete/pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAA;AAE3E;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAU,IAAI,GAAG;QACrB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;YACd,WAAW,EAAE,gCAAgC;YAC7C,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,WAAW,GAAG,uBAAuB,CAAA;IAErD,MAAM,CAAU,QAAQ,GAAG;QACzB,+BAA+B;QAC/B,yCAAyC;QACzC,uCAAuC;KACxC,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAClD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QAErD,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAA;QACtE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;YAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;gBAClC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAS,OAAO,CAAC,EAAE;gBACjD,EAAE,CAAC,QAAQ,CACT,sCAAsC,IAAI,CAAC,EAAE,UAAU,EACvD,OAAO,CACR,CAAA;YACH,CAAC,CAAC,CAAA;YACF,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;YACpC,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,IAAI,CAAC,EAAE;SACd,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IACnC,CAAC"}
1
+ {"version":3,"file":"pr.js","sourceRoot":"","sources":["../../../src/commands/delete/pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAExE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAU,IAAI,GAAG;QACrB,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;YACd,WAAW,EAAE,gCAAgC;YAC7C,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,WAAW,GAAG,uBAAuB,CAAA;IAErD,MAAM,CAAU,QAAQ,GAAG;QACzB,+BAA+B;QAC/B,yCAAyC;QACzC,uCAAuC;QACvC,sDAAsD;KACvD,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,OAAO,EAAE,WAAW;KACrB,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAClD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEnD,IAAI,CAAC;YACH,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;gBACzC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC3B,CAAC;YACD,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QACjE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;YAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;gBAClC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAS,OAAO,CAAC,EAAE;gBACjD,EAAE,CAAC,QAAQ,CACT,sCAAsC,IAAI,CAAC,EAAE,UAAU,EACvD,OAAO,CACR,CAAA;YACH,CAAC,CAAC,CAAA;YACF,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;YACpC,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,IAAI,CAAC,EAAE;SACd,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IACnC,CAAC"}
@@ -13,6 +13,7 @@ export default class GetAsset extends Command {
13
13
  issue: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
14
14
  shared: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
15
  output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
+ project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
17
  };
17
18
  run(): Promise<void>;
18
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../../src/commands/get/asset.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAKlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,OAAgB,OAAO,WAAiB;IAExC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAAuC;IAElE,OAAgB,QAAQ,WAGvB;IAED,OAAgB,KAAK;;;;MAcpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA+BlC"}
1
+ {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../../src/commands/get/asset.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAUlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,OAAgB,OAAO,WAAiB;IAExC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAAuC;IAElE,OAAgB,QAAQ,WAIvB;IAED,OAAgB,KAAK;;;;;MAepB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAmClC"}
@@ -1,7 +1,9 @@
1
1
  import { writeFile } from 'node:fs/promises';
2
2
  import { Args, Command, Flags } from '@oclif/core';
3
3
  import { daemonGetAsset } from '../../daemon/daemon-get-asset.js';
4
- import { daemonIsInitialized } from '../../daemon/daemon-is-initialized.js';
4
+ import { projectFlag } from '../../flags/project-flag.js';
5
+ import { ensureInitialized, NotInitializedError, } from '../../utils/ensure-initialized.js';
6
+ import { resolveProjectPath } from '../../utils/resolve-project-path.js';
5
7
  /**
6
8
  * Get an asset and save it to a file
7
9
  */
@@ -17,6 +19,7 @@ export default class GetAsset extends Command {
17
19
  static examples = [
18
20
  '<%= config.bin %> get asset screenshot.png --issue 1 --output ./screenshot.png',
19
21
  '<%= config.bin %> get asset logo.svg --shared --output ./logo.svg',
22
+ '<%= config.bin %> get asset screenshot.png --issue 1 --project centy-daemon',
20
23
  ];
21
24
  static flags = {
22
25
  issue: Flags.string({
@@ -32,13 +35,19 @@ export default class GetAsset extends Command {
32
35
  char: 'o',
33
36
  description: 'Output file path (defaults to asset filename)',
34
37
  }),
38
+ project: projectFlag,
35
39
  };
36
40
  async run() {
37
41
  const { args, flags } = await this.parse(GetAsset);
38
- const cwd = process.env['CENTY_CWD'] ?? process.cwd();
39
- const initStatus = await daemonIsInitialized({ projectPath: cwd });
40
- if (!initStatus.initialized) {
41
- this.error('.centy folder not initialized. Run "centy init" first.');
42
+ const cwd = await resolveProjectPath(flags.project);
43
+ try {
44
+ await ensureInitialized(cwd);
45
+ }
46
+ catch (error) {
47
+ if (error instanceof NotInitializedError) {
48
+ this.error(error.message);
49
+ }
50
+ throw error instanceof Error ? error : new Error(String(error));
42
51
  }
43
52
  if (!flags.issue && !flags.shared) {
44
53
  this.error('Either --issue or --shared must be specified.');
@@ -1 +1 @@
1
- {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../../src/commands/get/asset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAA;AAE3E;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAU,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;IAExC,MAAM,CAAU,IAAI,GAAG;QACrB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC;YACpB,WAAW,EAAE,gBAAgB;YAC7B,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,WAAW,GAAG,oCAAoC,CAAA;IAElE,MAAM,CAAU,QAAQ,GAAG;QACzB,gFAAgF;QAChF,mEAAmE;KACpE,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,4BAA4B;SAC1C,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;YACpB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,oBAAoB;YACjC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,+CAA+C;SAC7D,CAAC;KACH,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAClD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QAErD,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAA;QACtE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;QAC7D,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;YACpC,WAAW,EAAE,GAAG;YAChB,OAAO,EAAE,KAAK,CAAC,KAAK;YACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,KAAK,CAAC,MAAM;SACvB,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAA;QAChD,MAAM,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE1C,IAAI,CAAC,GAAG,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAA;QACxC,IAAI,CAAC,GAAG,CAAC,WAAW,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAA;QAChD,IAAI,CAAC,GAAG,CAAC,WAAW,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;IAChD,CAAC"}
1
+ {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../../src/commands/get/asset.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ export default class GetDoc extends Command {
11
11
  static examples: string[];
12
12
  static flags: {
13
13
  json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ global: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
14
16
  };
15
17
  run(): Promise<void>;
16
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../../src/commands/get/doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAKlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,OAAO;IACzC,OAAgB,OAAO,WAAe;IAEtC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAAqC;IAEhE,OAAgB,QAAQ,WAGvB;IAED,OAAgB,KAAK;;MAKpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6BlC"}
1
+ {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../../src/commands/get/doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAgBlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,OAAO;IACzC,OAAgB,OAAO,WAAe;IAEtC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAAqC;IAEhE,OAAgB,QAAQ,WAMvB;IAED,OAAgB,KAAK;;;;MAWpB;IAGY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAiHlC"}
@@ -1,6 +1,10 @@
1
1
  import { Args, Command, Flags } from '@oclif/core';
2
2
  import { daemonGetDoc } from '../../daemon/daemon-get-doc.js';
3
- import { daemonIsInitialized } from '../../daemon/daemon-is-initialized.js';
3
+ import { daemonGetDocsBySlug } from '../../daemon/daemon-get-docs-by-slug.js';
4
+ import { projectFlag } from '../../flags/project-flag.js';
5
+ import { formatCrossProjectHint, formatCrossProjectJson, isNotFoundError, } from '../../utils/cross-project-search.js';
6
+ import { ensureInitialized, NotInitializedError, } from '../../utils/ensure-initialized.js';
7
+ import { resolveProjectPath } from '../../utils/resolve-project-path.js';
4
8
  /**
5
9
  * Get a single doc by slug
6
10
  */
@@ -16,33 +20,109 @@ export default class GetDoc extends Command {
16
20
  static examples = [
17
21
  '<%= config.bin %> get doc getting-started',
18
22
  '<%= config.bin %> get doc api-reference --json',
23
+ '<%= config.bin %> get doc getting-started --global',
24
+ '<%= config.bin %> get doc getting-started -g --json',
25
+ '<%= config.bin %> get doc api-reference --project centy-daemon',
19
26
  ];
20
27
  static flags = {
21
28
  json: Flags.boolean({
22
29
  description: 'Output as JSON',
23
30
  default: false,
24
31
  }),
32
+ global: Flags.boolean({
33
+ char: 'g',
34
+ description: 'Search across all tracked projects',
35
+ default: false,
36
+ }),
37
+ project: projectFlag,
25
38
  };
39
+ // eslint-disable-next-line max-lines-per-function
26
40
  async run() {
27
41
  const { args, flags } = await this.parse(GetDoc);
28
- const cwd = process.env['CENTY_CWD'] ?? process.cwd();
29
- const initStatus = await daemonIsInitialized({ projectPath: cwd });
30
- if (!initStatus.initialized) {
31
- this.error('.centy folder not initialized. Run "centy init" first.');
32
- }
33
- const doc = await daemonGetDoc({
34
- projectPath: cwd,
35
- slug: args.slug,
36
- });
37
- if (flags.json) {
38
- this.log(JSON.stringify(doc, null, 2));
42
+ const cwd = await resolveProjectPath(flags.project);
43
+ // Handle global search
44
+ if (flags.global) {
45
+ const result = await daemonGetDocsBySlug({ slug: args.slug });
46
+ if (flags.json) {
47
+ this.log(JSON.stringify(result, null, 2));
48
+ return;
49
+ }
50
+ if (result.docs.length === 0) {
51
+ this.log(`No docs found with slug: ${args.slug}`);
52
+ if (result.errors.length > 0) {
53
+ this.warn('Some projects could not be searched:');
54
+ for (const err of result.errors) {
55
+ this.warn(` - ${err}`);
56
+ }
57
+ }
58
+ return;
59
+ }
60
+ this.log(`Found ${result.totalCount} doc(s) matching slug: ${args.slug}\n`);
61
+ for (const dwp of result.docs) {
62
+ const doc = dwp.doc;
63
+ this.log(`--- Project: ${dwp.projectName} (${dwp.projectPath}) ---`);
64
+ this.log(`Title: ${doc.title}`);
65
+ this.log(`Slug: ${doc.slug}`);
66
+ this.log(`Created: ${doc.metadata !== undefined ? doc.metadata.createdAt : 'unknown'}`);
67
+ this.log(`Updated: ${doc.metadata !== undefined ? doc.metadata.updatedAt : 'unknown'}`);
68
+ if (doc.content) {
69
+ this.log(`\nContent:\n${doc.content}`);
70
+ }
71
+ this.log('');
72
+ }
73
+ if (result.errors.length > 0) {
74
+ this.warn('Some projects could not be searched:');
75
+ for (const err of result.errors) {
76
+ this.warn(` - ${err}`);
77
+ }
78
+ }
39
79
  return;
40
80
  }
41
- this.log(`Title: ${doc.title}`);
42
- this.log(`Slug: ${doc.slug}`);
43
- this.log(`Created: ${doc.metadata !== undefined ? doc.metadata.createdAt : 'unknown'}`);
44
- this.log(`Updated: ${doc.metadata !== undefined ? doc.metadata.updatedAt : 'unknown'}`);
45
- this.log(`\nContent:\n${doc.content}`);
81
+ // Local search
82
+ try {
83
+ await ensureInitialized(cwd);
84
+ }
85
+ catch (error) {
86
+ if (error instanceof NotInitializedError) {
87
+ this.error(error.message);
88
+ }
89
+ throw error instanceof Error ? error : new Error(String(error));
90
+ }
91
+ try {
92
+ const doc = await daemonGetDoc({
93
+ projectPath: cwd,
94
+ slug: args.slug,
95
+ });
96
+ if (flags.json) {
97
+ this.log(JSON.stringify(doc, null, 2));
98
+ return;
99
+ }
100
+ this.log(`Title: ${doc.title}`);
101
+ this.log(`Slug: ${doc.slug}`);
102
+ this.log(`Created: ${doc.metadata !== undefined ? doc.metadata.createdAt : 'unknown'}`);
103
+ this.log(`Updated: ${doc.metadata !== undefined ? doc.metadata.updatedAt : 'unknown'}`);
104
+ this.log(`\nContent:\n${doc.content}`);
105
+ }
106
+ catch (error) {
107
+ // For NOT_FOUND errors, try cross-project search to provide helpful hints
108
+ if (isNotFoundError(error)) {
109
+ // Try global search to see if the doc exists in another project
110
+ const result = await daemonGetDocsBySlug({ slug: args.slug });
111
+ if (result.docs.length > 0) {
112
+ const matches = result.docs.map(dwp => ({
113
+ projectName: dwp.projectName,
114
+ projectPath: dwp.projectPath,
115
+ }));
116
+ if (flags.json) {
117
+ this.log(JSON.stringify(formatCrossProjectJson('doc', args.slug, matches), null, 2));
118
+ this.exit(1);
119
+ }
120
+ this.error(formatCrossProjectHint('doc', args.slug, matches));
121
+ }
122
+ }
123
+ // Re-throw original error if not found anywhere or not a NOT_FOUND error
124
+ throw error instanceof Error ? error : new Error(String(error));
125
+ }
46
126
  }
47
127
  }
48
128
  //# sourceMappingURL=doc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../../src/commands/get/doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAA;AAE3E;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,OAAO;IACzC,MAAM,CAAU,OAAO,GAAG,CAAC,UAAU,CAAC,CAAA;IAEtC,MAAM,CAAU,IAAI,GAAG;QACrB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAA;IAED,MAAM,CAAU,WAAW,GAAG,kCAAkC,CAAA;IAEhE,MAAM,CAAU,QAAQ,GAAG;QACzB,2CAA2C;QAC3C,gDAAgD;KACjD,CAAA;IAED,MAAM,CAAU,KAAK,GAAG;QACtB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QAErD,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAA;QAClE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAA;QACtE,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC;YAC7B,WAAW,EAAE,GAAG;YAChB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAA;QAEF,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YACtC,OAAM;QACR,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QAC7B,IAAI,CAAC,GAAG,CACN,YAAY,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAC9E,CAAA;QACD,IAAI,CAAC,GAAG,CACN,YAAY,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAC9E,CAAA;QACD,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IACxC,CAAC"}
1
+ {"version":3,"file":"doc.js","sourceRoot":"","sources":["../../../src/commands/get/doc.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export default class GetIssue extends Command {
12
12
  static flags: {
13
13
  json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
14
  global: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
16
  };
16
17
  run(): Promise<void>;
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../../../src/commands/get/issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAOlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,OAAgB,OAAO,WAAiB;IAExC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAA+C;IAE1E,OAAgB,QAAQ,WAMvB;IAED,OAAgB,KAAK;;;MAUpB;IAGY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA2GlC"}
1
+ {"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../../../src/commands/get/issue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAiBlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,OAAgB,OAAO,WAA0B;IAEjD,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAA+C;IAE1E,OAAgB,QAAQ,WAQvB;IAED,OAAgB,KAAK;;;;MAWpB;IAGY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAgJlC"}
@@ -2,12 +2,15 @@ import { Args, Command, Flags } from '@oclif/core';
2
2
  import { daemonGetIssue } from '../../daemon/daemon-get-issue.js';
3
3
  import { daemonGetIssueByDisplayNumber } from '../../daemon/daemon-get-issue-by-display-number.js';
4
4
  import { daemonGetIssuesByUuid } from '../../daemon/daemon-get-issues-by-uuid.js';
5
- import { daemonIsInitialized } from '../../daemon/daemon-is-initialized.js';
5
+ import { projectFlag } from '../../flags/project-flag.js';
6
+ import { formatCrossProjectHint, formatCrossProjectJson, isNotFoundError, } from '../../utils/cross-project-search.js';
7
+ import { ensureInitialized, NotInitializedError, } from '../../utils/ensure-initialized.js';
8
+ import { resolveProjectPath } from '../../utils/resolve-project-path.js';
6
9
  /**
7
10
  * Get a single issue by ID or display number
8
11
  */
9
12
  export default class GetIssue extends Command {
10
- static aliases = ['show:issue'];
13
+ static aliases = ['show:issue', 'issue'];
11
14
  static args = {
12
15
  id: Args.string({
13
16
  description: 'Issue ID (UUID) or display number',
@@ -21,6 +24,8 @@ export default class GetIssue extends Command {
21
24
  '<%= config.bin %> get issue 1 --json',
22
25
  '<%= config.bin %> get issue abc12345-1234-1234-1234-123456789abc --global',
23
26
  '<%= config.bin %> get issue abc12345-1234-1234-1234-123456789abc -g --json',
27
+ '<%= config.bin %> get issue 1 --project centy-daemon',
28
+ '<%= config.bin %> get issue 1 --project /path/to/project',
24
29
  ];
25
30
  static flags = {
26
31
  json: Flags.boolean({
@@ -32,11 +37,12 @@ export default class GetIssue extends Command {
32
37
  description: 'Search across all tracked projects (UUID only)',
33
38
  default: false,
34
39
  }),
40
+ project: projectFlag,
35
41
  };
36
42
  // eslint-disable-next-line max-lines-per-function
37
43
  async run() {
38
44
  const { args, flags } = await this.parse(GetIssue);
39
- const cwd = process.env['CENTY_CWD'] ?? process.cwd();
45
+ const cwd = await resolveProjectPath(flags.project);
40
46
  // Handle global search
41
47
  if (flags.global) {
42
48
  // Validate UUID format for global search
@@ -85,38 +91,68 @@ export default class GetIssue extends Command {
85
91
  return;
86
92
  }
87
93
  // Local search (existing behavior)
88
- const initStatus = await daemonIsInitialized({ projectPath: cwd });
89
- if (!initStatus.initialized) {
90
- this.error('.centy folder not initialized. Run "centy init" first.');
94
+ try {
95
+ await ensureInitialized(cwd);
96
+ }
97
+ catch (error) {
98
+ if (error instanceof NotInitializedError) {
99
+ this.error(error.message);
100
+ }
101
+ throw error instanceof Error ? error : new Error(String(error));
91
102
  }
92
103
  // Try to parse as display number first
93
104
  // Only treat as display number if the entire string is digits (not UUIDs like "3981508f-...")
94
105
  const isAllDigits = /^\d+$/.test(args.id);
95
106
  const displayNumber = isAllDigits ? Number.parseInt(args.id, 10) : NaN;
96
107
  const isDisplayNumber = isAllDigits && !Number.isNaN(displayNumber) && displayNumber > 0;
97
- const issue = isDisplayNumber
98
- ? await daemonGetIssueByDisplayNumber({
99
- projectPath: cwd,
100
- displayNumber,
101
- })
102
- : await daemonGetIssue({
103
- projectPath: cwd,
104
- issueId: args.id,
105
- });
106
- if (flags.json) {
107
- this.log(JSON.stringify(issue, null, 2));
108
- return;
108
+ try {
109
+ const issue = isDisplayNumber
110
+ ? await daemonGetIssueByDisplayNumber({
111
+ projectPath: cwd,
112
+ displayNumber,
113
+ })
114
+ : await daemonGetIssue({
115
+ projectPath: cwd,
116
+ issueId: args.id,
117
+ });
118
+ if (flags.json) {
119
+ this.log(JSON.stringify(issue, null, 2));
120
+ return;
121
+ }
122
+ const meta = issue.metadata;
123
+ this.log(`Issue #${issue.displayNumber}`);
124
+ this.log(`ID: ${issue.id}`);
125
+ this.log(`Title: ${issue.title}`);
126
+ this.log(`Status: ${meta !== undefined ? meta.status : 'unknown'}`);
127
+ this.log(`Priority: ${meta !== undefined ? (meta.priorityLabel !== '' ? meta.priorityLabel : `P${meta.priority}`) : 'P?'}`);
128
+ this.log(`Created: ${meta !== undefined ? meta.createdAt : 'unknown'}`);
129
+ this.log(`Updated: ${meta !== undefined ? meta.updatedAt : 'unknown'}`);
130
+ if (issue.description) {
131
+ this.log(`\nDescription:\n${issue.description}`);
132
+ }
109
133
  }
110
- const meta = issue.metadata;
111
- this.log(`Issue #${issue.displayNumber}`);
112
- this.log(`ID: ${issue.id}`);
113
- this.log(`Title: ${issue.title}`);
114
- this.log(`Status: ${meta !== undefined ? meta.status : 'unknown'}`);
115
- this.log(`Priority: ${meta !== undefined ? (meta.priorityLabel !== '' ? meta.priorityLabel : `P${meta.priority}`) : 'P?'}`);
116
- this.log(`Created: ${meta !== undefined ? meta.createdAt : 'unknown'}`);
117
- this.log(`Updated: ${meta !== undefined ? meta.updatedAt : 'unknown'}`);
118
- if (issue.description) {
119
- this.log(`\nDescription:\n${issue.description}`);
134
+ catch (error) {
135
+ // For UUID lookups that fail, try cross-project search to provide helpful hints
136
+ if (!isDisplayNumber && isNotFoundError(error)) {
137
+ const uuidRegex = /^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/i;
138
+ if (uuidRegex.test(args.id)) {
139
+ // Try global search to see if the issue exists in another project
140
+ const result = await daemonGetIssuesByUuid({ uuid: args.id });
141
+ if (result.issues.length > 0) {
142
+ const matches = result.issues.map(iwp => ({
143
+ projectName: iwp.projectName,
144
+ projectPath: iwp.projectPath,
145
+ }));
146
+ if (flags.json) {
147
+ this.log(JSON.stringify(formatCrossProjectJson('issue', args.id, matches), null, 2));
148
+ this.exit(1);
149
+ }
150
+ this.error(formatCrossProjectHint('issue', args.id, matches));
151
+ }
152
+ }
153
+ }
154
+ // Re-throw original error if not found anywhere or not a NOT_FOUND error
155
+ throw error instanceof Error ? error : new Error(String(error));
120
156
  }
121
157
  }
122
158
  }
@@ -1 +1 @@
1
- {"version":3,"file":"issue.js","sourceRoot":"","sources":["../../../src/commands/get/issue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue.js","sourceRoot":"","sources":["../../../src/commands/get/issue.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ export default class GetPr extends Command {
11
11
  static examples: string[];
12
12
  static flags: {
13
13
  json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ global: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
14
16
  };
15
17
  run(): Promise<void>;
16
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pr.d.ts","sourceRoot":"","sources":["../../../src/commands/get/pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAMlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,OAAO,WAAc;IAErC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAC0B;IAErD,OAAgB,QAAQ,WAIvB;IAED,OAAgB,KAAK;;MAKpB;IAEY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAyDlC"}
1
+ {"version":3,"file":"pr.d.ts","sourceRoot":"","sources":["../../../src/commands/get/pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAS,MAAM,aAAa,CAAA;AAiBlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,OAAO;IACxC,OAAgB,OAAO,WAAc;IAErC,OAAgB,IAAI;;MAKnB;IAED,OAAgB,WAAW,SAC0B;IAErD,OAAgB,QAAQ,WAOvB;IAED,OAAgB,KAAK;;;;MAWpB;IAGY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAgKlC"}