hungry-ghost-hive 0.52.2 → 0.54.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/dist/cli/commands/manager/agent-monitoring.d.ts +2 -2
- package/dist/cli/commands/manager/agent-monitoring.d.ts.map +1 -1
- package/dist/cli/commands/manager/agent-monitoring.js +10 -28
- package/dist/cli/commands/manager/agent-monitoring.js.map +1 -1
- package/dist/cli/commands/manager/auto-reject-comment-only-reviews.test.js +3 -2
- package/dist/cli/commands/manager/auto-reject-comment-only-reviews.test.js.map +1 -1
- package/dist/cli/commands/manager/escalation-handler.d.ts +1 -0
- package/dist/cli/commands/manager/escalation-handler.d.ts.map +1 -1
- package/dist/cli/commands/manager/escalation-handler.js +46 -17
- package/dist/cli/commands/manager/escalation-handler.js.map +1 -1
- package/dist/cli/commands/manager/escalation-handler.test.js +55 -1
- package/dist/cli/commands/manager/escalation-handler.test.js.map +1 -1
- package/dist/cli/commands/manager/handoff-recovery.d.ts.map +1 -1
- package/dist/cli/commands/manager/handoff-recovery.js +4 -15
- package/dist/cli/commands/manager/handoff-recovery.js.map +1 -1
- package/dist/cli/commands/manager/index.d.ts +1 -0
- package/dist/cli/commands/manager/index.d.ts.map +1 -1
- package/dist/cli/commands/manager/index.js +50 -0
- package/dist/cli/commands/manager/index.js.map +1 -1
- package/dist/cli/commands/manager/index.test.js +127 -14
- package/dist/cli/commands/manager/index.test.js.map +1 -1
- package/dist/cli/commands/manager/manager-utils.d.ts +1 -1
- package/dist/cli/commands/manager/manager-utils.d.ts.map +1 -1
- package/dist/cli/commands/manager/manager-utils.js +5 -18
- package/dist/cli/commands/manager/manager-utils.js.map +1 -1
- package/dist/config/schema.d.ts +8 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +4 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/context-files/index.test.js +1 -0
- package/dist/context-files/index.test.js.map +1 -1
- package/dist/tmux/manager.d.ts +9 -0
- package/dist/tmux/manager.d.ts.map +1 -1
- package/dist/tmux/manager.js +21 -0
- package/dist/tmux/manager.js.map +1 -1
- package/dist/tmux/manager.test.js +41 -0
- package/dist/tmux/manager.test.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/commands/manager/agent-monitoring.ts +10 -52
- package/src/cli/commands/manager/auto-reject-comment-only-reviews.test.ts +3 -2
- package/src/cli/commands/manager/escalation-handler.test.ts +85 -0
- package/src/cli/commands/manager/escalation-handler.ts +52 -27
- package/src/cli/commands/manager/handoff-recovery.ts +4 -34
- package/src/cli/commands/manager/index.test.ts +149 -16
- package/src/cli/commands/manager/index.ts +59 -0
- package/src/cli/commands/manager/manager-utils.ts +5 -38
- package/src/config/schema.ts +4 -0
- package/src/context-files/index.test.ts +1 -0
- package/src/tmux/manager.test.ts +49 -0
- package/src/tmux/manager.ts +23 -0
package/src/tmux/manager.ts
CHANGED
|
@@ -298,6 +298,29 @@ export async function sendToTmuxSession(
|
|
|
298
298
|
await execa('tmux', ['send-keys', '-t', sessionName, 'C-m']);
|
|
299
299
|
}
|
|
300
300
|
|
|
301
|
+
/**
|
|
302
|
+
* Sends a message to a tmux session using the /btw slash command.
|
|
303
|
+
* This is non-interrupting: it does NOT clear existing input first.
|
|
304
|
+
* The /btw command injects context into the conversation without
|
|
305
|
+
* interrupting whatever the agent is currently doing.
|
|
306
|
+
* @param sessionName - The tmux session name
|
|
307
|
+
* @param message - The message to send via /btw
|
|
308
|
+
*/
|
|
309
|
+
export async function sendBtwToTmuxSession(sessionName: string, message: string): Promise<void> {
|
|
310
|
+
const btwText = `/btw ${message}`;
|
|
311
|
+
const isMultiLine = btwText.includes('\n');
|
|
312
|
+
|
|
313
|
+
if (isMultiLine) {
|
|
314
|
+
const bufferName = `hive-btw-${Date.now()}`;
|
|
315
|
+
await execa('tmux', ['set-buffer', '-b', bufferName, btwText]);
|
|
316
|
+
await execa('tmux', ['paste-buffer', '-b', bufferName, '-t', sessionName, '-d']);
|
|
317
|
+
} else {
|
|
318
|
+
await execa('tmux', ['send-keys', '-t', sessionName, '-l', '--', btwText]);
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
await execa('tmux', ['send-keys', '-t', sessionName, 'C-m']);
|
|
322
|
+
}
|
|
323
|
+
|
|
301
324
|
export async function sendEnterToTmuxSession(sessionName: string): Promise<void> {
|
|
302
325
|
// C-m is equivalent to Enter/Return
|
|
303
326
|
await execa('tmux', ['send-keys', '-t', sessionName, 'C-m']);
|