pi-agent-flow 1.8.1 → 1.8.3
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 +4 -30
- package/agents/audit.md +1 -2
- package/agents/build.md +1 -0
- package/agents/craft.md +12 -8
- package/agents/debug.md +2 -2
- package/agents/ideas.md +1 -0
- package/agents/scout.md +1 -0
- package/dist/agents.d.ts +41 -0
- package/dist/agents.d.ts.map +1 -0
- package/dist/agents.js +283 -0
- package/dist/agents.js.map +1 -0
- package/dist/batch/batch-bash.d.ts +87 -0
- package/dist/batch/batch-bash.d.ts.map +1 -0
- package/dist/batch/batch-bash.js +369 -0
- package/dist/batch/batch-bash.js.map +1 -0
- package/dist/batch/constants.d.ts +100 -0
- package/dist/batch/constants.d.ts.map +1 -0
- package/dist/batch/constants.js +15 -0
- package/dist/batch/constants.js.map +1 -0
- package/dist/batch/execute.d.ts +21 -0
- package/dist/batch/execute.d.ts.map +1 -0
- package/dist/batch/execute.js +440 -0
- package/dist/batch/execute.js.map +1 -0
- package/dist/batch/fuzzy-edit.d.ts +29 -0
- package/dist/batch/fuzzy-edit.d.ts.map +1 -0
- package/dist/batch/fuzzy-edit.js +257 -0
- package/dist/batch/fuzzy-edit.js.map +1 -0
- package/dist/batch/index.d.ts +85 -0
- package/dist/batch/index.d.ts.map +1 -0
- package/dist/batch/index.js +422 -0
- package/dist/batch/index.js.map +1 -0
- package/dist/batch/render.d.ts +14 -0
- package/dist/batch/render.d.ts.map +1 -0
- package/dist/batch/render.js +74 -0
- package/dist/batch/render.js.map +1 -0
- package/dist/batch/symbols.d.ts +9 -0
- package/dist/batch/symbols.d.ts.map +1 -0
- package/dist/batch/symbols.js +310 -0
- package/dist/batch/symbols.js.map +1 -0
- package/dist/batch.d.ts +12 -0
- package/dist/batch.d.ts.map +1 -0
- package/dist/batch.js +11 -0
- package/dist/batch.js.map +1 -0
- package/dist/cli-args.d.ts +27 -0
- package/dist/cli-args.d.ts.map +1 -0
- package/dist/cli-args.js +265 -0
- package/dist/cli-args.js.map +1 -0
- package/dist/config.d.ts +58 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +296 -0
- package/dist/config.js.map +1 -0
- package/dist/depth.d.ts +25 -0
- package/dist/depth.d.ts.map +1 -0
- package/dist/depth.js +160 -0
- package/dist/depth.js.map +1 -0
- package/dist/executor.d.ts +87 -0
- package/dist/executor.d.ts.map +1 -0
- package/dist/executor.js +295 -0
- package/dist/executor.js.map +1 -0
- package/dist/flow-prompt.d.ts +23 -0
- package/dist/flow-prompt.d.ts.map +1 -0
- package/dist/flow-prompt.js +99 -0
- package/dist/flow-prompt.js.map +1 -0
- package/dist/flow.d.ts +76 -0
- package/dist/flow.d.ts.map +1 -0
- package/dist/flow.js +704 -0
- package/dist/flow.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +327 -0
- package/dist/index.js.map +1 -0
- package/dist/reasoning-strip.d.ts +26 -0
- package/dist/reasoning-strip.d.ts.map +1 -0
- package/dist/reasoning-strip.js +58 -0
- package/dist/reasoning-strip.js.map +1 -0
- package/dist/render-utils.d.ts +42 -0
- package/dist/render-utils.d.ts.map +1 -0
- package/dist/render-utils.js +182 -0
- package/dist/render-utils.js.map +1 -0
- package/dist/render.d.ts +24 -0
- package/dist/render.d.ts.map +1 -0
- package/dist/render.js +409 -0
- package/dist/render.js.map +1 -0
- package/dist/runner-events.d.ts +59 -0
- package/dist/runner-events.d.ts.map +1 -0
- package/dist/runner-events.js +539 -0
- package/dist/runner-events.js.map +1 -0
- package/dist/session-mode.d.ts +10 -0
- package/dist/session-mode.d.ts.map +1 -0
- package/dist/session-mode.js +25 -0
- package/dist/session-mode.js.map +1 -0
- package/dist/settings-resolver.d.ts +28 -0
- package/dist/settings-resolver.d.ts.map +1 -0
- package/dist/settings-resolver.js +148 -0
- package/dist/settings-resolver.js.map +1 -0
- package/dist/sliding-prompt.d.ts +40 -0
- package/dist/sliding-prompt.d.ts.map +1 -0
- package/dist/sliding-prompt.js +121 -0
- package/dist/sliding-prompt.js.map +1 -0
- package/dist/snapshot.d.ts +29 -0
- package/dist/snapshot.d.ts.map +1 -0
- package/dist/snapshot.js +199 -0
- package/dist/snapshot.js.map +1 -0
- package/dist/structured-output.d.ts +36 -0
- package/dist/structured-output.d.ts.map +1 -0
- package/dist/structured-output.js +244 -0
- package/dist/structured-output.js.map +1 -0
- package/dist/timed-bash.d.ts +45 -0
- package/dist/timed-bash.d.ts.map +1 -0
- package/dist/timed-bash.js +219 -0
- package/dist/timed-bash.js.map +1 -0
- package/dist/tool-utils.d.ts +20 -0
- package/dist/tool-utils.d.ts.map +1 -0
- package/dist/tool-utils.js +38 -0
- package/dist/tool-utils.js.map +1 -0
- package/dist/transitions.d.ts +39 -0
- package/dist/transitions.d.ts.map +1 -0
- package/dist/transitions.js +59 -0
- package/dist/transitions.js.map +1 -0
- package/dist/types.d.ts +207 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +143 -0
- package/dist/types.js.map +1 -0
- package/dist/web-tool.d.ts +35 -0
- package/dist/web-tool.d.ts.map +1 -0
- package/dist/web-tool.js +545 -0
- package/dist/web-tool.js.map +1 -0
- package/package.json +7 -5
- package/src/agents.ts +0 -299
- package/src/ambient.d.ts +0 -107
- package/src/batch/batch-bash.ts +0 -443
- package/src/batch/constants.ts +0 -128
- package/src/batch/execute.ts +0 -551
- package/src/batch/fuzzy-edit.ts +0 -323
- package/src/batch/index.ts +0 -494
- package/src/batch/render.ts +0 -81
- package/src/batch/symbols.ts +0 -341
- package/src/batch.ts +0 -28
- package/src/cli-args.ts +0 -315
- package/src/config.ts +0 -391
- package/src/executor.ts +0 -445
- package/src/flow.ts +0 -834
- package/src/hooks.ts +0 -294
- package/src/index.ts +0 -1132
- package/src/render-utils.ts +0 -205
- package/src/render.ts +0 -524
- package/src/runner-events.ts +0 -692
- package/src/session-mode.ts +0 -33
- package/src/sliding-prompt.ts +0 -144
- package/src/structured-output.ts +0 -195
- package/src/timed-bash.ts +0 -270
- package/src/transitions.ts +0 -86
- package/src/types.ts +0 -386
- package/src/web-tool.ts +0 -663
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner-events.js","sourceRoot":"","sources":["../src/runner-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const AGENT_SESSION_MODES: readonly ["fast", "default", "long", "extreme_long"];
|
|
2
|
+
export type AgentSessionMode = typeof AGENT_SESSION_MODES[number];
|
|
3
|
+
export declare const DEFAULT_AGENT_SESSION_MODE: AgentSessionMode;
|
|
4
|
+
export declare const MAX_AGENT_SESSION_TIMEOUT_MS = 1200000;
|
|
5
|
+
export declare const PI_FLOW_SESSION_MODE_ENV = "PI_FLOW_SESSION_MODE";
|
|
6
|
+
export declare const AGENT_SESSION_TIMEOUTS_MS: Record<AgentSessionMode, number>;
|
|
7
|
+
export declare function parseAgentSessionMode(value: unknown): AgentSessionMode | undefined;
|
|
8
|
+
export declare function resolveAgentSessionMode(value: unknown, fallback?: AgentSessionMode): AgentSessionMode;
|
|
9
|
+
export declare function getAgentSessionTimeoutMs(mode: AgentSessionMode): number;
|
|
10
|
+
//# sourceMappingURL=session-mode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-mode.d.ts","sourceRoot":"","sources":["../src/session-mode.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,sDAAuD,CAAC;AAExF,MAAM,MAAM,gBAAgB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAElE,eAAO,MAAM,0BAA0B,EAAE,gBAA4B,CAAC;AACtE,eAAO,MAAM,4BAA4B,UAAY,CAAC;AACtD,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAE/D,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAKtE,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAMlF;AAED,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,OAAO,EACd,QAAQ,GAAE,gBAA6C,GACrD,gBAAgB,CAElB;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAEvE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export const AGENT_SESSION_MODES = ["fast", "default", "long", "extreme_long"];
|
|
2
|
+
export const DEFAULT_AGENT_SESSION_MODE = "default";
|
|
3
|
+
export const MAX_AGENT_SESSION_TIMEOUT_MS = 1_200_000;
|
|
4
|
+
export const PI_FLOW_SESSION_MODE_ENV = "PI_FLOW_SESSION_MODE";
|
|
5
|
+
export const AGENT_SESSION_TIMEOUTS_MS = {
|
|
6
|
+
fast: 300_000,
|
|
7
|
+
default: 600_000,
|
|
8
|
+
long: 900_000,
|
|
9
|
+
extreme_long: MAX_AGENT_SESSION_TIMEOUT_MS,
|
|
10
|
+
};
|
|
11
|
+
export function parseAgentSessionMode(value) {
|
|
12
|
+
if (typeof value !== "string")
|
|
13
|
+
return undefined;
|
|
14
|
+
const normalized = value.trim().toLowerCase();
|
|
15
|
+
return AGENT_SESSION_MODES.includes(normalized)
|
|
16
|
+
? normalized
|
|
17
|
+
: undefined;
|
|
18
|
+
}
|
|
19
|
+
export function resolveAgentSessionMode(value, fallback = DEFAULT_AGENT_SESSION_MODE) {
|
|
20
|
+
return parseAgentSessionMode(value) ?? fallback;
|
|
21
|
+
}
|
|
22
|
+
export function getAgentSessionTimeoutMs(mode) {
|
|
23
|
+
return AGENT_SESSION_TIMEOUTS_MS[mode];
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=session-mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-mode.js","sourceRoot":"","sources":["../src/session-mode.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,CAAU,CAAC;AAIxF,MAAM,CAAC,MAAM,0BAA0B,GAAqB,SAAS,CAAC;AACtE,MAAM,CAAC,MAAM,4BAA4B,GAAG,SAAS,CAAC;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAE/D,MAAM,CAAC,MAAM,yBAAyB,GAAqC;IAC1E,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,OAAO;IACb,YAAY,EAAE,4BAA4B;CAC1C,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,KAAc;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,OAAQ,mBAAyC,CAAC,QAAQ,CAAC,UAAU,CAAC;QACrE,CAAC,CAAC,UAA8B;QAChC,CAAC,CAAC,SAAS,CAAC;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CACtC,KAAc,EACd,WAA6B,0BAA0B;IAEvD,OAAO,qBAAqB,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAsB;IAC9D,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings resolution for session_start handler.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from index.ts for single-responsibility and testability.
|
|
5
|
+
*/
|
|
6
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
7
|
+
import { type FlowConfig } from "./agents.js";
|
|
8
|
+
import { type LoadedFlowModelConfigs } from "./config.js";
|
|
9
|
+
import { type AgentSessionMode } from "./session-mode.js";
|
|
10
|
+
export interface ResolvedSettings {
|
|
11
|
+
toolOptimize: boolean;
|
|
12
|
+
structuredOutput: boolean;
|
|
13
|
+
maxConcurrency: number;
|
|
14
|
+
defaultSessionMode: AgentSessionMode;
|
|
15
|
+
discoveredFlows: FlowConfig[];
|
|
16
|
+
loadedFlowModelConfigs: LoadedFlowModelConfigs;
|
|
17
|
+
activeRuntimeFlowMode: string | undefined;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Resolve all flow settings from env vars, CLI flags, and settings files.
|
|
21
|
+
*
|
|
22
|
+
* Called from the session_start handler. Returns the resolved settings
|
|
23
|
+
* plus discovered flows and model configs.
|
|
24
|
+
*/
|
|
25
|
+
export declare function resolveSettings(pi: ExtensionAPI, cwd: string): ResolvedSettings & {
|
|
26
|
+
projectFlowsDir: string | null;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=settings-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings-resolver.d.ts","sourceRoot":"","sources":["../src/settings-resolver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,aAAa,CAAC;AAC7D,OAAO,EAQN,KAAK,sBAAsB,EAC3B,MAAM,aAAa,CAAC;AAGrB,OAAO,EAIN,KAAK,gBAAgB,EACrB,MAAM,mBAAmB,CAAC;AAM3B,MAAM,WAAW,gBAAgB;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,gBAAgB,CAAC;IACrC,eAAe,EAAE,UAAU,EAAE,CAAC;IAC9B,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,CAC9B,EAAE,EAAE,YAAY,EAChB,GAAG,EAAE,MAAM,GACT,gBAAgB,GAAG;IAAE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAgIvD"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings resolution for session_start handler.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from index.ts for single-responsibility and testability.
|
|
5
|
+
*/
|
|
6
|
+
import * as os from "node:os";
|
|
7
|
+
import { discoverFlows } from "./agents.js";
|
|
8
|
+
import { loadFlowModelConfigs, loadFlowSettings, loadProjectFlowModelConfigName, normalizeFlowModeName, selectFlowModelStrategy, writeGlobalFlowMode, formatFlowModelStrategy, } from "./config.js";
|
|
9
|
+
import { getInheritedCliArgs } from "./cli-args.js";
|
|
10
|
+
import { parseBoolean, FLOW_TOOL_OPTIMIZE_ENV } from "./depth.js";
|
|
11
|
+
import { DEFAULT_AGENT_SESSION_MODE, PI_FLOW_SESSION_MODE_ENV, parseAgentSessionMode, } from "./session-mode.js";
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
// Resolution
|
|
14
|
+
// ---------------------------------------------------------------------------
|
|
15
|
+
/**
|
|
16
|
+
* Resolve all flow settings from env vars, CLI flags, and settings files.
|
|
17
|
+
*
|
|
18
|
+
* Called from the session_start handler. Returns the resolved settings
|
|
19
|
+
* plus discovered flows and model configs.
|
|
20
|
+
*/
|
|
21
|
+
export function resolveSettings(pi, cwd) {
|
|
22
|
+
const inheritedCliArgs = getInheritedCliArgs();
|
|
23
|
+
let toolOptimize = true;
|
|
24
|
+
let structuredOutput = true;
|
|
25
|
+
let maxConcurrency = 4;
|
|
26
|
+
let defaultSessionMode = DEFAULT_AGENT_SESSION_MODE;
|
|
27
|
+
const envToolOptimize = process.env[FLOW_TOOL_OPTIMIZE_ENV];
|
|
28
|
+
if (envToolOptimize !== undefined) {
|
|
29
|
+
const parsed = parseBoolean(envToolOptimize);
|
|
30
|
+
if (parsed !== null)
|
|
31
|
+
toolOptimize = parsed;
|
|
32
|
+
}
|
|
33
|
+
// Auto-discover flows
|
|
34
|
+
const discovery = discoverFlows(cwd, "all");
|
|
35
|
+
const discoveredFlows = discovery.flows;
|
|
36
|
+
let loadedFlowModelConfigs = loadFlowModelConfigs(cwd);
|
|
37
|
+
let activeRuntimeFlowMode = undefined;
|
|
38
|
+
// Resolve --flow-mode persistent switch
|
|
39
|
+
const requestedFlowMode = normalizeFlowModeName(pi.getFlag("flow-mode"));
|
|
40
|
+
if (requestedFlowMode !== undefined) {
|
|
41
|
+
if (!Object.prototype.hasOwnProperty.call(loadedFlowModelConfigs.configs, requestedFlowMode)) {
|
|
42
|
+
const availableModes = Object.keys(loadedFlowModelConfigs.configs).sort().join(", ") || "(none)";
|
|
43
|
+
console.warn(`[pi-agent-flow] Cannot switch flow mode to "${requestedFlowMode}"; no flowModelConfigs.${requestedFlowMode} strategy was found. Available modes: ${availableModes}.`);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
try {
|
|
47
|
+
writeGlobalFlowMode(requestedFlowMode);
|
|
48
|
+
const strategy = loadedFlowModelConfigs.configs[requestedFlowMode] ?? {};
|
|
49
|
+
const strategyDescription = formatFlowModelStrategy(requestedFlowMode, strategy);
|
|
50
|
+
console.warn(strategyDescription);
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
54
|
+
console.warn(`[pi-agent-flow] ${message}`);
|
|
55
|
+
}
|
|
56
|
+
const projectFlowModelConfig = loadProjectFlowModelConfigName(cwd);
|
|
57
|
+
if (projectFlowModelConfig !== undefined && projectFlowModelConfig !== requestedFlowMode) {
|
|
58
|
+
console.warn(`[pi-agent-flow] Switched global flow mode to "${requestedFlowMode}"; this project selects "${projectFlowModelConfig}" in .pi/settings.json, so future runs in this project may still use "${projectFlowModelConfig}" unless project settings are changed.`);
|
|
59
|
+
}
|
|
60
|
+
activeRuntimeFlowMode = requestedFlowMode;
|
|
61
|
+
loadedFlowModelConfigs = selectFlowModelStrategy(loadedFlowModelConfigs.configs, requestedFlowMode);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Resolve settings from .pi/settings.json
|
|
65
|
+
const flowSettings = loadFlowSettings(cwd);
|
|
66
|
+
if (typeof flowSettings.structuredOutput === "boolean") {
|
|
67
|
+
structuredOutput = flowSettings.structuredOutput;
|
|
68
|
+
}
|
|
69
|
+
if (typeof flowSettings.maxConcurrency === "number") {
|
|
70
|
+
maxConcurrency = flowSettings.maxConcurrency;
|
|
71
|
+
}
|
|
72
|
+
// Resolve toolOptimize: CLI flag > env var > settings.json > default
|
|
73
|
+
const cliFlag = pi.getFlag("tool-optimize");
|
|
74
|
+
if (typeof flowSettings.toolOptimize === "boolean") {
|
|
75
|
+
toolOptimize = flowSettings.toolOptimize;
|
|
76
|
+
}
|
|
77
|
+
if (envToolOptimize !== undefined) {
|
|
78
|
+
const parsed = parseBoolean(envToolOptimize);
|
|
79
|
+
if (parsed !== null)
|
|
80
|
+
toolOptimize = parsed;
|
|
81
|
+
}
|
|
82
|
+
if (typeof cliFlag === "boolean") {
|
|
83
|
+
toolOptimize = cliFlag;
|
|
84
|
+
}
|
|
85
|
+
else if (typeof cliFlag === "string") {
|
|
86
|
+
const parsed = parseBoolean(cliFlag);
|
|
87
|
+
if (parsed !== null)
|
|
88
|
+
toolOptimize = parsed;
|
|
89
|
+
}
|
|
90
|
+
// Resolve sessionMode: CLI flag > env var > settings.json > default
|
|
91
|
+
defaultSessionMode = flowSettings.sessionMode ?? DEFAULT_AGENT_SESSION_MODE;
|
|
92
|
+
const envSessionModeRaw = process.env[PI_FLOW_SESSION_MODE_ENV];
|
|
93
|
+
if (envSessionModeRaw !== undefined) {
|
|
94
|
+
const envSessionMode = parseAgentSessionMode(envSessionModeRaw);
|
|
95
|
+
if (envSessionMode !== undefined) {
|
|
96
|
+
defaultSessionMode = envSessionMode;
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
console.warn(`[pi-agent-flow] Ignoring invalid ${PI_FLOW_SESSION_MODE_ENV}="${envSessionModeRaw}". Expected fast, default, or long.`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
const cliSessionModeRaw = pi.getFlag("flow-session-mode");
|
|
103
|
+
if (typeof cliSessionModeRaw === "string") {
|
|
104
|
+
const cliSessionMode = parseAgentSessionMode(cliSessionModeRaw);
|
|
105
|
+
if (cliSessionMode !== undefined) {
|
|
106
|
+
defaultSessionMode = cliSessionMode;
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
console.warn(`[pi-agent-flow] Ignoring invalid --flow-session-mode value "${cliSessionModeRaw}". Expected fast, default, or long.`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else if (inheritedCliArgs.flowSessionMode !== undefined) {
|
|
113
|
+
defaultSessionMode = inheritedCliArgs.flowSessionMode;
|
|
114
|
+
}
|
|
115
|
+
// Resolve maxConcurrency: CLI flag > env var > settings.json > default
|
|
116
|
+
const cliConcurrency = pi.getFlag("flow-max-concurrency");
|
|
117
|
+
if (typeof cliConcurrency === "string") {
|
|
118
|
+
const parsed = Number(cliConcurrency);
|
|
119
|
+
if (Number.isSafeInteger(parsed) && parsed >= 1)
|
|
120
|
+
maxConcurrency = parsed;
|
|
121
|
+
}
|
|
122
|
+
else if (typeof cliConcurrency === "number" && Number.isSafeInteger(cliConcurrency) && cliConcurrency >= 1) {
|
|
123
|
+
maxConcurrency = cliConcurrency;
|
|
124
|
+
}
|
|
125
|
+
const envConcurrency = process.env["PI_FLOW_MAX_CONCURRENCY"];
|
|
126
|
+
if (envConcurrency !== undefined && typeof cliConcurrency === "undefined") {
|
|
127
|
+
const parsed = Number(envConcurrency);
|
|
128
|
+
if (Number.isSafeInteger(parsed) && parsed >= 1)
|
|
129
|
+
maxConcurrency = parsed;
|
|
130
|
+
}
|
|
131
|
+
// Cap concurrency to the number of available CPUs
|
|
132
|
+
if (typeof os.availableParallelism === "function") {
|
|
133
|
+
const hwConcurrency = os.availableParallelism();
|
|
134
|
+
if (hwConcurrency > 0)
|
|
135
|
+
maxConcurrency = Math.min(maxConcurrency, hwConcurrency);
|
|
136
|
+
}
|
|
137
|
+
return {
|
|
138
|
+
toolOptimize,
|
|
139
|
+
structuredOutput,
|
|
140
|
+
maxConcurrency,
|
|
141
|
+
defaultSessionMode,
|
|
142
|
+
discoveredFlows,
|
|
143
|
+
loadedFlowModelConfigs,
|
|
144
|
+
activeRuntimeFlowMode,
|
|
145
|
+
projectFlowsDir: discovery.projectFlowsDir,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=settings-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings-resolver.js","sourceRoot":"","sources":["../src/settings-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sliding system prompt utilities.
|
|
3
|
+
*
|
|
4
|
+
* Manages the sliding prompt tag that is injected before the latest user
|
|
5
|
+
* message each turn. Provides helpers for stripping, detecting, and building
|
|
6
|
+
* the prompt so they can be tested independently.
|
|
7
|
+
*/
|
|
8
|
+
export declare const SLIDING_PROMPT_OPEN_TAG: string;
|
|
9
|
+
export declare const SLIDING_PROMPT_CLOSE_TAG: string;
|
|
10
|
+
export declare const SLIDING_PROMPT: string;
|
|
11
|
+
/** Input-message content types (string or multipart text-part array). */
|
|
12
|
+
type MessageContent = string | Array<{
|
|
13
|
+
type: string;
|
|
14
|
+
text?: string;
|
|
15
|
+
}>;
|
|
16
|
+
/** Strip any old sliding system prompt tags from a string. */
|
|
17
|
+
export declare function stripSlidingPromptText(text: string): string;
|
|
18
|
+
/** Strip sliding prompt tags from content (string or text-part array). */
|
|
19
|
+
export declare function stripSlidingPromptFromContent(content: string | {
|
|
20
|
+
type: string;
|
|
21
|
+
text?: string;
|
|
22
|
+
}[]): string | {
|
|
23
|
+
type: string;
|
|
24
|
+
text?: string;
|
|
25
|
+
}[];
|
|
26
|
+
/** Check whether content (string or text-part array) contains the sliding tag. */
|
|
27
|
+
export declare function contentContainsSlidingTag(content: MessageContent): boolean;
|
|
28
|
+
/** Deep-equality check that handles unordered object keys (unlike JSON.stringify). */
|
|
29
|
+
export declare function isJsonEqual(a: unknown, b: unknown): boolean;
|
|
30
|
+
/** Remove any existing sliding-system-prompt system messages and strip tags from user messages.
|
|
31
|
+
* Returns the sanitized messages and a flag indicating whether anything changed.
|
|
32
|
+
*/
|
|
33
|
+
export declare function stripSlidingPromptsFromMessages(messages: any[]): {
|
|
34
|
+
messages: any[];
|
|
35
|
+
changed: boolean;
|
|
36
|
+
};
|
|
37
|
+
/** Build a system message containing the sliding prompt. */
|
|
38
|
+
export declare function makeSlidingPromptMessage(referenceMessage?: any): any;
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=sliding-prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sliding-prompt.d.ts","sourceRoot":"","sources":["../src/sliding-prompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH,eAAO,MAAM,uBAAuB,QAAyD,CAAC;AAC9F,eAAO,MAAM,wBAAwB,QAA0D,CAAC;AAEhG,eAAO,MAAM,cAAc,QAMG,CAAC;AAgB/B,yEAAyE;AACzE,KAAK,cAAc,GAAG,MAAM,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAkBtE,8DAA8D;AAC9D,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,0EAA0E;AAC1E,wBAAgB,6BAA6B,CAC5C,OAAO,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,GACjD,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,CAU5C;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAW1E;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAc3D;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAoBtG;AAED,4DAA4D;AAC5D,wBAAgB,wBAAwB,CAAC,gBAAgB,CAAC,EAAE,GAAG,GAAG,GAAG,CAMpE"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sliding system prompt utilities.
|
|
3
|
+
*
|
|
4
|
+
* Manages the sliding prompt tag that is injected before the latest user
|
|
5
|
+
* message each turn. Provides helpers for stripping, detecting, and building
|
|
6
|
+
* the prompt so they can be tested independently.
|
|
7
|
+
*/
|
|
8
|
+
import { randomUUID } from "node:crypto";
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
// Tag constants
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
const SLIDING_PROMPT_UUID = randomUUID();
|
|
13
|
+
export const SLIDING_PROMPT_OPEN_TAG = `<pi-flow-sliding-system id="${SLIDING_PROMPT_UUID}">`;
|
|
14
|
+
export const SLIDING_PROMPT_CLOSE_TAG = `</pi-flow-sliding-system id="${SLIDING_PROMPT_UUID}">`;
|
|
15
|
+
export const SLIDING_PROMPT = `${SLIDING_PROMPT_OPEN_TAG}\n` +
|
|
16
|
+
`You are operating with pi-agent-flow routing.\n` +
|
|
17
|
+
`If the answer is already in context, answer directly; otherwise delegate to the appropriate flow.\n` +
|
|
18
|
+
`For git, bash, CLI, or terminal tasks, delegate to [build].\n` +
|
|
19
|
+
`Child flows inherit your session context — write intents that focus on new work rather than restating what the child already sees.\n` +
|
|
20
|
+
`${SLIDING_PROMPT_CLOSE_TAG}`;
|
|
21
|
+
const SLIDING_PROMPT_RE = new RegExp(SLIDING_PROMPT_OPEN_TAG.replace(/[.*+?^${}()|[\]\\]/g, "\\$&") +
|
|
22
|
+
"[\\s\\S]*?" +
|
|
23
|
+
SLIDING_PROMPT_CLOSE_TAG.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "g");
|
|
24
|
+
/** Legacy regex to strip old bare sliding system prompt tags (no id attribute). */
|
|
25
|
+
const LEGACY_SLIDING_PROMPT_RE = /<pi-flow-sliding-system(?:\s[^>]*)?>[\s\S]*?<\/pi-flow-sliding-system(?:\s[^>]*)?>/g;
|
|
26
|
+
/** Type guard: is this a text-part with a string .text? */
|
|
27
|
+
function isTextPart(part) {
|
|
28
|
+
return (part != null &&
|
|
29
|
+
typeof part === "object" &&
|
|
30
|
+
"type" in part &&
|
|
31
|
+
part.type === "text" &&
|
|
32
|
+
"text" in part &&
|
|
33
|
+
typeof part.text === "string");
|
|
34
|
+
}
|
|
35
|
+
// ---------------------------------------------------------------------------
|
|
36
|
+
// Public helpers
|
|
37
|
+
// ---------------------------------------------------------------------------
|
|
38
|
+
/** Strip any old sliding system prompt tags from a string. */
|
|
39
|
+
export function stripSlidingPromptText(text) {
|
|
40
|
+
return text.replace(SLIDING_PROMPT_RE, "").replace(LEGACY_SLIDING_PROMPT_RE, "");
|
|
41
|
+
}
|
|
42
|
+
/** Strip sliding prompt tags from content (string or text-part array). */
|
|
43
|
+
export function stripSlidingPromptFromContent(content) {
|
|
44
|
+
if (typeof content === "string") {
|
|
45
|
+
return stripSlidingPromptText(content);
|
|
46
|
+
}
|
|
47
|
+
return content.map((c) => {
|
|
48
|
+
if (c.type === "text" && typeof c.text === "string") {
|
|
49
|
+
return { ...c, text: stripSlidingPromptText(c.text) };
|
|
50
|
+
}
|
|
51
|
+
return c;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/** Check whether content (string or text-part array) contains the sliding tag. */
|
|
55
|
+
export function contentContainsSlidingTag(content) {
|
|
56
|
+
const hasCurrent = (text) => text.includes(SLIDING_PROMPT_OPEN_TAG);
|
|
57
|
+
const hasLegacy = (text) => text.includes("<pi-flow-sliding-system>");
|
|
58
|
+
const check = (text) => hasCurrent(text) || hasLegacy(text);
|
|
59
|
+
if (typeof content === "string") {
|
|
60
|
+
return check(content);
|
|
61
|
+
}
|
|
62
|
+
if (Array.isArray(content)) {
|
|
63
|
+
return content.some((part) => isTextPart(part) && check(part.text));
|
|
64
|
+
}
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
/** Deep-equality check that handles unordered object keys (unlike JSON.stringify). */
|
|
68
|
+
export function isJsonEqual(a, b) {
|
|
69
|
+
if (Object.is(a, b))
|
|
70
|
+
return true;
|
|
71
|
+
if (a === null || b === null || typeof a !== "object" || typeof b !== "object")
|
|
72
|
+
return false;
|
|
73
|
+
if (Array.isArray(a) !== Array.isArray(b))
|
|
74
|
+
return false;
|
|
75
|
+
const keysA = Object.keys(a);
|
|
76
|
+
const keysB = Object.keys(b);
|
|
77
|
+
if (keysA.length !== keysB.length)
|
|
78
|
+
return false;
|
|
79
|
+
for (const key of keysA) {
|
|
80
|
+
if (!Object.prototype.hasOwnProperty.call(b, key))
|
|
81
|
+
return false;
|
|
82
|
+
if (!isJsonEqual(a[key], b[key]))
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
/** Remove any existing sliding-system-prompt system messages and strip tags from user messages.
|
|
88
|
+
* Returns the sanitized messages and a flag indicating whether anything changed.
|
|
89
|
+
*/
|
|
90
|
+
export function stripSlidingPromptsFromMessages(messages) {
|
|
91
|
+
let changed = false;
|
|
92
|
+
const result = messages
|
|
93
|
+
.filter((msg) => {
|
|
94
|
+
// Remove dedicated sliding system prompt messages
|
|
95
|
+
if (msg.role === "system" && contentContainsSlidingTag(msg.content)) {
|
|
96
|
+
changed = true;
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
return true;
|
|
100
|
+
})
|
|
101
|
+
.map((msg) => {
|
|
102
|
+
// Also strip stray tags embedded in user/assistant messages
|
|
103
|
+
if (!("content" in msg))
|
|
104
|
+
return msg;
|
|
105
|
+
const stripped = stripSlidingPromptFromContent(msg.content);
|
|
106
|
+
if (isJsonEqual(stripped, msg.content))
|
|
107
|
+
return msg;
|
|
108
|
+
changed = true;
|
|
109
|
+
return { ...msg, content: stripped };
|
|
110
|
+
});
|
|
111
|
+
return { messages: result, changed };
|
|
112
|
+
}
|
|
113
|
+
/** Build a system message containing the sliding prompt. */
|
|
114
|
+
export function makeSlidingPromptMessage(referenceMessage) {
|
|
115
|
+
return {
|
|
116
|
+
role: "system",
|
|
117
|
+
content: SLIDING_PROMPT,
|
|
118
|
+
timestamp: referenceMessage?.timestamp,
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=sliding-prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sliding-prompt.js","sourceRoot":"","sources":["../src/sliding-prompt.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session snapshot building, sanitization, and flow result compression.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from index.ts for single-responsibility and testability.
|
|
5
|
+
*/
|
|
6
|
+
import { type CompressedFlowResult } from "./types.js";
|
|
7
|
+
export interface SessionSnapshotSource {
|
|
8
|
+
getHeader: () => unknown;
|
|
9
|
+
getBranch: () => unknown[];
|
|
10
|
+
}
|
|
11
|
+
export declare function buildForkSessionSnapshotJsonl(sessionManager: SessionSnapshotSource): string | null;
|
|
12
|
+
/**
|
|
13
|
+
* Render a compressed flow result as compact text for child context.
|
|
14
|
+
*/
|
|
15
|
+
export declare function renderCompressedFlowResult(r: CompressedFlowResult): string;
|
|
16
|
+
/**
|
|
17
|
+
* Compress flow tool results in a sanitized session snapshot.
|
|
18
|
+
*
|
|
19
|
+
* Scans for tool result messages that correspond to flow invocations
|
|
20
|
+
* and replaces their content with compact compressed output.
|
|
21
|
+
*/
|
|
22
|
+
export declare function compressFlowToolResults(snapshot: string, cache: Map<string, CompressedFlowResult[]>): string;
|
|
23
|
+
/**
|
|
24
|
+
* Sanitize a fork session snapshot JSONL to remove only non-inheritable
|
|
25
|
+
* artifacts before passing full parent context to child flows: sliding system
|
|
26
|
+
* prompts, legacy reminders, and assistant reasoning/thinking.
|
|
27
|
+
*/
|
|
28
|
+
export declare function sanitizeForkSnapshot(snapshot: string | null, cache?: Map<string, CompressedFlowResult[]>): string | null;
|
|
29
|
+
//# sourceMappingURL=snapshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACN,KAAK,oBAAoB,EAEzB,MAAM,YAAY,CAAC;AAYpB,MAAM,WAAW,qBAAqB;IACrC,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,SAAS,EAAE,MAAM,OAAO,EAAE,CAAC;CAC3B;AAMD,wBAAgB,6BAA6B,CAC5C,cAAc,EAAE,qBAAqB,GACnC,MAAM,GAAG,IAAI,CAQf;AAMD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,oBAAoB,GAAG,MAAM,CAgB1E;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,EAAE,CAAC,GAAG,MAAM,CAmF5G;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,GAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,EAAE,CAAa,GAAG,MAAM,GAAG,IAAI,CA0DnI"}
|