cluttry 1.5.1 → 2.0.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.
- package/README.md +79 -17
- package/dist/commands/finish.d.ts +4 -0
- package/dist/commands/finish.d.ts.map +1 -1
- package/dist/commands/finish.js +227 -2
- package/dist/commands/finish.js.map +1 -1
- package/dist/commands/list.d.ts +2 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +69 -25
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/spawn.d.ts +3 -0
- package/dist/commands/spawn.d.ts.map +1 -1
- package/dist/commands/spawn.js +158 -26
- package/dist/commands/spawn.js.map +1 -1
- package/dist/index.js +17 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +39 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/env.d.ts +38 -0
- package/dist/lib/env.d.ts.map +1 -0
- package/dist/lib/env.js +166 -0
- package/dist/lib/env.js.map +1 -0
- package/dist/lib/git.d.ts +1 -1
- package/dist/lib/git.d.ts.map +1 -1
- package/dist/lib/git.js +2 -2
- package/dist/lib/git.js.map +1 -1
- package/dist/lib/hooks.d.ts +43 -0
- package/dist/lib/hooks.d.ts.map +1 -0
- package/dist/lib/hooks.js +120 -0
- package/dist/lib/hooks.js.map +1 -0
- package/dist/lib/secrets.d.ts +54 -0
- package/dist/lib/secrets.d.ts.map +1 -1
- package/dist/lib/secrets.js +140 -0
- package/dist/lib/secrets.js.map +1 -1
- package/dist/lib/session.d.ts +14 -0
- package/dist/lib/session.d.ts.map +1 -1
- package/dist/lib/session.js +4 -1
- package/dist/lib/session.js.map +1 -1
- package/dist/lib/types.d.ts +37 -3
- package/dist/lib/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/lib/config.js
CHANGED
|
@@ -6,14 +6,34 @@ import path from 'node:path';
|
|
|
6
6
|
export const CONFIG_FILE = '.cry.json';
|
|
7
7
|
export const LOCAL_CONFIG_FILE = '.cry.local.json';
|
|
8
8
|
export const WORKTREE_INCLUDE_FILE = '.worktreeinclude';
|
|
9
|
+
/**
|
|
10
|
+
* Default agent presets (can be overridden in config)
|
|
11
|
+
*/
|
|
12
|
+
const DEFAULT_AGENT_PRESETS = {
|
|
13
|
+
claude: {
|
|
14
|
+
command: 'claude',
|
|
15
|
+
deny: ['.env', '.env.*'],
|
|
16
|
+
finishOnExitDefault: true,
|
|
17
|
+
},
|
|
18
|
+
cursor: {
|
|
19
|
+
command: 'cursor',
|
|
20
|
+
args: ['.'],
|
|
21
|
+
finishOnExitDefault: false,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
9
24
|
const DEFAULT_CONFIG = {
|
|
10
25
|
defaultMode: 'copy',
|
|
11
26
|
include: ['.env', '.env.*', '.env.local'],
|
|
27
|
+
injectNonEnv: 'skip',
|
|
12
28
|
hooks: {
|
|
13
29
|
postCreate: [],
|
|
30
|
+
preFinish: [],
|
|
31
|
+
postFinish: [],
|
|
32
|
+
preMerge: [],
|
|
14
33
|
},
|
|
15
34
|
agentCommand: 'claude',
|
|
16
35
|
editorCommand: 'code',
|
|
36
|
+
agents: DEFAULT_AGENT_PRESETS,
|
|
17
37
|
};
|
|
18
38
|
/**
|
|
19
39
|
* Load the main config file
|
|
@@ -52,18 +72,37 @@ export function loadLocalConfig(repoRoot) {
|
|
|
52
72
|
*/
|
|
53
73
|
export function mergeConfig(config, localConfig) {
|
|
54
74
|
const base = config ?? DEFAULT_CONFIG;
|
|
75
|
+
// Merge agent presets: defaults + base config + local config
|
|
76
|
+
const mergedAgents = {
|
|
77
|
+
...DEFAULT_AGENT_PRESETS,
|
|
78
|
+
...base.agents,
|
|
79
|
+
};
|
|
55
80
|
return {
|
|
56
81
|
worktreeBaseDir: localConfig?.worktreeBaseDir ?? base.worktreeBaseDir,
|
|
57
82
|
defaultMode: base.defaultMode,
|
|
58
83
|
include: [...(base.include ?? []), ...(localConfig?.include ?? [])],
|
|
84
|
+
injectNonEnv: base.injectNonEnv ?? 'skip',
|
|
59
85
|
hooks: {
|
|
60
86
|
postCreate: [
|
|
61
87
|
...(base.hooks?.postCreate ?? []),
|
|
62
88
|
...(localConfig?.hooks?.postCreate ?? []),
|
|
63
89
|
],
|
|
90
|
+
preFinish: [
|
|
91
|
+
...(base.hooks?.preFinish ?? []),
|
|
92
|
+
...(localConfig?.hooks?.preFinish ?? []),
|
|
93
|
+
],
|
|
94
|
+
postFinish: [
|
|
95
|
+
...(base.hooks?.postFinish ?? []),
|
|
96
|
+
...(localConfig?.hooks?.postFinish ?? []),
|
|
97
|
+
],
|
|
98
|
+
preMerge: [
|
|
99
|
+
...(base.hooks?.preMerge ?? []),
|
|
100
|
+
...(localConfig?.hooks?.preMerge ?? []),
|
|
101
|
+
],
|
|
64
102
|
},
|
|
65
103
|
agentCommand: localConfig?.agentCommand ?? base.agentCommand ?? 'claude',
|
|
66
104
|
editorCommand: localConfig?.editorCommand ?? base.editorCommand ?? 'code',
|
|
105
|
+
agents: mergedAgents,
|
|
67
106
|
};
|
|
68
107
|
}
|
|
69
108
|
/**
|
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC;AACvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AACnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAExD,MAAM,cAAc,GAAc;IAChC,WAAW,EAAE,MAAM;IACnB,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC;IACzC,KAAK,EAAE;QACL,UAAU,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable handling for cry inject mode
|
|
3
|
+
*
|
|
4
|
+
* Parses .env files and provides environment variable injection
|
|
5
|
+
* for hooks and agent commands without copying files to worktrees.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Parse a dotenv-format string into key-value pairs
|
|
9
|
+
*
|
|
10
|
+
* Supports:
|
|
11
|
+
* - Basic KEY=value
|
|
12
|
+
* - Comments (# comment)
|
|
13
|
+
* - Empty lines
|
|
14
|
+
* - Quoted values (single and double)
|
|
15
|
+
* - Multiline values with quotes
|
|
16
|
+
* - Export prefix (export KEY=value)
|
|
17
|
+
*/
|
|
18
|
+
export declare function parseDotenv(content: string): Record<string, string>;
|
|
19
|
+
/**
|
|
20
|
+
* Check if a file is a dotenv file by path pattern
|
|
21
|
+
* Matches: .env, .env.*, *.env
|
|
22
|
+
*/
|
|
23
|
+
export declare function isDotenvFile(filename: string): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Load environment variables from a file
|
|
26
|
+
*/
|
|
27
|
+
export declare function loadEnvFromFile(filePath: string): Record<string, string>;
|
|
28
|
+
/**
|
|
29
|
+
* Load environment from multiple dotenv files with precedence
|
|
30
|
+
* Later files override earlier files
|
|
31
|
+
*/
|
|
32
|
+
export declare function loadEnvFromFiles(files: string[], repoRoot: string): Record<string, string>;
|
|
33
|
+
/**
|
|
34
|
+
* Merge environment variables with process.env
|
|
35
|
+
* Injected vars take precedence over existing env
|
|
36
|
+
*/
|
|
37
|
+
export declare function mergeWithProcessEnv(injectedEnv: Record<string, string>): Record<string, string>;
|
|
38
|
+
//# sourceMappingURL=env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/lib/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA2EnE;AAoBD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAmBtD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAWxE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYxB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAKxB"}
|
package/dist/lib/env.js
ADDED
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable handling for cry inject mode
|
|
3
|
+
*
|
|
4
|
+
* Parses .env files and provides environment variable injection
|
|
5
|
+
* for hooks and agent commands without copying files to worktrees.
|
|
6
|
+
*/
|
|
7
|
+
import { readFileSync, existsSync } from 'node:fs';
|
|
8
|
+
import path from 'node:path';
|
|
9
|
+
/**
|
|
10
|
+
* Parse a dotenv-format string into key-value pairs
|
|
11
|
+
*
|
|
12
|
+
* Supports:
|
|
13
|
+
* - Basic KEY=value
|
|
14
|
+
* - Comments (# comment)
|
|
15
|
+
* - Empty lines
|
|
16
|
+
* - Quoted values (single and double)
|
|
17
|
+
* - Multiline values with quotes
|
|
18
|
+
* - Export prefix (export KEY=value)
|
|
19
|
+
*/
|
|
20
|
+
export function parseDotenv(content) {
|
|
21
|
+
const result = {};
|
|
22
|
+
const lines = content.split('\n');
|
|
23
|
+
let currentKey = null;
|
|
24
|
+
let currentValue = null;
|
|
25
|
+
let inMultiline = false;
|
|
26
|
+
let quoteChar = null;
|
|
27
|
+
for (const rawLine of lines) {
|
|
28
|
+
const line = rawLine.trim();
|
|
29
|
+
// Handle multiline continuation
|
|
30
|
+
if (inMultiline && currentKey !== null) {
|
|
31
|
+
if (quoteChar && line.endsWith(quoteChar)) {
|
|
32
|
+
// End of multiline
|
|
33
|
+
currentValue += '\n' + line.slice(0, -1);
|
|
34
|
+
result[currentKey] = currentValue;
|
|
35
|
+
currentKey = null;
|
|
36
|
+
currentValue = null;
|
|
37
|
+
inMultiline = false;
|
|
38
|
+
quoteChar = null;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
currentValue += '\n' + line;
|
|
42
|
+
}
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
// Skip empty lines and comments
|
|
46
|
+
if (line === '' || line.startsWith('#')) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
// Handle export prefix
|
|
50
|
+
let processedLine = line;
|
|
51
|
+
if (processedLine.startsWith('export ')) {
|
|
52
|
+
processedLine = processedLine.slice(7).trim();
|
|
53
|
+
}
|
|
54
|
+
// Find the = separator
|
|
55
|
+
const eqIndex = processedLine.indexOf('=');
|
|
56
|
+
if (eqIndex === -1) {
|
|
57
|
+
continue; // Invalid line
|
|
58
|
+
}
|
|
59
|
+
const key = processedLine.slice(0, eqIndex).trim();
|
|
60
|
+
let value = processedLine.slice(eqIndex + 1);
|
|
61
|
+
// Handle quoted values
|
|
62
|
+
if (value.startsWith('"') || value.startsWith("'")) {
|
|
63
|
+
const quote = value[0];
|
|
64
|
+
value = value.slice(1);
|
|
65
|
+
if (value.endsWith(quote)) {
|
|
66
|
+
// Single-line quoted value
|
|
67
|
+
value = value.slice(0, -1);
|
|
68
|
+
result[key] = unescapeValue(value, quote);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
// Start of multiline
|
|
72
|
+
currentKey = key;
|
|
73
|
+
currentValue = value;
|
|
74
|
+
inMultiline = true;
|
|
75
|
+
quoteChar = quote;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
// Unquoted value - strip inline comments
|
|
80
|
+
const commentIndex = value.indexOf(' #');
|
|
81
|
+
if (commentIndex !== -1) {
|
|
82
|
+
value = value.slice(0, commentIndex);
|
|
83
|
+
}
|
|
84
|
+
result[key] = value.trim();
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return result;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Unescape special characters in quoted values
|
|
91
|
+
*/
|
|
92
|
+
function unescapeValue(value, quoteChar) {
|
|
93
|
+
if (quoteChar === '"') {
|
|
94
|
+
// Double quotes: expand escape sequences
|
|
95
|
+
return value
|
|
96
|
+
.replace(/\\n/g, '\n')
|
|
97
|
+
.replace(/\\r/g, '\r')
|
|
98
|
+
.replace(/\\t/g, '\t')
|
|
99
|
+
.replace(/\\\\/g, '\\')
|
|
100
|
+
.replace(/\\"/g, '"');
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
// Single quotes: no expansion except \\
|
|
104
|
+
return value.replace(/\\\\/g, '\\');
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Check if a file is a dotenv file by path pattern
|
|
109
|
+
* Matches: .env, .env.*, *.env
|
|
110
|
+
*/
|
|
111
|
+
export function isDotenvFile(filename) {
|
|
112
|
+
const basename = path.basename(filename);
|
|
113
|
+
// Exact match: .env
|
|
114
|
+
if (basename === '.env') {
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
// Prefix match: .env.* (e.g., .env.local, .env.production)
|
|
118
|
+
if (basename.startsWith('.env.')) {
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
// Suffix match: *.env (e.g., local.env)
|
|
122
|
+
if (basename.endsWith('.env')) {
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Load environment variables from a file
|
|
129
|
+
*/
|
|
130
|
+
export function loadEnvFromFile(filePath) {
|
|
131
|
+
if (!existsSync(filePath)) {
|
|
132
|
+
return {};
|
|
133
|
+
}
|
|
134
|
+
try {
|
|
135
|
+
const content = readFileSync(filePath, 'utf-8');
|
|
136
|
+
return parseDotenv(content);
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
return {};
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Load environment from multiple dotenv files with precedence
|
|
144
|
+
* Later files override earlier files
|
|
145
|
+
*/
|
|
146
|
+
export function loadEnvFromFiles(files, repoRoot) {
|
|
147
|
+
const result = {};
|
|
148
|
+
for (const file of files) {
|
|
149
|
+
const filePath = path.isAbsolute(file) ? file : path.join(repoRoot, file);
|
|
150
|
+
const envVars = loadEnvFromFile(filePath);
|
|
151
|
+
// Later files override earlier ones
|
|
152
|
+
Object.assign(result, envVars);
|
|
153
|
+
}
|
|
154
|
+
return result;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Merge environment variables with process.env
|
|
158
|
+
* Injected vars take precedence over existing env
|
|
159
|
+
*/
|
|
160
|
+
export function mergeWithProcessEnv(injectedEnv) {
|
|
161
|
+
return {
|
|
162
|
+
...process.env,
|
|
163
|
+
...injectedEnv,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/lib/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAElC,IAAI,UAAU,GAAkB,IAAI,CAAC;IACrC,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,SAAS,GAAkB,IAAI,CAAC;IAEpC,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAE5B,gCAAgC;QAChC,IAAI,WAAW,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACvC,IAAI,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,mBAAmB;gBACnB,YAAY,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzC,MAAM,CAAC,UAAU,CAAC,GAAG,YAAa,CAAC;gBACnC,UAAU,GAAG,IAAI,CAAC;gBAClB,YAAY,GAAG,IAAI,CAAC;gBACpB,WAAW,GAAG,KAAK,CAAC;gBACpB,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,YAAY,IAAI,IAAI,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,SAAS;QACX,CAAC;QAED,gCAAgC;QAChC,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxC,SAAS;QACX,CAAC;QAED,uBAAuB;QACvB,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,CAAC;QAED,uBAAuB;QACvB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,SAAS,CAAC,eAAe;QAC3B,CAAC;QAED,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACnD,IAAI,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QAE7C,uBAAuB;QACvB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACvB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAEvB,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,2BAA2B;gBAC3B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,UAAU,GAAG,GAAG,CAAC;gBACjB,YAAY,GAAG,KAAK,CAAC;gBACrB,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS,GAAG,KAAK,CAAC;YACpB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,yCAAyC;YACzC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YACvC,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,KAAa,EAAE,SAAiB;IACrD,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,yCAAyC;QACzC,OAAO,KAAK;aACT,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;aACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;aACrB,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;aACrB,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;aACtB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,wCAAwC;QACxC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEzC,oBAAoB;IACpB,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2DAA2D;IAC3D,IAAI,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAwC;IACxC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAe,EACf,QAAgB;IAEhB,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAE1C,oCAAoC;QACpC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAmC;IAEnC,OAAO;QACL,GAAG,OAAO,CAAC,GAA6B;QACxC,GAAG,WAAW;KACf,CAAC;AACJ,CAAC"}
|
package/dist/lib/git.d.ts
CHANGED
|
@@ -82,7 +82,7 @@ export declare function getShortHead(worktreePath: string): string;
|
|
|
82
82
|
/**
|
|
83
83
|
* Run a command in a directory
|
|
84
84
|
*/
|
|
85
|
-
export declare function runCommand(command: string, cwd: string): Promise<number>;
|
|
85
|
+
export declare function runCommand(command: string, cwd: string, env?: Record<string, string | undefined>): Promise<number>;
|
|
86
86
|
/**
|
|
87
87
|
* Check if a command exists
|
|
88
88
|
*/
|
package/dist/lib/git.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/lib/git.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;GAGG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOlE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqB5D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMpF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO7D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOjE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAiC1D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,OAAO,EACrB,GAAG,CAAC,EAAE,MAAM,GACX,IAAI,CAUN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAOvF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAG/E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAO7D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;GAEG;AACH,wBAAgB,UAAU,
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/lib/git.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;GAGG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOlE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqB5D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMpF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO7D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAOjE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAiC1D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,OAAO,EACrB,GAAG,CAAC,EAAE,MAAM,GACX,IAAI,CAUN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAOvF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAG/E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAO7D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACvC,OAAO,CAAC,MAAM,CAAC,CAoBjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAWlD"}
|
package/dist/lib/git.js
CHANGED
|
@@ -256,7 +256,7 @@ export function getShortHead(worktreePath) {
|
|
|
256
256
|
/**
|
|
257
257
|
* Run a command in a directory
|
|
258
258
|
*/
|
|
259
|
-
export function runCommand(command, cwd) {
|
|
259
|
+
export function runCommand(command, cwd, env) {
|
|
260
260
|
return new Promise((resolve) => {
|
|
261
261
|
const isWindows = process.platform === 'win32';
|
|
262
262
|
const shell = isWindows ? 'cmd.exe' : '/bin/sh';
|
|
@@ -264,7 +264,7 @@ export function runCommand(command, cwd) {
|
|
|
264
264
|
const child = spawn(shell, shellArgs, {
|
|
265
265
|
cwd,
|
|
266
266
|
stdio: 'inherit',
|
|
267
|
-
env: process.env,
|
|
267
|
+
env: env ? { ...process.env, ...env } : process.env,
|
|
268
268
|
});
|
|
269
269
|
child.on('close', (code) => {
|
|
270
270
|
resolve(code ?? 1);
|
package/dist/lib/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/lib/git.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/lib/git.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hook runner utility for cry
|
|
3
|
+
*
|
|
4
|
+
* Executes hook commands with proper streaming output, fail-fast behavior,
|
|
5
|
+
* and structured result tracking.
|
|
6
|
+
*/
|
|
7
|
+
export interface HookResult {
|
|
8
|
+
command: string;
|
|
9
|
+
success: boolean;
|
|
10
|
+
exitCode: number;
|
|
11
|
+
duration: number;
|
|
12
|
+
stdout?: string;
|
|
13
|
+
stderr?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface HookRunnerOptions {
|
|
16
|
+
/** Working directory to run commands in */
|
|
17
|
+
cwd: string;
|
|
18
|
+
/** Additional environment variables to inject */
|
|
19
|
+
env?: Record<string, string>;
|
|
20
|
+
/** Stop on first failure (default: true) */
|
|
21
|
+
failFast?: boolean;
|
|
22
|
+
/** Stream output in real-time (default: true) */
|
|
23
|
+
streamOutput?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface HookRunResult {
|
|
26
|
+
success: boolean;
|
|
27
|
+
results: HookResult[];
|
|
28
|
+
/** First failed hook command, if any */
|
|
29
|
+
failedHook?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Run multiple hook commands in sequence
|
|
33
|
+
*
|
|
34
|
+
* @param hookName - Display name for the hook stage (e.g., "preFinish")
|
|
35
|
+
* @param commands - Array of shell commands to run
|
|
36
|
+
* @param options - Runner options (cwd, env, failFast, streamOutput)
|
|
37
|
+
*/
|
|
38
|
+
export declare function runHooks(hookName: string, commands: string[], options: HookRunnerOptions): Promise<HookRunResult>;
|
|
39
|
+
/**
|
|
40
|
+
* Format hook results for display (useful for summaries)
|
|
41
|
+
*/
|
|
42
|
+
export declare function formatHookResults(results: HookResult[]): string;
|
|
43
|
+
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/lib/hooks.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iDAAiD;IACjD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA2DD;;;;;;GAMG;AACH,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAsDxB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAU/D"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hook runner utility for cry
|
|
3
|
+
*
|
|
4
|
+
* Executes hook commands with proper streaming output, fail-fast behavior,
|
|
5
|
+
* and structured result tracking.
|
|
6
|
+
*/
|
|
7
|
+
import { spawn } from 'node:child_process';
|
|
8
|
+
import * as out from './output.js';
|
|
9
|
+
/**
|
|
10
|
+
* Run a single hook command
|
|
11
|
+
*/
|
|
12
|
+
async function runSingleHook(command, options) {
|
|
13
|
+
const startTime = Date.now();
|
|
14
|
+
const { cwd, env = {}, streamOutput = true } = options;
|
|
15
|
+
return new Promise((resolve) => {
|
|
16
|
+
const mergedEnv = { ...process.env, ...env };
|
|
17
|
+
// Use shell to support complex commands
|
|
18
|
+
const child = spawn(command, {
|
|
19
|
+
cwd,
|
|
20
|
+
shell: true,
|
|
21
|
+
env: mergedEnv,
|
|
22
|
+
stdio: streamOutput ? ['inherit', 'inherit', 'inherit'] : ['pipe', 'pipe', 'pipe'],
|
|
23
|
+
});
|
|
24
|
+
let stdout = '';
|
|
25
|
+
let stderr = '';
|
|
26
|
+
if (!streamOutput) {
|
|
27
|
+
child.stdout?.on('data', (data) => {
|
|
28
|
+
stdout += data.toString();
|
|
29
|
+
});
|
|
30
|
+
child.stderr?.on('data', (data) => {
|
|
31
|
+
stderr += data.toString();
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
child.on('error', (error) => {
|
|
35
|
+
resolve({
|
|
36
|
+
command,
|
|
37
|
+
success: false,
|
|
38
|
+
exitCode: 1,
|
|
39
|
+
duration: Date.now() - startTime,
|
|
40
|
+
stderr: error.message,
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
child.on('close', (code) => {
|
|
44
|
+
const exitCode = code ?? 0;
|
|
45
|
+
resolve({
|
|
46
|
+
command,
|
|
47
|
+
success: exitCode === 0,
|
|
48
|
+
exitCode,
|
|
49
|
+
duration: Date.now() - startTime,
|
|
50
|
+
stdout: stdout || undefined,
|
|
51
|
+
stderr: stderr || undefined,
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Run multiple hook commands in sequence
|
|
58
|
+
*
|
|
59
|
+
* @param hookName - Display name for the hook stage (e.g., "preFinish")
|
|
60
|
+
* @param commands - Array of shell commands to run
|
|
61
|
+
* @param options - Runner options (cwd, env, failFast, streamOutput)
|
|
62
|
+
*/
|
|
63
|
+
export async function runHooks(hookName, commands, options) {
|
|
64
|
+
if (commands.length === 0) {
|
|
65
|
+
return { success: true, results: [] };
|
|
66
|
+
}
|
|
67
|
+
const { failFast = true } = options;
|
|
68
|
+
const results = [];
|
|
69
|
+
out.newline();
|
|
70
|
+
out.header(`Running ${hookName} hooks`);
|
|
71
|
+
out.newline();
|
|
72
|
+
for (let i = 0; i < commands.length; i++) {
|
|
73
|
+
const command = commands[i];
|
|
74
|
+
const hookNum = `[${i + 1}/${commands.length}]`;
|
|
75
|
+
out.log(`${out.fmt.dim(hookNum)} ${out.fmt.bold(command)}`);
|
|
76
|
+
const result = await runSingleHook(command, options);
|
|
77
|
+
results.push(result);
|
|
78
|
+
const durationSec = (result.duration / 1000).toFixed(1);
|
|
79
|
+
if (result.success) {
|
|
80
|
+
out.log(` ${out.fmt.green('✓')} completed in ${durationSec}s`);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
out.log(` ${out.fmt.red('✗')} failed with exit code ${result.exitCode} (${durationSec}s)`);
|
|
84
|
+
if (failFast) {
|
|
85
|
+
out.newline();
|
|
86
|
+
out.error(`${hookName} hook failed: ${command}`);
|
|
87
|
+
return {
|
|
88
|
+
success: false,
|
|
89
|
+
results,
|
|
90
|
+
failedHook: command,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
out.newline();
|
|
96
|
+
const failed = results.filter((r) => !r.success);
|
|
97
|
+
if (failed.length > 0) {
|
|
98
|
+
out.warn(`${failed.length} of ${commands.length} ${hookName} hooks failed`);
|
|
99
|
+
return {
|
|
100
|
+
success: false,
|
|
101
|
+
results,
|
|
102
|
+
failedHook: failed[0].command,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
out.success(`All ${hookName} hooks passed`);
|
|
106
|
+
return { success: true, results };
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Format hook results for display (useful for summaries)
|
|
110
|
+
*/
|
|
111
|
+
export function formatHookResults(results) {
|
|
112
|
+
const lines = [];
|
|
113
|
+
for (const result of results) {
|
|
114
|
+
const status = result.success ? out.fmt.green('✓') : out.fmt.red('✗');
|
|
115
|
+
const durationSec = (result.duration / 1000).toFixed(1);
|
|
116
|
+
lines.push(` ${status} ${result.command} (${durationSec}s)`);
|
|
117
|
+
}
|
|
118
|
+
return lines.join('\n');
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/lib/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/secrets.d.ts
CHANGED
|
@@ -76,4 +76,58 @@ export declare function generateCopyPlan(patterns: string[], repoRoot: string):
|
|
|
76
76
|
* Format a copy plan for human-readable output
|
|
77
77
|
*/
|
|
78
78
|
export declare function formatCopyPlan(plan: CopyPlan, mode: SecretMode): string;
|
|
79
|
+
/**
|
|
80
|
+
* Result of inject mode processing
|
|
81
|
+
*/
|
|
82
|
+
export interface InjectResult {
|
|
83
|
+
/** Environment variables parsed from dotenv files */
|
|
84
|
+
env: Record<string, string>;
|
|
85
|
+
/** Non-dotenv files that were skipped */
|
|
86
|
+
skippedFiles: string[];
|
|
87
|
+
/** Files that were symlinked (if injectNonEnv: 'symlink') */
|
|
88
|
+
symlinkFiles: string[];
|
|
89
|
+
/** Dotenv files that were processed */
|
|
90
|
+
processedEnvFiles: string[];
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Process secrets in inject mode
|
|
94
|
+
*
|
|
95
|
+
* - For dotenv files (.env, .env.*, *.env): parse and collect env vars (do NOT copy)
|
|
96
|
+
* - For non-dotenv files: skip by default, or symlink if configured
|
|
97
|
+
*/
|
|
98
|
+
export declare function processInjectMode(patterns: string[], sourceRoot: string, targetRoot: string, options?: {
|
|
99
|
+
injectNonEnv?: 'skip' | 'symlink';
|
|
100
|
+
}): Promise<InjectResult>;
|
|
101
|
+
/**
|
|
102
|
+
* Generate an inject plan explaining what will happen in inject mode
|
|
103
|
+
*/
|
|
104
|
+
export interface InjectPlan {
|
|
105
|
+
/** Dotenv files that will be parsed for env vars */
|
|
106
|
+
willInject: Array<{
|
|
107
|
+
path: string;
|
|
108
|
+
reason: string;
|
|
109
|
+
}>;
|
|
110
|
+
/** Non-dotenv files that will be skipped */
|
|
111
|
+
willSkip: Array<{
|
|
112
|
+
path: string;
|
|
113
|
+
reason: string;
|
|
114
|
+
}>;
|
|
115
|
+
/** Non-dotenv files that will be symlinked */
|
|
116
|
+
willSymlink: Array<{
|
|
117
|
+
path: string;
|
|
118
|
+
reason: string;
|
|
119
|
+
}>;
|
|
120
|
+
/** Warnings */
|
|
121
|
+
warnings: string[];
|
|
122
|
+
/** Patterns from config */
|
|
123
|
+
patterns: string[];
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Generate an inject plan
|
|
127
|
+
*/
|
|
128
|
+
export declare function generateInjectPlan(patterns: string[], repoRoot: string, injectNonEnv?: 'skip' | 'symlink'): Promise<InjectPlan>;
|
|
129
|
+
/**
|
|
130
|
+
* Format an inject plan for human-readable output
|
|
131
|
+
*/
|
|
132
|
+
export declare function formatInjectPlan(plan: InjectPlan): string;
|
|
79
133
|
//# sourceMappingURL=secrets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/lib/secrets.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/lib/secrets.ts"],"names":[],"mappings":"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"}
|