@shepai/cli 1.44.1 → 1.45.0

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 (185) hide show
  1. package/apis/json-schema/AcceptanceCriteria.yaml +16 -0
  2. package/apis/json-schema/ActionItem.yaml +32 -0
  3. package/apis/json-schema/AgentAuthMethod.yaml +7 -0
  4. package/apis/json-schema/AgentConfig.yaml +19 -0
  5. package/apis/json-schema/AgentDefinition.yaml +14 -0
  6. package/apis/json-schema/AgentFeature.yaml +10 -0
  7. package/apis/json-schema/AgentInstance.yaml +23 -0
  8. package/apis/json-schema/AgentRun.yaml +63 -0
  9. package/apis/json-schema/AgentRunEvent.yaml +25 -0
  10. package/apis/json-schema/AgentRunStatus.yaml +12 -0
  11. package/apis/json-schema/AgentStatus.yaml +9 -0
  12. package/apis/json-schema/AgentType.yaml +10 -0
  13. package/apis/json-schema/ApprovalGates.yaml +18 -0
  14. package/apis/json-schema/Artifact.yaml +36 -0
  15. package/apis/json-schema/ArtifactCategory.yaml +9 -0
  16. package/apis/json-schema/ArtifactFormat.yaml +9 -0
  17. package/apis/json-schema/ArtifactState.yaml +8 -0
  18. package/apis/json-schema/AskRequest.yaml +10 -0
  19. package/apis/json-schema/AskResponse.yaml +14 -0
  20. package/apis/json-schema/AuditableEntity.yaml +13 -0
  21. package/apis/json-schema/BaseEntity.yaml +20 -0
  22. package/apis/json-schema/CiStatus.yaml +8 -0
  23. package/apis/json-schema/DeployMethod.yaml +10 -0
  24. package/apis/json-schema/DeploySkill.yaml +29 -0
  25. package/apis/json-schema/DeployTarget.yaml +10 -0
  26. package/apis/json-schema/DeployTargetActionItem.yaml +15 -0
  27. package/apis/json-schema/DeployTargetTask.yaml +15 -0
  28. package/apis/json-schema/DeployTargetTasks.yaml +17 -0
  29. package/apis/json-schema/Deployment.yaml +33 -0
  30. package/apis/json-schema/DeploymentState.yaml +8 -0
  31. package/apis/json-schema/EditorType.yaml +10 -0
  32. package/apis/json-schema/EnvironmentConfig.yaml +16 -0
  33. package/apis/json-schema/Feature.yaml +77 -0
  34. package/apis/json-schema/FeatureAgent.yaml +29 -0
  35. package/apis/json-schema/FeatureAgentState.yaml +11 -0
  36. package/apis/json-schema/FeatureArtifact.yaml +35 -0
  37. package/apis/json-schema/FeatureCheckpoint.yaml +18 -0
  38. package/apis/json-schema/FeatureErrors.yaml +15 -0
  39. package/apis/json-schema/FeatureIdentity.yaml +32 -0
  40. package/apis/json-schema/FeatureSpec.yaml +30 -0
  41. package/apis/json-schema/FeatureStatus.yaml +40 -0
  42. package/apis/json-schema/FeatureStatusInfo.yaml +30 -0
  43. package/apis/json-schema/FeatureStatusProgress.yaml +24 -0
  44. package/apis/json-schema/FeatureTaskTracking.yaml +21 -0
  45. package/apis/json-schema/FeatureValidation.yaml +21 -0
  46. package/apis/json-schema/GanttTask.yaml +34 -0
  47. package/apis/json-schema/GanttViewData.yaml +22 -0
  48. package/apis/json-schema/InstallationSuggestion.yaml +21 -0
  49. package/apis/json-schema/LocalDeployAgent.yaml +18 -0
  50. package/apis/json-schema/Message.yaml +29 -0
  51. package/apis/json-schema/MessageRole.yaml +7 -0
  52. package/apis/json-schema/ModelConfiguration.yaml +26 -0
  53. package/apis/json-schema/NotificationChannelConfig.yaml +11 -0
  54. package/apis/json-schema/NotificationEvent.yaml +34 -0
  55. package/apis/json-schema/NotificationEventConfig.yaml +31 -0
  56. package/apis/json-schema/NotificationEventType.yaml +10 -0
  57. package/apis/json-schema/NotificationPreferences.yaml +22 -0
  58. package/apis/json-schema/NotificationSeverity.yaml +9 -0
  59. package/apis/json-schema/OpenQuestion.yaml +25 -0
  60. package/apis/json-schema/PhaseTiming.yaml +35 -0
  61. package/apis/json-schema/Plan.yaml +37 -0
  62. package/apis/json-schema/PlanPhase.yaml +26 -0
  63. package/apis/json-schema/PlanSpec.yaml +26 -0
  64. package/apis/json-schema/PlanState.yaml +8 -0
  65. package/apis/json-schema/PortMap.yaml +19 -0
  66. package/apis/json-schema/PortProtocol.yaml +7 -0
  67. package/apis/json-schema/PrStatus.yaml +8 -0
  68. package/apis/json-schema/PrdApprovalPayload.yaml +15 -0
  69. package/apis/json-schema/PrdFinalAction.yaml +18 -0
  70. package/apis/json-schema/PrdOption.yaml +24 -0
  71. package/apis/json-schema/PrdQuestion.yaml +25 -0
  72. package/apis/json-schema/PrdQuestionnaireData.yaml +24 -0
  73. package/apis/json-schema/PrdRejectionPayload.yaml +20 -0
  74. package/apis/json-schema/PrdReviewResult.yaml +19 -0
  75. package/apis/json-schema/PullRequest.yaml +26 -0
  76. package/apis/json-schema/QuestionOption.yaml +18 -0
  77. package/apis/json-schema/QuestionSelectionChange.yaml +14 -0
  78. package/apis/json-schema/RejectionFeedbackEntry.yaml +21 -0
  79. package/apis/json-schema/Requirement.yaml +26 -0
  80. package/apis/json-schema/RequirementType.yaml +7 -0
  81. package/apis/json-schema/Research.yaml +26 -0
  82. package/apis/json-schema/ResearchArtifact.yaml +14 -0
  83. package/apis/json-schema/ResearchSpec.yaml +14 -0
  84. package/apis/json-schema/ResearchState.yaml +8 -0
  85. package/apis/json-schema/ReviewQuestion.yaml +24 -0
  86. package/apis/json-schema/SdlcLifecycle.yaml +13 -0
  87. package/apis/json-schema/Settings.yaml +36 -0
  88. package/apis/json-schema/SoftDeletableEntity.yaml +11 -0
  89. package/apis/json-schema/SpecArtifactBase.yaml +44 -0
  90. package/apis/json-schema/SpecTask.yaml +45 -0
  91. package/apis/json-schema/SystemConfig.yaml +16 -0
  92. package/apis/json-schema/Task.yaml +38 -0
  93. package/apis/json-schema/TaskState.yaml +9 -0
  94. package/apis/json-schema/TasksArtifact.yaml +18 -0
  95. package/apis/json-schema/TasksSpec.yaml +18 -0
  96. package/apis/json-schema/TddCycle.yaml +24 -0
  97. package/apis/json-schema/TechDecision.yaml +24 -0
  98. package/apis/json-schema/TechnicalPlanArtifact.yaml +26 -0
  99. package/apis/json-schema/TimelineEvent.yaml +17 -0
  100. package/apis/json-schema/Tool.yaml +23 -0
  101. package/apis/json-schema/ToolInstallCommand.yaml +28 -0
  102. package/apis/json-schema/ToolInstallationStatus.yaml +28 -0
  103. package/apis/json-schema/ToolType.yaml +12 -0
  104. package/apis/json-schema/UUID.yaml +4 -0
  105. package/apis/json-schema/UserProfile.yaml +14 -0
  106. package/apis/json-schema/WorkflowConfig.yaml +31 -0
  107. package/apis/openapi/openapi.yaml +7 -0
  108. package/dist/packages/core/src/application/ports/output/services/worktree-service.interface.d.ts +8 -0
  109. package/dist/packages/core/src/application/ports/output/services/worktree-service.interface.d.ts.map +1 -1
  110. package/dist/packages/core/src/application/use-cases/features/create/slug-resolver.d.ts.map +1 -1
  111. package/dist/packages/core/src/application/use-cases/features/create/slug-resolver.js +3 -2
  112. package/dist/packages/core/src/domain/factories/spec-yaml-parser.d.ts.map +1 -1
  113. package/dist/packages/core/src/domain/factories/spec-yaml-parser.js +16 -4
  114. package/dist/packages/core/src/infrastructure/services/git/worktree.service.d.ts +1 -0
  115. package/dist/packages/core/src/infrastructure/services/git/worktree.service.d.ts.map +1 -1
  116. package/dist/packages/core/src/infrastructure/services/git/worktree.service.js +11 -0
  117. package/dist/src/presentation/cli/commands/repo/index.d.ts +18 -0
  118. package/dist/src/presentation/cli/commands/repo/index.d.ts.map +1 -0
  119. package/dist/src/presentation/cli/commands/repo/index.js +25 -0
  120. package/dist/src/presentation/cli/commands/repo/ls.command.d.ts +11 -0
  121. package/dist/src/presentation/cli/commands/repo/ls.command.d.ts.map +1 -0
  122. package/dist/src/presentation/cli/commands/repo/ls.command.js +64 -0
  123. package/dist/src/presentation/cli/commands/repo/resolve-repository.d.ts +10 -0
  124. package/dist/src/presentation/cli/commands/repo/resolve-repository.d.ts.map +1 -0
  125. package/dist/src/presentation/cli/commands/repo/resolve-repository.js +24 -0
  126. package/dist/src/presentation/cli/commands/repo/show.command.d.ts +11 -0
  127. package/dist/src/presentation/cli/commands/repo/show.command.d.ts.map +1 -0
  128. package/dist/src/presentation/cli/commands/repo/show.command.js +95 -0
  129. package/dist/src/presentation/cli/index.d.ts +1 -0
  130. package/dist/src/presentation/cli/index.d.ts.map +1 -1
  131. package/dist/src/presentation/cli/index.js +3 -0
  132. package/dist/tsconfig.build.tsbuildinfo +1 -1
  133. package/package.json +2 -1
  134. package/web/.next/BUILD_ID +1 -1
  135. package/web/.next/build-manifest.json +2 -2
  136. package/web/.next/cache/.previewinfo +1 -1
  137. package/web/.next/cache/.rscinfo +1 -1
  138. package/web/.next/cache/.tsbuildinfo +1 -1
  139. package/web/.next/cache/config.json +3 -3
  140. package/web/.next/fallback-build-manifest.json +2 -2
  141. package/web/.next/prerender-manifest.json +3 -3
  142. package/web/.next/required-server-files.js +1 -1
  143. package/web/.next/required-server-files.json +1 -1
  144. package/web/.next/server/app/_global-error.html +2 -2
  145. package/web/.next/server/app/_global-error.rsc +1 -1
  146. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  147. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  148. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  149. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  150. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  151. package/web/.next/server/app/page/server-reference-manifest.json +11 -11
  152. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  153. package/web/.next/server/chunks/ssr/[root-of-the-server]__03a0dba7._.js +2 -2
  154. package/web/.next/server/chunks/ssr/[root-of-the-server]__03a0dba7._.js.map +1 -1
  155. package/web/.next/server/chunks/ssr/[root-of-the-server]__249c74f6._.js +1 -1
  156. package/web/.next/server/chunks/ssr/[root-of-the-server]__4e8ca89c._.js +2 -2
  157. package/web/.next/server/pages/500.html +2 -2
  158. package/web/.next/server/server-reference-manifest.js +1 -1
  159. package/web/.next/server/server-reference-manifest.json +12 -12
  160. package/web/.next/standalone/src/presentation/web/.next/BUILD_ID +1 -1
  161. package/web/.next/standalone/src/presentation/web/.next/build-manifest.json +2 -2
  162. package/web/.next/standalone/src/presentation/web/.next/prerender-manifest.json +3 -3
  163. package/web/.next/standalone/src/presentation/web/.next/required-server-files.json +1 -1
  164. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.html +2 -2
  165. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.rsc +1 -1
  166. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  167. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  168. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  169. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  170. package/web/.next/standalone/src/presentation/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  171. package/web/.next/standalone/src/presentation/web/.next/server/app/page/server-reference-manifest.json +11 -11
  172. package/web/.next/standalone/src/presentation/web/.next/server/app/page_client-reference-manifest.js +1 -1
  173. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__03a0dba7._.js +2 -2
  174. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__249c74f6._.js +1 -1
  175. package/web/.next/standalone/src/presentation/web/.next/server/chunks/ssr/[root-of-the-server]__4e8ca89c._.js +2 -2
  176. package/web/.next/standalone/src/presentation/web/.next/server/pages/500.html +2 -2
  177. package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.js +1 -1
  178. package/web/.next/standalone/src/presentation/web/.next/server/server-reference-manifest.json +12 -12
  179. package/web/.next/standalone/src/presentation/web/server.js +1 -1
  180. package/web/.next/static/chunks/{631933b137e91fb2.js → 22f9e39aab128063.js} +2 -2
  181. package/web/.next/trace +1 -1
  182. package/web/.next/trace-build +1 -1
  183. /package/web/.next/static/{aWm2zr_Js7tN6yFqI9qT- → z34pr57Jw4sBfoDeMMuGn}/_buildManifest.js +0 -0
  184. /package/web/.next/static/{aWm2zr_Js7tN6yFqI9qT- → z34pr57Jw4sBfoDeMMuGn}/_clientMiddlewareManifest.json +0 -0
  185. /package/web/.next/static/{aWm2zr_Js7tN6yFqI9qT- → z34pr57Jw4sBfoDeMMuGn}/_ssgManifest.js +0 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Repo Show Command
