@kkeve/suite 0.0.1 → 0.0.2
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/README.md +53 -0
- package/dist/bin/keve.d.ts +13 -0
- package/dist/bin/keve.js +164 -0
- package/dist/commands/auth-update.d.ts +16 -0
- package/dist/commands/auth-update.js +88 -0
- package/dist/commands/clean.d.ts +10 -0
- package/dist/commands/clean.js +78 -0
- package/dist/commands/config.d.ts +17 -0
- package/dist/commands/config.js +99 -0
- package/dist/commands/init.d.ts +15 -0
- package/dist/commands/init.js +292 -0
- package/dist/commands/report.d.ts +12 -0
- package/dist/commands/report.js +159 -0
- package/dist/commands/run.d.ts +29 -0
- package/dist/commands/run.js +417 -0
- package/dist/commands/test.d.ts +12 -0
- package/dist/commands/test.js +102 -0
- package/dist/commands/vitest.d.ts +14 -0
- package/dist/commands/vitest.js +166 -0
- package/dist/config.d.ts +109 -0
- package/dist/config.js +291 -0
- package/dist/core/action-log-writer.d.ts +47 -0
- package/dist/{tools/write-file.js → core/action-log-writer.js} +42 -26
- package/dist/core/auth.d.ts +17 -0
- package/dist/core/auth.js +224 -0
- package/dist/core/cdp-resolver.d.ts +5 -0
- package/dist/core/cdp-resolver.js +93 -0
- package/dist/core/generateReport/report.d.ts +19 -0
- package/dist/core/generateReport/report.js +91 -0
- package/dist/core/generateReport/reportData.d.ts +215 -0
- package/dist/core/generateReport/reportData.js +735 -0
- package/dist/core/global-setup.d.ts +6 -0
- package/dist/core/global-setup.js +113 -0
- package/dist/core/keve-aspect.d.ts +54 -0
- package/dist/core/keve-aspect.js +52 -0
- package/dist/core/keve-decorators.d.ts +51 -0
- package/dist/core/keve-decorators.js +95 -0
- package/dist/core/keve-registry.d.ts +38 -0
- package/dist/core/keve-registry.js +25 -0
- package/dist/core/keve-report.d.ts +27 -0
- package/dist/core/keve-report.js +357 -0
- package/dist/core/keve-test.d.ts +36 -0
- package/dist/core/keve-test.js +364 -0
- package/dist/core/learned-actions.d.ts +24 -0
- package/dist/core/learned-actions.js +65 -0
- package/dist/core/pw-config.d.ts +19 -0
- package/dist/core/pw-config.js +180 -0
- package/dist/index.d.ts +8 -23
- package/dist/index.js +36 -43
- package/dist/page-agent/agent.d.ts +129 -0
- package/dist/page-agent/agent.js +585 -0
- package/dist/page-agent/hooks.d.ts +13 -0
- package/dist/page-agent/hooks.js +218 -0
- package/dist/page-agent/tools.d.ts +29 -0
- package/dist/page-agent/tools.js +297 -0
- package/doc/README.md +124 -0
- package/doc/agents/keve-dev-test-agent.md +140 -0
- package/doc/agents/keve-test-agent.md +178 -0
- package/doc/asserts//346/265/213/350/257/225/345/220/204/351/230/266/346/256/265/350/257/264/346/230/216.png +0 -0
- package/doc/keve-agent-demo.html +370 -0
- package/doc/skills/keve-bddcase-gen/SKILL.md +332 -0
- package/doc/skills/keve-bddcase-gen/references/test-case-rules.md +91 -0
- package/doc/skills/keve-bddcase-gen/references/test-cases-example.md +103 -0
- package/doc/skills/keve-component-gen/SKILL.md +255 -0
- package/doc/skills/keve-component-gen/references/component-mock-strategy.md +74 -0
- package/doc/skills/keve-component-gen/references/component-model-template.md +98 -0
- package/doc/skills/keve-component-gen/references/component-test-template.md +100 -0
- package/doc/skills/keve-component-gen/references/vue-test-utils-guide.md +91 -0
- package/doc/skills/keve-e2e-gen/SKILL.md +179 -0
- package/doc/skills/keve-e2e-gen/references/code-analysis-guide.md +208 -0
- package/doc/skills/keve-e2e-gen/references/decisions.md +36 -0
- package/doc/skills/keve-e2e-gen/references/pom-generation-guide.md +140 -0
- package/doc/skills/keve-e2e-gen/references/script-generation-guide.md +236 -0
- package/doc/skills/keve-e2e-gen/references/test-auditor-guide.md +189 -0
- package/doc/skills/keve-e2e-gen/scripts/extract-components.sh +85 -0
- package/doc/skills/keve-e2e-gen/scripts/inject-testids.sh +95 -0
- package/doc/skills/keve-static-analysis/SKILL.md +362 -0
- package/doc/skills/keve-static-analysis/references/codegraph-analysis-guide.md +108 -0
- package/doc/skills/keve-static-analysis/references/git-impact-analysis.md +81 -0
- package/doc/skills/keve-static-analysis/references/lint-fix-guide.md +69 -0
- package/doc/skills/keve-static-analysis/references/runtime-risk-patterns.md +92 -0
- package/doc/skills/keve-static-analysis/references/security-scan-guide.md +32 -0
- package/doc/skills/keve-static-analysis/references/ts-error-patterns.md +98 -0
- package/doc/skills/keve-static-analysis/references/vue-security-guide.md +72 -0
- package/doc/skills/keve-test-eval/SKILL.md +78 -0
- package/doc/skills/keve-test-eval/references/common-fix-guide.md +166 -0
- package/doc/skills/keve-test-eval/references/confidence-data-guide.md +78 -0
- package/doc/skills/keve-test-eval/references/fix-loop-guide.md +67 -0
- package/doc/skills/keve-unit-gen/SKILL.md +203 -0
- package/doc/skills/keve-unit-gen/references/boundary-conditions.md +78 -0
- package/doc/skills/keve-unit-gen/references/unit-mock-strategy.md +71 -0
- package/doc/skills/keve-unit-gen/references/unit-test-template.md +105 -0
- package/package.json +47 -25
- package/dist/agent/factory.d.ts +0 -25
- package/dist/agent/factory.js +0 -99
- package/dist/agent/index.d.ts +0 -3
- package/dist/agent/index.js +0 -7
- package/dist/agent/loader.d.ts +0 -22
- package/dist/agent/loader.js +0 -117
- package/dist/agent/types.d.ts +0 -9
- package/dist/agent/types.js +0 -2
- package/dist/agent-loop/complete-task.d.ts +0 -28
- package/dist/agent-loop/complete-task.js +0 -70
- package/dist/agent-loop/index.d.ts +0 -16
- package/dist/agent-loop/index.js +0 -26
- package/dist/agent-loop/loop.d.ts +0 -42
- package/dist/agent-loop/loop.js +0 -282
- package/dist/agent-loop/runtime.d.ts +0 -40
- package/dist/agent-loop/runtime.js +0 -163
- package/dist/agent-loop/types.d.ts +0 -161
- package/dist/agent-loop/types.js +0 -105
- package/dist/context/index.d.ts +0 -8
- package/dist/context/index.js +0 -29
- package/dist/context/tokenCalculation.d.ts +0 -55
- package/dist/context/tokenCalculation.js +0 -95
- package/dist/context/truncation.d.ts +0 -67
- package/dist/context/truncation.js +0 -142
- package/dist/context/types.d.ts +0 -7
- package/dist/context/types.js +0 -27
- package/dist/llm/OpenAIClient.d.ts +0 -31
- package/dist/llm/OpenAIClient.js +0 -455
- package/dist/llm/constants.d.ts +0 -2
- package/dist/llm/constants.js +0 -6
- package/dist/llm/errors.d.ts +0 -25
- package/dist/llm/errors.js +0 -51
- package/dist/llm/index.d.ts +0 -49
- package/dist/llm/index.js +0 -158
- package/dist/llm/types.d.ts +0 -124
- package/dist/llm/types.js +0 -2
- package/dist/llm/utils.d.ts +0 -29
- package/dist/llm/utils.js +0 -284
- package/dist/skill/frontmatter-parser.d.ts +0 -50
- package/dist/skill/frontmatter-parser.js +0 -152
- package/dist/skill/index.d.ts +0 -12
- package/dist/skill/index.js +0 -17
- package/dist/skill/loader.d.ts +0 -96
- package/dist/skill/loader.js +0 -256
- package/dist/tools/ask-user.d.ts +0 -8
- package/dist/tools/ask-user.js +0 -47
- package/dist/tools/bash.d.ts +0 -47
- package/dist/tools/bash.js +0 -213
- package/dist/tools/edit-file.d.ts +0 -9
- package/dist/tools/edit-file.js +0 -76
- package/dist/tools/glob.d.ts +0 -8
- package/dist/tools/glob.js +0 -101
- package/dist/tools/grep.d.ts +0 -10
- package/dist/tools/grep.js +0 -76
- package/dist/tools/index.d.ts +0 -24
- package/dist/tools/index.js +0 -47
- package/dist/tools/read-files.d.ts +0 -8
- package/dist/tools/read-files.js +0 -81
- package/dist/tools/write-file.d.ts +0 -8
package/dist/index.d.ts
CHANGED
|
@@ -1,23 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
* - tools/ — Built-in tool library (bash, codegraph, git, keve-read-doc, etc.)
|
|
10
|
-
*/
|
|
11
|
-
export { LLM, InvokeError, InvokeErrorType } from './llm/index';
|
|
12
|
-
export type { ChatResult, ContentItem, InvokeOptions, InvokeResult, LLMClient, LLMConfig, Message, Tool, } from './llm/index';
|
|
13
|
-
export { estimateCharsFromTokens, truncateProportionally, normalizeFunctionResponse, estimateTokenCountSync, } from './context/index';
|
|
14
|
-
export type { TokenEstimationPart } from './context/index';
|
|
15
|
-
export { AgentLoop } from './agent-loop/index';
|
|
16
|
-
export type { AgentDefinition, AgentEvent, AgentEventCallback, AgentLoopContext, AgentResult, AgentTerminateMode, ToolDefinition, } from './agent-loop/index';
|
|
17
|
-
export { COMPLETE_TASK_TOOL_NAME, DEFAULT_MAX_TURNS, DEFAULT_MAX_TIME_MINUTES, createCompleteTaskTool, ToolRegistry, detectRuntimeEnvironment, } from './agent-loop/index';
|
|
18
|
-
export type { RuntimeEnvironment, ToolExecutionContext, CompleteTaskToolOptions } from './agent-loop/index';
|
|
19
|
-
export { AgentLoader, AgentFactory } from './agent/index';
|
|
20
|
-
export type { AgentRegistryDefinition } from './agent/index';
|
|
21
|
-
export { SkillLoader } from './skill/index';
|
|
22
|
-
export type { SkillDefinition } from './skill/index';
|
|
23
|
-
export { createDefaultToolRegistry, getBuiltinToolNames } from './tools/index';
|
|
1
|
+
export { generateReportData, type ReportDataOptions, parseCaseIdFromTitle, extractAllSpecs, buildCaseResultMap, parseYamlSimple } from './core/generateReport/reportData';
|
|
2
|
+
export { KevePageAgent, reactLoop, type AgentResult, type AgentStepEvent, type AgentEvent, type AgentOptions, type AgentHooks } from './page-agent/agent';
|
|
3
|
+
export { tools, packMacroToolSchema, type PageAgentTool, type MacroToolInput, type ToolContext } from './page-agent/tools';
|
|
4
|
+
export { keveAspect, KeveAspectRegistry, type AspectPhase, type AspectDefinition, type GoalContext, type GoalResult } from './core/keve-aspect';
|
|
5
|
+
export { ActionLogWriter, type ActionLogRecord } from './core/action-log-writer';
|
|
6
|
+
export { learnedActions, LearnedActions } from './core/learned-actions';
|
|
7
|
+
export { generatePwConfig, resolveConfigOutputPath, findExistingConfig, type PwConfigOptions } from './core/pw-config';
|
|
8
|
+
export { run, KeveRunError, type RunOptions, type RunResult } from './commands/run';
|
package/dist/index.js
CHANGED
|
@@ -1,45 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Core module — runtime infrastructure for the agent
|
|
4
|
-
*
|
|
5
|
-
* Layers:
|
|
6
|
-
* - llm/ — OpenAI-compatible LLM client (invoke + chat)
|
|
7
|
-
* - context/ — Token calculation + truncation (from gemini-cli)
|
|
8
|
-
* - agent-loop/ — Universal agent execution engine (while loop + LLM + tools)
|
|
9
|
-
* - skill/ — SKILL.md discovery, loading, and execution (Progressive Disclosure)
|
|
10
|
-
* - tools/ — Built-in tool library (bash, codegraph, git, keve-read-doc, etc.)
|
|
11
|
-
*/
|
|
12
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
Object.defineProperty(exports, "
|
|
17
|
-
Object.defineProperty(exports, "
|
|
18
|
-
Object.defineProperty(exports, "
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
Object.defineProperty(exports, "
|
|
23
|
-
Object.defineProperty(exports, "
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
Object.defineProperty(exports, "
|
|
30
|
-
Object.defineProperty(exports, "
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
Object.defineProperty(exports, "
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
Object.defineProperty(exports, "
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
Object.defineProperty(exports, "
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
Object.defineProperty(exports, "
|
|
3
|
+
exports.KeveRunError = exports.run = exports.findExistingConfig = exports.resolveConfigOutputPath = exports.generatePwConfig = exports.LearnedActions = exports.learnedActions = exports.ActionLogWriter = exports.KeveAspectRegistry = exports.keveAspect = exports.packMacroToolSchema = exports.tools = exports.reactLoop = exports.KevePageAgent = exports.parseYamlSimple = exports.buildCaseResultMap = exports.extractAllSpecs = exports.parseCaseIdFromTitle = exports.generateReportData = void 0;
|
|
4
|
+
var reportData_1 = require("./core/generateReport/reportData");
|
|
5
|
+
Object.defineProperty(exports, "generateReportData", { enumerable: true, get: function () { return reportData_1.generateReportData; } });
|
|
6
|
+
Object.defineProperty(exports, "parseCaseIdFromTitle", { enumerable: true, get: function () { return reportData_1.parseCaseIdFromTitle; } });
|
|
7
|
+
Object.defineProperty(exports, "extractAllSpecs", { enumerable: true, get: function () { return reportData_1.extractAllSpecs; } });
|
|
8
|
+
Object.defineProperty(exports, "buildCaseResultMap", { enumerable: true, get: function () { return reportData_1.buildCaseResultMap; } });
|
|
9
|
+
Object.defineProperty(exports, "parseYamlSimple", { enumerable: true, get: function () { return reportData_1.parseYamlSimple; } });
|
|
10
|
+
// Re-Act loop (refactored to page-agent)
|
|
11
|
+
var agent_1 = require("./page-agent/agent");
|
|
12
|
+
Object.defineProperty(exports, "KevePageAgent", { enumerable: true, get: function () { return agent_1.KevePageAgent; } });
|
|
13
|
+
Object.defineProperty(exports, "reactLoop", { enumerable: true, get: function () { return agent_1.reactLoop; } });
|
|
14
|
+
var tools_1 = require("./page-agent/tools");
|
|
15
|
+
Object.defineProperty(exports, "tools", { enumerable: true, get: function () { return tools_1.tools; } });
|
|
16
|
+
Object.defineProperty(exports, "packMacroToolSchema", { enumerable: true, get: function () { return tools_1.packMacroToolSchema; } });
|
|
17
|
+
// Aspect registry (new)
|
|
18
|
+
var keve_aspect_1 = require("./core/keve-aspect");
|
|
19
|
+
Object.defineProperty(exports, "keveAspect", { enumerable: true, get: function () { return keve_aspect_1.keveAspect; } });
|
|
20
|
+
Object.defineProperty(exports, "KeveAspectRegistry", { enumerable: true, get: function () { return keve_aspect_1.KeveAspectRegistry; } });
|
|
21
|
+
// Action log (new)
|
|
22
|
+
var action_log_writer_1 = require("./core/action-log-writer");
|
|
23
|
+
Object.defineProperty(exports, "ActionLogWriter", { enumerable: true, get: function () { return action_log_writer_1.ActionLogWriter; } });
|
|
24
|
+
// Learned actions (new)
|
|
25
|
+
var learned_actions_1 = require("./core/learned-actions");
|
|
26
|
+
Object.defineProperty(exports, "learnedActions", { enumerable: true, get: function () { return learned_actions_1.learnedActions; } });
|
|
27
|
+
Object.defineProperty(exports, "LearnedActions", { enumerable: true, get: function () { return learned_actions_1.LearnedActions; } });
|
|
28
|
+
// Playwright config generator
|
|
29
|
+
var pw_config_1 = require("./core/pw-config");
|
|
30
|
+
Object.defineProperty(exports, "generatePwConfig", { enumerable: true, get: function () { return pw_config_1.generatePwConfig; } });
|
|
31
|
+
Object.defineProperty(exports, "resolveConfigOutputPath", { enumerable: true, get: function () { return pw_config_1.resolveConfigOutputPath; } });
|
|
32
|
+
Object.defineProperty(exports, "findExistingConfig", { enumerable: true, get: function () { return pw_config_1.findExistingConfig; } });
|
|
33
|
+
// Run API
|
|
34
|
+
var run_1 = require("./commands/run");
|
|
35
|
+
Object.defineProperty(exports, "run", { enumerable: true, get: function () { return run_1.run; } });
|
|
36
|
+
Object.defineProperty(exports, "KeveRunError", { enumerable: true, get: function () { return run_1.KeveRunError; } });
|
|
37
|
+
// Script refine (new)
|
|
38
|
+
// script-refine is now part of page-agent/tools
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* page-agent/agent.ts — KevePageAgent
|
|
3
|
+
*
|
|
4
|
+
* Re-Act agent for E2E test goal exploration.
|
|
5
|
+
* Refactored from react-loop.ts to follow PageAgentCore patterns:
|
|
6
|
+
* - MacroTool: merge all tool schemas into one LLM output
|
|
7
|
+
* - History events: step/observation/error stream
|
|
8
|
+
* - Reflection-before-action: evaluation + memory + next_goal + action
|
|
9
|
+
* - Screenshot injected into LLM prompt as multimodal input — LLM self-evaluates visually
|
|
10
|
+
* - No external verification — LLM sees screenshot each step, judges goal state itself
|
|
11
|
+
*
|
|
12
|
+
* Usage:
|
|
13
|
+
* const agent = new KevePageAgent(page, { maxSteps: 5 });
|
|
14
|
+
* const result = await agent.execute(step, expected, { learnedActionsHint, fnResult });
|
|
15
|
+
*/
|
|
16
|
+
import type { Page } from '@playwright/test';
|
|
17
|
+
import { LLM } from '@ks-data/keve-core/llm';
|
|
18
|
+
export interface AgentStepEvent {
|
|
19
|
+
type: 'step';
|
|
20
|
+
stepIndex: number;
|
|
21
|
+
evaluation: string;
|
|
22
|
+
memory: string;
|
|
23
|
+
nextGoal: string;
|
|
24
|
+
toolName: string;
|
|
25
|
+
toolInput: any;
|
|
26
|
+
toolOutput: string;
|
|
27
|
+
toolError?: string;
|
|
28
|
+
snapshot: string;
|
|
29
|
+
screenshotPath?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface AgentObservationEvent {
|
|
32
|
+
type: 'observation';
|
|
33
|
+
content: string;
|
|
34
|
+
}
|
|
35
|
+
export interface AgentErrorEvent {
|
|
36
|
+
type: 'error';
|
|
37
|
+
message: string;
|
|
38
|
+
}
|
|
39
|
+
export type AgentEvent = AgentStepEvent | AgentObservationEvent | AgentErrorEvent;
|
|
40
|
+
export interface AgentResult {
|
|
41
|
+
success: boolean;
|
|
42
|
+
data: string;
|
|
43
|
+
events: AgentEvent[];
|
|
44
|
+
finalSnapshot: string;
|
|
45
|
+
agentScreenshots?: string[];
|
|
46
|
+
diagnosticHints?: string[];
|
|
47
|
+
}
|
|
48
|
+
export interface AgentHooks {
|
|
49
|
+
/** Called before task execution starts. */
|
|
50
|
+
onBeforeTask?: (agent: KevePageAgent) => Promise<void> | void;
|
|
51
|
+
/** Called after task execution completes. Return partial result to override fields. */
|
|
52
|
+
onAfterTask?: (agent: KevePageAgent, result: AgentResult) => Promise<Partial<AgentResult> | void> | Partial<AgentResult> | void;
|
|
53
|
+
/** Called before each step execution. */
|
|
54
|
+
onBeforeStep?: (agent: KevePageAgent, stepCount: number) => Promise<void> | void;
|
|
55
|
+
/** Called after each step execution (in finally block). */
|
|
56
|
+
onAfterStep?: (agent: KevePageAgent, events: AgentEvent[]) => Promise<void> | void;
|
|
57
|
+
}
|
|
58
|
+
export interface AgentOptions {
|
|
59
|
+
maxSteps?: number;
|
|
60
|
+
learnedActionsHint?: string;
|
|
61
|
+
customSystemPrompt?: string;
|
|
62
|
+
specFilePath?: string;
|
|
63
|
+
fnSource?: string;
|
|
64
|
+
fnResult?: {
|
|
65
|
+
error?: string;
|
|
66
|
+
success?: boolean;
|
|
67
|
+
};
|
|
68
|
+
hooks?: AgentHooks;
|
|
69
|
+
/** External abort signal (e.g. per-goal timeout). When aborted, internal abortController is also triggered. */
|
|
70
|
+
signal?: AbortSignal;
|
|
71
|
+
}
|
|
72
|
+
export declare class KevePageAgent {
|
|
73
|
+
readonly page: Page;
|
|
74
|
+
readonly maxSteps: number;
|
|
75
|
+
readonly llm: LLM;
|
|
76
|
+
events: AgentEvent[];
|
|
77
|
+
private abortController;
|
|
78
|
+
private systemPrompt;
|
|
79
|
+
/** Current execute options (set at start of execute(), accessible from hooks) */
|
|
80
|
+
options?: AgentOptions;
|
|
81
|
+
private hooks?;
|
|
82
|
+
constructor(page: Page, options?: {
|
|
83
|
+
maxSteps?: number;
|
|
84
|
+
customSystemPrompt?: string;
|
|
85
|
+
hooks?: AgentHooks;
|
|
86
|
+
});
|
|
87
|
+
/** Stop the current execution */
|
|
88
|
+
stop(): void;
|
|
89
|
+
/** Main Re-Act execute loop */
|
|
90
|
+
execute(step: string, expected: string, options?: AgentOptions): Promise<AgentResult>;
|
|
91
|
+
private pushObservation;
|
|
92
|
+
private assembleUserPrompt;
|
|
93
|
+
private buildMacroTool;
|
|
94
|
+
/** Save screenshot buffer to test artifacts (reuses already-captured buffer) */
|
|
95
|
+
private saveScreenshotBuffer;
|
|
96
|
+
/**
|
|
97
|
+
* Visual element location: uses LLM multimodal to identify element bbox in screenshot.
|
|
98
|
+
* Returns normalized bbox (0-1000 scale) for coordinate-based clicking.
|
|
99
|
+
*/
|
|
100
|
+
visualLocateElement(screenshotBase64: string, description: string): Promise<{
|
|
101
|
+
found: boolean;
|
|
102
|
+
bbox?: number[];
|
|
103
|
+
analysis?: string;
|
|
104
|
+
}>;
|
|
105
|
+
/** Build final result */
|
|
106
|
+
private buildResult;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* @deprecated Use `new KevePageAgent(page).execute(step, expected, options)` directly.
|
|
110
|
+
* Drop-in replacement for the old reactLoop function.
|
|
111
|
+
* Creates a KevePageAgent, runs it, and maps the result.
|
|
112
|
+
*/
|
|
113
|
+
export declare function reactLoop(page: Page, step: string, expected: string, options?: {
|
|
114
|
+
maxSteps?: number;
|
|
115
|
+
learnedActionsHint?: string;
|
|
116
|
+
specFilePath?: string;
|
|
117
|
+
fnSource?: string;
|
|
118
|
+
fnResult?: {
|
|
119
|
+
error?: string;
|
|
120
|
+
success?: boolean;
|
|
121
|
+
};
|
|
122
|
+
signal?: AbortSignal;
|
|
123
|
+
}): Promise<{
|
|
124
|
+
actions: any[];
|
|
125
|
+
expectedMet: boolean;
|
|
126
|
+
conclusion?: 'pass' | 'fail' | 'blocked';
|
|
127
|
+
finalSnapshot: string;
|
|
128
|
+
agentScreenshots?: string[];
|
|
129
|
+
}>;
|