@braingrid/cli 0.0.7 → 0.0.9
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.
- package/CHANGELOG.md +25 -0
- package/README.md +12 -12
- package/dist/.build-info.json +1 -1
- package/dist/build-config.d.ts +5 -0
- package/dist/build-config.d.ts.map +1 -1
- package/dist/build-config.js +5 -0
- package/dist/build-config.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/handlers/project.handlers.d.ts.map +1 -1
- package/dist/handlers/project.handlers.js +12 -4
- package/dist/handlers/project.handlers.js.map +1 -1
- package/dist/handlers/update.handlers.d.ts.map +1 -1
- package/dist/handlers/update.handlers.js +4 -11
- package/dist/handlers/update.handlers.js.map +1 -1
- package/dist/services/project-service.d.ts +2 -2
- package/dist/services/project-service.d.ts.map +1 -1
- package/dist/services/project-service.js +4 -0
- package/dist/services/project-service.js.map +1 -1
- package/dist/utils/cli-tools.d.ts.map +1 -1
- package/dist/utils/cli-tools.js +76 -3
- package/dist/utils/cli-tools.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,31 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.0.9] - 2025-10-04
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- `-v` shorthand flag for `--version` command
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- API response handling for `project show --repo` and `project show --repo --limit` commands
|
|
15
|
+
- Now correctly handles `ListProjectsWithRepositoryResponse` (with `total_count`) vs `ListProjectsResponse` (with `pagination`)
|
|
16
|
+
- Fixed bug where optional `total_count` check could cause pagination info to not display
|
|
17
|
+
- Added `formatProjectListPagination()` helper function to eliminate code duplication
|
|
18
|
+
- Simplified `ProjectService.listProjects()` to use union type consistently
|
|
19
|
+
|
|
20
|
+
## [0.0.8] - 2025-10-03
|
|
21
|
+
|
|
22
|
+
### Fixed
|
|
23
|
+
- Claude Code detection in `braingrid status` command with 3-tier detection strategy
|
|
24
|
+
- Priority 1: Check `~/.claude/local/claude` (after `claude migrate-installer`)
|
|
25
|
+
- Priority 2: Try executing `claude --version` (shell alias detection)
|
|
26
|
+
- Priority 3: Check PATH with `which claude`
|
|
27
|
+
- Based on GitHub's spec-kit implementation pattern
|
|
28
|
+
- Added comprehensive test coverage for all detection methods
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- README comment alignment in usage sections for better readability
|
|
32
|
+
|
|
8
33
|
## [0.0.7] - 2025-10-03
|
|
9
34
|
|
|
10
35
|
### Added
|
package/README.md
CHANGED
|
@@ -72,9 +72,9 @@ BrainGrid CLI uses a resource-oriented command structure: `braingrid <resource>
|
|
|
72
72
|
### Authentication Commands
|
|
73
73
|
|
|
74
74
|
```bash
|
|
75
|
-
braingrid login
|
|
76
|
-
braingrid logout
|
|
77
|
-
braingrid whoami
|
|
75
|
+
braingrid login # Authenticate with BrainGrid (OAuth2 PKCE flow)
|
|
76
|
+
braingrid logout # Sign out and clear credentials
|
|
77
|
+
braingrid whoami # Show current user information
|
|
78
78
|
```
|
|
79
79
|
|
|
80
80
|
### Initialization
|
|
@@ -82,10 +82,10 @@ braingrid whoami # Show current user information
|
|
|
82
82
|
Initialize your repository with a BrainGrid project:
|
|
83
83
|
|
|
84
84
|
```bash
|
|
85
|
-
braingrid init
|
|
86
|
-
braingrid init --project PROJ-123
|
|
87
|
-
braingrid init --wizard
|
|
88
|
-
braingrid init --force
|
|
85
|
+
braingrid init # Auto-detects project from git remote (owner/name)
|
|
86
|
+
braingrid init --project PROJ-123 # Manually specify project by ID (short ID or UUID)
|
|
87
|
+
braingrid init --wizard # Run interactive wizard with confirmation prompt
|
|
88
|
+
braingrid init --force # Force reinitialization if already initialized
|
|
89
89
|
braingrid init --project PROJ-123 --force # Manually specify and force reinitialization
|
|
90
90
|
```
|
|
91
91
|
|
|
@@ -145,9 +145,9 @@ braingrid task create -r PROJ-123/REQ-456 --title "Task Title"
|
|
|
145
145
|
### Informational Commands
|
|
146
146
|
|
|
147
147
|
```bash
|
|
148
|
-
braingrid status
|
|
149
|
-
braingrid --version
|
|
150
|
-
braingrid --help
|
|
148
|
+
braingrid status # Show CLI status (authentication, git repo, configuration)
|
|
149
|
+
braingrid --version # Show CLI version
|
|
150
|
+
braingrid --help # Show help information
|
|
151
151
|
```
|
|
152
152
|
|
|
153
153
|
---
|
|
@@ -157,8 +157,8 @@ braingrid --help # Show help information
|
|
|
157
157
|
Update to the latest version:
|
|
158
158
|
|
|
159
159
|
```bash
|
|
160
|
-
braingrid update
|
|
161
|
-
braingrid update --check
|
|
160
|
+
braingrid update # Update to the latest version
|
|
161
|
+
braingrid update --check # Check for updates without installing
|
|
162
162
|
```
|
|
163
163
|
|
|
164
164
|
---
|
package/dist/.build-info.json
CHANGED
package/dist/build-config.d.ts
CHANGED
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
* - 'development': Allows NODE_ENV to override URLs (for local development)
|
|
5
5
|
*/
|
|
6
6
|
export declare const BUILD_ENV: 'production' | 'development';
|
|
7
|
+
/**
|
|
8
|
+
* CLI_VERSION is set at build time from package.json
|
|
9
|
+
* Used for update checks and version display
|
|
10
|
+
*/
|
|
11
|
+
export declare const CLI_VERSION = "development";
|
|
7
12
|
/**
|
|
8
13
|
* Production configuration
|
|
9
14
|
* Used when BUILD_ENV === 'production' (npm published package)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-config.d.ts","sourceRoot":"","sources":["../src/build-config.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,YAAY,GAAG,aAA6B,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC"}
|
|
1
|
+
{"version":3,"file":"build-config.d.ts","sourceRoot":"","sources":["../src/build-config.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,eAAO,MAAM,SAAS,EAAE,YAAY,GAAG,aAA6B,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,WAAW,gBAAgB,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC"}
|
package/dist/build-config.js
CHANGED
|
@@ -6,6 +6,11 @@
|
|
|
6
6
|
* - 'development': Allows NODE_ENV to override URLs (for local development)
|
|
7
7
|
*/
|
|
8
8
|
export const BUILD_ENV = 'production';
|
|
9
|
+
/**
|
|
10
|
+
* CLI_VERSION is set at build time from package.json
|
|
11
|
+
* Used for update checks and version display
|
|
12
|
+
*/
|
|
13
|
+
export const CLI_VERSION = '0.0.9';
|
|
9
14
|
/**
|
|
10
15
|
* Production configuration
|
|
11
16
|
* Used when BUILD_ENV === 'production' (npm published package)
|
package/dist/build-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-config.js","sourceRoot":"","sources":["../src/build-config.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,qDAAqD;AAErD;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAiC,aAAa,CAAC;AAErE;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAChC,MAAM,EAAE,0BAA0B;IAClC,aAAa,EAAE,0CAA0C;IACzD,cAAc,EAAE,mCAAmC;CAC1C,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IACjC,MAAM,EAAE,8BAA8B;IACtC,aAAa,EAAE,qDAAqD;IACpE,cAAc,EAAE,mCAAmC;CAC1C,CAAC"}
|
|
1
|
+
{"version":3,"file":"build-config.js","sourceRoot":"","sources":["../src/build-config.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,qDAAqD;AAErD;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAiC,aAAa,CAAC;AAErE;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAChC,MAAM,EAAE,0BAA0B;IAClC,aAAa,EAAE,0CAA0C;IACzD,cAAc,EAAE,mCAAmC;CAC1C,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IACjC,MAAM,EAAE,8BAA8B;IACtC,aAAa,EAAE,qDAAqD;IACpE,cAAc,EAAE,mCAAmC;CAC1C,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -8,7 +8,7 @@ const program = new Command();
|
|
|
8
8
|
program
|
|
9
9
|
.name('braingrid')
|
|
10
10
|
.description('BrainGrid CLI - Manage projects, requirements, and tasks')
|
|
11
|
-
.version(packageJson.version)
|
|
11
|
+
.version(packageJson.version, '-v, --version', 'output the current version')
|
|
12
12
|
.showHelpAfterError('(use --help for usage)');
|
|
13
13
|
// ============================================
|
|
14
14
|
// AUTH COMMANDS
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAEhD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACL,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,0DAA0D,CAAC;KACvE,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.handlers.d.ts","sourceRoot":"","sources":["../../src/handlers/project.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"project.handlers.d.ts","sourceRoot":"","sources":["../../src/handlers/project.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAQH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAuBhD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,aAAa,CAAC,CA6DzB;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,aAAa,CAAC,CAqGzB;AAED,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAmCzE;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,aAAa,CAAC,CA4BzB;AAED,wBAAsB,mBAAmB,CACxC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;IACL,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,GACC,OAAO,CAAC,aAAa,CAAC,CAqCxB;AAED,wBAAsB,mBAAmB,CACxC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACvB,OAAO,CAAC,aAAa,CAAC,CAiCxB"}
|
|
@@ -15,6 +15,16 @@ import { BraingridAuth } from '../services/auth.js';
|
|
|
15
15
|
import { getConfig } from '../utils/config.js';
|
|
16
16
|
import { formatError, getResourceContext } from '../utils/error-formatter.js';
|
|
17
17
|
import { getGitRepositoryInfo } from '../utils/git.js';
|
|
18
|
+
/**
|
|
19
|
+
* Format pagination or total count display for project list responses
|
|
20
|
+
*/
|
|
21
|
+
function formatProjectListPagination(response) {
|
|
22
|
+
if ('pagination' in response) {
|
|
23
|
+
const totalPages = Math.ceil(response.pagination.total / response.pagination.limit);
|
|
24
|
+
return `Page ${response.pagination.page} of ${totalPages} (${response.pagination.total} total)`;
|
|
25
|
+
}
|
|
26
|
+
return `Total: ${response.total_count || response.projects.length}`;
|
|
27
|
+
}
|
|
18
28
|
function getServices() {
|
|
19
29
|
const config = getConfig();
|
|
20
30
|
const auth = new BraingridAuth(config.apiUrl);
|
|
@@ -62,8 +72,7 @@ export async function handleProjectList(opts) {
|
|
|
62
72
|
output += `${id} ${shortId} ${name} ${created}\n`;
|
|
63
73
|
}
|
|
64
74
|
output += '\n';
|
|
65
|
-
output +=
|
|
66
|
-
output += ` (${response.pagination.total} total)`;
|
|
75
|
+
output += formatProjectListPagination(response);
|
|
67
76
|
return {
|
|
68
77
|
success: true,
|
|
69
78
|
message: output,
|
|
@@ -151,8 +160,7 @@ export async function handleProjectShow(opts) {
|
|
|
151
160
|
output += `${id} ${shortId} ${name} ${created}\n`;
|
|
152
161
|
}
|
|
153
162
|
output += '\n';
|
|
154
|
-
output +=
|
|
155
|
-
output += ` (${response.pagination.total} total)`;
|
|
163
|
+
output += formatProjectListPagination(response);
|
|
156
164
|
return {
|
|
157
165
|
success: true,
|
|
158
166
|
message: output,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.handlers.js","sourceRoot":"","sources":["../../src/handlers/project.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"project.handlers.js","sourceRoot":"","sources":["../../src/handlers/project.handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.handlers.d.ts","sourceRoot":"","sources":["../../src/handlers/update.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"update.handlers.d.ts","sourceRoot":"","sources":["../../src/handlers/update.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA+ChD;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAwEpF"}
|
|
@@ -10,22 +10,15 @@ import chalk from 'chalk';
|
|
|
10
10
|
import axios from 'axios';
|
|
11
11
|
import { detectPackageManager, executeUpdate, getUpdateCommand } from '../utils/package-manager.js';
|
|
12
12
|
import { formatError } from '../utils/error-formatter.js';
|
|
13
|
+
import { CLI_VERSION } from '../build-config.js';
|
|
13
14
|
const PACKAGE_NAME = '@braingrid/cli';
|
|
14
15
|
const NPM_REGISTRY_URL = `https://registry.npmjs.org/${PACKAGE_NAME}`;
|
|
15
16
|
/**
|
|
16
|
-
* Get the current version of the CLI from
|
|
17
|
+
* Get the current version of the CLI from build config
|
|
18
|
+
* Version is injected at build time from package.json
|
|
17
19
|
*/
|
|
18
20
|
function getCurrentVersion() {
|
|
19
|
-
|
|
20
|
-
// Note: In production, this will be bundled and the version will be hardcoded
|
|
21
|
-
try {
|
|
22
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
23
|
-
const packageJson = require('../../package.json');
|
|
24
|
-
return packageJson.version;
|
|
25
|
-
}
|
|
26
|
-
catch {
|
|
27
|
-
return 'unknown';
|
|
28
|
-
}
|
|
21
|
+
return CLI_VERSION;
|
|
29
22
|
}
|
|
30
23
|
/**
|
|
31
24
|
* Get the latest version from npm registry
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.handlers.js","sourceRoot":"","sources":["../../src/handlers/update.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"update.handlers.js","sourceRoot":"","sources":["../../src/handlers/update.handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Handles all API interactions for projects
|
|
4
4
|
*/
|
|
5
5
|
import { BraingridAuth } from './auth.js';
|
|
6
|
-
import { Project, CreateProjectRequest, UpdateProjectRequest, ListProjectsResponse } from '../types/project.js';
|
|
6
|
+
import { Project, CreateProjectRequest, UpdateProjectRequest, ListProjectsResponse, ListProjectsWithRepositoryResponse } from '../types/project.js';
|
|
7
7
|
export declare class ProjectService {
|
|
8
8
|
private baseUrl;
|
|
9
9
|
private auth;
|
|
@@ -15,7 +15,7 @@ export declare class ProjectService {
|
|
|
15
15
|
limit?: number;
|
|
16
16
|
repository_owner?: string;
|
|
17
17
|
repository_name?: string;
|
|
18
|
-
}): Promise<ListProjectsResponse>;
|
|
18
|
+
}): Promise<ListProjectsResponse | ListProjectsWithRepositoryResponse>;
|
|
19
19
|
getProject(projectId: string): Promise<Project>;
|
|
20
20
|
createProject(data: CreateProjectRequest): Promise<Project>;
|
|
21
21
|
updateProject(projectId: string, data: UpdateProjectRequest): Promise<Project>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-service.d.ts","sourceRoot":"","sources":["../../src/services/project-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,cAAc;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,KAAK,CAAgB;gBAEjB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa;IAMhD,OAAO,CAAC,UAAU;IAMZ,YAAY,CAAC,MAAM,EAAE;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"project-service.d.ts","sourceRoot":"","sources":["../../src/services/project-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EACN,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,kCAAkC,EAClC,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,cAAc;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,KAAK,CAAgB;gBAEjB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa;IAMhD,OAAO,CAAC,UAAU;IAMZ,YAAY,CAAC,MAAM,EAAE;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC,oBAAoB,GAAG,kCAAkC,CAAC;IAoBhE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ/C,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ3D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ9E,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMrD"}
|
|
@@ -26,6 +26,10 @@ export class ProjectService {
|
|
|
26
26
|
queryParams.append('repository_name', params.repository_name);
|
|
27
27
|
const url = `${this.baseUrl}/api/v1/projects?${queryParams.toString()}`;
|
|
28
28
|
const headers = this.getHeaders();
|
|
29
|
+
// API returns different response structures based on query parameters:
|
|
30
|
+
// - ListProjectsResponse (with pagination) for regular lists
|
|
31
|
+
// - ListProjectsWithRepositoryResponse (with total_count) for repository filters
|
|
32
|
+
// Handlers are equipped to handle both types via union type
|
|
29
33
|
const response = await this.axios.get(url, { headers });
|
|
30
34
|
return response.data;
|
|
31
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-service.js","sourceRoot":"","sources":["../../src/services/project-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"project-service.js","sourceRoot":"","sources":["../../src/services/project-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-tools.d.ts","sourceRoot":"","sources":["../../src/utils/cli-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"cli-tools.d.ts","sourceRoot":"","sources":["../../src/utils/cli-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AA6FD;;;GAGG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAYtE;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAClC,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,MAAoB,EACjC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GACxC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiBxB;AA6CD;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAarE"}
|
package/dist/utils/cli-tools.js
CHANGED
|
@@ -8,7 +8,69 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { exec } from 'child_process';
|
|
10
10
|
import { promisify } from 'util';
|
|
11
|
+
import { access, constants } from 'fs/promises';
|
|
12
|
+
import { homedir } from 'os';
|
|
13
|
+
import { join } from 'path';
|
|
11
14
|
const execAsync = promisify(exec);
|
|
15
|
+
// Claude Code local installation path after migrate-installer
|
|
16
|
+
// See: https://github.com/github/spec-kit/issues/123
|
|
17
|
+
const CLAUDE_LOCAL_PATH = join(homedir(), '.claude', 'local', 'claude');
|
|
18
|
+
/**
|
|
19
|
+
* Check if Claude Code is installed
|
|
20
|
+
* Special handling for Claude CLI after `claude migrate-installer`
|
|
21
|
+
*
|
|
22
|
+
* The migrate-installer command moves the Claude Code executable from PATH
|
|
23
|
+
* to ~/.claude/local/claude, so standard PATH checks fail.
|
|
24
|
+
*
|
|
25
|
+
* Detection priority:
|
|
26
|
+
* 1. Check ~/.claude/local/claude (after migrate-installer)
|
|
27
|
+
* 2. Try executing `claude --version` (may work via shell alias)
|
|
28
|
+
* 3. Check PATH with `which claude`
|
|
29
|
+
*/
|
|
30
|
+
async function checkClaudeInstalled() {
|
|
31
|
+
// Priority 1: Check ~/.claude/local/claude (after migrate-installer)
|
|
32
|
+
try {
|
|
33
|
+
await access(CLAUDE_LOCAL_PATH, constants.X_OK);
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
// Fall through to next check
|
|
38
|
+
}
|
|
39
|
+
// Priority 2: Try executing claude --version (may work via shell alias)
|
|
40
|
+
try {
|
|
41
|
+
await execAsync('claude --version 2>&1', { timeout: 2000 });
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
// Fall through to PATH check
|
|
46
|
+
}
|
|
47
|
+
// Priority 3: Check PATH with which
|
|
48
|
+
return isCliInstalled('claude');
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get Claude Code version
|
|
52
|
+
* Tries local path first, then falls back to standard version check
|
|
53
|
+
*/
|
|
54
|
+
async function getClaudeVersion() {
|
|
55
|
+
// Try local path first
|
|
56
|
+
try {
|
|
57
|
+
await access(CLAUDE_LOCAL_PATH, constants.X_OK);
|
|
58
|
+
const result = await execAsync(`"${CLAUDE_LOCAL_PATH}" --version 2>&1`, {
|
|
59
|
+
timeout: 2000,
|
|
60
|
+
});
|
|
61
|
+
const output = result.stdout || result.stderr;
|
|
62
|
+
const match = output.match(/([\d.]+)/);
|
|
63
|
+
return match ? match[1] : null;
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
// Fall through to regular version check
|
|
67
|
+
}
|
|
68
|
+
// Fall back to regular claude command
|
|
69
|
+
return getCliVersion('claude', '--version', output => {
|
|
70
|
+
const match = output.match(/([\d.]+)/);
|
|
71
|
+
return match ? match[1] : null;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
12
74
|
const CLI_TOOLS = [
|
|
13
75
|
{
|
|
14
76
|
name: 'GitHub CLI',
|
|
@@ -22,6 +84,8 @@ const CLI_TOOLS = [
|
|
|
22
84
|
{
|
|
23
85
|
name: 'Claude Code',
|
|
24
86
|
command: 'claude',
|
|
87
|
+
specialCheck: checkClaudeInstalled,
|
|
88
|
+
specialVersionCheck: getClaudeVersion,
|
|
25
89
|
versionFlag: '--version',
|
|
26
90
|
versionParser: output => {
|
|
27
91
|
// Output format: "2.0.1 (Claude Code)"
|
|
@@ -73,7 +137,10 @@ export async function getCliVersion(command, versionFlag = '--version', parser)
|
|
|
73
137
|
* Check a single CLI tool (installed status and version)
|
|
74
138
|
*/
|
|
75
139
|
async function checkCliTool(config) {
|
|
76
|
-
|
|
140
|
+
// Use special check if provided, otherwise use standard check
|
|
141
|
+
const installed = config.specialCheck
|
|
142
|
+
? await config.specialCheck()
|
|
143
|
+
: await isCliInstalled(config.command);
|
|
77
144
|
if (!installed) {
|
|
78
145
|
return {
|
|
79
146
|
name: config.name,
|
|
@@ -81,9 +148,15 @@ async function checkCliTool(config) {
|
|
|
81
148
|
installed: false,
|
|
82
149
|
};
|
|
83
150
|
}
|
|
84
|
-
// Try to get version
|
|
151
|
+
// Try to get version - use special version check if provided
|
|
85
152
|
let version;
|
|
86
|
-
if (config.
|
|
153
|
+
if (config.specialVersionCheck) {
|
|
154
|
+
const versionStr = await config.specialVersionCheck();
|
|
155
|
+
if (versionStr) {
|
|
156
|
+
version = versionStr;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
else if (config.versionFlag) {
|
|
87
160
|
const versionStr = await getCliVersion(config.command, config.versionFlag, config.versionParser);
|
|
88
161
|
if (versionStr) {
|
|
89
162
|
version = versionStr;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-tools.js","sourceRoot":"","sources":["../../src/utils/cli-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-tools.js","sourceRoot":"","sources":["../../src/utils/cli-tools.ts"],"names":[],"mappings":"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"}
|