openpaean 0.4.2 → 0.5.1
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/api/client.d.ts +13 -3
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +131 -24
- package/dist/api/client.js.map +1 -1
- package/dist/api/gateway-api.d.ts +46 -0
- package/dist/api/gateway-api.d.ts.map +1 -0
- package/dist/api/gateway-api.js +54 -0
- package/dist/api/gateway-api.js.map +1 -0
- package/dist/api/worker-api.d.ts +94 -0
- package/dist/api/worker-api.d.ts.map +1 -0
- package/dist/api/worker-api.js +89 -0
- package/dist/api/worker-api.js.map +1 -0
- package/dist/cli.js +13 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent.d.ts +4 -0
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +57 -5
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/gateway.d.ts +8 -0
- package/dist/commands/gateway.d.ts.map +1 -0
- package/dist/commands/gateway.js +86 -0
- package/dist/commands/gateway.js.map +1 -0
- package/dist/commands/worker.d.ts +7 -0
- package/dist/commands/worker.d.ts.map +1 -0
- package/dist/commands/worker.js +283 -0
- package/dist/commands/worker.js.map +1 -0
- package/dist/gateway/service.d.ts +94 -0
- package/dist/gateway/service.d.ts.map +1 -0
- package/dist/gateway/service.js +338 -0
- package/dist/gateway/service.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/mcp/client.d.ts +1 -0
- package/dist/mcp/client.d.ts.map +1 -1
- package/dist/mcp/client.js +15 -1
- package/dist/mcp/client.js.map +1 -1
- package/dist/utils/config.d.ts +14 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +25 -0
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/output.d.ts +4 -0
- package/dist/utils/output.d.ts.map +1 -1
- package/dist/utils/output.js +17 -0
- package/dist/utils/output.js.map +1 -1
- package/dist/worker/executors/articulate.d.ts +19 -0
- package/dist/worker/executors/articulate.d.ts.map +1 -0
- package/dist/worker/executors/articulate.js +147 -0
- package/dist/worker/executors/articulate.js.map +1 -0
- package/dist/worker/executors/claude.d.ts +17 -0
- package/dist/worker/executors/claude.d.ts.map +1 -0
- package/dist/worker/executors/claude.js +102 -0
- package/dist/worker/executors/claude.js.map +1 -0
- package/dist/worker/executors/index.d.ts +26 -0
- package/dist/worker/executors/index.d.ts.map +1 -0
- package/dist/worker/executors/index.js +81 -0
- package/dist/worker/executors/index.js.map +1 -0
- package/dist/worker/index.d.ts +9 -0
- package/dist/worker/index.d.ts.map +1 -0
- package/dist/worker/index.js +9 -0
- package/dist/worker/index.js.map +1 -0
- package/dist/worker/service.d.ts +48 -0
- package/dist/worker/service.d.ts.map +1 -0
- package/dist/worker/service.js +559 -0
- package/dist/worker/service.js.map +1 -0
- package/dist/worker/types.d.ts +134 -0
- package/dist/worker/types.d.ts.map +1 -0
- package/dist/worker/types.js +70 -0
- package/dist/worker/types.js.map +1 -0
- package/package.json +8 -3
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker Types
|
|
3
|
+
* Type definitions for the OpenPaean Local Autonomous Worker
|
|
4
|
+
*/
|
|
5
|
+
import type { TodoItem } from '../api/todo.js';
|
|
6
|
+
export interface WorkerConfig {
|
|
7
|
+
pollInterval: number;
|
|
8
|
+
maxRetries: number;
|
|
9
|
+
taskTimeout: number;
|
|
10
|
+
cooldownOnError: number;
|
|
11
|
+
verificationEnabled: boolean;
|
|
12
|
+
workingDirectory?: string;
|
|
13
|
+
debug?: boolean;
|
|
14
|
+
autonomousMode?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare const DEFAULT_WORKER_CONFIG: WorkerConfig;
|
|
17
|
+
export interface TaskContext {
|
|
18
|
+
task: TodoItem;
|
|
19
|
+
attempt: number;
|
|
20
|
+
maxRetries: number;
|
|
21
|
+
previousFailureSummary?: string;
|
|
22
|
+
startedAt: Date;
|
|
23
|
+
conversationId?: string;
|
|
24
|
+
}
|
|
25
|
+
export type WorkerStatus = 'idle' | 'running' | 'paused' | 'stopping' | 'error';
|
|
26
|
+
export interface WorkerState {
|
|
27
|
+
status: WorkerStatus;
|
|
28
|
+
currentTask?: TaskContext;
|
|
29
|
+
completedCount: number;
|
|
30
|
+
failedCount: number;
|
|
31
|
+
startedAt?: Date;
|
|
32
|
+
lastError?: string;
|
|
33
|
+
lastPollAt?: Date;
|
|
34
|
+
}
|
|
35
|
+
export interface TaskResult {
|
|
36
|
+
success: boolean;
|
|
37
|
+
message?: string;
|
|
38
|
+
verificationPassed?: boolean;
|
|
39
|
+
error?: string;
|
|
40
|
+
durationMs?: number;
|
|
41
|
+
}
|
|
42
|
+
export type WorkerEvent = {
|
|
43
|
+
type: 'started';
|
|
44
|
+
} | {
|
|
45
|
+
type: 'stopped';
|
|
46
|
+
} | {
|
|
47
|
+
type: 'paused';
|
|
48
|
+
} | {
|
|
49
|
+
type: 'resumed';
|
|
50
|
+
} | {
|
|
51
|
+
type: 'task_claimed';
|
|
52
|
+
task: TodoItem;
|
|
53
|
+
} | {
|
|
54
|
+
type: 'task_started';
|
|
55
|
+
task: TodoItem;
|
|
56
|
+
attempt: number;
|
|
57
|
+
} | {
|
|
58
|
+
type: 'task_completed';
|
|
59
|
+
task: TodoItem;
|
|
60
|
+
duration: number;
|
|
61
|
+
} | {
|
|
62
|
+
type: 'task_failed';
|
|
63
|
+
task: TodoItem;
|
|
64
|
+
error: string;
|
|
65
|
+
willRetry: boolean;
|
|
66
|
+
} | {
|
|
67
|
+
type: 'task_verification_failed';
|
|
68
|
+
task: TodoItem;
|
|
69
|
+
} | {
|
|
70
|
+
type: 'poll_empty';
|
|
71
|
+
} | {
|
|
72
|
+
type: 'error';
|
|
73
|
+
error: string;
|
|
74
|
+
} | {
|
|
75
|
+
type: 'worker_content';
|
|
76
|
+
text: string;
|
|
77
|
+
partial: boolean;
|
|
78
|
+
} | {
|
|
79
|
+
type: 'worker_tool_call';
|
|
80
|
+
id: string;
|
|
81
|
+
name: string;
|
|
82
|
+
isMcp: boolean;
|
|
83
|
+
serverName?: string;
|
|
84
|
+
} | {
|
|
85
|
+
type: 'worker_tool_result';
|
|
86
|
+
id: string;
|
|
87
|
+
name: string;
|
|
88
|
+
status: 'completed' | 'error';
|
|
89
|
+
} | {
|
|
90
|
+
type: 'worker_done';
|
|
91
|
+
taskId: string;
|
|
92
|
+
success: boolean;
|
|
93
|
+
output?: string;
|
|
94
|
+
};
|
|
95
|
+
export type WorkerEventHandler = (event: WorkerEvent) => void;
|
|
96
|
+
export type ExecutorType = 'internal' | 'claude' | 'gemini' | 'cursor' | 'codex' | 'opencode' | 'articulate' | 'shell';
|
|
97
|
+
export interface ExecutorConfig {
|
|
98
|
+
type: ExecutorType;
|
|
99
|
+
enabled: boolean;
|
|
100
|
+
path?: string;
|
|
101
|
+
defaultArgs?: string[];
|
|
102
|
+
timeout?: number;
|
|
103
|
+
}
|
|
104
|
+
export type AvailabilityAuthStatus = 'authenticated' | 'unauthenticated' | 'expired' | 'unknown';
|
|
105
|
+
export interface AvailabilityStatus {
|
|
106
|
+
available: boolean;
|
|
107
|
+
binaryExists: boolean;
|
|
108
|
+
binaryPath?: string;
|
|
109
|
+
authStatus: AvailabilityAuthStatus;
|
|
110
|
+
authMessage?: string;
|
|
111
|
+
version?: string;
|
|
112
|
+
error?: string;
|
|
113
|
+
}
|
|
114
|
+
export interface ExecutorOptions {
|
|
115
|
+
cwd?: string;
|
|
116
|
+
timeout?: number;
|
|
117
|
+
args?: string[];
|
|
118
|
+
env?: Record<string, string>;
|
|
119
|
+
skipPermissions?: boolean;
|
|
120
|
+
captureOutput?: boolean;
|
|
121
|
+
onOutput?: (text: string, stream: 'stdout' | 'stderr') => void;
|
|
122
|
+
onProgress?: (message: string) => void;
|
|
123
|
+
}
|
|
124
|
+
export interface ExecutorResult {
|
|
125
|
+
success: boolean;
|
|
126
|
+
output: string;
|
|
127
|
+
error?: string;
|
|
128
|
+
exitCode?: number;
|
|
129
|
+
durationMs: number;
|
|
130
|
+
structured?: Record<string, unknown>;
|
|
131
|
+
}
|
|
132
|
+
export declare const DEFAULT_EXECUTOR_CONFIG: Partial<Record<ExecutorType, ExecutorConfig>>;
|
|
133
|
+
export declare function buildTaskPrompt(ctx: TaskContext): string;
|
|
134
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/worker/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker Types
|
|
3
|
+
* Type definitions for the OpenPaean Local Autonomous Worker
|
|
4
|
+
*/
|
|
5
|
+
import os from 'os';
|
|
6
|
+
export const DEFAULT_WORKER_CONFIG = {
|
|
7
|
+
pollInterval: 30000,
|
|
8
|
+
maxRetries: 3,
|
|
9
|
+
taskTimeout: 600000,
|
|
10
|
+
cooldownOnError: 60000,
|
|
11
|
+
verificationEnabled: true,
|
|
12
|
+
autonomousMode: true,
|
|
13
|
+
};
|
|
14
|
+
export const DEFAULT_EXECUTOR_CONFIG = {
|
|
15
|
+
internal: { type: 'internal', enabled: true },
|
|
16
|
+
claude: { type: 'claude', enabled: true, timeout: 900000 },
|
|
17
|
+
gemini: { type: 'gemini', enabled: true, timeout: 600000 },
|
|
18
|
+
cursor: { type: 'cursor', enabled: true, timeout: 600000 },
|
|
19
|
+
codex: { type: 'codex', enabled: true, timeout: 600000 },
|
|
20
|
+
opencode: { type: 'opencode', enabled: true, timeout: 600000 },
|
|
21
|
+
articulate: { type: 'articulate', enabled: true, timeout: 600000 },
|
|
22
|
+
};
|
|
23
|
+
export function buildTaskPrompt(ctx) {
|
|
24
|
+
const task = ctx.task;
|
|
25
|
+
const cliPayload = task.cliPayload;
|
|
26
|
+
const workingDir = cliPayload?.workingDirectory || process.cwd();
|
|
27
|
+
const basePrompt = `You are an autonomous AI assistant running on the user's local machine.
|
|
28
|
+
You have access to both local tools (filesystem, terminal, git) and cloud tools (notes, todos, search).
|
|
29
|
+
|
|
30
|
+
## Task
|
|
31
|
+
ID: ${ctx.task.id}
|
|
32
|
+
Content: ${ctx.task.content}
|
|
33
|
+
Priority: ${ctx.task.priority}
|
|
34
|
+
${ctx.task.description ? `\nDetails: ${ctx.task.description}` : ''}
|
|
35
|
+
${ctx.task.tags?.length ? `\nTags: ${ctx.task.tags.join(', ')}` : ''}
|
|
36
|
+
${cliPayload?.hint ? `\nHint: ${cliPayload.hint}` : ''}
|
|
37
|
+
|
|
38
|
+
## Your Environment
|
|
39
|
+
- Working Directory: ${workingDir}
|
|
40
|
+
- Device: ${process.env.HOSTNAME || os.hostname()}
|
|
41
|
+
- Platform: ${process.platform}
|
|
42
|
+
${cliPayload?.context ? `\nAdditional Context: ${JSON.stringify(cliPayload.context)}` : ''}
|
|
43
|
+
|
|
44
|
+
## Instructions
|
|
45
|
+
1. Analyze what needs to be done
|
|
46
|
+
2. Use available tools to complete the task autonomously
|
|
47
|
+
3. Verify your work is correct
|
|
48
|
+
4. Call paean_complete_task when finished
|
|
49
|
+
|
|
50
|
+
## Available Tool Categories
|
|
51
|
+
- **Local MCP**: File read/write, shell commands, git operations
|
|
52
|
+
- **Cloud MCP**: Notes, todos, search, transcriptions
|
|
53
|
+
|
|
54
|
+
## Important
|
|
55
|
+
- You have full autonomy to decide HOW to complete the task
|
|
56
|
+
- Use your best judgment on which tools to use
|
|
57
|
+
- If you encounter errors, try alternative approaches
|
|
58
|
+
- Ask for confirmation only for potentially destructive operations
|
|
59
|
+
`;
|
|
60
|
+
if (ctx.attempt > 1 && ctx.previousFailureSummary) {
|
|
61
|
+
return `${basePrompt}
|
|
62
|
+
## Previous Attempt Failed (Attempt ${ctx.attempt}/${ctx.maxRetries})
|
|
63
|
+
${ctx.previousFailureSummary}
|
|
64
|
+
|
|
65
|
+
Please review the previous failure and try a different approach.
|
|
66
|
+
`;
|
|
67
|
+
}
|
|
68
|
+
return basePrompt;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/worker/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AAcpB,MAAM,CAAC,MAAM,qBAAqB,GAAiB;IAC/C,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,CAAC;IACb,WAAW,EAAE,MAAM;IACnB,eAAe,EAAE,KAAK;IACtB,mBAAmB,EAAE,IAAI;IACzB,cAAc,EAAE,IAAI;CACvB,CAAC;AAwGF,MAAM,CAAC,MAAM,uBAAuB,GAAkD;IAClF,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE;IAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;IAC1D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;IAC1D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;IAC1D,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;IACxD,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;IAC9D,UAAU,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE;CACrE,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,GAAgB;IAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAwG,CAAC;IAC1H,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACnC,MAAM,UAAU,GAAG,UAAU,EAAE,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjE,MAAM,UAAU,GAAG;;;;MAIjB,GAAG,CAAC,IAAI,CAAC,EAAE;WACN,GAAG,CAAC,IAAI,CAAC,OAAO;YACf,GAAG,CAAC,IAAI,CAAC,QAAQ;EAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;EAChE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;EAClE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;;;uBAG/B,UAAU;YACrB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,EAAE;cACnC,OAAO,CAAC,QAAQ;EAC5B,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;CAiBzF,CAAC;IAEE,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,sBAAsB,EAAE,CAAC;QAChD,OAAO,GAAG,UAAU;sCACU,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,UAAU;EACjE,GAAG,CAAC,sBAAsB;;;CAG3B,CAAC;IACE,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openpaean",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Open source AI agent CLI with
|
|
3
|
+
"version": "0.5.1",
|
|
4
|
+
"description": "Open source AI agent CLI with executor framework (a8e, Claude Code), gateway relay, worker mode, MCP support, and scrolling TUI",
|
|
5
5
|
"author": "Paean AI <dev@paean.ai>",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"type": "module",
|
|
@@ -74,7 +74,12 @@
|
|
|
74
74
|
"agent",
|
|
75
75
|
"shell",
|
|
76
76
|
"custom-mcp",
|
|
77
|
-
"fullscreen"
|
|
77
|
+
"fullscreen",
|
|
78
|
+
"gateway",
|
|
79
|
+
"worker",
|
|
80
|
+
"executor",
|
|
81
|
+
"a8e",
|
|
82
|
+
"claude-code"
|
|
78
83
|
],
|
|
79
84
|
"homepage": "https://github.com/paean-ai/openpaean",
|
|
80
85
|
"bugs": {
|