@action-llama/action-llama 0.13.7 → 0.15.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/agent-docs/AGENTS.md +123 -207
- package/dist/agents/container-entry.d.ts +1 -3
- package/dist/agents/container-entry.d.ts.map +1 -1
- package/dist/agents/container-entry.js +208 -154
- package/dist/agents/container-entry.js.map +1 -1
- package/dist/agents/container-runner.d.ts.map +1 -1
- package/dist/agents/container-runner.js +19 -8
- package/dist/agents/container-runner.js.map +1 -1
- package/dist/agents/context-injection.d.ts +7 -0
- package/dist/agents/context-injection.d.ts.map +1 -0
- package/dist/agents/context-injection.js +27 -0
- package/dist/agents/context-injection.js.map +1 -0
- package/dist/agents/execution-engine.d.ts.map +1 -1
- package/dist/agents/execution-engine.js +99 -109
- package/dist/agents/execution-engine.js.map +1 -1
- package/dist/agents/feedback-monitor.d.ts +56 -0
- package/dist/agents/feedback-monitor.d.ts.map +1 -0
- package/dist/agents/feedback-monitor.js +176 -0
- package/dist/agents/feedback-monitor.js.map +1 -0
- package/dist/agents/feedback-runner.d.ts +28 -0
- package/dist/agents/feedback-runner.d.ts.map +1 -0
- package/dist/agents/feedback-runner.js +138 -0
- package/dist/agents/feedback-runner.js.map +1 -0
- package/dist/agents/model-fallback.d.ts +18 -0
- package/dist/agents/model-fallback.d.ts.map +1 -0
- package/dist/agents/model-fallback.js +40 -0
- package/dist/agents/model-fallback.js.map +1 -0
- package/dist/agents/prompt.d.ts +9 -2
- package/dist/agents/prompt.d.ts.map +1 -1
- package/dist/agents/prompt.js +21 -49
- package/dist/agents/prompt.js.map +1 -1
- package/dist/agents/runner.d.ts +6 -0
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +153 -124
- package/dist/agents/runner.js.map +1 -1
- package/dist/agents/session-factory.d.ts +13 -0
- package/dist/agents/session-factory.d.ts.map +1 -0
- package/dist/agents/session-factory.js +27 -0
- package/dist/agents/session-factory.js.map +1 -0
- package/dist/build-info.json +1 -1
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +89 -23
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/chat.d.ts.map +1 -1
- package/dist/cli/commands/chat.js +26 -43
- package/dist/cli/commands/chat.js.map +1 -1
- package/dist/cli/commands/claude.d.ts +4 -0
- package/dist/cli/commands/claude.d.ts.map +1 -0
- package/dist/cli/commands/claude.js +8 -0
- package/dist/cli/commands/claude.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +24 -6
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/mcp.d.ts +8 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +31 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/new.d.ts.map +1 -1
- package/dist/cli/commands/new.js +15 -6
- package/dist/cli/commands/new.js.map +1 -1
- package/dist/cli/commands/run.js +1 -1
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/start.js +3 -3
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/stats.d.ts +9 -0
- package/dist/cli/commands/stats.d.ts.map +1 -0
- package/dist/cli/commands/stats.js +149 -0
- package/dist/cli/commands/stats.js.map +1 -0
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +3 -0
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/main.js +50 -3
- package/dist/cli/main.js.map +1 -1
- package/dist/gateway/index.d.ts +3 -0
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +7 -1
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/lock-store.d.ts +10 -0
- package/dist/gateway/lock-store.d.ts.map +1 -1
- package/dist/gateway/lock-store.js +38 -0
- package/dist/gateway/lock-store.js.map +1 -1
- package/dist/gateway/routes/control.d.ts +2 -0
- package/dist/gateway/routes/control.d.ts.map +1 -1
- package/dist/gateway/routes/control.js +56 -0
- package/dist/gateway/routes/control.js.map +1 -1
- package/dist/gateway/routes/dashboard.d.ts +2 -1
- package/dist/gateway/routes/dashboard.d.ts.map +1 -1
- package/dist/gateway/routes/dashboard.js +112 -6
- package/dist/gateway/routes/dashboard.js.map +1 -1
- package/dist/gateway/routes/locks.d.ts.map +1 -1
- package/dist/gateway/routes/locks.js +39 -0
- package/dist/gateway/routes/locks.js.map +1 -1
- package/dist/gateway/routes/logs.d.ts.map +1 -1
- package/dist/gateway/routes/logs.js +4 -5
- package/dist/gateway/routes/logs.js.map +1 -1
- package/dist/gateway/routes/stats.d.ts +4 -0
- package/dist/gateway/routes/stats.d.ts.map +1 -0
- package/dist/gateway/routes/stats.js +25 -0
- package/dist/gateway/routes/stats.js.map +1 -0
- package/dist/gateway/views/agent-detail-page.d.ts +14 -0
- package/dist/gateway/views/agent-detail-page.d.ts.map +1 -0
- package/dist/gateway/views/agent-detail-page.js +416 -0
- package/dist/gateway/views/agent-detail-page.js.map +1 -0
- package/dist/gateway/views/dashboard-page.d.ts.map +1 -1
- package/dist/gateway/views/dashboard-page.js +213 -245
- package/dist/gateway/views/dashboard-page.js.map +1 -1
- package/dist/gateway/views/instance-detail-page.d.ts +30 -0
- package/dist/gateway/views/instance-detail-page.d.ts.map +1 -0
- package/dist/gateway/views/instance-detail-page.js +360 -0
- package/dist/gateway/views/instance-detail-page.js.map +1 -0
- package/dist/gateway/views/layout.d.ts +17 -0
- package/dist/gateway/views/layout.d.ts.map +1 -0
- package/dist/gateway/views/layout.js +153 -0
- package/dist/gateway/views/layout.js.map +1 -0
- package/dist/gateway/views/login-page.d.ts.map +1 -1
- package/dist/gateway/views/login-page.js +24 -37
- package/dist/gateway/views/login-page.js.map +1 -1
- package/dist/gateway/views/project-config-page.d.ts +12 -0
- package/dist/gateway/views/project-config-page.d.ts.map +1 -0
- package/dist/gateway/views/project-config-page.js +199 -0
- package/dist/gateway/views/project-config-page.js.map +1 -0
- package/dist/hooks/runner.d.ts +12 -0
- package/dist/hooks/runner.d.ts.map +1 -0
- package/dist/hooks/runner.js +32 -0
- package/dist/hooks/runner.js.map +1 -0
- package/dist/mcp/server.d.ts +5 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +336 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/scheduler/call-dispatcher.d.ts +2 -2
- package/dist/scheduler/call-dispatcher.js +3 -3
- package/dist/scheduler/call-dispatcher.js.map +1 -1
- package/dist/scheduler/execution.d.ts +5 -2
- package/dist/scheduler/execution.d.ts.map +1 -1
- package/dist/scheduler/execution.js +75 -4
- package/dist/scheduler/execution.js.map +1 -1
- package/dist/scheduler/gateway-setup.d.ts +2 -0
- package/dist/scheduler/gateway-setup.d.ts.map +1 -1
- package/dist/scheduler/gateway-setup.js +21 -2
- package/dist/scheduler/gateway-setup.js.map +1 -1
- package/dist/scheduler/image-builder.js +3 -3
- package/dist/scheduler/image-builder.js.map +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +90 -3
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/shutdown.d.ts +2 -0
- package/dist/scheduler/shutdown.d.ts.map +1 -1
- package/dist/scheduler/shutdown.js +4 -1
- package/dist/scheduler/shutdown.js.map +1 -1
- package/dist/scheduler/validation.d.ts.map +1 -1
- package/dist/scheduler/validation.js +5 -3
- package/dist/scheduler/validation.js.map +1 -1
- package/dist/scheduler/watcher.d.ts +1 -1
- package/dist/scheduler/watcher.js +1 -1
- package/dist/scheduler/webhook-setup.d.ts +2 -0
- package/dist/scheduler/webhook-setup.d.ts.map +1 -1
- package/dist/scheduler/webhook-setup.js +2 -0
- package/dist/scheduler/webhook-setup.js.map +1 -1
- package/dist/setup/prompts.d.ts.map +1 -1
- package/dist/setup/prompts.js +35 -6
- package/dist/setup/prompts.js.map +1 -1
- package/dist/setup/scaffold.d.ts +6 -0
- package/dist/setup/scaffold.d.ts.map +1 -1
- package/dist/setup/scaffold.js +185 -7
- package/dist/setup/scaffold.js.map +1 -1
- package/dist/shared/config.d.ts +42 -5
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +126 -20
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/credential-refs.d.ts.map +1 -1
- package/dist/shared/credential-refs.js +8 -0
- package/dist/shared/credential-refs.js.map +1 -1
- package/dist/shared/default-feedback-agent.d.ts +10 -0
- package/dist/shared/default-feedback-agent.d.ts.map +1 -0
- package/dist/shared/default-feedback-agent.js +114 -0
- package/dist/shared/default-feedback-agent.js.map +1 -0
- package/dist/shared/environment.d.ts +0 -1
- package/dist/shared/environment.d.ts.map +1 -1
- package/dist/shared/environment.js +19 -3
- package/dist/shared/environment.js.map +1 -1
- package/dist/shared/frontmatter.d.ts +11 -0
- package/dist/shared/frontmatter.d.ts.map +1 -0
- package/dist/shared/frontmatter.js +30 -0
- package/dist/shared/frontmatter.js.map +1 -0
- package/dist/shared/paths.d.ts +1 -0
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +3 -0
- package/dist/shared/paths.js.map +1 -1
- package/dist/shared/usage.d.ts.map +1 -1
- package/dist/shared/usage.js +52 -7
- package/dist/shared/usage.js.map +1 -1
- package/dist/stats/index.d.ts +3 -0
- package/dist/stats/index.d.ts.map +1 -0
- package/dist/stats/index.js +2 -0
- package/dist/stats/index.js.map +1 -0
- package/dist/stats/store.d.ts +89 -0
- package/dist/stats/store.d.ts.map +1 -0
- package/dist/stats/store.js +242 -0
- package/dist/stats/store.js.map +1 -0
- package/dist/tui/App.d.ts +2 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +132 -5
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/render.d.ts +1 -1
- package/dist/tui/render.d.ts.map +1 -1
- package/dist/tui/render.js +2 -2
- package/dist/tui/render.js.map +1 -1
- package/dist/tui/status-tracker.d.ts +18 -1
- package/dist/tui/status-tracker.d.ts.map +1 -1
- package/dist/tui/status-tracker.js +32 -1
- package/dist/tui/status-tracker.js.map +1 -1
- package/docker/bin/{al-call → al-subagent} +2 -2
- package/docker/bin/{al-check → al-subagent-check} +2 -2
- package/docker/bin/{al-wait → al-subagent-wait} +2 -2
- package/package.json +8 -21
- package/LICENSE +0 -21
- package/README.md +0 -192
- package/dist/gateway/views/logs-page.d.ts +0 -2
- package/dist/gateway/views/logs-page.d.ts.map +0 -1
- package/dist/gateway/views/logs-page.js +0 -280
- package/dist/gateway/views/logs-page.js.map +0 -1
- package/dist/preflight/interpolate.d.ts +0 -10
- package/dist/preflight/interpolate.d.ts.map +0 -1
- package/dist/preflight/interpolate.js +0 -33
- package/dist/preflight/interpolate.js.map +0 -1
- package/dist/preflight/providers/git-clone.d.ts +0 -3
- package/dist/preflight/providers/git-clone.d.ts.map +0 -1
- package/dist/preflight/providers/git-clone.js +0 -36
- package/dist/preflight/providers/git-clone.js.map +0 -1
- package/dist/preflight/providers/http.d.ts +0 -3
- package/dist/preflight/providers/http.d.ts.map +0 -1
- package/dist/preflight/providers/http.js +0 -36
- package/dist/preflight/providers/http.js.map +0 -1
- package/dist/preflight/providers/shell.d.ts +0 -3
- package/dist/preflight/providers/shell.d.ts.map +0 -1
- package/dist/preflight/providers/shell.js +0 -28
- package/dist/preflight/providers/shell.js.map +0 -1
- package/dist/preflight/registry.d.ts +0 -4
- package/dist/preflight/registry.d.ts.map +0 -1
- package/dist/preflight/registry.js +0 -20
- package/dist/preflight/registry.js.map +0 -1
- package/dist/preflight/runner.d.ts +0 -7
- package/dist/preflight/runner.d.ts.map +0 -1
- package/dist/preflight/runner.js +0 -28
- package/dist/preflight/runner.js.map +0 -1
- package/dist/preflight/schema.d.ts +0 -21
- package/dist/preflight/schema.d.ts.map +0 -1
- package/dist/preflight/schema.js +0 -9
- package/dist/preflight/schema.js.map +0 -1
package/dist/agents/runner.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { AuthStorage, createAgentSession, DefaultResourceLoader, SessionManager, SettingsManager, createCodingTools, } from "@mariozechner/pi-coding-agent";
|
|
1
|
+
import { DefaultResourceLoader, SettingsManager, } from "@mariozechner/pi-coding-agent";
|
|
3
2
|
import { readFileSync, existsSync, mkdtempSync, rmSync } from "fs";
|
|
4
3
|
import { randomBytes } from "crypto";
|
|
5
4
|
import { resolve, join } from "path";
|
|
@@ -9,10 +8,12 @@ import { agentDir } from "../shared/paths.js";
|
|
|
9
8
|
import { getExitCodeMessage } from "../shared/exit-codes.js";
|
|
10
9
|
import { AgentError, isUnrecoverableError, UNRECOVERABLE_THRESHOLD } from "../shared/errors.js";
|
|
11
10
|
import { installSignalCommands, readSignals } from "./signals.js";
|
|
12
|
-
import {
|
|
11
|
+
import { runHooks } from "../hooks/runner.js";
|
|
13
12
|
import { withSpan } from "../telemetry/index.js";
|
|
14
13
|
import { SpanKind } from "@opentelemetry/api";
|
|
15
14
|
import { sessionStatsToUsage } from "../shared/usage.js";
|
|
15
|
+
import { circuitBreaker, selectAvailableModels, isRateLimitError } from "./model-fallback.js";
|
|
16
|
+
import { createSessionForModel } from "./session-factory.js";
|
|
16
17
|
export class AgentRunner {
|
|
17
18
|
running = false;
|
|
18
19
|
agentConfig;
|
|
@@ -38,6 +39,14 @@ export class AgentRunner {
|
|
|
38
39
|
this.logger.info("Agent runner abort requested");
|
|
39
40
|
this.abortController.abort();
|
|
40
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Trigger feedback monitoring if enabled (to be overridden by scheduler)
|
|
44
|
+
*/
|
|
45
|
+
triggerFeedbackIfEnabled(err) {
|
|
46
|
+
// This is a placeholder - the actual feedback triggering will be handled
|
|
47
|
+
// by the scheduler when it integrates the feedback monitor
|
|
48
|
+
this.logger.debug({ error: err.message }, "Error logged for potential feedback processing");
|
|
49
|
+
}
|
|
41
50
|
async run(prompt, triggerInfo) {
|
|
42
51
|
if (this.running) {
|
|
43
52
|
this.logger.warn(`${this.agentConfig.name} is already running, skipping`);
|
|
@@ -54,14 +63,21 @@ export class AgentRunner {
|
|
|
54
63
|
: triggerInfo.type)
|
|
55
64
|
: undefined;
|
|
56
65
|
this.statusTracker?.startRun(this.agentConfig.name, runReason);
|
|
66
|
+
this.statusTracker?.registerInstance({
|
|
67
|
+
id: this.instanceId,
|
|
68
|
+
agentName: this.agentConfig.name,
|
|
69
|
+
status: "running",
|
|
70
|
+
startedAt: new Date(),
|
|
71
|
+
trigger: triggerInfo?.source ? `${triggerInfo.type}:${triggerInfo.source}` : (triggerInfo?.type ?? "manual"),
|
|
72
|
+
});
|
|
57
73
|
return await withSpan("agent.run", async (span) => {
|
|
58
74
|
span.setAttributes({
|
|
59
75
|
"agent.name": this.agentConfig.name,
|
|
60
76
|
"agent.run_id": this.instanceId,
|
|
61
77
|
"agent.trigger_type": triggerInfo?.type || "manual",
|
|
62
78
|
"agent.trigger_source": triggerInfo?.source || "",
|
|
63
|
-
"agent.model_provider": this.agentConfig.
|
|
64
|
-
"agent.model_name": this.agentConfig.
|
|
79
|
+
"agent.model_provider": this.agentConfig.models[0]?.provider,
|
|
80
|
+
"agent.model_name": this.agentConfig.models[0]?.model,
|
|
65
81
|
"execution.environment": "host",
|
|
66
82
|
});
|
|
67
83
|
return this._runInternal(prompt, triggerInfo, span);
|
|
@@ -82,6 +98,8 @@ export class AgentRunner {
|
|
|
82
98
|
const runStartTime = Date.now();
|
|
83
99
|
let runError;
|
|
84
100
|
let usage;
|
|
101
|
+
let preHookMs;
|
|
102
|
+
let postHookMs;
|
|
85
103
|
// Declared outside try so the finally block can restore them.
|
|
86
104
|
const GIT_ENV_KEYS = [
|
|
87
105
|
"GIT_AUTHOR_NAME",
|
|
@@ -103,27 +121,7 @@ export class AgentRunner {
|
|
|
103
121
|
process.env.AL_SIGNAL_DIR = signalDir;
|
|
104
122
|
try {
|
|
105
123
|
const cwd = agentDir(this.projectPath, this.agentConfig.name);
|
|
106
|
-
const agentsFile = resolve(cwd, "
|
|
107
|
-
const { model } = this.agentConfig;
|
|
108
|
-
const llmModel = getModel(model.provider, model.model);
|
|
109
|
-
const authStorage = AuthStorage.create();
|
|
110
|
-
if (model.authType !== "pi_auth") {
|
|
111
|
-
// Try to load API key using provider-specific credential type
|
|
112
|
-
const credentialType = `${model.provider}_key`;
|
|
113
|
-
try {
|
|
114
|
-
const credential = await loadCredentialField(credentialType, "default", "token");
|
|
115
|
-
if (credential) {
|
|
116
|
-
authStorage.setRuntimeApiKey(model.provider, credential);
|
|
117
|
-
this.logger.debug(`Loaded ${credentialType} credential for ${model.provider}`);
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
120
|
-
this.logger.warn(`${credentialType} credential not found — agent may fail to authenticate. Run 'al doctor' to configure it.`);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
catch (err) {
|
|
124
|
-
this.logger.warn(`Failed to load credential for provider ${model.provider}: ${credentialType} credential type may not be configured.`);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
124
|
+
const agentsFile = resolve(cwd, "SKILL.md");
|
|
127
125
|
// Set git author identity from git_ssh credential (scoped to this run)
|
|
128
126
|
const resolvedCreds = resolveAgentCredentials(this.agentConfig.credentials);
|
|
129
127
|
const gitSshCred = resolvedCreds.find((c) => c.type === "git_ssh");
|
|
@@ -139,9 +137,9 @@ export class AgentRunner {
|
|
|
139
137
|
process.env.GIT_COMMITTER_EMAIL = gitEmail;
|
|
140
138
|
}
|
|
141
139
|
}
|
|
142
|
-
// Run
|
|
143
|
-
if (this.agentConfig.
|
|
144
|
-
const
|
|
140
|
+
// Run pre hooks (data staging before LLM session)
|
|
141
|
+
if (this.agentConfig.hooks?.pre && this.agentConfig.hooks.pre.length > 0) {
|
|
142
|
+
const hookCtx = {
|
|
145
143
|
env: { ...process.env },
|
|
146
144
|
logger: (level, msg, data) => {
|
|
147
145
|
if (level === "error")
|
|
@@ -152,11 +150,12 @@ export class AgentRunner {
|
|
|
152
150
|
this.logger.info(data ?? {}, msg);
|
|
153
151
|
},
|
|
154
152
|
};
|
|
155
|
-
await
|
|
153
|
+
const preResult = await runHooks(this.agentConfig.hooks.pre, "pre", hookCtx);
|
|
154
|
+
preHookMs = preResult.durationMs;
|
|
156
155
|
}
|
|
157
|
-
//
|
|
156
|
+
// SKILL.md must exist on disk (written during al new)
|
|
158
157
|
if (!existsSync(agentsFile)) {
|
|
159
|
-
throw new AgentError(`
|
|
158
|
+
throw new AgentError(`SKILL.md not found at ${agentsFile}. Run 'al new' to create it.`);
|
|
160
159
|
}
|
|
161
160
|
const agentsContent = readFileSync(agentsFile, "utf-8");
|
|
162
161
|
const resourceLoader = new DefaultResourceLoader({
|
|
@@ -172,106 +171,130 @@ export class AgentRunner {
|
|
|
172
171
|
compaction: { enabled: true },
|
|
173
172
|
retry: { enabled: true, maxRetries: 2 },
|
|
174
173
|
});
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
authStorage,
|
|
180
|
-
resourceLoader,
|
|
181
|
-
tools: createCodingTools(cwd, {
|
|
182
|
-
bash: { commandPrefix: '[ -f /tmp/env.sh ] && source /tmp/env.sh' },
|
|
183
|
-
}),
|
|
184
|
-
sessionManager: SessionManager.inMemory(),
|
|
185
|
-
settingsManager,
|
|
186
|
-
});
|
|
187
|
-
// Subscribe to events for logging
|
|
188
|
-
// Track bash commands by toolCallId so we can correlate start→end
|
|
174
|
+
// Model fallback loop: try each available model, backoff only when all exhausted
|
|
175
|
+
const MAX_PASSES = 3;
|
|
176
|
+
const DEFAULT_BACKOFF_MS = 30_000;
|
|
177
|
+
const MAX_BACKOFF_MS = 300_000;
|
|
189
178
|
const pendingCmds = new Map();
|
|
190
179
|
let outputText = "";
|
|
191
180
|
let currentTurnText = "";
|
|
192
181
|
let unrecoverableErrors = 0;
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
try {
|
|
226
|
-
const parsed = JSON.parse(resultStr);
|
|
227
|
-
if (parsed?.content?.[0]?.text) {
|
|
228
|
-
errorMsg = parsed.content[0].text;
|
|
182
|
+
for (let pass = 0; pass <= MAX_PASSES; pass++) {
|
|
183
|
+
const availableModels = selectAvailableModels(this.agentConfig.models, circuitBreaker);
|
|
184
|
+
let modelSucceeded = false;
|
|
185
|
+
for (const modelConfig of availableModels) {
|
|
186
|
+
this.logger.info({ provider: modelConfig.provider, model: modelConfig.model }, "trying model");
|
|
187
|
+
const { session } = await createSessionForModel(modelConfig, {
|
|
188
|
+
cwd,
|
|
189
|
+
resourceLoader,
|
|
190
|
+
settingsManager,
|
|
191
|
+
loadCredential: loadCredentialField,
|
|
192
|
+
});
|
|
193
|
+
// Subscribe to events for logging
|
|
194
|
+
session.subscribe((event) => {
|
|
195
|
+
if (event.type === "message_update" && event.assistantMessageEvent?.type === "text_delta") {
|
|
196
|
+
const delta = event.assistantMessageEvent.delta;
|
|
197
|
+
outputText += delta;
|
|
198
|
+
currentTurnText += delta;
|
|
199
|
+
}
|
|
200
|
+
if (event.type === "message_end") {
|
|
201
|
+
if (currentTurnText.trim()) {
|
|
202
|
+
this.logger.info({ text: currentTurnText.trim() }, "assistant");
|
|
203
|
+
}
|
|
204
|
+
currentTurnText = "";
|
|
205
|
+
}
|
|
206
|
+
if (event.type === "tool_execution_start") {
|
|
207
|
+
const cmd = String(event.args?.command || "");
|
|
208
|
+
if (event.toolName === "bash") {
|
|
209
|
+
pendingCmds.set(event.toolCallId, cmd);
|
|
210
|
+
this.logger.info({ cmd: cmd.slice(0, 200) }, "bash");
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
this.logger.debug({ tool: event.toolName }, "tool start");
|
|
229
214
|
}
|
|
230
215
|
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
if (
|
|
238
|
-
this.logger.error(
|
|
239
|
-
|
|
240
|
-
|
|
216
|
+
if (event.type === "tool_execution_end") {
|
|
217
|
+
const resultStr = typeof event.result === "string"
|
|
218
|
+
? event.result
|
|
219
|
+
: JSON.stringify(event.result);
|
|
220
|
+
const originCmd = pendingCmds.get(event.toolCallId);
|
|
221
|
+
pendingCmds.delete(event.toolCallId);
|
|
222
|
+
if (event.isError) {
|
|
223
|
+
this.logger.error({ tool: event.toolName, result: resultStr.slice(0, 1000) }, "tool error");
|
|
224
|
+
let errorMsg = resultStr;
|
|
225
|
+
try {
|
|
226
|
+
const parsed = JSON.parse(resultStr);
|
|
227
|
+
if (parsed?.content?.[0]?.text) {
|
|
228
|
+
errorMsg = parsed.content[0].text;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
catch { /* use raw string */ }
|
|
232
|
+
const cmdPrefix = originCmd ? `$ ${originCmd.slice(0, 80)} — ` : "";
|
|
233
|
+
const detail = `${cmdPrefix}${errorMsg.slice(0, 200)}`;
|
|
234
|
+
this.statusTracker?.setAgentError(this.agentConfig.name, detail);
|
|
235
|
+
if (isUnrecoverableError(errorMsg)) {
|
|
236
|
+
unrecoverableErrors++;
|
|
237
|
+
if (unrecoverableErrors >= UNRECOVERABLE_THRESHOLD) {
|
|
238
|
+
this.logger.error("Aborting: repeated auth/permission failures — check credentials");
|
|
239
|
+
this.statusTracker?.addLogLine(this.agentConfig.name, "ABORT: repeated auth/permission failures — check credentials");
|
|
240
|
+
session.dispose();
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
this.logger.debug({ tool: event.toolName, resultLength: resultStr.length }, "tool done");
|
|
241
246
|
}
|
|
242
247
|
}
|
|
248
|
+
});
|
|
249
|
+
try {
|
|
250
|
+
await session.prompt(prompt);
|
|
251
|
+
circuitBreaker.recordSuccess(modelConfig.provider, modelConfig.model);
|
|
252
|
+
const sessionStats = session.getSessionStats();
|
|
253
|
+
this.logger.debug({ sessionStats, provider: modelConfig.provider }, "raw session stats");
|
|
254
|
+
usage = sessionStatsToUsage(sessionStats);
|
|
255
|
+
session.dispose();
|
|
256
|
+
modelSucceeded = true;
|
|
257
|
+
break;
|
|
243
258
|
}
|
|
244
|
-
|
|
245
|
-
|
|
259
|
+
catch (promptErr) {
|
|
260
|
+
const msg = String(promptErr?.message || promptErr || "");
|
|
261
|
+
if (isRateLimitError(msg)) {
|
|
262
|
+
circuitBreaker.recordFailure(modelConfig.provider, modelConfig.model);
|
|
263
|
+
this.logger.warn({ provider: modelConfig.provider, model: modelConfig.model }, "rate limited, trying next model");
|
|
264
|
+
this.statusTracker?.addLogLine(this.agentConfig.name, `Rate limited on ${modelConfig.model}, trying fallback...`);
|
|
265
|
+
session.dispose();
|
|
266
|
+
continue;
|
|
267
|
+
}
|
|
268
|
+
session.dispose();
|
|
269
|
+
throw promptErr;
|
|
246
270
|
}
|
|
247
271
|
}
|
|
248
|
-
|
|
249
|
-
// Prompt is now built by the scheduler (includes <agent-config> and optional <webhook-trigger>)
|
|
250
|
-
// Retry on rate limit errors with exponential backoff
|
|
251
|
-
const MAX_PROMPT_RETRIES = 5;
|
|
252
|
-
const DEFAULT_BACKOFF_MS = 30_000;
|
|
253
|
-
const MAX_BACKOFF_MS = 300_000;
|
|
254
|
-
for (let attempt = 0; attempt <= MAX_PROMPT_RETRIES; attempt++) {
|
|
255
|
-
try {
|
|
256
|
-
await session.prompt(prompt);
|
|
272
|
+
if (modelSucceeded)
|
|
257
273
|
break;
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
const
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
throw promptErr;
|
|
264
|
-
}
|
|
265
|
-
const delayMs = Math.min(DEFAULT_BACKOFF_MS * Math.pow(2, attempt), MAX_BACKOFF_MS);
|
|
266
|
-
this.logger.warn({ attempt: attempt + 1, delayMs }, "rate limited, retrying prompt");
|
|
267
|
-
this.statusTracker?.addLogLine(this.agentConfig.name, `Rate limited, retrying in ${Math.round(delayMs / 1000)}s...`);
|
|
274
|
+
// All models exhausted — backoff before next pass
|
|
275
|
+
if (pass < MAX_PASSES) {
|
|
276
|
+
const delayMs = Math.min(DEFAULT_BACKOFF_MS * Math.pow(2, pass), MAX_BACKOFF_MS);
|
|
277
|
+
this.logger.warn({ pass: pass + 1, delayMs }, "all models exhausted, backing off");
|
|
278
|
+
this.statusTracker?.addLogLine(this.agentConfig.name, `All models exhausted, retrying in ${Math.round(delayMs / 1000)}s...`);
|
|
268
279
|
await new Promise((r) => setTimeout(r, delayMs));
|
|
269
280
|
}
|
|
270
281
|
}
|
|
271
|
-
//
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
282
|
+
// Run post hooks (cleanup, notifications after LLM session)
|
|
283
|
+
if (this.agentConfig.hooks?.post && this.agentConfig.hooks.post.length > 0) {
|
|
284
|
+
const hookCtx = {
|
|
285
|
+
env: { ...process.env },
|
|
286
|
+
logger: (level, msg, data) => {
|
|
287
|
+
if (level === "error")
|
|
288
|
+
this.logger.error(data ?? {}, msg);
|
|
289
|
+
else if (level === "warn")
|
|
290
|
+
this.logger.warn(data ?? {}, msg);
|
|
291
|
+
else
|
|
292
|
+
this.logger.info(data ?? {}, msg);
|
|
293
|
+
},
|
|
294
|
+
};
|
|
295
|
+
const postResult = await runHooks(this.agentConfig.hooks.post, "post", hookCtx);
|
|
296
|
+
postHookMs = postResult.durationMs;
|
|
297
|
+
}
|
|
275
298
|
// Read signal files written by al-rerun, al-status, al-return, al-exit
|
|
276
299
|
const signals = readSignals(signalDir);
|
|
277
300
|
let result;
|
|
@@ -300,13 +323,13 @@ export class AgentRunner {
|
|
|
300
323
|
"execution.has_return_value": !!signals.returnValue,
|
|
301
324
|
"execution.unrecoverable_errors": unrecoverableErrors,
|
|
302
325
|
// OTel span attributes for token usage (following OpenTelemetry GenAI semantic conventions)
|
|
303
|
-
"llm.token.input": usage
|
|
304
|
-
"llm.token.output": usage
|
|
305
|
-
"llm.token.cache_read": usage
|
|
306
|
-
"llm.token.cache_write": usage
|
|
307
|
-
"llm.token.total": usage
|
|
308
|
-
"llm.cost.total": usage
|
|
309
|
-
"llm.turns": usage
|
|
326
|
+
"llm.token.input": usage?.inputTokens ?? 0,
|
|
327
|
+
"llm.token.output": usage?.outputTokens ?? 0,
|
|
328
|
+
"llm.token.cache_read": usage?.cacheReadTokens ?? 0,
|
|
329
|
+
"llm.token.cache_write": usage?.cacheWriteTokens ?? 0,
|
|
330
|
+
"llm.token.total": usage?.totalTokens ?? 0,
|
|
331
|
+
"llm.cost.total": usage?.cost ?? 0,
|
|
332
|
+
"llm.turns": usage?.turnCount ?? 0,
|
|
310
333
|
});
|
|
311
334
|
if (result === "error") {
|
|
312
335
|
parentSpan.recordException(new Error(`Agent execution failed: ${runError || "Unknown error"}`));
|
|
@@ -317,6 +340,8 @@ export class AgentRunner {
|
|
|
317
340
|
triggers: [],
|
|
318
341
|
returnValue: signals.returnValue,
|
|
319
342
|
usage,
|
|
343
|
+
preHookMs,
|
|
344
|
+
postHookMs,
|
|
320
345
|
...(signals.exitCode !== undefined && {
|
|
321
346
|
exitCode: signals.exitCode,
|
|
322
347
|
exitReason: getExitCodeMessage(signals.exitCode)
|
|
@@ -326,6 +351,8 @@ export class AgentRunner {
|
|
|
326
351
|
catch (err) {
|
|
327
352
|
this.logger.error({ err }, `${this.agentConfig.name} run failed`);
|
|
328
353
|
runError = String(err?.message || err).slice(0, 200);
|
|
354
|
+
// Trigger feedback monitoring if enabled
|
|
355
|
+
this.triggerFeedbackIfEnabled(err);
|
|
329
356
|
return { result: "error", triggers: [], usage: undefined };
|
|
330
357
|
}
|
|
331
358
|
finally {
|
|
@@ -349,6 +376,8 @@ export class AgentRunner {
|
|
|
349
376
|
}
|
|
350
377
|
catch { /* best-effort */ }
|
|
351
378
|
const elapsed = Date.now() - runStartTime;
|
|
379
|
+
const instanceStatus = runError ? "error" : "completed";
|
|
380
|
+
this.statusTracker?.completeInstance(this.instanceId, instanceStatus);
|
|
352
381
|
this.statusTracker?.endRun(this.agentConfig.name, elapsed, runError, usage);
|
|
353
382
|
this.running = false;
|
|
354
383
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AuthStorage } from "@mariozechner/pi-coding-agent";
|
|
2
|
+
import type { ModelConfig } from "../shared/config.js";
|
|
3
|
+
export interface SessionFactoryOpts {
|
|
4
|
+
cwd: string;
|
|
5
|
+
resourceLoader: any;
|
|
6
|
+
settingsManager: any;
|
|
7
|
+
loadCredential: (type: string, instance: string, field: string) => Promise<string | undefined>;
|
|
8
|
+
}
|
|
9
|
+
export declare function createSessionForModel(modelConfig: ModelConfig, opts: SessionFactoryOpts): Promise<{
|
|
10
|
+
session: import("@mariozechner/pi-coding-agent").AgentSession;
|
|
11
|
+
authStorage: AuthStorage;
|
|
12
|
+
}>;
|
|
13
|
+
//# sourceMappingURL=session-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-factory.d.ts","sourceRoot":"","sources":["../../src/agents/session-factory.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EAIZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,GAAG,CAAC;IACpB,eAAe,EAAE,GAAG,CAAC;IACrB,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAChG;AAED,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,kBAAkB;;;GA2BzB"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { getModel } from "@mariozechner/pi-ai";
|
|
2
|
+
import { AuthStorage, createAgentSession, createCodingTools, SessionManager, } from "@mariozechner/pi-coding-agent";
|
|
3
|
+
export async function createSessionForModel(modelConfig, opts) {
|
|
4
|
+
const llmModel = getModel(modelConfig.provider, modelConfig.model);
|
|
5
|
+
const authStorage = AuthStorage.create();
|
|
6
|
+
if (modelConfig.authType !== "pi_auth") {
|
|
7
|
+
const credentialType = `${modelConfig.provider}_key`;
|
|
8
|
+
const credential = await opts.loadCredential(credentialType, "default", "token");
|
|
9
|
+
if (credential) {
|
|
10
|
+
authStorage.setRuntimeApiKey(modelConfig.provider, credential);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
const { session } = await createAgentSession({
|
|
14
|
+
cwd: opts.cwd,
|
|
15
|
+
model: llmModel,
|
|
16
|
+
thinkingLevel: modelConfig.thinkingLevel,
|
|
17
|
+
authStorage,
|
|
18
|
+
resourceLoader: opts.resourceLoader,
|
|
19
|
+
tools: createCodingTools(opts.cwd, {
|
|
20
|
+
bash: { commandPrefix: '[ -f /tmp/env.sh ] && source /tmp/env.sh' },
|
|
21
|
+
}),
|
|
22
|
+
sessionManager: SessionManager.inMemory(),
|
|
23
|
+
settingsManager: opts.settingsManager,
|
|
24
|
+
});
|
|
25
|
+
return { session, authStorage };
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=session-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-factory.js","sourceRoot":"","sources":["../../src/agents/session-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,+BAA+B,CAAC;AAUvC,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,WAAwB,EACxB,IAAwB;IAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,QAAe,EAAE,WAAW,CAAC,KAAY,CAAC,CAAC;IAEjF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;IACzC,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,cAAc,GAAG,GAAG,WAAW,CAAC,QAAQ,MAAM,CAAC;QACrD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACjF,IAAI,UAAU,EAAE,CAAC;YACf,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB,CAAC;QAC3C,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,KAAK,EAAE,QAAQ;QACf,aAAa,EAAE,WAAW,CAAC,aAAa;QACxC,WAAW;QACX,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,KAAK,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE;YACjC,IAAI,EAAE,EAAE,aAAa,EAAE,0CAA0C,EAAE;SACpE,CAAC;QACF,cAAc,EAAE,cAAc,CAAC,QAAQ,EAAE;QACzC,eAAe,EAAE,IAAI,CAAC,eAAe;KACtC,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC"}
|
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"gitSha":"
|
|
1
|
+
{"gitSha":"3f70293a"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/agent.ts"],"names":[],"mappings":"AAuBA,wBAAsB,QAAQ,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DvE;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqFxF"}
|