@posthog/agent 1.22.0 → 1.24.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/CLAUDE.md +3 -3
- package/README.md +3 -3
- package/dist/index.d.ts +11 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/src/adapters/claude/claude-adapter.d.ts +3 -3
- package/dist/src/adapters/claude/claude-adapter.d.ts.map +1 -1
- package/dist/src/adapters/claude/claude-adapter.js +156 -111
- package/dist/src/adapters/claude/claude-adapter.js.map +1 -1
- package/dist/src/adapters/claude/tool-mapper.d.ts +1 -1
- package/dist/src/adapters/claude/tool-mapper.d.ts.map +1 -1
- package/dist/src/adapters/claude/tool-mapper.js.map +1 -1
- package/dist/src/adapters/types.d.ts +1 -1
- package/dist/src/adapters/types.d.ts.map +1 -1
- package/dist/src/agent.d.ts +7 -7
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +143 -85
- package/dist/src/agent.js.map +1 -1
- package/dist/src/agents/execution.js.map +1 -1
- package/dist/src/agents/planning.js.map +1 -1
- package/dist/src/agents/research.js.map +1 -1
- package/dist/src/file-manager.d.ts +4 -4
- package/dist/src/file-manager.d.ts.map +1 -1
- package/dist/src/file-manager.js +59 -58
- package/dist/src/file-manager.js.map +1 -1
- package/dist/src/git-manager.d.ts +1 -1
- package/dist/src/git-manager.d.ts.map +1 -1
- package/dist/src/git-manager.js +93 -69
- package/dist/src/git-manager.js.map +1 -1
- package/dist/src/posthog-api.d.ts +2 -3
- package/dist/src/posthog-api.d.ts.map +1 -1
- package/dist/src/posthog-api.js +22 -22
- package/dist/src/posthog-api.js.map +1 -1
- package/dist/src/prompt-builder.d.ts +3 -3
- package/dist/src/prompt-builder.d.ts.map +1 -1
- package/dist/src/prompt-builder.js +123 -93
- package/dist/src/prompt-builder.js.map +1 -1
- package/dist/src/task-manager.d.ts +4 -4
- package/dist/src/task-manager.d.ts.map +1 -1
- package/dist/src/task-manager.js +19 -18
- package/dist/src/task-manager.js.map +1 -1
- package/dist/src/task-progress-reporter.d.ts +3 -4
- package/dist/src/task-progress-reporter.d.ts.map +1 -1
- package/dist/src/task-progress-reporter.js +59 -54
- package/dist/src/task-progress-reporter.js.map +1 -1
- package/dist/src/template-manager.d.ts +1 -1
- package/dist/src/template-manager.d.ts.map +1 -1
- package/dist/src/template-manager.js +30 -28
- package/dist/src/template-manager.js.map +1 -1
- package/dist/src/todo-manager.d.ts +3 -3
- package/dist/src/todo-manager.d.ts.map +1 -1
- package/dist/src/todo-manager.js +29 -24
- package/dist/src/todo-manager.js.map +1 -1
- package/dist/src/tools/registry.d.ts +1 -1
- package/dist/src/tools/registry.js +60 -60
- package/dist/src/tools/registry.js.map +1 -1
- package/dist/src/tools/types.d.ts +31 -31
- package/dist/src/types.d.ts +33 -33
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js.map +1 -1
- package/dist/src/utils/logger.d.ts +4 -4
- package/dist/src/utils/logger.d.ts.map +1 -1
- package/dist/src/utils/logger.js +8 -8
- package/dist/src/utils/logger.js.map +1 -1
- package/dist/src/workflow/config.d.ts +1 -1
- package/dist/src/workflow/config.d.ts.map +1 -1
- package/dist/src/workflow/config.js +18 -18
- package/dist/src/workflow/config.js.map +1 -1
- package/dist/src/workflow/steps/build.d.ts +1 -1
- package/dist/src/workflow/steps/build.d.ts.map +1 -1
- package/dist/src/workflow/steps/build.js +46 -38
- package/dist/src/workflow/steps/build.js.map +1 -1
- package/dist/src/workflow/steps/finalize.d.ts +1 -1
- package/dist/src/workflow/steps/finalize.d.ts.map +1 -1
- package/dist/src/workflow/steps/finalize.js +54 -48
- package/dist/src/workflow/steps/finalize.js.map +1 -1
- package/dist/src/workflow/steps/plan.d.ts +1 -1
- package/dist/src/workflow/steps/plan.d.ts.map +1 -1
- package/dist/src/workflow/steps/plan.js +58 -46
- package/dist/src/workflow/steps/plan.js.map +1 -1
- package/dist/src/workflow/steps/research.d.ts +1 -1
- package/dist/src/workflow/steps/research.d.ts.map +1 -1
- package/dist/src/workflow/steps/research.js +68 -56
- package/dist/src/workflow/steps/research.js.map +1 -1
- package/dist/src/workflow/types.d.ts +12 -12
- package/dist/src/workflow/types.d.ts.map +1 -1
- package/dist/src/workflow/utils.d.ts +1 -1
- package/dist/src/workflow/utils.d.ts.map +1 -1
- package/dist/src/workflow/utils.js +7 -4
- package/dist/src/workflow/utils.js.map +1 -1
- package/package.json +8 -8
- package/src/adapters/claude/claude-adapter.ts +220 -168
- package/src/adapters/claude/tool-mapper.ts +2 -2
- package/src/adapters/types.ts +1 -1
- package/src/agent.ts +579 -444
- package/src/agents/execution.ts +1 -1
- package/src/agents/planning.ts +1 -1
- package/src/agents/research.ts +0 -1
- package/src/file-manager.ts +64 -63
- package/src/git-manager.ts +152 -87
- package/src/posthog-api.ts +122 -82
- package/src/prompt-builder.ts +180 -135
- package/src/task-manager.ts +38 -30
- package/src/task-progress-reporter.ts +70 -59
- package/src/template-manager.ts +98 -45
- package/src/todo-manager.ts +35 -30
- package/src/tools/registry.ts +62 -62
- package/src/tools/types.ts +36 -36
- package/src/types.ts +93 -71
- package/src/utils/logger.ts +62 -56
- package/src/workflow/config.ts +48 -48
- package/src/workflow/steps/build.ts +122 -113
- package/src/workflow/steps/finalize.ts +214 -182
- package/src/workflow/steps/plan.ts +151 -131
- package/src/workflow/steps/research.ts +205 -186
- package/src/workflow/types.ts +38 -36
- package/src/workflow/utils.ts +37 -34
- package/LICENSE +0 -33
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Tool category classification for grouping related tools.
|
|
3
3
|
* Makes it easier for UIs to filter and display tools by function.
|
|
4
4
|
*/
|
|
5
|
-
export type ToolCategory =
|
|
5
|
+
export type ToolCategory = "filesystem" | "shell" | "web" | "assistant" | "search" | "unknown";
|
|
6
6
|
/**
|
|
7
7
|
* Base tool interface representing a tool that can be called by the agent.
|
|
8
8
|
* Each tool has a name, category, and human-readable description.
|
|
@@ -13,64 +13,64 @@ export interface Tool {
|
|
|
13
13
|
description: string;
|
|
14
14
|
}
|
|
15
15
|
export interface ReadTool extends Tool {
|
|
16
|
-
name:
|
|
17
|
-
category:
|
|
16
|
+
name: "Read";
|
|
17
|
+
category: "filesystem";
|
|
18
18
|
}
|
|
19
19
|
export interface WriteTool extends Tool {
|
|
20
|
-
name:
|
|
21
|
-
category:
|
|
20
|
+
name: "Write";
|
|
21
|
+
category: "filesystem";
|
|
22
22
|
}
|
|
23
23
|
export interface EditTool extends Tool {
|
|
24
|
-
name:
|
|
25
|
-
category:
|
|
24
|
+
name: "Edit";
|
|
25
|
+
category: "filesystem";
|
|
26
26
|
}
|
|
27
27
|
export interface GlobTool extends Tool {
|
|
28
|
-
name:
|
|
29
|
-
category:
|
|
28
|
+
name: "Glob";
|
|
29
|
+
category: "filesystem";
|
|
30
30
|
}
|
|
31
31
|
export interface NotebookEditTool extends Tool {
|
|
32
|
-
name:
|
|
33
|
-
category:
|
|
32
|
+
name: "NotebookEdit";
|
|
33
|
+
category: "filesystem";
|
|
34
34
|
}
|
|
35
35
|
export interface BashTool extends Tool {
|
|
36
|
-
name:
|
|
37
|
-
category:
|
|
36
|
+
name: "Bash";
|
|
37
|
+
category: "shell";
|
|
38
38
|
}
|
|
39
39
|
export interface BashOutputTool extends Tool {
|
|
40
|
-
name:
|
|
41
|
-
category:
|
|
40
|
+
name: "BashOutput";
|
|
41
|
+
category: "shell";
|
|
42
42
|
}
|
|
43
43
|
export interface KillShellTool extends Tool {
|
|
44
|
-
name:
|
|
45
|
-
category:
|
|
44
|
+
name: "KillShell";
|
|
45
|
+
category: "shell";
|
|
46
46
|
}
|
|
47
47
|
export interface WebFetchTool extends Tool {
|
|
48
|
-
name:
|
|
49
|
-
category:
|
|
48
|
+
name: "WebFetch";
|
|
49
|
+
category: "web";
|
|
50
50
|
}
|
|
51
51
|
export interface WebSearchTool extends Tool {
|
|
52
|
-
name:
|
|
53
|
-
category:
|
|
52
|
+
name: "WebSearch";
|
|
53
|
+
category: "web";
|
|
54
54
|
}
|
|
55
55
|
export interface GrepTool extends Tool {
|
|
56
|
-
name:
|
|
57
|
-
category:
|
|
56
|
+
name: "Grep";
|
|
57
|
+
category: "search";
|
|
58
58
|
}
|
|
59
59
|
export interface TaskTool extends Tool {
|
|
60
|
-
name:
|
|
61
|
-
category:
|
|
60
|
+
name: "Task";
|
|
61
|
+
category: "assistant";
|
|
62
62
|
}
|
|
63
63
|
export interface TodoWriteTool extends Tool {
|
|
64
|
-
name:
|
|
65
|
-
category:
|
|
64
|
+
name: "TodoWrite";
|
|
65
|
+
category: "assistant";
|
|
66
66
|
}
|
|
67
67
|
export interface ExitPlanModeTool extends Tool {
|
|
68
|
-
name:
|
|
69
|
-
category:
|
|
68
|
+
name: "ExitPlanMode";
|
|
69
|
+
category: "assistant";
|
|
70
70
|
}
|
|
71
71
|
export interface SlashCommandTool extends Tool {
|
|
72
|
-
name:
|
|
73
|
-
category:
|
|
72
|
+
name: "SlashCommand";
|
|
73
|
+
category: "assistant";
|
|
74
74
|
}
|
|
75
75
|
/**
|
|
76
76
|
* Union type of all known tool types.
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { CanUseTool, PermissionResult } from
|
|
1
|
+
import type { CanUseTool, PermissionResult } from "@anthropic-ai/claude-agent-sdk";
|
|
2
2
|
export type { CanUseTool, PermissionResult };
|
|
3
3
|
export interface Task {
|
|
4
4
|
id: string;
|
|
5
5
|
title: string;
|
|
6
6
|
description: string;
|
|
7
|
-
origin_product:
|
|
7
|
+
origin_product: "error_tracking" | "eval_clusters" | "user_created" | "support_queue" | "session_summaries";
|
|
8
8
|
position?: number;
|
|
9
9
|
github_integration?: number | null;
|
|
10
10
|
repository_config?: unknown;
|
|
@@ -22,7 +22,7 @@ export interface LogEntry {
|
|
|
22
22
|
message: string;
|
|
23
23
|
[key: string]: unknown;
|
|
24
24
|
}
|
|
25
|
-
export type ArtifactType =
|
|
25
|
+
export type ArtifactType = "plan" | "context" | "reference" | "output" | "artifact";
|
|
26
26
|
export interface TaskRunArtifact {
|
|
27
27
|
name: string;
|
|
28
28
|
type: ArtifactType;
|
|
@@ -36,7 +36,7 @@ export interface TaskRun {
|
|
|
36
36
|
task: string;
|
|
37
37
|
team: number;
|
|
38
38
|
branch: string | null;
|
|
39
|
-
status:
|
|
39
|
+
status: "started" | "in_progress" | "completed" | "failed";
|
|
40
40
|
log_url?: string;
|
|
41
41
|
error_message: string | null;
|
|
42
42
|
output: Record<string, unknown> | null;
|
|
@@ -81,47 +81,47 @@ interface BaseEvent {
|
|
|
81
81
|
ts: number;
|
|
82
82
|
}
|
|
83
83
|
export interface TokenEvent extends BaseEvent {
|
|
84
|
-
type:
|
|
84
|
+
type: "token";
|
|
85
85
|
content: string;
|
|
86
|
-
contentType?:
|
|
86
|
+
contentType?: "text" | "thinking" | "tool_input";
|
|
87
87
|
}
|
|
88
88
|
export interface ContentBlockStartEvent extends BaseEvent {
|
|
89
|
-
type:
|
|
89
|
+
type: "content_block_start";
|
|
90
90
|
index: number;
|
|
91
|
-
contentType:
|
|
91
|
+
contentType: "text" | "tool_use" | "thinking";
|
|
92
92
|
toolName?: string;
|
|
93
93
|
toolId?: string;
|
|
94
94
|
}
|
|
95
95
|
export interface ContentBlockStopEvent extends BaseEvent {
|
|
96
|
-
type:
|
|
96
|
+
type: "content_block_stop";
|
|
97
97
|
index: number;
|
|
98
98
|
}
|
|
99
99
|
export interface ToolCallEvent extends BaseEvent {
|
|
100
|
-
type:
|
|
100
|
+
type: "tool_call";
|
|
101
101
|
toolName: string;
|
|
102
102
|
callId: string;
|
|
103
103
|
args: Record<string, any>;
|
|
104
104
|
parentToolUseId?: string | null;
|
|
105
|
-
tool?: import(
|
|
106
|
-
category?: import(
|
|
105
|
+
tool?: import("./tools/types.js").Tool;
|
|
106
|
+
category?: import("./tools/types.js").ToolCategory;
|
|
107
107
|
}
|
|
108
108
|
export interface ToolResultEvent extends BaseEvent {
|
|
109
|
-
type:
|
|
109
|
+
type: "tool_result";
|
|
110
110
|
toolName: string;
|
|
111
111
|
callId: string;
|
|
112
112
|
result: any;
|
|
113
113
|
isError?: boolean;
|
|
114
114
|
parentToolUseId?: string | null;
|
|
115
|
-
tool?: import(
|
|
116
|
-
category?: import(
|
|
115
|
+
tool?: import("./tools/types.js").Tool;
|
|
116
|
+
category?: import("./tools/types.js").ToolCategory;
|
|
117
117
|
}
|
|
118
118
|
export interface MessageStartEvent extends BaseEvent {
|
|
119
|
-
type:
|
|
119
|
+
type: "message_start";
|
|
120
120
|
messageId?: string;
|
|
121
121
|
model?: string;
|
|
122
122
|
}
|
|
123
123
|
export interface MessageDeltaEvent extends BaseEvent {
|
|
124
|
-
type:
|
|
124
|
+
type: "message_delta";
|
|
125
125
|
stopReason?: string;
|
|
126
126
|
stopSequence?: string;
|
|
127
127
|
usage?: {
|
|
@@ -129,15 +129,15 @@ export interface MessageDeltaEvent extends BaseEvent {
|
|
|
129
129
|
};
|
|
130
130
|
}
|
|
131
131
|
export interface MessageStopEvent extends BaseEvent {
|
|
132
|
-
type:
|
|
132
|
+
type: "message_stop";
|
|
133
133
|
}
|
|
134
134
|
export interface UserMessageEvent extends BaseEvent {
|
|
135
|
-
type:
|
|
135
|
+
type: "user_message";
|
|
136
136
|
content: string;
|
|
137
137
|
isSynthetic?: boolean;
|
|
138
138
|
}
|
|
139
139
|
export interface StatusEvent extends BaseEvent {
|
|
140
|
-
type:
|
|
140
|
+
type: "status";
|
|
141
141
|
phase: string;
|
|
142
142
|
kind?: string;
|
|
143
143
|
branch?: string;
|
|
@@ -148,7 +148,7 @@ export interface StatusEvent extends BaseEvent {
|
|
|
148
148
|
[key: string]: any;
|
|
149
149
|
}
|
|
150
150
|
export interface InitEvent extends BaseEvent {
|
|
151
|
-
type:
|
|
151
|
+
type: "init";
|
|
152
152
|
model: string;
|
|
153
153
|
tools: string[];
|
|
154
154
|
permissionMode: string;
|
|
@@ -163,12 +163,12 @@ export interface InitEvent extends BaseEvent {
|
|
|
163
163
|
}>;
|
|
164
164
|
}
|
|
165
165
|
export interface CompactBoundaryEvent extends BaseEvent {
|
|
166
|
-
type:
|
|
167
|
-
trigger:
|
|
166
|
+
type: "compact_boundary";
|
|
167
|
+
trigger: "manual" | "auto";
|
|
168
168
|
preTokens: number;
|
|
169
169
|
}
|
|
170
170
|
export interface DoneEvent extends BaseEvent {
|
|
171
|
-
type:
|
|
171
|
+
type: "done";
|
|
172
172
|
result?: string;
|
|
173
173
|
durationMs?: number;
|
|
174
174
|
durationApiMs?: number;
|
|
@@ -193,7 +193,7 @@ export interface DoneEvent extends BaseEvent {
|
|
|
193
193
|
}>;
|
|
194
194
|
}
|
|
195
195
|
export interface ErrorEvent extends BaseEvent {
|
|
196
|
-
type:
|
|
196
|
+
type: "error";
|
|
197
197
|
message: string;
|
|
198
198
|
error?: any;
|
|
199
199
|
errorType?: string;
|
|
@@ -201,18 +201,18 @@ export interface ErrorEvent extends BaseEvent {
|
|
|
201
201
|
sdkError?: any;
|
|
202
202
|
}
|
|
203
203
|
export interface MetricEvent extends BaseEvent {
|
|
204
|
-
type:
|
|
204
|
+
type: "metric";
|
|
205
205
|
key: string;
|
|
206
206
|
value: number;
|
|
207
207
|
unit?: string;
|
|
208
208
|
}
|
|
209
209
|
export interface ArtifactEvent extends BaseEvent {
|
|
210
|
-
type:
|
|
210
|
+
type: "artifact";
|
|
211
211
|
kind: string;
|
|
212
212
|
content: any;
|
|
213
213
|
}
|
|
214
214
|
export interface RawSDKEvent extends BaseEvent {
|
|
215
|
-
type:
|
|
215
|
+
type: "raw_sdk_event";
|
|
216
216
|
sdkMessage: any;
|
|
217
217
|
}
|
|
218
218
|
export type AgentEvent = TokenEvent | ContentBlockStartEvent | ContentBlockStopEvent | ToolCallEvent | ToolResultEvent | MessageStartEvent | MessageDeltaEvent | MessageStopEvent | UserMessageEvent | StatusEvent | InitEvent | CompactBoundaryEvent | DoneEvent | ErrorEvent | MetricEvent | ArtifactEvent | RawSDKEvent;
|
|
@@ -228,20 +228,20 @@ export interface TaskExecutionResult {
|
|
|
228
228
|
executionResult?: ExecutionResult;
|
|
229
229
|
}
|
|
230
230
|
export type McpServerConfig = {
|
|
231
|
-
type?:
|
|
231
|
+
type?: "stdio";
|
|
232
232
|
command: string;
|
|
233
233
|
args?: string[];
|
|
234
234
|
env?: Record<string, string>;
|
|
235
235
|
} | {
|
|
236
|
-
type:
|
|
236
|
+
type: "sse";
|
|
237
237
|
url: string;
|
|
238
238
|
headers?: Record<string, string>;
|
|
239
239
|
} | {
|
|
240
|
-
type:
|
|
240
|
+
type: "http";
|
|
241
241
|
url: string;
|
|
242
242
|
headers?: Record<string, string>;
|
|
243
243
|
} | {
|
|
244
|
-
type:
|
|
244
|
+
type: "sdk";
|
|
245
245
|
name: string;
|
|
246
246
|
instance?: any;
|
|
247
247
|
};
|
|
@@ -261,7 +261,7 @@ export interface PostHogAPIConfig {
|
|
|
261
261
|
apiKey: string;
|
|
262
262
|
projectId: number;
|
|
263
263
|
}
|
|
264
|
-
export type ResourceType =
|
|
264
|
+
export type ResourceType = "error" | "experiment" | "insight" | "feature_flag" | "generic";
|
|
265
265
|
export interface PostHogResource {
|
|
266
266
|
type: ResourceType;
|
|
267
267
|
id: string;
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../src/types.ts"],"sourcesContent":["\n// import and export to keep a single type file\nimport type { CanUseTool, PermissionResult } from '@anthropic-ai/claude-agent-sdk';\nexport type { CanUseTool, PermissionResult };\n\n// PostHog Task model (matches Array's OpenAPI schema)\nexport interface Task {\n id: string;\n title: string;\n description: string;\n origin_product: 'error_tracking' | 'eval_clusters' | 'user_created' | 'support_queue' | 'session_summaries';\n position?: number;\n github_integration?: number | null;\n repository_config?: unknown; // JSONField\n repository_list: string;\n primary_repository: string;\n created_at: string;\n updated_at: string;\n\n // DEPRECATED: These fields have been moved to TaskRun\n // Use task.latest_run instead\n current_stage?: string | null;\n github_branch?: string | null;\n github_pr_url?: string | null;\n latest_run?: TaskRun;\n}\n\n// Log entry structure for TaskRun.log\nexport interface LogEntry {\n type: string; // e.g., \"info\", \"warning\", \"error\", \"success\", \"debug\"\n message: string;\n [key: string]: unknown; // Allow additional fields\n}\n\nexport type ArtifactType = 'plan' | 'context' | 'reference' | 'output' | 'artifact';\n\nexport interface TaskRunArtifact {\n name: string;\n type: ArtifactType;\n size?: number;\n content_type?: string;\n storage_path?: string;\n uploaded_at?: string;\n}\n\n// TaskRun model - represents individual execution runs of tasks\nexport interface TaskRun {\n id: string;\n task: string; // Task ID\n team: number;\n branch: string | null;\n status: 'started' | 'in_progress' | 'completed' | 'failed';\n log_url?: string; // Presigned S3 URL for log access (valid for 1 hour)\n error_message: string | null;\n output: Record<string, unknown> | null; // Structured output (PR URL, commit SHA, etc.)\n state: Record<string, unknown>; // Intermediate run state (defaults to {}, never null)\n artifacts?: TaskRunArtifact[];\n created_at: string;\n updated_at: string;\n completed_at: string | null;\n}\n\nexport interface SupportingFile {\n name: string;\n content: string;\n type: ArtifactType;\n created_at: string;\n}\n\nexport interface TaskArtifactUploadPayload {\n name: string;\n type: ArtifactType;\n content: string;\n content_type?: string;\n}\n\nexport enum PermissionMode {\n PLAN = \"plan\",\n DEFAULT = \"default\",\n ACCEPT_EDITS = \"acceptEdits\",\n BYPASS = \"bypassPermissions\"\n}\n\nexport interface ExecutionOptions {\n repositoryPath?: string;\n permissionMode?: PermissionMode;\n}\n\nexport interface TaskExecutionOptions {\n repositoryPath?: string;\n permissionMode?: PermissionMode;\n isCloudMode?: boolean; // Determines local vs cloud behavior (local pauses after each phase)\n createPR?: boolean; // Whether to create PR after build (defaults to false if local. This setting has no effect if isCloudMode is true.)\n autoProgress?: boolean;\n queryOverrides?: Record<string, any>;\n // Fine-grained permission control (only applied to build phase)\n // See: https://docs.claude.com/en/api/agent-sdk/permissions\n canUseTool?: CanUseTool;\n}\n\n// Base event with timestamp\ninterface BaseEvent {\n ts: number;\n}\n\n// Streaming content events\nexport interface TokenEvent extends BaseEvent {\n type: 'token';\n content: string;\n contentType?: 'text' | 'thinking' | 'tool_input';\n}\n\nexport interface ContentBlockStartEvent extends BaseEvent {\n type: 'content_block_start';\n index: number;\n contentType: 'text' | 'tool_use' | 'thinking';\n toolName?: string;\n toolId?: string;\n}\n\nexport interface ContentBlockStopEvent extends BaseEvent {\n type: 'content_block_stop';\n index: number;\n}\n\n// Tool events\nexport interface ToolCallEvent extends BaseEvent {\n type: 'tool_call';\n toolName: string;\n callId: string;\n args: Record<string, any>;\n parentToolUseId?: string | null; // For nested tool calls (subagents)\n // Tool metadata (enriched by adapter for UI consumption)\n tool?: import('./tools/types.js').Tool;\n category?: import('./tools/types.js').ToolCategory;\n}\n\nexport interface ToolResultEvent extends BaseEvent {\n type: 'tool_result';\n toolName: string;\n callId: string;\n result: any;\n isError?: boolean; // Whether the tool execution failed\n parentToolUseId?: string | null; // For nested tool calls (subagents)\n // Tool metadata (enriched by adapter for UI consumption)\n tool?: import('./tools/types.js').Tool;\n category?: import('./tools/types.js').ToolCategory;\n}\n\n// Message lifecycle events\nexport interface MessageStartEvent extends BaseEvent {\n type: 'message_start';\n messageId?: string;\n model?: string;\n}\n\nexport interface MessageDeltaEvent extends BaseEvent {\n type: 'message_delta';\n stopReason?: string;\n stopSequence?: string;\n usage?: {\n outputTokens: number;\n };\n}\n\nexport interface MessageStopEvent extends BaseEvent {\n type: 'message_stop';\n}\n\n// User message events\nexport interface UserMessageEvent extends BaseEvent {\n type: 'user_message';\n content: string;\n isSynthetic?: boolean;\n}\n\n// System events\nexport interface StatusEvent extends BaseEvent {\n type: 'status';\n phase: string;\n // Common optional fields (varies by phase):\n kind?: string; // Kind of status (plan, implementation)\n branch?: string; // Git branch name\n prUrl?: string; // Pull request URL\n taskId?: string; // Task identifier\n messageId?: string; // Claude message ID\n model?: string; // Model name\n [key: string]: any; // Allow additional fields\n}\n\nexport interface InitEvent extends BaseEvent {\n type: 'init';\n model: string;\n tools: string[];\n permissionMode: string;\n cwd: string;\n apiKeySource: string;\n agents?: string[];\n slashCommands?: string[];\n outputStyle?: string;\n mcpServers?: Array<{ name: string; status: string }>;\n}\n\nexport interface CompactBoundaryEvent extends BaseEvent {\n type: 'compact_boundary';\n trigger: 'manual' | 'auto';\n preTokens: number;\n}\n\n// Result events\nexport interface DoneEvent extends BaseEvent {\n type: 'done';\n result?: string; // Final summary text from Claude\n durationMs?: number;\n durationApiMs?: number; // API-only duration (excluding local processing)\n numTurns?: number;\n totalCostUsd?: number;\n usage?: any;\n modelUsage?: { // Per-model usage breakdown\n [modelName: string]: {\n inputTokens: number;\n outputTokens: number;\n cacheReadInputTokens: number;\n cacheCreationInputTokens: number;\n webSearchRequests: number;\n costUSD: number;\n contextWindow: number;\n };\n };\n permissionDenials?: Array<{ // Tools that were denied by permissions\n tool_name: string;\n tool_use_id: string;\n tool_input: Record<string, unknown>;\n }>;\n}\n\nexport interface ErrorEvent extends BaseEvent {\n type: 'error';\n message: string;\n error?: any;\n errorType?: string;\n context?: Record<string, any>; // Partial error context for debugging\n sdkError?: any; // Original SDK error object\n}\n\n// Metric and artifact events (general purpose, not tool-specific)\nexport interface MetricEvent extends BaseEvent {\n type: 'metric';\n key: string;\n value: number;\n unit?: string;\n}\n\nexport interface ArtifactEvent extends BaseEvent {\n type: 'artifact';\n kind: string;\n content: any;\n}\n\nexport interface RawSDKEvent extends BaseEvent {\n type: 'raw_sdk_event';\n sdkMessage: any; // Full SDK message for debugging\n}\n\nexport type AgentEvent =\n | TokenEvent\n | ContentBlockStartEvent\n | ContentBlockStopEvent\n | ToolCallEvent\n | ToolResultEvent\n | MessageStartEvent\n | MessageDeltaEvent\n | MessageStopEvent\n | UserMessageEvent\n | StatusEvent\n | InitEvent\n | CompactBoundaryEvent\n | DoneEvent\n | ErrorEvent\n | MetricEvent\n | ArtifactEvent\n | RawSDKEvent;\n\nexport interface ExecutionResult {\n results: any[];\n}\n\nexport interface PlanResult {\n plan: string;\n}\n\nexport interface TaskExecutionResult {\n task: Task;\n plan?: string;\n executionResult?: ExecutionResult;\n}\n\n// MCP Server configuration types (re-exported from Claude SDK for convenience)\nexport type McpServerConfig = {\n type?: 'stdio';\n command: string;\n args?: string[];\n env?: Record<string, string>;\n} | {\n type: 'sse';\n url: string;\n headers?: Record<string, string>;\n} | {\n type: 'http';\n url: string;\n headers?: Record<string, string>;\n} | {\n type: 'sdk';\n name: string;\n instance?: any; // McpServer instance\n};\n\nexport interface AgentConfig {\n workingDirectory?: string;\n onEvent?: (event: AgentEvent) => void;\n\n // PostHog API configuration\n posthogApiUrl: string;\n posthogApiKey: string;\n posthogProjectId: number;\n\n // PostHog MCP configuration\n posthogMcpUrl?: string;\n\n\n // MCP Server configuration\n // Additional MCP servers (PostHog MCP is always included by default)\n // You can override the PostHog MCP config by providing mcpServers.posthog\n mcpServers?: Record<string, McpServerConfig>;\n\n // Logging configuration\n debug?: boolean;\n\n // Fine-grained permission control for direct run() calls\n // See: https://docs.claude.com/en/api/agent-sdk/permissions\n canUseTool?: CanUseTool;\n}\n\nexport interface PostHogAPIConfig {\n apiUrl: string;\n apiKey: string;\n projectId: number;\n}\n\n// URL mention types\nexport type ResourceType = 'error' | 'experiment' | 'insight' | 'feature_flag' | 'generic';\n\nexport interface PostHogResource {\n type: ResourceType;\n id: string;\n url: string;\n title?: string;\n content: string;\n metadata?: Record<string, any>;\n}\n\nexport interface UrlMention {\n url: string;\n type: ResourceType;\n id?: string;\n label?: string;\n}\n\n// Research evaluation types\nexport interface ResearchQuestion {\n id: string;\n question: string;\n options: string[];\n}\n\nexport interface ResearchAnswer {\n questionId: string;\n selectedOption: string;\n customInput?: string;\n}\n\nexport interface ResearchEvaluation {\n actionabilityScore: number; // 0-1 confidence score\n context: string; // brief summary for planning\n keyFiles: string[]; // files needing modification\n blockers?: string[]; // what's preventing full confidence\n questions?: ResearchQuestion[]; // only if score < 0.7\n answered?: boolean; // whether questions have been answered\n answers?: ResearchAnswer[]; // user's answers to questions\n}"],"names":[],"mappings":"IA4EY;AAAZ,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,cAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,cAAA,CAAA,cAAA,CAAA,GAAA,aAA4B;AAC5B,IAAA,cAAA,CAAA,QAAA,CAAA,GAAA,mBAA4B;AAC9B,CAAC,EALW,cAAc,KAAd,cAAc,GAAA,EAAA,CAAA,CAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../src/types.ts"],"sourcesContent":["// import and export to keep a single type file\nimport type {\n CanUseTool,\n PermissionResult,\n} from \"@anthropic-ai/claude-agent-sdk\";\nexport type { CanUseTool, PermissionResult };\n\n// PostHog Task model (matches Array's OpenAPI schema)\nexport interface Task {\n id: string;\n title: string;\n description: string;\n origin_product:\n | \"error_tracking\"\n | \"eval_clusters\"\n | \"user_created\"\n | \"support_queue\"\n | \"session_summaries\";\n position?: number;\n github_integration?: number | null;\n repository_config?: unknown; // JSONField\n repository_list: string;\n primary_repository: string;\n created_at: string;\n updated_at: string;\n\n // DEPRECATED: These fields have been moved to TaskRun\n // Use task.latest_run instead\n current_stage?: string | null;\n github_branch?: string | null;\n github_pr_url?: string | null;\n latest_run?: TaskRun;\n}\n\n// Log entry structure for TaskRun.log\nexport interface LogEntry {\n type: string; // e.g., \"info\", \"warning\", \"error\", \"success\", \"debug\"\n message: string;\n [key: string]: unknown; // Allow additional fields\n}\n\nexport type ArtifactType =\n | \"plan\"\n | \"context\"\n | \"reference\"\n | \"output\"\n | \"artifact\";\n\nexport interface TaskRunArtifact {\n name: string;\n type: ArtifactType;\n size?: number;\n content_type?: string;\n storage_path?: string;\n uploaded_at?: string;\n}\n\n// TaskRun model - represents individual execution runs of tasks\nexport interface TaskRun {\n id: string;\n task: string; // Task ID\n team: number;\n branch: string | null;\n status: \"started\" | \"in_progress\" | \"completed\" | \"failed\";\n log_url?: string; // Presigned S3 URL for log access (valid for 1 hour)\n error_message: string | null;\n output: Record<string, unknown> | null; // Structured output (PR URL, commit SHA, etc.)\n state: Record<string, unknown>; // Intermediate run state (defaults to {}, never null)\n artifacts?: TaskRunArtifact[];\n created_at: string;\n updated_at: string;\n completed_at: string | null;\n}\n\nexport interface SupportingFile {\n name: string;\n content: string;\n type: ArtifactType;\n created_at: string;\n}\n\nexport interface TaskArtifactUploadPayload {\n name: string;\n type: ArtifactType;\n content: string;\n content_type?: string;\n}\n\nexport enum PermissionMode {\n PLAN = \"plan\",\n DEFAULT = \"default\",\n ACCEPT_EDITS = \"acceptEdits\",\n BYPASS = \"bypassPermissions\",\n}\n\nexport interface ExecutionOptions {\n repositoryPath?: string;\n permissionMode?: PermissionMode;\n}\n\nexport interface TaskExecutionOptions {\n repositoryPath?: string;\n permissionMode?: PermissionMode;\n isCloudMode?: boolean; // Determines local vs cloud behavior (local pauses after each phase)\n createPR?: boolean; // Whether to create PR after build (defaults to false if local. This setting has no effect if isCloudMode is true.)\n autoProgress?: boolean;\n queryOverrides?: Record<string, any>;\n // Fine-grained permission control (only applied to build phase)\n // See: https://docs.claude.com/en/api/agent-sdk/permissions\n canUseTool?: CanUseTool;\n}\n\n// Base event with timestamp\ninterface BaseEvent {\n ts: number;\n}\n\n// Streaming content events\nexport interface TokenEvent extends BaseEvent {\n type: \"token\";\n content: string;\n contentType?: \"text\" | \"thinking\" | \"tool_input\";\n}\n\nexport interface ContentBlockStartEvent extends BaseEvent {\n type: \"content_block_start\";\n index: number;\n contentType: \"text\" | \"tool_use\" | \"thinking\";\n toolName?: string;\n toolId?: string;\n}\n\nexport interface ContentBlockStopEvent extends BaseEvent {\n type: \"content_block_stop\";\n index: number;\n}\n\n// Tool events\nexport interface ToolCallEvent extends BaseEvent {\n type: \"tool_call\";\n toolName: string;\n callId: string;\n args: Record<string, any>;\n parentToolUseId?: string | null; // For nested tool calls (subagents)\n // Tool metadata (enriched by adapter for UI consumption)\n tool?: import(\"./tools/types.js\").Tool;\n category?: import(\"./tools/types.js\").ToolCategory;\n}\n\nexport interface ToolResultEvent extends BaseEvent {\n type: \"tool_result\";\n toolName: string;\n callId: string;\n result: any;\n isError?: boolean; // Whether the tool execution failed\n parentToolUseId?: string | null; // For nested tool calls (subagents)\n // Tool metadata (enriched by adapter for UI consumption)\n tool?: import(\"./tools/types.js\").Tool;\n category?: import(\"./tools/types.js\").ToolCategory;\n}\n\n// Message lifecycle events\nexport interface MessageStartEvent extends BaseEvent {\n type: \"message_start\";\n messageId?: string;\n model?: string;\n}\n\nexport interface MessageDeltaEvent extends BaseEvent {\n type: \"message_delta\";\n stopReason?: string;\n stopSequence?: string;\n usage?: {\n outputTokens: number;\n };\n}\n\nexport interface MessageStopEvent extends BaseEvent {\n type: \"message_stop\";\n}\n\n// User message events\nexport interface UserMessageEvent extends BaseEvent {\n type: \"user_message\";\n content: string;\n isSynthetic?: boolean;\n}\n\n// System events\nexport interface StatusEvent extends BaseEvent {\n type: \"status\";\n phase: string;\n // Common optional fields (varies by phase):\n kind?: string; // Kind of status (plan, implementation)\n branch?: string; // Git branch name\n prUrl?: string; // Pull request URL\n taskId?: string; // Task identifier\n messageId?: string; // Claude message ID\n model?: string; // Model name\n [key: string]: any; // Allow additional fields\n}\n\nexport interface InitEvent extends BaseEvent {\n type: \"init\";\n model: string;\n tools: string[];\n permissionMode: string;\n cwd: string;\n apiKeySource: string;\n agents?: string[];\n slashCommands?: string[];\n outputStyle?: string;\n mcpServers?: Array<{ name: string; status: string }>;\n}\n\nexport interface CompactBoundaryEvent extends BaseEvent {\n type: \"compact_boundary\";\n trigger: \"manual\" | \"auto\";\n preTokens: number;\n}\n\n// Result events\nexport interface DoneEvent extends BaseEvent {\n type: \"done\";\n result?: string; // Final summary text from Claude\n durationMs?: number;\n durationApiMs?: number; // API-only duration (excluding local processing)\n numTurns?: number;\n totalCostUsd?: number;\n usage?: any;\n modelUsage?: {\n // Per-model usage breakdown\n [modelName: string]: {\n inputTokens: number;\n outputTokens: number;\n cacheReadInputTokens: number;\n cacheCreationInputTokens: number;\n webSearchRequests: number;\n costUSD: number;\n contextWindow: number;\n };\n };\n permissionDenials?: Array<{\n // Tools that were denied by permissions\n tool_name: string;\n tool_use_id: string;\n tool_input: Record<string, unknown>;\n }>;\n}\n\nexport interface ErrorEvent extends BaseEvent {\n type: \"error\";\n message: string;\n error?: any;\n errorType?: string;\n context?: Record<string, any>; // Partial error context for debugging\n sdkError?: any; // Original SDK error object\n}\n\n// Metric and artifact events (general purpose, not tool-specific)\nexport interface MetricEvent extends BaseEvent {\n type: \"metric\";\n key: string;\n value: number;\n unit?: string;\n}\n\nexport interface ArtifactEvent extends BaseEvent {\n type: \"artifact\";\n kind: string;\n content: any;\n}\n\nexport interface RawSDKEvent extends BaseEvent {\n type: \"raw_sdk_event\";\n sdkMessage: any; // Full SDK message for debugging\n}\n\nexport type AgentEvent =\n | TokenEvent\n | ContentBlockStartEvent\n | ContentBlockStopEvent\n | ToolCallEvent\n | ToolResultEvent\n | MessageStartEvent\n | MessageDeltaEvent\n | MessageStopEvent\n | UserMessageEvent\n | StatusEvent\n | InitEvent\n | CompactBoundaryEvent\n | DoneEvent\n | ErrorEvent\n | MetricEvent\n | ArtifactEvent\n | RawSDKEvent;\n\nexport interface ExecutionResult {\n results: any[];\n}\n\nexport interface PlanResult {\n plan: string;\n}\n\nexport interface TaskExecutionResult {\n task: Task;\n plan?: string;\n executionResult?: ExecutionResult;\n}\n\n// MCP Server configuration types (re-exported from Claude SDK for convenience)\nexport type McpServerConfig =\n | {\n type?: \"stdio\";\n command: string;\n args?: string[];\n env?: Record<string, string>;\n }\n | {\n type: \"sse\";\n url: string;\n headers?: Record<string, string>;\n }\n | {\n type: \"http\";\n url: string;\n headers?: Record<string, string>;\n }\n | {\n type: \"sdk\";\n name: string;\n instance?: any; // McpServer instance\n };\n\nexport interface AgentConfig {\n workingDirectory?: string;\n onEvent?: (event: AgentEvent) => void;\n\n // PostHog API configuration\n posthogApiUrl: string;\n posthogApiKey: string;\n posthogProjectId: number;\n\n // PostHog MCP configuration\n posthogMcpUrl?: string;\n\n // MCP Server configuration\n // Additional MCP servers (PostHog MCP is always included by default)\n // You can override the PostHog MCP config by providing mcpServers.posthog\n mcpServers?: Record<string, McpServerConfig>;\n\n // Logging configuration\n debug?: boolean;\n\n // Fine-grained permission control for direct run() calls\n // See: https://docs.claude.com/en/api/agent-sdk/permissions\n canUseTool?: CanUseTool;\n}\n\nexport interface PostHogAPIConfig {\n apiUrl: string;\n apiKey: string;\n projectId: number;\n}\n\n// URL mention types\nexport type ResourceType =\n | \"error\"\n | \"experiment\"\n | \"insight\"\n | \"feature_flag\"\n | \"generic\";\n\nexport interface PostHogResource {\n type: ResourceType;\n id: string;\n url: string;\n title?: string;\n content: string;\n metadata?: Record<string, any>;\n}\n\nexport interface UrlMention {\n url: string;\n type: ResourceType;\n id?: string;\n label?: string;\n}\n\n// Research evaluation types\nexport interface ResearchQuestion {\n id: string;\n question: string;\n options: string[];\n}\n\nexport interface ResearchAnswer {\n questionId: string;\n selectedOption: string;\n customInput?: string;\n}\n\nexport interface ResearchEvaluation {\n actionabilityScore: number; // 0-1 confidence score\n context: string; // brief summary for planning\n keyFiles: string[]; // files needing modification\n blockers?: string[]; // what's preventing full confidence\n questions?: ResearchQuestion[]; // only if score < 0.7\n answered?: boolean; // whether questions have been answered\n answers?: ResearchAnswer[]; // user's answers to questions\n}\n"],"names":[],"mappings":"IAwFY;AAAZ,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,cAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,cAAA,CAAA,cAAA,CAAA,GAAA,aAA4B;AAC5B,IAAA,cAAA,CAAA,QAAA,CAAA,GAAA,mBAA4B;AAC9B,CAAC,EALW,cAAc,KAAd,cAAc,GAAA,EAAA,CAAA,CAAA;;;;"}
|
|
@@ -17,10 +17,10 @@ export declare class Logger {
|
|
|
17
17
|
constructor(config?: LoggerConfig);
|
|
18
18
|
setDebug(enabled: boolean): void;
|
|
19
19
|
private formatMessage;
|
|
20
|
-
error(message: string, error?: Error |
|
|
21
|
-
warn(message: string, data?:
|
|
22
|
-
info(message: string, data?:
|
|
23
|
-
debug(message: string, data?:
|
|
20
|
+
error(message: string, error?: Error | unknown): void;
|
|
21
|
+
warn(message: string, data?: unknown): void;
|
|
22
|
+
info(message: string, data?: unknown): void;
|
|
23
|
+
debug(message: string, data?: unknown): void;
|
|
24
24
|
/**
|
|
25
25
|
* Create a child logger with additional prefix
|
|
26
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,QAAQ;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,QAAQ;IAClB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,YAAiB;IAKrC,QAAQ,CAAC,OAAO,EAAE,OAAO;IAIzB,OAAO,CAAC,aAAa;IAerB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO;IAc9C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAMpC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAMpC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAMrC;;OAEG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;CAMnC"}
|
package/dist/src/utils/logger.js
CHANGED
|
@@ -13,7 +13,7 @@ class Logger {
|
|
|
13
13
|
prefix;
|
|
14
14
|
constructor(config = {}) {
|
|
15
15
|
this.debugEnabled = config.debug ?? false;
|
|
16
|
-
this.prefix = config.prefix ??
|
|
16
|
+
this.prefix = config.prefix ?? "[PostHog Agent]";
|
|
17
17
|
}
|
|
18
18
|
setDebug(enabled) {
|
|
19
19
|
this.debugEnabled = enabled;
|
|
@@ -29,28 +29,28 @@ class Logger {
|
|
|
29
29
|
error(message, error) {
|
|
30
30
|
// Always log errors
|
|
31
31
|
if (error instanceof Error) {
|
|
32
|
-
console.error(this.formatMessage(
|
|
32
|
+
console.error(this.formatMessage("[ERROR]", message, {
|
|
33
33
|
message: error.message,
|
|
34
|
-
stack: error.stack
|
|
34
|
+
stack: error.stack,
|
|
35
35
|
}));
|
|
36
36
|
}
|
|
37
37
|
else {
|
|
38
|
-
console.error(this.formatMessage(
|
|
38
|
+
console.error(this.formatMessage("[ERROR]", message, error));
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
warn(message, data) {
|
|
42
42
|
if (this.debugEnabled) {
|
|
43
|
-
console.warn(this.formatMessage(
|
|
43
|
+
console.warn(this.formatMessage("[WARN]", message, data));
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
info(message, data) {
|
|
47
47
|
if (this.debugEnabled) {
|
|
48
|
-
console.log(this.formatMessage(
|
|
48
|
+
console.log(this.formatMessage("[INFO]", message, data));
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
debug(message, data) {
|
|
52
52
|
if (this.debugEnabled) {
|
|
53
|
-
console.log(this.formatMessage(
|
|
53
|
+
console.log(this.formatMessage("[DEBUG]", message, data));
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
@@ -59,7 +59,7 @@ class Logger {
|
|
|
59
59
|
child(childPrefix) {
|
|
60
60
|
return new Logger({
|
|
61
61
|
debug: this.debugEnabled,
|
|
62
|
-
prefix: `${this.prefix} [${childPrefix}]
|
|
62
|
+
prefix: `${this.prefix} [${childPrefix}]`,
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sources":["../../../src/utils/logger.ts"],"sourcesContent":["/**\n * Simple logger utility with configurable debug mode\n */\nexport enum LogLevel {\n
|
|
1
|
+
{"version":3,"file":"logger.js","sources":["../../../src/utils/logger.ts"],"sourcesContent":["/**\n * Simple logger utility with configurable debug mode\n */\nexport enum LogLevel {\n ERROR = 0,\n WARN = 1,\n INFO = 2,\n DEBUG = 3,\n}\n\nexport interface LoggerConfig {\n debug?: boolean;\n prefix?: string;\n}\n\nexport class Logger {\n private debugEnabled: boolean;\n private prefix: string;\n\n constructor(config: LoggerConfig = {}) {\n this.debugEnabled = config.debug ?? false;\n this.prefix = config.prefix ?? \"[PostHog Agent]\";\n }\n\n setDebug(enabled: boolean) {\n this.debugEnabled = enabled;\n }\n\n private formatMessage(\n level: string,\n message: string,\n data?: unknown,\n ): string {\n const timestamp = new Date().toISOString();\n const base = `${timestamp} ${this.prefix} ${level} ${message}`;\n\n if (data !== undefined) {\n return `${base} ${JSON.stringify(data, null, 2)}`;\n }\n\n return base;\n }\n\n error(message: string, error?: Error | unknown) {\n // Always log errors\n if (error instanceof Error) {\n console.error(\n this.formatMessage(\"[ERROR]\", message, {\n message: error.message,\n stack: error.stack,\n }),\n );\n } else {\n console.error(this.formatMessage(\"[ERROR]\", message, error));\n }\n }\n\n warn(message: string, data?: unknown) {\n if (this.debugEnabled) {\n console.warn(this.formatMessage(\"[WARN]\", message, data));\n }\n }\n\n info(message: string, data?: unknown) {\n if (this.debugEnabled) {\n console.log(this.formatMessage(\"[INFO]\", message, data));\n }\n }\n\n debug(message: string, data?: unknown) {\n if (this.debugEnabled) {\n console.log(this.formatMessage(\"[DEBUG]\", message, data));\n }\n }\n\n /**\n * Create a child logger with additional prefix\n */\n child(childPrefix: string): Logger {\n return new Logger({\n debug: this.debugEnabled,\n prefix: `${this.prefix} [${childPrefix}]`,\n });\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/workflow/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/workflow/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAOrD,eAAO,MAAM,aAAa,EAAE,kBAyC3B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { researchStep } from './steps/research.js';
|
|
2
|
-
import { planStep } from './steps/plan.js';
|
|
3
1
|
import { buildStep } from './steps/build.js';
|
|
4
2
|
import { finalizeStep } from './steps/finalize.js';
|
|
3
|
+
import { planStep } from './steps/plan.js';
|
|
4
|
+
import { researchStep } from './steps/research.js';
|
|
5
5
|
|
|
6
6
|
const MODELS = {
|
|
7
7
|
SONNET: "claude-sonnet-4-5",
|
|
@@ -9,41 +9,41 @@ const MODELS = {
|
|
|
9
9
|
};
|
|
10
10
|
const TASK_WORKFLOW = [
|
|
11
11
|
{
|
|
12
|
-
id:
|
|
13
|
-
name:
|
|
14
|
-
agent:
|
|
12
|
+
id: "research",
|
|
13
|
+
name: "Research",
|
|
14
|
+
agent: "research",
|
|
15
15
|
model: MODELS.HAIKU,
|
|
16
|
-
permissionMode:
|
|
16
|
+
permissionMode: "plan",
|
|
17
17
|
commit: true,
|
|
18
18
|
push: true,
|
|
19
19
|
run: researchStep,
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
|
-
id:
|
|
23
|
-
name:
|
|
24
|
-
agent:
|
|
22
|
+
id: "plan",
|
|
23
|
+
name: "Plan",
|
|
24
|
+
agent: "planning",
|
|
25
25
|
model: MODELS.SONNET,
|
|
26
|
-
permissionMode:
|
|
26
|
+
permissionMode: "plan",
|
|
27
27
|
commit: true,
|
|
28
28
|
push: true,
|
|
29
29
|
run: planStep,
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
|
-
id:
|
|
33
|
-
name:
|
|
34
|
-
agent:
|
|
32
|
+
id: "build",
|
|
33
|
+
name: "Build",
|
|
34
|
+
agent: "execution",
|
|
35
35
|
model: MODELS.SONNET,
|
|
36
|
-
permissionMode:
|
|
36
|
+
permissionMode: "acceptEdits",
|
|
37
37
|
commit: true,
|
|
38
38
|
push: true,
|
|
39
39
|
run: buildStep,
|
|
40
40
|
},
|
|
41
41
|
{
|
|
42
|
-
id:
|
|
43
|
-
name:
|
|
44
|
-
agent:
|
|
42
|
+
id: "finalize",
|
|
43
|
+
name: "Finalize",
|
|
44
|
+
agent: "system", // not used
|
|
45
45
|
model: MODELS.HAIKU, // not used
|
|
46
|
-
permissionMode:
|
|
46
|
+
permissionMode: "plan", // not used
|
|
47
47
|
commit: true,
|
|
48
48
|
push: true,
|
|
49
49
|
run: finalizeStep,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sources":["../../../src/workflow/config.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"config.js","sources":["../../../src/workflow/config.ts"],"sourcesContent":["import { buildStep } from \"./steps/build.js\";\nimport { finalizeStep } from \"./steps/finalize.js\";\nimport { planStep } from \"./steps/plan.js\";\nimport { researchStep } from \"./steps/research.js\";\nimport type { WorkflowDefinition } from \"./types.js\";\n\nconst MODELS = {\n SONNET: \"claude-sonnet-4-5\",\n HAIKU: \"claude-haiku-4-5\",\n};\n\nexport const TASK_WORKFLOW: WorkflowDefinition = [\n {\n id: \"research\",\n name: \"Research\",\n agent: \"research\",\n model: MODELS.HAIKU,\n permissionMode: \"plan\",\n commit: true,\n push: true,\n run: researchStep,\n },\n {\n id: \"plan\",\n name: \"Plan\",\n agent: \"planning\",\n model: MODELS.SONNET,\n permissionMode: \"plan\",\n commit: true,\n push: true,\n run: planStep,\n },\n {\n id: \"build\",\n name: \"Build\",\n agent: \"execution\",\n model: MODELS.SONNET,\n permissionMode: \"acceptEdits\",\n commit: true,\n push: true,\n run: buildStep,\n },\n {\n id: \"finalize\",\n name: \"Finalize\",\n agent: \"system\", // not used\n model: MODELS.HAIKU, // not used\n permissionMode: \"plan\", // not used\n commit: true,\n push: true,\n run: finalizeStep,\n },\n];\n"],"names":[],"mappings":";;;;;AAMA,MAAM,MAAM,GAAG;AACb,IAAA,MAAM,EAAE,mBAAmB;AAC3B,IAAA,KAAK,EAAE,kBAAkB;CAC1B;AAEM,MAAM,aAAa,GAAuB;AAC/C,IAAA;AACE,QAAA,EAAE,EAAE,UAAU;AACd,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,MAAM,CAAC,KAAK;AACnB,QAAA,cAAc,EAAE,MAAM;AACtB,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,GAAG,EAAE,YAAY;AAClB,KAAA;AACD,IAAA;AACE,QAAA,EAAE,EAAE,MAAM;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,MAAM,CAAC,MAAM;AACpB,QAAA,cAAc,EAAE,MAAM;AACtB,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,GAAG,EAAE,QAAQ;AACd,KAAA;AACD,IAAA;AACE,QAAA,EAAE,EAAE,OAAO;AACX,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,MAAM,CAAC,MAAM;AACpB,QAAA,cAAc,EAAE,aAAa;AAC7B,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,GAAG,EAAE,SAAS;AACf,KAAA;AACD,IAAA;AACE,QAAA,EAAE,EAAE,UAAU;AACd,QAAA,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,QAAQ;AACf,QAAA,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,cAAc,EAAE,MAAM;AACtB,QAAA,MAAM,EAAE,IAAI;AACZ,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,GAAG,EAAE,YAAY;AAClB,KAAA;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../src/workflow/steps/build.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../src/workflow/steps/build.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,eAAO,MAAM,SAAS,EAAE,kBA2HvB,CAAC"}
|