3
+ *
4
+ * Display details of a specific tracked repository.
5
+ *
6
+ * Usage:
7
+ * shep repo show <id>
8
+ */
9
+ import { Command } from 'commander';
10
+ import { container } from '../../../../../packages/core/src/infrastructure/di/container.js';
11
+ import { colors, messages, renderDetailView } from '../../ui/index.js';
12
+ import { resolveRepository } from './resolve-repository.js';
13
+ /** Color a lifecycle value to match feat ls status styling. */
14
+ function colorLifecycle(lifecycle) {
15
+ switch (lifecycle) {
16
+ case 'Started':
17
+ return colors.muted(lifecycle);
18
+ case 'Analyze':
19
+ case 'Requirements':
20
+ case 'Research':
21
+ case 'Planning':
22
+ return colors.info(lifecycle);
23
+ case 'Implementation':
24
+ return colors.warning(lifecycle);
25
+ case 'Review':
26
+ return colors.brand(lifecycle);
27
+ case 'Maintain':
28
+ return colors.success(lifecycle);
29
+ default:
30
+ return colors.muted(lifecycle);
31
+ }
32
+ }
33
+ function formatDate(date) {
34
+ if (!date)
35
+ return null;
36
+ try {
37
+ return new Date(date).toLocaleString();
38
+ }
39
+ catch {
40
+ return String(date);
41
+ }
42
+ }
43
+ export function createShowCommand() {
44
+ return new Command('show')
45
+ .description('Display details of a tracked repository')
46
+ .argument('<id>', 'Repository ID (or prefix)')
47
+ .action(async (id) => {
48
+ try {
49
+ const resolved = await resolveRepository(id);
50
+ if ('error' in resolved) {
51
+ messages.error(resolved.error);
52
+ process.exitCode = 1;
53
+ return;
54
+ }
55
+ const repository = resolved.repository;
56
+ const featureRepo = container.resolve('IFeatureRepository');
57
+ const features = await featureRepo.list({ repositoryPath: repository.path });
58
+ const featureFields = features.length > 0
59
+ ? features.map((f) => ({
60
+ label: `${colors.muted(f.id.slice(0, 8))} ${f.name}`,
61
+ value: colorLifecycle(f.lifecycle),
62
+ }))
63
+ : [{ label: 'No features found', value: '—' }];
64
+ renderDetailView({
65
+ title: 'Repository',
66
+ sections: [
67
+ {
68
+ fields: [
69
+ { label: 'ID', value: repository.id },
70
+ { label: 'Name', value: repository.name },
71
+ { label: 'Path', value: repository.path },
72
+ ],
73
+ },
74
+ {
75
+ title: 'Timestamps',
76
+ fields: [
77
+ { label: 'Created', value: formatDate(repository.createdAt) },
78
+ { label: 'Updated', value: formatDate(repository.updatedAt) },
79
+ { label: 'Deleted', value: formatDate(repository.deletedAt) },
80
+ ],
81
+ },
82
+ {
83
+ title: `Features (${features.length})`,
84
+ fields: featureFields,
85
+ },
86
+ ],
87
+ });
88
+ }
89
+ catch (error) {
90
+ const err = error instanceof Error ? error : new Error(String(error));
91
+ messages.error('Failed to show repository', err);
92
+ process.exitCode = 1;
93
+ }
94
+ });
95
+ }
@@ -14,6 +14,7 @@
14
14
  * shep run Run an AI agent workflow
