@renseiai/agentfactory 0.8.22 → 0.8.23
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/src/orchestrator/index.d.ts +1 -0
- package/dist/src/orchestrator/index.d.ts.map +1 -1
- package/dist/src/orchestrator/index.js +2 -0
- package/dist/src/orchestrator/null-issue-tracker-client.d.ts +34 -0
- package/dist/src/orchestrator/null-issue-tracker-client.d.ts.map +1 -0
- package/dist/src/orchestrator/null-issue-tracker-client.js +72 -0
- package/dist/src/orchestrator/orchestrator.d.ts +11 -0
- package/dist/src/orchestrator/orchestrator.d.ts.map +1 -1
- package/dist/src/orchestrator/orchestrator.js +39 -6
- package/dist/src/providers/codex-app-server-provider.d.ts +19 -0
- package/dist/src/providers/codex-app-server-provider.d.ts.map +1 -1
- package/dist/src/providers/codex-app-server-provider.js +95 -0
- package/dist/src/providers/types.d.ts +6 -0
- package/dist/src/providers/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export type { AgentWorkType, WorkflowStatus, WorkTypeStatusMappings, EnvironmentIssueType } from './work-types.js';
|
|
2
2
|
export { ENVIRONMENT_ISSUE_TYPES } from './work-types.js';
|
|
3
3
|
export type { IssueTrackerClient, IssueTrackerIssue, IssueTrackerSession, SessionConfig, CommentChunk, } from './issue-tracker-client.js';
|
|
4
|
+
export { NullIssueTrackerClient } from './null-issue-tracker-client.js';
|
|
4
5
|
export type { IssueCreator } from './log-analyzer.js';
|
|
5
6
|
export type { OrchestratorConfig, OrchestratorIssue, AgentProcess, OrchestratorEvents, SpawnAgentOptions, OrchestratorResult, OrchestratorStreamConfig, StopAgentResult, ForwardPromptResult, InjectMessageResult, SpawnAgentWithResumeOptions, WorkTypeTimeoutConfig, AgentWorkResult, } from './types.js';
|
|
6
7
|
export type { ClaudeStreamEvent, ClaudeInitEvent, ClaudeSystemEvent, ClaudeAssistantEvent, ClaudeToolUseEvent, ClaudeToolResultEvent, ClaudeResultEvent, ClaudeErrorEvent, ClaudeTodoItem, ClaudeUserEvent, ClaudeEvent, ClaudeStreamHandlers, } from './stream-parser.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { ENVIRONMENT_ISSUE_TYPES } from './work-types.js';
|
|
2
|
+
// Null Issue Tracker Client (for platform-delegated workers without LINEAR_API_KEY)
|
|
3
|
+
export { NullIssueTrackerClient } from './null-issue-tracker-client.js';
|
|
2
4
|
export { SUMMARY_SCHEMA_VERSION } from './state-types.js';
|
|
3
5
|
// Orchestrator
|
|
4
6
|
export { AgentOrchestrator, createOrchestrator, getWorktreeIdentifier, validateGitRemote, resolveWorktreePath } from './orchestrator.js';
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Null Issue Tracker Client
|
|
3
|
+
*
|
|
4
|
+
* No-op implementation of IssueTrackerClient for workers that don't have
|
|
5
|
+
* direct Linear API access. Used when LINEAR_API_KEY is not set and all
|
|
6
|
+
* Linear communication is delegated to the platform API.
|
|
7
|
+
*
|
|
8
|
+
* Returns minimal stub data so the orchestrator can function (e.g., create
|
|
9
|
+
* worktrees, spawn agents) without real issue tracker access. Status updates,
|
|
10
|
+
* comments, and session activities are silently dropped — the platform API
|
|
11
|
+
* activity emitter handles these instead.
|
|
12
|
+
*/
|
|
13
|
+
import type { IssueTrackerClient, IssueTrackerIssue, IssueTrackerSession, SessionConfig, CommentChunk } from './issue-tracker-client.js';
|
|
14
|
+
/**
|
|
15
|
+
* No-op IssueTrackerClient for platform-delegated workers.
|
|
16
|
+
*
|
|
17
|
+
* getIssue() returns a minimal stub using the identifier passed in.
|
|
18
|
+
* All mutation methods (comments, status updates) are silent no-ops.
|
|
19
|
+
*/
|
|
20
|
+
export declare class NullIssueTrackerClient implements IssueTrackerClient {
|
|
21
|
+
getIssue(idOrIdentifier: string): Promise<IssueTrackerIssue>;
|
|
22
|
+
isParentIssue(): Promise<boolean>;
|
|
23
|
+
isChildIssue(): Promise<boolean>;
|
|
24
|
+
createComment(): Promise<{
|
|
25
|
+
id: string;
|
|
26
|
+
}>;
|
|
27
|
+
updateIssueStatus(): Promise<void>;
|
|
28
|
+
unassignIssue(): Promise<void>;
|
|
29
|
+
queryIssues(): Promise<IssueTrackerIssue[]>;
|
|
30
|
+
getProjectRepositoryUrl(): Promise<string | null>;
|
|
31
|
+
createSession(_config: SessionConfig): IssueTrackerSession;
|
|
32
|
+
buildCompletionComments(resultMessage: string, _planItems: unknown[], _sessionId: string | null): CommentChunk[];
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=null-issue-tracker-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"null-issue-tracker-client.d.ts","sourceRoot":"","sources":["../../../src/orchestrator/null-issue-tracker-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACb,MAAM,2BAA2B,CAAA;AAqBlC;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IACzD,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAY5D,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAIjC,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC,aAAa,IAAI,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAIxC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAElC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAI3C,uBAAuB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIvD,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,mBAAmB;IAI1D,uBAAuB,CACrB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,OAAO,EAAE,EACrB,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,YAAY,EAAE;CAGlB"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Null Issue Tracker Client
|
|
3
|
+
*
|
|
4
|
+
* No-op implementation of IssueTrackerClient for workers that don't have
|
|
5
|
+
* direct Linear API access. Used when LINEAR_API_KEY is not set and all
|
|
6
|
+
* Linear communication is delegated to the platform API.
|
|
7
|
+
*
|
|
8
|
+
* Returns minimal stub data so the orchestrator can function (e.g., create
|
|
9
|
+
* worktrees, spawn agents) without real issue tracker access. Status updates,
|
|
10
|
+
* comments, and session activities are silently dropped — the platform API
|
|
11
|
+
* activity emitter handles these instead.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* No-op session that silently drops all activity emissions.
|
|
15
|
+
* When the worker runs in platform mode, activities are posted via the
|
|
16
|
+
* ApiActivityEmitter instead of through an issue tracker session.
|
|
17
|
+
*/
|
|
18
|
+
class NullIssueTrackerSession {
|
|
19
|
+
async emitThought() { }
|
|
20
|
+
async emitAction() { }
|
|
21
|
+
async emitToolResult() { }
|
|
22
|
+
async emitResponse() { }
|
|
23
|
+
async emitError() { }
|
|
24
|
+
async reportEnvironmentIssue() {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
async setPullRequestUrl() { }
|
|
28
|
+
async addExternalUrl() { }
|
|
29
|
+
async complete() { }
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* No-op IssueTrackerClient for platform-delegated workers.
|
|
33
|
+
*
|
|
34
|
+
* getIssue() returns a minimal stub using the identifier passed in.
|
|
35
|
+
* All mutation methods (comments, status updates) are silent no-ops.
|
|
36
|
+
*/
|
|
37
|
+
export class NullIssueTrackerClient {
|
|
38
|
+
async getIssue(idOrIdentifier) {
|
|
39
|
+
return {
|
|
40
|
+
id: idOrIdentifier,
|
|
41
|
+
identifier: idOrIdentifier,
|
|
42
|
+
title: idOrIdentifier,
|
|
43
|
+
url: '',
|
|
44
|
+
priority: 0,
|
|
45
|
+
status: 'In Progress',
|
|
46
|
+
labels: [],
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
async isParentIssue() {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
async isChildIssue() {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
async createComment() {
|
|
56
|
+
return { id: '' };
|
|
57
|
+
}
|
|
58
|
+
async updateIssueStatus() { }
|
|
59
|
+
async unassignIssue() { }
|
|
60
|
+
async queryIssues() {
|
|
61
|
+
return [];
|
|
62
|
+
}
|
|
63
|
+
async getProjectRepositoryUrl() {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
createSession(_config) {
|
|
67
|
+
return new NullIssueTrackerSession();
|
|
68
|
+
}
|
|
69
|
+
buildCompletionComments(resultMessage, _planItems, _sessionId) {
|
|
70
|
+
return [{ body: resultMessage, partNumber: 1, totalParts: 1 }];
|
|
71
|
+
}
|
|
72
|
+
}
|
|
@@ -92,6 +92,7 @@ export declare class AgentOrchestrator {
|
|
|
92
92
|
private readonly contextManagers;
|
|
93
93
|
private readonly sessionOutputFlags;
|
|
94
94
|
private readonly assistantTextBuffers;
|
|
95
|
+
private shuttingDown;
|
|
95
96
|
private readonly templateRegistry;
|
|
96
97
|
private allowedProjects?;
|
|
97
98
|
private repoConfig?;
|
|
@@ -450,6 +451,16 @@ export declare class AgentOrchestrator {
|
|
|
450
451
|
* Stop all running agents
|
|
451
452
|
*/
|
|
452
453
|
stopAll(): void;
|
|
454
|
+
/**
|
|
455
|
+
* Gracefully shut down all provider resources (e.g., Codex app-server processes).
|
|
456
|
+
* Call after stopAll() to ensure child processes don't become orphans.
|
|
457
|
+
*/
|
|
458
|
+
shutdownProviders(): Promise<void>;
|
|
459
|
+
/**
|
|
460
|
+
* Full graceful cleanup: stop all agents and shut down provider resources.
|
|
461
|
+
* Use this instead of stopAll() when the fleet is exiting.
|
|
462
|
+
*/
|
|
463
|
+
cleanup(): Promise<void>;
|
|
453
464
|
/**
|
|
454
465
|
* Wait for all agents to complete with inactivity-based timeout
|
|
455
466
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -873,6 +873,8 @@ export class AgentOrchestrator {
|
|
|
873
873
|
// Buffered assistant text for batched logging (keyed by issueId)
|
|
874
874
|
// Streaming providers (Codex) send one token per event — buffer and flush on sentence boundaries
|
|
875
875
|
assistantTextBuffers = new Map();
|
|
876
|
+
// Flag to prevent promoting agents during fleet shutdown
|
|
877
|
+
shuttingDown = false;
|
|
876
878
|
// Template registry for configurable workflow prompts
|
|
877
879
|
templateRegistry;
|
|
878
880
|
// Allowlisted project names from .agentfactory/config.yaml
|
|
@@ -2561,10 +2563,14 @@ You are running in an AgentFactory-managed worktree. Follow these rules strictly
|
|
|
2561
2563
|
}
|
|
2562
2564
|
await this.handleAgentEvent(issueId, sessionId, event, emitter, agent, handle);
|
|
2563
2565
|
}
|
|
2564
|
-
// Query completed successfully — preserve 'failed'
|
|
2565
|
-
// (
|
|
2566
|
-
//
|
|
2567
|
-
if (
|
|
2566
|
+
// Query completed successfully — preserve 'failed' or 'stopped' status.
|
|
2567
|
+
// If the orchestrator is shutting down (fleet kill), force 'stopped' to prevent
|
|
2568
|
+
// the backstop from promoting incomplete work.
|
|
2569
|
+
if (this.shuttingDown && agent.status !== 'failed') {
|
|
2570
|
+
agent.status = 'stopped';
|
|
2571
|
+
log?.info('Agent stopped by fleet shutdown — skipping backstop and auto-transition');
|
|
2572
|
+
}
|
|
2573
|
+
else if (agent.status !== 'stopped' && agent.status !== 'failed') {
|
|
2568
2574
|
agent.status = 'completed';
|
|
2569
2575
|
}
|
|
2570
2576
|
agent.completedAt = new Date();
|
|
@@ -3168,7 +3174,7 @@ You are running in an AgentFactory-managed worktree. Follow these rules strictly
|
|
|
3168
3174
|
}
|
|
3169
3175
|
heartbeatWriter?.recordThinking();
|
|
3170
3176
|
// Persist reasoning to Linear session (same pattern as Claude's assistant_text)
|
|
3171
|
-
if (emitter && event.message) {
|
|
3177
|
+
if (emitter && event.message && typeof event.message === 'string') {
|
|
3172
3178
|
await emitter.emitThought(event.message.substring(0, 200));
|
|
3173
3179
|
}
|
|
3174
3180
|
}
|
|
@@ -3308,7 +3314,7 @@ You are running in an AgentFactory-managed worktree. Follow these rules strictly
|
|
|
3308
3314
|
});
|
|
3309
3315
|
}
|
|
3310
3316
|
// Emit truncated preview to activity feed (ephemeral)
|
|
3311
|
-
if (emitter && event.message) {
|
|
3317
|
+
if (emitter && event.message && typeof event.message === 'string') {
|
|
3312
3318
|
await emitter.emitThought(`Completed: ${event.message.substring(0, 200)}...`, true);
|
|
3313
3319
|
}
|
|
3314
3320
|
}
|
|
@@ -4440,6 +4446,7 @@ You are running in an AgentFactory-managed worktree. Follow these rules strictly
|
|
|
4440
4446
|
* Stop all running agents
|
|
4441
4447
|
*/
|
|
4442
4448
|
stopAll() {
|
|
4449
|
+
this.shuttingDown = true;
|
|
4443
4450
|
for (const [issueId] of this.abortControllers) {
|
|
4444
4451
|
try {
|
|
4445
4452
|
const agent = this.activeAgents.get(issueId);
|
|
@@ -4457,6 +4464,32 @@ You are running in an AgentFactory-managed worktree. Follow these rules strictly
|
|
|
4457
4464
|
this.abortControllers.clear();
|
|
4458
4465
|
this.sessionToIssue.clear();
|
|
4459
4466
|
}
|
|
4467
|
+
/**
|
|
4468
|
+
* Gracefully shut down all provider resources (e.g., Codex app-server processes).
|
|
4469
|
+
* Call after stopAll() to ensure child processes don't become orphans.
|
|
4470
|
+
*/
|
|
4471
|
+
async shutdownProviders() {
|
|
4472
|
+
const shutdownPromises = [];
|
|
4473
|
+
for (const [name, provider] of this.providerCache) {
|
|
4474
|
+
if (provider.shutdown) {
|
|
4475
|
+
console.log(`Shutting down ${name} provider...`);
|
|
4476
|
+
shutdownPromises.push(provider.shutdown().catch((err) => {
|
|
4477
|
+
console.warn(`Failed to shut down ${name} provider:`, err);
|
|
4478
|
+
}));
|
|
4479
|
+
}
|
|
4480
|
+
}
|
|
4481
|
+
if (shutdownPromises.length > 0) {
|
|
4482
|
+
await Promise.all(shutdownPromises);
|
|
4483
|
+
}
|
|
4484
|
+
}
|
|
4485
|
+
/**
|
|
4486
|
+
* Full graceful cleanup: stop all agents and shut down provider resources.
|
|
4487
|
+
* Use this instead of stopAll() when the fleet is exiting.
|
|
4488
|
+
*/
|
|
4489
|
+
async cleanup() {
|
|
4490
|
+
this.stopAll();
|
|
4491
|
+
await this.shutdownProviders();
|
|
4492
|
+
}
|
|
4460
4493
|
/**
|
|
4461
4494
|
* Wait for all agents to complete with inactivity-based timeout
|
|
4462
4495
|
*
|
|
@@ -125,9 +125,28 @@ export declare class AppServerProcessManager {
|
|
|
125
125
|
cwd: string;
|
|
126
126
|
env?: Record<string, string>;
|
|
127
127
|
});
|
|
128
|
+
/**
|
|
129
|
+
* Get the PID file path for tracking the app-server process.
|
|
130
|
+
* Used for orphan detection on startup.
|
|
131
|
+
*/
|
|
132
|
+
private static getPidFilePath;
|
|
133
|
+
/**
|
|
134
|
+
* Kill any orphaned app-server process from a prior fleet run.
|
|
135
|
+
* Called before starting a new process to prevent resource leaks.
|
|
136
|
+
*/
|
|
137
|
+
private static killOrphanedProcess;
|
|
138
|
+
/**
|
|
139
|
+
* Write the current app-server PID to the PID file.
|
|
140
|
+
*/
|
|
141
|
+
private writePidFile;
|
|
142
|
+
/**
|
|
143
|
+
* Remove the PID file on shutdown.
|
|
144
|
+
*/
|
|
145
|
+
private static removePidFile;
|
|
128
146
|
/**
|
|
129
147
|
* Start the app-server process and complete the initialization handshake.
|
|
130
148
|
* Idempotent — returns immediately if already initialized.
|
|
149
|
+
* Kills any orphaned app-server from a prior fleet run before starting.
|
|
131
150
|
*/
|
|
132
151
|
start(): Promise<void>;
|
|
133
152
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-app-server-provider.d.ts","sourceRoot":"","sources":["../../../src/providers/codex-app-server-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;
|
|
1
|
+
{"version":3,"file":"codex-app-server-provider.d.ts","sourceRoot":"","sources":["../../../src/providers/codex-app-server-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAOH,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,UAAU,EACX,MAAM,YAAY,CAAA;AAuBnB,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AA2BD,4EAA4E;AAC5E,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,cAAc,GAAG,OAAO,CAAA;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAMD,UAAU,aAAa;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,CAAA;IAChC,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACnD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,UAAU,aAAa;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAC7B,CAAA;IACD,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,cAAc,CAAC,EAAE,MAAM,CAAA;KACxB,CAAA;CACF;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAMD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIlD,CAAA;AAED,eAAO,MAAM,mBAAmB,gBAAgB,CAAA;AAEhD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAMlE;AAMD,sEAAsE;AACtE,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAIhG,CAAA;AAED,eAAO,MAAM,qBAAqB;WANkB,MAAM;iBAAe,MAAM;YAAU,MAAM;CAM9B,CAAA;AAEjE,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,CAQR;AAaD;;;;;;;;;GASG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,eAAe,CAAoC;IAC3D,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,eAAe,CAA6B;IAEpD,+CAA+C;IAC/C,OAAO,CAAC,eAAe,CAAiE;IAExF,2EAA2E;IAC3E,OAAO,CAAC,eAAe,CAAyD;IAEhF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAwB;gBAEhC,OAAO,EAAE;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAC7B;IAMD;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAQ7B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA0ClC;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAW5B;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqE5B;;;;;OAKG;YACW,UAAU;IAmBxB;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,SAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBpG;;OAEG;IACH,OAAO,CAAC,IAAI;IAOZ;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAyB3B;;OAEG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAUzE;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,YAAY,EAAE,mBAAmB,KAAK,IAAI,GAAG,IAAI;IAI9F;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIzC;;OAEG;IACH,SAAS,IAAI,OAAO;IAMpB,+DAA+D;IAC/D,OAAO,CAAC,aAAa,CAAQ;IAE7B;;;;;;;OAOG;IACG,mBAAmB,CACvB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC,GAC9F,OAAO,CAAC,IAAI,CAAC;IA2BhB;;;OAGG;IACG,kBAAkB,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAc5D;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAOzG;;OAEG;IACH,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAE5B;IAED;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAOjB,eAAe;IAiC7B,OAAO,CAAC,gBAAgB;CAOzB;AAMD,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;IACzB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,mBAAmB,EACjC,KAAK,EAAE,yBAAyB,GAC/B,UAAU,EAAE,CAgLd;AAcD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,UAAU,EAAE,CAiId;AAMD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAM3E;AAeD;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAelG;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAe/E;AAkcD;;;;;;GAMG;AACH,qBAAa,sBAAuB,YAAW,aAAa;IAC1D,QAAQ,CAAC,IAAI,EAAG,OAAO,CAAS;IAChC,QAAQ,CAAC,YAAY;;;MAGX;IAEV,yEAAyE;IACzE,OAAO,CAAC,cAAc,CAAuC;IAE7D,KAAK,CAAC,MAAM,EAAE,gBAAgB,GAAG,WAAW;IAK5C,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,WAAW;IAKhE;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,OAAO,CAAC,yBAAyB;CAalC;AAMD,wBAAgB,4BAA4B,IAAI,sBAAsB,CAErE;AAED,2BAA2B;AAC3B,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -23,6 +23,9 @@
|
|
|
23
23
|
*/
|
|
24
24
|
import { spawn } from 'child_process';
|
|
25
25
|
import { createInterface } from 'readline';
|
|
26
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync } from 'fs';
|
|
27
|
+
import { join } from 'path';
|
|
28
|
+
import { homedir } from 'os';
|
|
26
29
|
import { classifyTool } from '../tools/tool-category.js';
|
|
27
30
|
import { evaluateCommandApproval, evaluateFileChangeApproval, } from './codex-approval-bridge.js';
|
|
28
31
|
function isServerRequest(msg) {
|
|
@@ -99,19 +102,109 @@ export class AppServerProcessManager {
|
|
|
99
102
|
this.cwd = options.cwd;
|
|
100
103
|
this.env = options.env || {};
|
|
101
104
|
}
|
|
105
|
+
/**
|
|
106
|
+
* Get the PID file path for tracking the app-server process.
|
|
107
|
+
* Used for orphan detection on startup.
|
|
108
|
+
*/
|
|
109
|
+
static getPidFilePath() {
|
|
110
|
+
const dir = join(homedir(), '.agentfactory');
|
|
111
|
+
if (!existsSync(dir)) {
|
|
112
|
+
mkdirSync(dir, { recursive: true });
|
|
113
|
+
}
|
|
114
|
+
return join(dir, 'codex-app-server.pid');
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Kill any orphaned app-server process from a prior fleet run.
|
|
118
|
+
* Called before starting a new process to prevent resource leaks.
|
|
119
|
+
*/
|
|
120
|
+
static killOrphanedProcess() {
|
|
121
|
+
const pidFile = AppServerProcessManager.getPidFilePath();
|
|
122
|
+
if (!existsSync(pidFile))
|
|
123
|
+
return;
|
|
124
|
+
try {
|
|
125
|
+
const pid = parseInt(readFileSync(pidFile, 'utf-8').trim(), 10);
|
|
126
|
+
if (isNaN(pid)) {
|
|
127
|
+
unlinkSync(pidFile);
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
// Check if the process is alive
|
|
131
|
+
try {
|
|
132
|
+
process.kill(pid, 0); // signal 0 = check existence
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
// Process is dead, just clean up the PID file
|
|
136
|
+
unlinkSync(pidFile);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
// Process is alive — kill it
|
|
140
|
+
console.error(`[CodexAppServer] Killing orphaned app-server process (PID ${pid})`);
|
|
141
|
+
try {
|
|
142
|
+
process.kill(pid, 'SIGTERM');
|
|
143
|
+
// Give it a moment, then force kill
|
|
144
|
+
setTimeout(() => {
|
|
145
|
+
try {
|
|
146
|
+
process.kill(pid, 0); // still alive?
|
|
147
|
+
process.kill(pid, 'SIGKILL');
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
// Already dead
|
|
151
|
+
}
|
|
152
|
+
}, 2000);
|
|
153
|
+
}
|
|
154
|
+
catch {
|
|
155
|
+
// Kill failed, process may have already exited
|
|
156
|
+
}
|
|
157
|
+
unlinkSync(pidFile);
|
|
158
|
+
}
|
|
159
|
+
catch {
|
|
160
|
+
// PID file read/delete failed — ignore
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Write the current app-server PID to the PID file.
|
|
165
|
+
*/
|
|
166
|
+
writePidFile() {
|
|
167
|
+
if (!this.process?.pid)
|
|
168
|
+
return;
|
|
169
|
+
try {
|
|
170
|
+
writeFileSync(AppServerProcessManager.getPidFilePath(), String(this.process.pid));
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
// Best effort
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Remove the PID file on shutdown.
|
|
178
|
+
*/
|
|
179
|
+
static removePidFile() {
|
|
180
|
+
try {
|
|
181
|
+
const pidFile = AppServerProcessManager.getPidFilePath();
|
|
182
|
+
if (existsSync(pidFile)) {
|
|
183
|
+
unlinkSync(pidFile);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
// Best effort
|
|
188
|
+
}
|
|
189
|
+
}
|
|
102
190
|
/**
|
|
103
191
|
* Start the app-server process and complete the initialization handshake.
|
|
104
192
|
* Idempotent — returns immediately if already initialized.
|
|
193
|
+
* Kills any orphaned app-server from a prior fleet run before starting.
|
|
105
194
|
*/
|
|
106
195
|
async start() {
|
|
107
196
|
if (this.initialized && this.process && !this.process.killed) {
|
|
108
197
|
return;
|
|
109
198
|
}
|
|
199
|
+
// Kill orphaned app-server from prior fleet run
|
|
200
|
+
AppServerProcessManager.killOrphanedProcess();
|
|
110
201
|
this.process = spawn(this.codexBin, ['app-server'], {
|
|
111
202
|
cwd: this.cwd,
|
|
112
203
|
env: { ...process.env, ...this.env },
|
|
113
204
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
114
205
|
});
|
|
206
|
+
// Track PID for orphan detection on next startup
|
|
207
|
+
this.writePidFile();
|
|
115
208
|
this.readline = createInterface({ input: this.process.stdout });
|
|
116
209
|
// Parse incoming JSONL messages
|
|
117
210
|
this.readline.on('line', (line) => {
|
|
@@ -380,6 +473,8 @@ export class AppServerProcessManager {
|
|
|
380
473
|
}
|
|
381
474
|
async performShutdown() {
|
|
382
475
|
this.initialized = false;
|
|
476
|
+
// Remove PID file before killing process
|
|
477
|
+
AppServerProcessManager.removePidFile();
|
|
383
478
|
// Clear all pending requests
|
|
384
479
|
this.rejectAllPending(new Error('App server shutting down'));
|
|
385
480
|
// Kill the process
|
|
@@ -42,6 +42,12 @@ export interface AgentProvider {
|
|
|
42
42
|
spawn(config: AgentSpawnConfig): AgentHandle;
|
|
43
43
|
/** Resume a previously interrupted session */
|
|
44
44
|
resume(sessionId: string, config: AgentSpawnConfig): AgentHandle;
|
|
45
|
+
/**
|
|
46
|
+
* Gracefully shut down provider resources (e.g., long-lived child processes).
|
|
47
|
+
* Called by the orchestrator on fleet shutdown. Optional — providers with
|
|
48
|
+
* per-agent child processes (Claude) don't need this.
|
|
49
|
+
*/
|
|
50
|
+
shutdown?(): Promise<void>;
|
|
45
51
|
}
|
|
46
52
|
/**
|
|
47
53
|
* Configuration passed to a provider when spawning an agent.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,qCAAqC;AACrC,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,WAAW,GAAG,KAAK,CAAA;AAEhF;;;;;GAKG;AACH;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,wBAAwB,EAAE,OAAO,CAAA;IACjC,oDAAoD;IACpD,qBAAqB,EAAE,OAAO,CAAA;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,0BAA0B;IAC1B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IAEhC,yDAAyD;IACzD,QAAQ,CAAC,YAAY,EAAE,yBAAyB,CAAA;IAEhD,gCAAgC;IAChC,KAAK,CAAC,MAAM,EAAE,gBAAgB,GAAG,WAAW,CAAA;IAE5C,8CAA8C;IAC9C,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@renseiai/agentfactory",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.23",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Multi-agent fleet management for coding agents — orchestrator, providers, crash recovery",
|
|
6
6
|
"author": "Rensei AI (https://rensei.ai)",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"@types/node": "^22.5.4",
|
|
58
58
|
"typescript": "^5.7.3",
|
|
59
59
|
"vitest": "^3.2.3",
|
|
60
|
-
"@renseiai/create-agentfactory-app": "0.8.
|
|
60
|
+
"@renseiai/create-agentfactory-app": "0.8.23"
|
|
61
61
|
},
|
|
62
62
|
"scripts": {
|
|
63
63
|
"build": "tsc",
|