@idea1/cli 1.0.1 → 1.0.2
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/README.md +105 -15
- package/dist/commands/create-worktree.d.ts +3 -0
- package/dist/commands/create-worktree.d.ts.map +1 -0
- package/dist/commands/create-worktree.js +74 -0
- package/dist/commands/create-worktree.js.map +1 -0
- package/dist/commands/help.d.ts.map +1 -1
- package/dist/commands/help.js +22 -3
- package/dist/commands/help.js.map +1 -1
- package/dist/commands/index.d.ts +4 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +7 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/push.d.ts +3 -0
- package/dist/commands/push.d.ts.map +1 -0
- package/dist/commands/push.js +125 -0
- package/dist/commands/push.js.map +1 -0
- package/dist/commands/start-project-item.d.ts.map +1 -1
- package/dist/commands/start-project-item.js +9 -59
- package/dist/commands/start-project-item.js.map +1 -1
- package/dist/commands/update-docs.d.ts +3 -0
- package/dist/commands/update-docs.d.ts.map +1 -0
- package/dist/commands/update-docs.js +21 -0
- package/dist/commands/update-docs.js.map +1 -0
- package/dist/lib/settings.d.ts +12 -0
- package/dist/lib/settings.d.ts.map +1 -1
- package/dist/lib/settings.js +21 -0
- package/dist/lib/settings.js.map +1 -1
- package/dist/services/config.d.ts +8 -0
- package/dist/services/config.d.ts.map +1 -1
- package/dist/services/config.js +13 -0
- package/dist/services/config.js.map +1 -1
- package/dist/services/context.d.ts +26 -0
- package/dist/services/context.d.ts.map +1 -0
- package/dist/services/context.js +304 -0
- package/dist/services/context.js.map +1 -0
- package/dist/services/test.d.ts +11 -0
- package/dist/services/test.d.ts.map +1 -0
- package/dist/services/test.js +52 -0
- package/dist/services/test.js.map +1 -0
- package/dist/services/worktree.d.ts +32 -0
- package/dist/services/worktree.d.ts.map +1 -0
- package/dist/services/worktree.js +136 -0
- package/dist/services/worktree.js.map +1 -0
- package/dist/types/index.d.ts +23 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +3 -2
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { execWithOutput } from '../lib/shell.js';
|
|
2
|
+
import { logger } from '../lib/logger.js';
|
|
3
|
+
import { getTestCommand } from '../lib/settings.js';
|
|
4
|
+
import * as git from './git.js';
|
|
5
|
+
/**
|
|
6
|
+
* Run tests if configured in .idea1/settings.json
|
|
7
|
+
* Returns true if tests pass or no test command is configured
|
|
8
|
+
* Returns false if tests fail
|
|
9
|
+
*/
|
|
10
|
+
export async function runTestsIfNeeded() {
|
|
11
|
+
let repoRoot;
|
|
12
|
+
try {
|
|
13
|
+
repoRoot = await git.getRepoRoot();
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
logger.warning('Not in a git repository, skipping tests');
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
const testCommand = await getTestCommand(repoRoot);
|
|
20
|
+
if (!testCommand) {
|
|
21
|
+
logger.dim('No test command configured in .idea1/settings.json, skipping tests');
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
logger.step(`Running tests: ${testCommand}`);
|
|
25
|
+
// Parse the command into parts
|
|
26
|
+
const parts = testCommand.split(' ');
|
|
27
|
+
const cmd = parts[0];
|
|
28
|
+
const args = parts.slice(1);
|
|
29
|
+
const exitCode = await execWithOutput(cmd, args, { cwd: repoRoot });
|
|
30
|
+
if (exitCode === 0) {
|
|
31
|
+
logger.success('Tests passed');
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
logger.error('Tests failed. Please fix failing tests before creating PR.');
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Check if tests are configured for this repository
|
|
41
|
+
*/
|
|
42
|
+
export async function hasTestsConfigured() {
|
|
43
|
+
try {
|
|
44
|
+
const repoRoot = await git.getRepoRoot();
|
|
45
|
+
const testCommand = await getTestCommand(repoRoot);
|
|
46
|
+
return testCommand !== null;
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/services/test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;IAEnD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,kBAAkB,WAAW,EAAE,CAAC,CAAC;IAE7C,+BAA+B;IAC/B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5B,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;QACnD,OAAO,WAAW,KAAK,IAAI,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run the setup-worktree hook if defined in .idea1/settings.json
|
|
3
|
+
*/
|
|
4
|
+
export declare function runSetupWorktreeHook(repoRoot: string): Promise<void>;
|
|
5
|
+
/**
|
|
6
|
+
* Resolve the branch prefix using config hierarchy:
|
|
7
|
+
* 1. CLI argument (if provided)
|
|
8
|
+
* 2. User-level XDG config
|
|
9
|
+
* 3. Repo-level .idea1/settings.json
|
|
10
|
+
* 4. Hardcoded default
|
|
11
|
+
*/
|
|
12
|
+
export declare function resolveBranchPrefix(cliPrefix?: string): Promise<string>;
|
|
13
|
+
/**
|
|
14
|
+
* Resolve the base branch using config hierarchy:
|
|
15
|
+
* 1. CLI argument (if provided)
|
|
16
|
+
* 2. User-level XDG config
|
|
17
|
+
* 3. Repo-level .idea1/settings.json
|
|
18
|
+
* 4. Hardcoded default
|
|
19
|
+
*/
|
|
20
|
+
export declare function resolveBaseBranch(cliBaseBranch?: string): Promise<string>;
|
|
21
|
+
/**
|
|
22
|
+
* Setup worktree isolation - creates worktree, runs hooks, optionally launches Claude
|
|
23
|
+
*/
|
|
24
|
+
export declare function setupWorktreeIsolation(fullBranchName: string, shortBranchName: string, baseBranchName: string, options?: {
|
|
25
|
+
projectItemUrl?: string;
|
|
26
|
+
launchClaude?: boolean;
|
|
27
|
+
}): Promise<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Prepare repository for worktree creation - validates, fetches, and creates branch
|
|
30
|
+
*/
|
|
31
|
+
export declare function prepareBranchForWorktree(shortBranchName: string, baseBranchName: string, branchPrefix: string): Promise<string>;
|
|
32
|
+
//# sourceMappingURL=worktree.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/services/worktree.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe1E;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B7E;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B/E;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CACnB,GACL,OAAO,CAAC,MAAM,CAAC,CAgCjB;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAqBjB"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { logger } from '../lib/logger.js';
|
|
2
|
+
import { execWithOutput } from '../lib/shell.js';
|
|
3
|
+
import { getSetupWorktreeHook, getBranchPrefix, getBaseBranch } from '../lib/settings.js';
|
|
4
|
+
import { configService } from './config.js';
|
|
5
|
+
import * as git from './git.js';
|
|
6
|
+
import * as claude from './claude.js';
|
|
7
|
+
/**
|
|
8
|
+
* Run the setup-worktree hook if defined in .idea1/settings.json
|
|
9
|
+
*/
|
|
10
|
+
export async function runSetupWorktreeHook(repoRoot) {
|
|
11
|
+
const hookCommand = await getSetupWorktreeHook(repoRoot);
|
|
12
|
+
if (!hookCommand) {
|
|
13
|
+
logger.dim('No setup-worktree hook defined');
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
logger.step(`Running setup-worktree hook: ${hookCommand}`);
|
|
17
|
+
const exitCode = await execWithOutput('bash', [hookCommand], { cwd: repoRoot });
|
|
18
|
+
if (exitCode !== 0) {
|
|
19
|
+
logger.warning('Setup-worktree hook failed, continuing anyway');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Resolve the branch prefix using config hierarchy:
|
|
24
|
+
* 1. CLI argument (if provided)
|
|
25
|
+
* 2. User-level XDG config
|
|
26
|
+
* 3. Repo-level .idea1/settings.json
|
|
27
|
+
* 4. Hardcoded default
|
|
28
|
+
*/
|
|
29
|
+
export async function resolveBranchPrefix(cliPrefix) {
|
|
30
|
+
// 1. CLI argument
|
|
31
|
+
if (cliPrefix) {
|
|
32
|
+
return cliPrefix;
|
|
33
|
+
}
|
|
34
|
+
// 2. User-level XDG config
|
|
35
|
+
const userPrefix = configService.getDefaultBranchPrefix();
|
|
36
|
+
if (userPrefix && userPrefix !== 'working/agent') {
|
|
37
|
+
// Only use if user has explicitly set it (not default)
|
|
38
|
+
return userPrefix;
|
|
39
|
+
}
|
|
40
|
+
// 3. Repo-level settings
|
|
41
|
+
try {
|
|
42
|
+
const repoRoot = await git.getRepoRoot();
|
|
43
|
+
const settingsPrefix = await getBranchPrefix(repoRoot);
|
|
44
|
+
if (settingsPrefix) {
|
|
45
|
+
return settingsPrefix;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
// Not in a repo, use default
|
|
50
|
+
}
|
|
51
|
+
// 4. Hardcoded default (or user config if it's the default)
|
|
52
|
+
return userPrefix;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Resolve the base branch using config hierarchy:
|
|
56
|
+
* 1. CLI argument (if provided)
|
|
57
|
+
* 2. User-level XDG config
|
|
58
|
+
* 3. Repo-level .idea1/settings.json
|
|
59
|
+
* 4. Hardcoded default
|
|
60
|
+
*/
|
|
61
|
+
export async function resolveBaseBranch(cliBaseBranch) {
|
|
62
|
+
// 1. CLI argument
|
|
63
|
+
if (cliBaseBranch) {
|
|
64
|
+
return cliBaseBranch;
|
|
65
|
+
}
|
|
66
|
+
// 2. User-level XDG config
|
|
67
|
+
const userBaseBranch = configService.getDefaultBaseBranch();
|
|
68
|
+
if (userBaseBranch && userBaseBranch !== 'working/release') {
|
|
69
|
+
// Only use if user has explicitly set it (not default)
|
|
70
|
+
return userBaseBranch;
|
|
71
|
+
}
|
|
72
|
+
// 3. Repo-level settings
|
|
73
|
+
try {
|
|
74
|
+
const repoRoot = await git.getRepoRoot();
|
|
75
|
+
const settingsBaseBranch = await getBaseBranch(repoRoot);
|
|
76
|
+
if (settingsBaseBranch) {
|
|
77
|
+
return settingsBaseBranch;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
// Not in a repo, use default
|
|
82
|
+
}
|
|
83
|
+
// 4. Hardcoded default (or user config if it's the default)
|
|
84
|
+
return userBaseBranch;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Setup worktree isolation - creates worktree, runs hooks, optionally launches Claude
|
|
88
|
+
*/
|
|
89
|
+
export async function setupWorktreeIsolation(fullBranchName, shortBranchName, baseBranchName, options = {}) {
|
|
90
|
+
logger.step('Setting up worktree isolation...');
|
|
91
|
+
// Create git worktree
|
|
92
|
+
const worktreePath = await git.createWorktree(fullBranchName, shortBranchName);
|
|
93
|
+
// Enter worktree and set up upstream
|
|
94
|
+
await git.enterWorktreeAndSetup(worktreePath, fullBranchName);
|
|
95
|
+
// Store project item URL and base branch in git config
|
|
96
|
+
if (options.projectItemUrl) {
|
|
97
|
+
await git.storeProjectItemUrl(options.projectItemUrl, fullBranchName);
|
|
98
|
+
}
|
|
99
|
+
await git.storeBaseBranch(baseBranchName, fullBranchName);
|
|
100
|
+
// Run repo-specific setup hook if defined
|
|
101
|
+
await runSetupWorktreeHook(worktreePath);
|
|
102
|
+
// Run claude command if requested
|
|
103
|
+
if (options.launchClaude !== false && options.projectItemUrl) {
|
|
104
|
+
const prompt = claude.getImplementationPrompt(options.projectItemUrl);
|
|
105
|
+
await claude.runInteractive(prompt, worktreePath);
|
|
106
|
+
}
|
|
107
|
+
else if (options.launchClaude !== false && !options.projectItemUrl) {
|
|
108
|
+
await claude.runInteractive(undefined, worktreePath);
|
|
109
|
+
}
|
|
110
|
+
// Output the final directory path for the user
|
|
111
|
+
logger.newline();
|
|
112
|
+
logger.info('To continue working in this directory, run:');
|
|
113
|
+
logger.plain(`cd ${worktreePath}`);
|
|
114
|
+
return worktreePath;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Prepare repository for worktree creation - validates, fetches, and creates branch
|
|
118
|
+
*/
|
|
119
|
+
export async function prepareBranchForWorktree(shortBranchName, baseBranchName, branchPrefix) {
|
|
120
|
+
// Ensure clean working directory
|
|
121
|
+
await git.ensureCleanWorkingDirectory();
|
|
122
|
+
// Validate base branch exists
|
|
123
|
+
const baseBranchExists = await git.branchExists(baseBranchName);
|
|
124
|
+
if (!baseBranchExists) {
|
|
125
|
+
throw new Error(`Base branch '${baseBranchName}' does not exist locally or on origin`);
|
|
126
|
+
}
|
|
127
|
+
// Fetch latest, checkout base branch, create new branch
|
|
128
|
+
await git.fetchLatest();
|
|
129
|
+
await git.checkoutAndPullBranch(baseBranchName);
|
|
130
|
+
const fullBranchName = `${branchPrefix}/${shortBranchName}`;
|
|
131
|
+
await git.createAndPushBranch(fullBranchName, baseBranchName);
|
|
132
|
+
await git.prepareRepoForWorktree(fullBranchName, baseBranchName);
|
|
133
|
+
logger.dim('Note: PR will be created later when changes are pushed');
|
|
134
|
+
return fullBranchName;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=worktree.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/services/worktree.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -23,6 +23,29 @@ export interface Idea1Settings {
|
|
|
23
23
|
hooks?: {
|
|
24
24
|
'setup-worktree'?: string;
|
|
25
25
|
};
|
|
26
|
+
defaults?: {
|
|
27
|
+
branchPrefix?: string;
|
|
28
|
+
baseBranch?: string;
|
|
29
|
+
testCommand?: string;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Create worktree options
|
|
34
|
+
*/
|
|
35
|
+
export interface CreateWorktreeOptions {
|
|
36
|
+
sourcePath?: string;
|
|
37
|
+
destBranch: string;
|
|
38
|
+
branchPrefix: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Push options
|
|
42
|
+
*/
|
|
43
|
+
export interface PushOptions {
|
|
44
|
+
projectItemUrl?: string;
|
|
45
|
+
noProjectItem: boolean;
|
|
46
|
+
noTests: boolean;
|
|
47
|
+
createPr: boolean;
|
|
48
|
+
destBranch: string;
|
|
26
49
|
}
|
|
27
50
|
/**
|
|
28
51
|
* Start project item options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE;QACN,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,UAAU,GAAG,WAAW,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE;QACN,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,UAAU,GAAG,WAAW,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@idea1/cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "CLI tool for Idea1.ai workflow automation - AI-assisted development workflows",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
"dev": "tsc --watch",
|
|
14
14
|
"start": "node dist/index.js",
|
|
15
15
|
"clean": "rm -rf dist",
|
|
16
|
-
"prepublishOnly": "npm run build"
|
|
16
|
+
"prepublishOnly": "npm run build",
|
|
17
|
+
"publish": "./publish.sh"
|
|
17
18
|
},
|
|
18
19
|
"keywords": [
|
|
19
20
|
"cli",
|