15
15
  * shep agent Manage and view agent runs
16
16
  * shep feat Manage features through the SDLC lifecycle
17
+ * shep repo Manage tracked repositories
17
18
  * shep settings Configure Shep settings
18
19
  * shep upgrade Upgrade Shep CLI to the latest version
19
20
  * shep --version Display version number only
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/presentation/cli/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/presentation/cli/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,kBAAkB,CAAC"}
@@ -14,6 +14,7 @@
14
14
  * shep run Run an AI agent workflow
15
15
  * shep agent Manage and view agent runs
16
16
  * shep feat Manage features through the SDLC lifecycle
17
+ * shep repo Manage tracked repositories
17
18
  * shep settings Configure Shep settings
18
19
  * shep upgrade Upgrade Shep CLI to the latest version
19
20
  * shep --version Display version number only
@@ -31,6 +32,7 @@ import { createUiCommand } from './commands/ui.command.js';
31
32
  import { createRunCommand } from './commands/run.command.js';
32
33
  import { createAgentCommand } from './commands/agent/index.js';
33
34
  import { createFeatCommand } from './commands/feat/index.js';
35
+ import { createRepoCommand } from './commands/repo/index.js';
34
36
  import { createIdeOpenCommand } from './commands/ide-open.command.js';
35
37
  import { createInstallCommand } from './commands/install.command.js';
36
38
  import { createUpgradeCommand } from './commands/upgrade.command.js';
@@ -95,6 +97,7 @@ async function bootstrap() {
95
97
  program.addCommand(createRunCommand());
96
98
  program.addCommand(createAgentCommand());
97
99
  program.addCommand(createFeatCommand());
100
+ program.addCommand(createRepoCommand());
98
101
  program.addCommand(createIdeOpenCommand());
99
102
  program.addCommand(createInstallCommand());
100
103
  program.addCommand(createUpgradeCommand());