coder-config 0.44.40 → 0.44.42
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/lib/constants.js +1 -1
- package/package.json +1 -1
- package/ui/routes/loops.js +11 -5
- package/ui/terminal-server.cjs +11 -2
package/lib/constants.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "coder-config",
|
|
3
|
-
"version": "0.44.
|
|
3
|
+
"version": "0.44.42",
|
|
4
4
|
"description": "Configuration manager for AI coding tools - Claude Code, Gemini CLI, Codex CLI, Antigravity. Manage MCPs, rules, permissions, memory, and workstreams.",
|
|
5
5
|
"author": "regression.io",
|
|
6
6
|
"main": "config-loader.js",
|
package/ui/routes/loops.js
CHANGED
|
@@ -592,14 +592,20 @@ function fixRalphLoopPluginStructure() {
|
|
|
592
592
|
const skillsDir = path.join(versionDir, 'skills');
|
|
593
593
|
const hooksDir = path.join(versionDir, 'hooks');
|
|
594
594
|
|
|
595
|
-
//
|
|
595
|
+
// Disable plugin's hooks.json - we use our own env-var-based hooks
|
|
596
|
+
// The plugin's hooks use project-local state files which affect ALL terminals
|
|
597
|
+
// in the same project, causing input freezing in other Claude sessions
|
|
596
598
|
const hooksJsonPath = path.join(hooksDir, 'hooks.json');
|
|
597
599
|
if (fs.existsSync(hooksJsonPath)) {
|
|
598
600
|
try {
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
601
|
+
const hooksContent = fs.readFileSync(hooksJsonPath, 'utf8');
|
|
602
|
+
const hooks = JSON.parse(hooksContent);
|
|
603
|
+
// Only disable if it has hooks defined (not already disabled)
|
|
604
|
+
if (hooks.hooks && Object.keys(hooks.hooks).length > 0) {
|
|
605
|
+
hooks._disabled_hooks = hooks.hooks; // Keep for reference
|
|
606
|
+
hooks.hooks = {}; // Disable all hooks
|
|
607
|
+
hooks._disabled_reason = 'Disabled by coder-config - using env-var-based hooks instead';
|
|
608
|
+
fs.writeFileSync(hooksJsonPath, JSON.stringify(hooks, null, 2), 'utf8');
|
|
603
609
|
}
|
|
604
610
|
} catch (e) {
|
|
605
611
|
// Ignore errors fixing hooks
|
package/ui/terminal-server.cjs
CHANGED
|
@@ -117,7 +117,12 @@ class TerminalServer {
|
|
|
117
117
|
delayedCmdSent = true;
|
|
118
118
|
// Small delay after detecting ready state
|
|
119
119
|
setTimeout(() => {
|
|
120
|
-
|
|
120
|
+
// Send command first, then Enter separately
|
|
121
|
+
// Claude Code treats large text as paste and waits for Enter confirmation
|
|
122
|
+
ptyProcess.write(delayedCmd);
|
|
123
|
+
setTimeout(() => {
|
|
124
|
+
ptyProcess.write('\r');
|
|
125
|
+
}, 100);
|
|
121
126
|
}, 200);
|
|
122
127
|
}
|
|
123
128
|
}
|
|
@@ -130,7 +135,11 @@ class TerminalServer {
|
|
|
130
135
|
setTimeout(() => {
|
|
131
136
|
if (!delayedCmdSent) {
|
|
132
137
|
delayedCmdSent = true;
|
|
133
|
-
|
|
138
|
+
// Send command first, then Enter separately
|
|
139
|
+
ptyProcess.write(delayedCmd);
|
|
140
|
+
setTimeout(() => {
|
|
141
|
+
ptyProcess.write('\r');
|
|
142
|
+
}, 100);
|
|
134
143
|
}
|
|
135
144
|
}, delayedCmdDelay);
|
|
136
145
|
}
|