@pentoshi/clai 3.6.0 → 3.7.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/dist/agent/compaction-summary.d.ts +17 -0
- package/dist/agent/compaction-summary.js +64 -0
- package/dist/agent/compaction-summary.js.map +1 -0
- package/dist/agent/confirm-port.d.ts +3 -1
- package/dist/agent/confirm-port.js +5 -1
- package/dist/agent/confirm-port.js.map +1 -1
- package/dist/agent/context-manager.js +45 -22
- package/dist/agent/context-manager.js.map +1 -1
- package/dist/agent/events.d.ts +6 -0
- package/dist/agent/evidence-governor.d.ts +37 -0
- package/dist/agent/evidence-governor.js +70 -0
- package/dist/agent/evidence-governor.js.map +1 -0
- package/dist/agent/loop-guard.d.ts +29 -11
- package/dist/agent/loop-guard.js +93 -39
- package/dist/agent/loop-guard.js.map +1 -1
- package/dist/agent/must-continue.d.ts +56 -0
- package/dist/agent/must-continue.js +240 -0
- package/dist/agent/must-continue.js.map +1 -0
- package/dist/agent/outcomes.d.ts +101 -0
- package/dist/agent/outcomes.js +359 -0
- package/dist/agent/outcomes.js.map +1 -0
- package/dist/agent/plan-decision.d.ts +33 -0
- package/dist/agent/plan-decision.js +104 -0
- package/dist/agent/plan-decision.js.map +1 -0
- package/dist/agent/plan-tool.d.ts +12 -0
- package/dist/agent/plan-tool.js +312 -104
- package/dist/agent/plan-tool.js.map +1 -1
- package/dist/agent/project-root.js +3 -0
- package/dist/agent/project-root.js.map +1 -1
- package/dist/agent/prompt-composer.d.ts +21 -0
- package/dist/agent/prompt-composer.js +46 -0
- package/dist/agent/prompt-composer.js.map +1 -0
- package/dist/agent/runner.d.ts +11 -1
- package/dist/agent/runner.js +1226 -971
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/scope-context.d.ts +3 -0
- package/dist/agent/scope-context.js +24 -0
- package/dist/agent/scope-context.js.map +1 -0
- package/dist/agent/scratch-write.d.ts +4 -0
- package/dist/agent/scratch-write.js +54 -0
- package/dist/agent/scratch-write.js.map +1 -0
- package/dist/agent/session-policy.d.ts +7 -0
- package/dist/agent/session-policy.js +61 -0
- package/dist/agent/session-policy.js.map +1 -1
- package/dist/agent/session-state.d.ts +41 -0
- package/dist/agent/session-state.js +107 -0
- package/dist/agent/session-state.js.map +1 -0
- package/dist/agent/step-budget.d.ts +14 -0
- package/dist/agent/step-budget.js +26 -0
- package/dist/agent/step-budget.js.map +1 -0
- package/dist/agent/task-analyzer.d.ts +12 -3
- package/dist/agent/task-analyzer.js +263 -23
- package/dist/agent/task-analyzer.js.map +1 -1
- package/dist/agent/task-evidence.d.ts +111 -29
- package/dist/agent/task-evidence.js +519 -91
- package/dist/agent/task-evidence.js.map +1 -1
- package/dist/agent/task-plan.d.ts +57 -0
- package/dist/agent/task-plan.js +147 -1
- package/dist/agent/task-plan.js.map +1 -1
- package/dist/agent/tool-call-parser.d.ts +4 -12
- package/dist/agent/tool-call-parser.js +34 -67
- package/dist/agent/tool-call-parser.js.map +1 -1
- package/dist/agent/tool-history.d.ts +7 -0
- package/dist/agent/tool-history.js +50 -0
- package/dist/agent/tool-history.js.map +1 -1
- package/dist/agent/tool-output-formatting.d.ts +13 -1
- package/dist/agent/tool-output-formatting.js +75 -22
- package/dist/agent/tool-output-formatting.js.map +1 -1
- package/dist/agent/turn-outcome.d.ts +11 -0
- package/dist/agent/turn-outcome.js +17 -0
- package/dist/agent/turn-outcome.js.map +1 -0
- package/dist/agent/turn-state.d.ts +11 -0
- package/dist/agent/turn-state.js +28 -0
- package/dist/agent/turn-state.js.map +1 -0
- package/dist/agent/workspace-orient.d.ts +11 -0
- package/dist/agent/workspace-orient.js +103 -12
- package/dist/agent/workspace-orient.js.map +1 -1
- package/dist/app/adapters/agent-event-adapter.d.ts +2 -13
- package/dist/app/adapters/agent-event-adapter.js +63 -25
- package/dist/app/adapters/agent-event-adapter.js.map +1 -1
- package/dist/app/adapters/current-agent-adapter.d.ts +0 -5
- package/dist/app/adapters/current-agent-adapter.js +4 -7
- package/dist/app/adapters/current-agent-adapter.js.map +1 -1
- package/dist/app/adapters/current-jobs-adapter.js +1 -0
- package/dist/app/adapters/current-jobs-adapter.js.map +1 -1
- package/dist/app/adapters/current-terminal-adapter.d.ts +0 -7
- package/dist/app/adapters/current-terminal-adapter.js +0 -7
- package/dist/app/adapters/current-terminal-adapter.js.map +1 -1
- package/dist/app/adapters/current-updates-adapter.d.ts +0 -5
- package/dist/app/adapters/current-updates-adapter.js +0 -5
- package/dist/app/adapters/current-updates-adapter.js.map +1 -1
- package/dist/app/adapters/in-memory-clipboard-adapter.d.ts +0 -5
- package/dist/app/adapters/in-memory-clipboard-adapter.js +0 -5
- package/dist/app/adapters/in-memory-clipboard-adapter.js.map +1 -1
- package/dist/app/commands/command.d.ts +0 -5
- package/dist/app/commands/command.js.map +1 -1
- package/dist/app/commands/registry.d.ts +0 -14
- package/dist/app/commands/registry.js +0 -20
- package/dist/app/commands/registry.js.map +1 -1
- package/dist/app/controllers/disposable.d.ts +0 -5
- package/dist/app/controllers/disposable.js +0 -5
- package/dist/app/controllers/disposable.js.map +1 -1
- package/dist/app/controllers/job-controller.d.ts +1 -5
- package/dist/app/controllers/job-controller.js +0 -4
- package/dist/app/controllers/job-controller.js.map +1 -1
- package/dist/app/controllers/plan-controller.d.ts +5 -8
- package/dist/app/controllers/plan-controller.js +30 -12
- package/dist/app/controllers/plan-controller.js.map +1 -1
- package/dist/app/controllers/session-controller.d.ts +17 -32
- package/dist/app/controllers/session-controller.js +56 -35
- package/dist/app/controllers/session-controller.js.map +1 -1
- package/dist/app/controllers/turn-controller.d.ts +2 -6
- package/dist/app/controllers/turn-controller.js +8 -8
- package/dist/app/controllers/turn-controller.js.map +1 -1
- package/dist/app/events/app-event.d.ts +4 -7
- package/dist/app/events/app-event.js +0 -6
- package/dist/app/events/app-event.js.map +1 -1
- package/dist/app/events/event-buffer.d.ts +6 -17
- package/dist/app/events/event-buffer.js +27 -24
- package/dist/app/events/event-buffer.js.map +1 -1
- package/dist/app/events/sequencer.d.ts +0 -9
- package/dist/app/events/sequencer.js +0 -4
- package/dist/app/events/sequencer.js.map +1 -1
- package/dist/app/ports/agent-port.d.ts +13 -3
- package/dist/app/ports/clipboard-port.d.ts +0 -5
- package/dist/app/ports/confirm-port.d.ts +0 -7
- package/dist/app/ports/jobs-port.d.ts +2 -5
- package/dist/app/ports/persistence-port.d.ts +0 -4
- package/dist/app/ports/secret-port.d.ts +0 -5
- package/dist/app/ports/terminal-port.d.ts +0 -6
- package/dist/app/ports/updates-port.d.ts +0 -4
- package/dist/attachments/service.d.ts +29 -0
- package/dist/attachments/service.js +47 -0
- package/dist/attachments/service.js.map +1 -0
- package/dist/commands/providers.js +0 -3
- package/dist/commands/providers.js.map +1 -1
- package/dist/commands/search-providers.d.ts +0 -33
- package/dist/commands/search-providers.js +0 -33
- package/dist/commands/search-providers.js.map +1 -1
- package/dist/commands/update.js +1 -9
- package/dist/commands/update.js.map +1 -1
- package/dist/index.js +22 -42
- package/dist/index.js.map +1 -1
- package/dist/llm/adapters/ollama-tools.d.ts +0 -4
- package/dist/llm/adapters/ollama-tools.js +0 -4
- package/dist/llm/adapters/ollama-tools.js.map +1 -1
- package/dist/llm/capabilities.d.ts +10 -10
- package/dist/llm/capabilities.js +43 -17
- package/dist/llm/capabilities.js.map +1 -1
- package/dist/llm/groq.js +0 -6
- package/dist/llm/groq.js.map +1 -1
- package/dist/llm/http.d.ts +0 -17
- package/dist/llm/http.js +0 -45
- package/dist/llm/http.js.map +1 -1
- package/dist/llm/router.d.ts +0 -6
- package/dist/llm/router.js +0 -15
- package/dist/llm/router.js.map +1 -1
- package/dist/llm/tool-protocol.d.ts +0 -6
- package/dist/llm/tool-protocol.js +3 -7
- package/dist/llm/tool-protocol.js.map +1 -1
- package/dist/modes/agent.d.ts +2 -1
- package/dist/modes/agent.js +4 -2
- package/dist/modes/agent.js.map +1 -1
- package/dist/modes/ask.d.ts +0 -18
- package/dist/modes/ask.js +0 -49
- package/dist/modes/ask.js.map +1 -1
- package/dist/os/cwd.d.ts +0 -21
- package/dist/os/cwd.js +0 -24
- package/dist/os/cwd.js.map +1 -1
- package/dist/os/pkgmgr.js +0 -6
- package/dist/os/pkgmgr.js.map +1 -1
- package/dist/prompts/embedded.d.ts +1 -0
- package/dist/prompts/embedded.js +9 -0
- package/dist/prompts/embedded.js.map +1 -0
- package/dist/prompts/index.d.ts +6 -18
- package/dist/prompts/index.js +104 -293
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/system.agent.md +228 -0
- package/dist/prompts/system.ask.md +56 -0
- package/dist/repl/prompt-line.js +0 -36
- package/dist/repl/prompt-line.js.map +1 -1
- package/dist/repl/slash-commands.d.ts +0 -9
- package/dist/repl/slash-commands.js +2 -23
- package/dist/repl/slash-commands.js.map +1 -1
- package/dist/repl.d.ts +5 -0
- package/dist/repl.js +169 -55
- package/dist/repl.js.map +1 -1
- package/dist/safety/classifier.js +17 -9
- package/dist/safety/classifier.js.map +1 -1
- package/dist/safety/engagement-policy.d.ts +46 -0
- package/dist/safety/engagement-policy.js +198 -0
- package/dist/safety/engagement-policy.js.map +1 -0
- package/dist/store/engagement.d.ts +115 -0
- package/dist/store/engagement.js +278 -0
- package/dist/store/engagement.js.map +1 -0
- package/dist/store/logs.d.ts +5 -0
- package/dist/store/logs.js +52 -2
- package/dist/store/logs.js.map +1 -1
- package/dist/store/plan.d.ts +57 -5
- package/dist/store/plan.js +182 -8
- package/dist/store/plan.js.map +1 -1
- package/dist/store/scope.d.ts +4 -1
- package/dist/store/scope.js +2 -2
- package/dist/store/scope.js.map +1 -1
- package/dist/tools/definitions.js +70 -1
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/elevated-shell.d.ts +60 -0
- package/dist/tools/elevated-shell.js +233 -0
- package/dist/tools/elevated-shell.js.map +1 -0
- package/dist/tools/file-diff.d.ts +125 -0
- package/dist/tools/file-diff.js +495 -0
- package/dist/tools/file-diff.js.map +1 -0
- package/dist/tools/fs.d.ts +11 -13
- package/dist/tools/fs.js +269 -78
- package/dist/tools/fs.js.map +1 -1
- package/dist/tools/http.d.ts +15 -0
- package/dist/tools/http.js +202 -61
- package/dist/tools/http.js.map +1 -1
- package/dist/tools/jobs.d.ts +71 -10
- package/dist/tools/jobs.js +403 -124
- package/dist/tools/jobs.js.map +1 -1
- package/dist/tools/nmap-runner.d.ts +11 -0
- package/dist/tools/nmap-runner.js +115 -74
- package/dist/tools/nmap-runner.js.map +1 -1
- package/dist/tools/pentest-workflows.d.ts +8 -0
- package/dist/tools/pentest-workflows.js +71 -0
- package/dist/tools/pentest-workflows.js.map +1 -0
- package/dist/tools/registry.d.ts +9 -0
- package/dist/tools/registry.js +244 -57
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/shell.d.ts +3 -0
- package/dist/tools/shell.js +35 -13
- package/dist/tools/shell.js.map +1 -1
- package/dist/tools/tool-types.d.ts +11 -0
- package/dist/tools/web/fetch-core.d.ts +7 -0
- package/dist/tools/web/fetch-core.js +40 -1
- package/dist/tools/web/fetch-core.js.map +1 -1
- package/dist/tools/web/fetch.js +8 -1
- package/dist/tools/web/fetch.js.map +1 -1
- package/dist/tui-v2/app/App.js +34 -41
- package/dist/tui-v2/app/App.js.map +1 -1
- package/dist/tui-v2/app/command-handlers.js +20 -1
- package/dist/tui-v2/app/command-handlers.js.map +1 -1
- package/dist/tui-v2/app/commands/picker-commands.js +3 -0
- package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
- package/dist/tui-v2/app/commands/session-commands.js +5 -0
- package/dist/tui-v2/app/commands/session-commands.js.map +1 -1
- package/dist/tui-v2/app/plan-lifecycle.d.ts +25 -3
- package/dist/tui-v2/app/plan-lifecycle.js +87 -24
- package/dist/tui-v2/app/plan-lifecycle.js.map +1 -1
- package/dist/tui-v2/bootstrap/patch-opentui-text.d.ts +6 -0
- package/dist/tui-v2/bootstrap/patch-opentui-text.js +53 -0
- package/dist/tui-v2/bootstrap/patch-opentui-text.js.map +1 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js +7 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
- package/dist/tui-v2/components/jobs/jobs-panel.js +23 -14
- package/dist/tui-v2/components/jobs/jobs-panel.js.map +1 -1
- package/dist/tui-v2/components/modal/confirm-modal.d.ts +1 -1
- package/dist/tui-v2/components/modal/confirm-modal.js +18 -7
- package/dist/tui-v2/components/modal/confirm-modal.js.map +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
- package/dist/tui-v2/components/pager/pager.d.ts +6 -0
- package/dist/tui-v2/components/pager/pager.js +313 -67
- package/dist/tui-v2/components/pager/pager.js.map +1 -1
- package/dist/tui-v2/components/status/status-line.d.ts +9 -0
- package/dist/tui-v2/components/status/status-line.js +17 -3
- package/dist/tui-v2/components/status/status-line.js.map +1 -1
- package/dist/tui-v2/components/transcript/assistant-message.js +1 -1
- package/dist/tui-v2/components/transcript/assistant-message.js.map +1 -1
- package/dist/tui-v2/components/transcript/compacted-row.js +1 -1
- package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
- package/dist/tui-v2/components/transcript/tool-card.d.ts +9 -1
- package/dist/tui-v2/components/transcript/tool-card.js +114 -9
- package/dist/tui-v2/components/transcript/tool-card.js.map +1 -1
- package/dist/tui-v2/components/transcript/transcript-row.js +2 -2
- package/dist/tui-v2/components/transcript/transcript-row.js.map +1 -1
- package/dist/tui-v2/composer/composer-editor.js +16 -0
- package/dist/tui-v2/composer/composer-editor.js.map +1 -1
- package/dist/tui-v2/controllers/overlay-controller.d.ts +16 -2
- package/dist/tui-v2/controllers/overlay-controller.js +92 -12
- package/dist/tui-v2/controllers/overlay-controller.js.map +1 -1
- package/dist/tui-v2/rendering/artifact-pager-source.d.ts +19 -0
- package/dist/tui-v2/rendering/artifact-pager-source.js +103 -0
- package/dist/tui-v2/rendering/artifact-pager-source.js.map +1 -0
- package/dist/tui-v2/rendering/file-diff-view.d.ts +63 -0
- package/dist/tui-v2/rendering/file-diff-view.js +263 -0
- package/dist/tui-v2/rendering/file-diff-view.js.map +1 -0
- package/dist/tui-v2/rendering/open-tool-output.d.ts +9 -1
- package/dist/tui-v2/rendering/open-tool-output.js +65 -12
- package/dist/tui-v2/rendering/open-tool-output.js.map +1 -1
- package/dist/tui-v2/rendering/pager-chrome.d.ts +12 -0
- package/dist/tui-v2/rendering/pager-chrome.js +56 -0
- package/dist/tui-v2/rendering/pager-chrome.js.map +1 -0
- package/dist/tui-v2/rendering/plan-view.js +1 -1
- package/dist/tui-v2/rendering/plan-view.js.map +1 -1
- package/dist/tui-v2/rendering/syntax-highlight.d.ts +37 -0
- package/dist/tui-v2/rendering/syntax-highlight.js +1303 -0
- package/dist/tui-v2/rendering/syntax-highlight.js.map +1 -0
- package/dist/tui-v2/rendering/theme.d.ts +28 -0
- package/dist/tui-v2/rendering/theme.js +28 -0
- package/dist/tui-v2/rendering/theme.js.map +1 -1
- package/dist/tui-v2/rendering/tool-presenter.d.ts +5 -0
- package/dist/tui-v2/rendering/tool-presenter.js +35 -3
- package/dist/tui-v2/rendering/tool-presenter.js.map +1 -1
- package/dist/tui-v2/state/transcript-hydrate.js +5 -0
- package/dist/tui-v2/state/transcript-hydrate.js.map +1 -1
- package/dist/tui-v2/state/transcript-reducer.js +12 -2
- package/dist/tui-v2/state/transcript-reducer.js.map +1 -1
- package/dist/tui-v2/state/transcript-store.d.ts +7 -0
- package/dist/tui-v2/state/transcript-store.js +46 -0
- package/dist/tui-v2/state/transcript-store.js.map +1 -1
- package/dist/tui-v2/state/transcript-types.d.ts +12 -0
- package/dist/tui-v2/state/transcript-types.js +9 -0
- package/dist/tui-v2/state/transcript-types.js.map +1 -1
- package/dist/types.d.ts +17 -1
- package/dist/ui/mentions.d.ts +6 -0
- package/dist/ui/mentions.js +50 -12
- package/dist/ui/mentions.js.map +1 -1
- package/dist/ui/plan-pane.js +1 -1
- package/dist/ui/plan-pane.js.map +1 -1
- package/package.json +18 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-evidence.js","sourceRoot":"","sources":["../../src/agent/task-evidence.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task-evidence.js","sourceRoot":"","sources":["../../src/agent/task-evidence.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,9 @@ export declare function markStepRunning(plan: TaskPlan, stepId: string): void;
|
|
|
26
26
|
export declare function markStepDone(plan: TaskPlan, stepId: string, note?: string | undefined): void;
|
|
27
27
|
export declare function markStepFailed(plan: TaskPlan, stepId: string, note?: string | undefined): void;
|
|
28
28
|
export declare function nextPendingStep(plan: TaskPlan): PlanStep | undefined;
|
|
29
|
+
export declare function isPlanTerminal(plan: TaskPlan): boolean;
|
|
30
|
+
export declare function isPlanSuccessful(plan: TaskPlan): boolean;
|
|
31
|
+
/** @deprecated Use isPlanTerminal or isPlanSuccessful explicitly. */
|
|
29
32
|
export declare function isPlanComplete(plan: TaskPlan): boolean;
|
|
30
33
|
/**
|
|
31
34
|
* Compact plan summary for LLM context injection. Keeps token count low.
|
|
@@ -35,3 +38,57 @@ export declare function formatPlanForPrompt(plan: TaskPlan): string;
|
|
|
35
38
|
* Terminal-formatted plan for user display. Uses Unicode box-drawing.
|
|
36
39
|
*/
|
|
37
40
|
export declare function formatPlanForDisplay(plan: TaskPlan): string;
|
|
41
|
+
/** Versioned dependency/resource metadata. Fields are optional for legacy persisted plans. */
|
|
42
|
+
export interface VersionedPlanStep extends PlanStep {
|
|
43
|
+
dependencies?: string[] | undefined;
|
|
44
|
+
resourceLocks?: string[] | undefined;
|
|
45
|
+
supersededBy?: string | undefined;
|
|
46
|
+
}
|
|
47
|
+
export interface VersionedTaskPlan extends Omit<TaskPlan, "steps"> {
|
|
48
|
+
schemaVersion: 2;
|
|
49
|
+
version: number;
|
|
50
|
+
steps: VersionedPlanStep[];
|
|
51
|
+
}
|
|
52
|
+
interface VersionedPlanOperation {
|
|
53
|
+
/** The plan version read by the caller. Stale operations are rejected. */
|
|
54
|
+
expectedVersion: number;
|
|
55
|
+
}
|
|
56
|
+
export type PlanOperation = VersionedPlanOperation & ({
|
|
57
|
+
type: "addTask";
|
|
58
|
+
step: VersionedPlanStep;
|
|
59
|
+
index?: number;
|
|
60
|
+
} | {
|
|
61
|
+
type: "editTask";
|
|
62
|
+
stepId: string;
|
|
63
|
+
changes: Partial<Omit<VersionedPlanStep, "id">>;
|
|
64
|
+
} | {
|
|
65
|
+
type: "removeTask";
|
|
66
|
+
stepId: string;
|
|
67
|
+
} | {
|
|
68
|
+
type: "supersedeTask";
|
|
69
|
+
stepId: string;
|
|
70
|
+
replacement: VersionedPlanStep;
|
|
71
|
+
} | {
|
|
72
|
+
type: "splitTask";
|
|
73
|
+
stepId: string;
|
|
74
|
+
steps: VersionedPlanStep[];
|
|
75
|
+
} | {
|
|
76
|
+
type: "mergeTasks";
|
|
77
|
+
stepIds: string[];
|
|
78
|
+
step: VersionedPlanStep;
|
|
79
|
+
} | {
|
|
80
|
+
type: "setDependencies";
|
|
81
|
+
stepId: string;
|
|
82
|
+
dependencies: string[];
|
|
83
|
+
});
|
|
84
|
+
export declare function deserializeTaskPlan(value: unknown): VersionedTaskPlan;
|
|
85
|
+
export declare function validatePlanDag(plan: Pick<VersionedTaskPlan, "steps">): {
|
|
86
|
+
ok: true;
|
|
87
|
+
} | {
|
|
88
|
+
ok: false;
|
|
89
|
+
reason: string;
|
|
90
|
+
};
|
|
91
|
+
export declare function assertValidPlanDag(plan: Pick<VersionedTaskPlan, "steps">): void;
|
|
92
|
+
export declare function readyPlanSteps(plan: Pick<VersionedTaskPlan, "steps">): VersionedPlanStep[];
|
|
93
|
+
export declare function applyPlanOperation(plan: VersionedTaskPlan, operation: PlanOperation): VersionedTaskPlan;
|
|
94
|
+
export {};
|
package/dist/agent/task-plan.js
CHANGED
|
@@ -48,11 +48,20 @@ export function markStepFailed(plan, stepId, note) {
|
|
|
48
48
|
export function nextPendingStep(plan) {
|
|
49
49
|
return plan.steps.find((s) => s.status === "pending");
|
|
50
50
|
}
|
|
51
|
-
export function
|
|
51
|
+
export function isPlanTerminal(plan) {
|
|
52
52
|
return plan.steps
|
|
53
53
|
.filter((s) => s.required !== false)
|
|
54
54
|
.every((s) => s.status === "done" || s.status === "failed" || s.status === "skipped");
|
|
55
55
|
}
|
|
56
|
+
export function isPlanSuccessful(plan) {
|
|
57
|
+
return plan.steps
|
|
58
|
+
.filter((s) => s.required !== false)
|
|
59
|
+
.every((s) => s.status === "done" || s.status === "skipped");
|
|
60
|
+
}
|
|
61
|
+
/** @deprecated Use isPlanTerminal or isPlanSuccessful explicitly. */
|
|
62
|
+
export function isPlanComplete(plan) {
|
|
63
|
+
return isPlanSuccessful(plan);
|
|
64
|
+
}
|
|
56
65
|
/**
|
|
57
66
|
* Compact plan summary for LLM context injection. Keeps token count low.
|
|
58
67
|
*/
|
|
@@ -95,4 +104,141 @@ export function formatPlanForDisplay(plan) {
|
|
|
95
104
|
lines.push(` Progress: ${done}/${plan.steps.length}`);
|
|
96
105
|
return lines.join("\n");
|
|
97
106
|
}
|
|
107
|
+
export function deserializeTaskPlan(value) {
|
|
108
|
+
if (!value || typeof value !== "object")
|
|
109
|
+
throw new Error("invalid task plan");
|
|
110
|
+
const raw = value;
|
|
111
|
+
if (!Array.isArray(raw.steps) || typeof raw.id !== "string" || typeof raw.goal !== "string") {
|
|
112
|
+
throw new Error("invalid task plan");
|
|
113
|
+
}
|
|
114
|
+
const plan = {
|
|
115
|
+
id: raw.id,
|
|
116
|
+
goal: raw.goal,
|
|
117
|
+
complexity: raw.complexity ?? "standard",
|
|
118
|
+
currentStepId: raw.currentStepId,
|
|
119
|
+
createdAt: raw.createdAt ?? new Date(0).toISOString(),
|
|
120
|
+
updatedAt: raw.updatedAt ?? raw.createdAt ?? new Date(0).toISOString(),
|
|
121
|
+
schemaVersion: 2,
|
|
122
|
+
version: typeof raw.version === "number" && raw.version >= 1 ? raw.version : 1,
|
|
123
|
+
steps: raw.steps.map((step) => ({
|
|
124
|
+
...step,
|
|
125
|
+
dependencies: [...(step.dependencies ?? [])],
|
|
126
|
+
resourceLocks: [...(step.resourceLocks ?? [])],
|
|
127
|
+
})),
|
|
128
|
+
};
|
|
129
|
+
assertValidPlanDag(plan);
|
|
130
|
+
return plan;
|
|
131
|
+
}
|
|
132
|
+
export function validatePlanDag(plan) {
|
|
133
|
+
const ids = new Set();
|
|
134
|
+
for (const step of plan.steps) {
|
|
135
|
+
if (ids.has(step.id))
|
|
136
|
+
return { ok: false, reason: `duplicate step id: ${step.id}` };
|
|
137
|
+
ids.add(step.id);
|
|
138
|
+
}
|
|
139
|
+
for (const step of plan.steps) {
|
|
140
|
+
for (const dependency of step.dependencies ?? []) {
|
|
141
|
+
if (!ids.has(dependency))
|
|
142
|
+
return { ok: false, reason: `unknown dependency ${dependency} for ${step.id}` };
|
|
143
|
+
if (dependency === step.id)
|
|
144
|
+
return { ok: false, reason: `self dependency: ${step.id}` };
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
const visiting = new Set();
|
|
148
|
+
const visited = new Set();
|
|
149
|
+
const byId = new Map(plan.steps.map((step) => [step.id, step]));
|
|
150
|
+
const visit = (id) => {
|
|
151
|
+
if (visiting.has(id))
|
|
152
|
+
return false;
|
|
153
|
+
if (visited.has(id))
|
|
154
|
+
return true;
|
|
155
|
+
visiting.add(id);
|
|
156
|
+
for (const dependency of byId.get(id)?.dependencies ?? [])
|
|
157
|
+
if (!visit(dependency))
|
|
158
|
+
return false;
|
|
159
|
+
visiting.delete(id);
|
|
160
|
+
visited.add(id);
|
|
161
|
+
return true;
|
|
162
|
+
};
|
|
163
|
+
for (const id of ids)
|
|
164
|
+
if (!visit(id))
|
|
165
|
+
return { ok: false, reason: "dependency cycle detected" };
|
|
166
|
+
return { ok: true };
|
|
167
|
+
}
|
|
168
|
+
export function assertValidPlanDag(plan) {
|
|
169
|
+
const result = validatePlanDag(plan);
|
|
170
|
+
if (!result.ok)
|
|
171
|
+
throw new Error(result.reason);
|
|
172
|
+
}
|
|
173
|
+
export function readyPlanSteps(plan) {
|
|
174
|
+
const done = new Set(plan.steps.filter((step) => step.status === "done" || step.status === "skipped").map((step) => step.id));
|
|
175
|
+
const held = new Set(plan.steps.filter((step) => step.status === "running").flatMap((step) => step.resourceLocks ?? []));
|
|
176
|
+
return plan.steps.filter((step) => step.status === "pending" &&
|
|
177
|
+
!step.supersededBy &&
|
|
178
|
+
(step.dependencies ?? []).every((id) => done.has(id)) &&
|
|
179
|
+
!(step.resourceLocks ?? []).some((resource) => held.has(resource)));
|
|
180
|
+
}
|
|
181
|
+
export function applyPlanOperation(plan, operation) {
|
|
182
|
+
if (operation.expectedVersion !== plan.version) {
|
|
183
|
+
throw new Error(`plan version mismatch: expected ${operation.expectedVersion}, current ${plan.version}`);
|
|
184
|
+
}
|
|
185
|
+
const normalizeStep = (step) => ({
|
|
186
|
+
...step,
|
|
187
|
+
dependencies: [...(step.dependencies ?? [])],
|
|
188
|
+
resourceLocks: [...(step.resourceLocks ?? [])],
|
|
189
|
+
});
|
|
190
|
+
let steps = plan.steps.map(normalizeStep);
|
|
191
|
+
const indexOf = (id) => {
|
|
192
|
+
const index = steps.findIndex((step) => step.id === id);
|
|
193
|
+
if (index < 0)
|
|
194
|
+
throw new Error(`unknown step: ${id}`);
|
|
195
|
+
return index;
|
|
196
|
+
};
|
|
197
|
+
if (operation.type === "addTask")
|
|
198
|
+
steps.splice(operation.index ?? steps.length, 0, normalizeStep(operation.step));
|
|
199
|
+
else if (operation.type === "editTask") {
|
|
200
|
+
const index = indexOf(operation.stepId);
|
|
201
|
+
steps[index] = normalizeStep({ ...steps[index], ...operation.changes, id: operation.stepId });
|
|
202
|
+
}
|
|
203
|
+
else if (operation.type === "removeTask") {
|
|
204
|
+
indexOf(operation.stepId);
|
|
205
|
+
if (steps.some((step) => (step.dependencies ?? []).includes(operation.stepId)))
|
|
206
|
+
throw new Error(`cannot remove depended-on step: ${operation.stepId}`);
|
|
207
|
+
steps = steps.filter((step) => step.id !== operation.stepId);
|
|
208
|
+
}
|
|
209
|
+
else if (operation.type === "setDependencies") {
|
|
210
|
+
const index = indexOf(operation.stepId);
|
|
211
|
+
steps[index] = { ...steps[index], dependencies: [...new Set(operation.dependencies)] };
|
|
212
|
+
}
|
|
213
|
+
else if (operation.type === "supersedeTask") {
|
|
214
|
+
const index = indexOf(operation.stepId);
|
|
215
|
+
steps[index] = { ...steps[index], status: "skipped", supersededBy: operation.replacement.id };
|
|
216
|
+
steps.splice(index + 1, 0, normalizeStep({ ...operation.replacement, dependencies: operation.replacement.dependencies ?? steps[index].dependencies }));
|
|
217
|
+
steps = steps.map((step) => ({ ...step, dependencies: (step.dependencies ?? []).map((id) => id === operation.stepId ? operation.replacement.id : id) }));
|
|
218
|
+
}
|
|
219
|
+
else if (operation.type === "splitTask") {
|
|
220
|
+
const index = indexOf(operation.stepId);
|
|
221
|
+
const original = steps[index];
|
|
222
|
+
if (operation.steps.length < 2)
|
|
223
|
+
throw new Error("split requires at least two replacement steps");
|
|
224
|
+
const replacements = operation.steps.map((step, i) => normalizeStep({ ...step, dependencies: (step.dependencies?.length ?? 0) > 0 ? step.dependencies : (i === 0 ? original.dependencies : [operation.steps[i - 1].id]) }));
|
|
225
|
+
steps.splice(index, 1, ...replacements);
|
|
226
|
+
const finalId = replacements.at(-1).id;
|
|
227
|
+
steps = steps.map((step) => ({ ...step, dependencies: (step.dependencies ?? []).map((id) => id === operation.stepId ? finalId : id) }));
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
if (operation.stepIds.length < 2)
|
|
231
|
+
throw new Error("merge requires at least two steps");
|
|
232
|
+
const indexes = operation.stepIds.map(indexOf);
|
|
233
|
+
const selected = new Set(operation.stepIds);
|
|
234
|
+
const first = Math.min(...indexes);
|
|
235
|
+
const dependencies = [...new Set(operation.stepIds.flatMap((id) => steps[indexOf(id)].dependencies ?? []).filter((id) => !selected.has(id)))];
|
|
236
|
+
steps = steps.filter((step) => !selected.has(step.id));
|
|
237
|
+
steps.splice(first, 0, normalizeStep({ ...operation.step, dependencies: operation.step.dependencies ?? dependencies }));
|
|
238
|
+
steps = steps.map((step) => ({ ...step, dependencies: (step.dependencies ?? []).map((id) => selected.has(id) ? operation.step.id : id) }));
|
|
239
|
+
}
|
|
240
|
+
const next = { ...plan, steps, version: plan.version + 1, updatedAt: new Date().toISOString() };
|
|
241
|
+
assertValidPlanDag(next);
|
|
242
|
+
return next;
|
|
243
|
+
}
|
|
98
244
|
//# sourceMappingURL=task-plan.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-plan.js","sourceRoot":"","sources":["../../src/agent/task-plan.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task-plan.js","sourceRoot":"","sources":["../../src/agent/task-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -207,21 +207,13 @@ export declare function requiresFreshWebSearch(prompt: string): boolean;
|
|
|
207
207
|
export declare function isLumpedSingleTask(taskTitles: string[]): boolean;
|
|
208
208
|
export declare function freshnessGuardMessage(now?: Date): string;
|
|
209
209
|
/**
|
|
210
|
-
*
|
|
211
|
-
*
|
|
212
|
-
* and forbids stopping before the goal is reached.
|
|
213
|
-
* Language/stack-agnostic: principles only; pick tools that match the project.
|
|
210
|
+
* Compact build inject — reinforces judgment defaults without restating the
|
|
211
|
+
* full system playbook. Stack-agnostic.
|
|
214
212
|
*/
|
|
215
213
|
export declare function buildWorkflowDirective(): string;
|
|
214
|
+
export declare function narrowNmapOperationDirective(): string;
|
|
216
215
|
/**
|
|
217
|
-
*
|
|
218
|
-
* yet. A pentest has a different shape than a coding build: you do NOT have
|
|
219
|
-
* a clear scope, stack, or feature list up front. The plan must be BUILT
|
|
220
|
-
* FROM recon findings, not invented in advance. This directive tells the
|
|
221
|
-
* agent that recon is allowed before a plan exists, that the first plan
|
|
222
|
-
* comes after real findings, that incremental task additions are expected
|
|
223
|
-
* as new attack surface appears, and that any out-of-scope discovery must
|
|
224
|
-
* be flagged to the user rather than acted on.
|
|
216
|
+
* Compact pentest inject — objective-first red team / VAPT defaults.
|
|
225
217
|
*/
|
|
226
218
|
export declare function pentestWorkflowDirective(): string;
|
|
227
219
|
/**
|
|
@@ -1144,8 +1144,14 @@ export function formatToolArgs(call) {
|
|
|
1144
1144
|
return `${call.args.target ?? ""}${call.args.record ? ` ${call.args.record}` : " A"}`;
|
|
1145
1145
|
if (call.name === "whois.lookup")
|
|
1146
1146
|
return String(call.args.target ?? "");
|
|
1147
|
-
if (call.name === "fs.read" ||
|
|
1147
|
+
if (call.name === "fs.read" ||
|
|
1148
|
+
call.name === "fs.write" ||
|
|
1149
|
+
call.name === "fs.append" ||
|
|
1150
|
+
call.name === "fs.edit" ||
|
|
1151
|
+
call.name === "fs.replaceLines" ||
|
|
1152
|
+
call.name === "fs.delete") {
|
|
1148
1153
|
return String(call.args.path ?? "");
|
|
1154
|
+
}
|
|
1149
1155
|
if (call.name === "fs.writeMany") {
|
|
1150
1156
|
const files = Array.isArray(call.args.files) ? call.args.files : [];
|
|
1151
1157
|
const names = files
|
|
@@ -1531,78 +1537,39 @@ export function freshnessGuardMessage(now = new Date()) {
|
|
|
1531
1537
|
"If web.search fails or has no results, say that current information is unavailable instead of guessing from memory.");
|
|
1532
1538
|
}
|
|
1533
1539
|
/**
|
|
1534
|
-
*
|
|
1535
|
-
*
|
|
1536
|
-
* and forbids stopping before the goal is reached.
|
|
1537
|
-
* Language/stack-agnostic: principles only; pick tools that match the project.
|
|
1540
|
+
* Compact build inject — reinforces judgment defaults without restating the
|
|
1541
|
+
* full system playbook. Stack-agnostic.
|
|
1538
1542
|
*/
|
|
1539
1543
|
export function buildWorkflowDirective() {
|
|
1540
1544
|
return [
|
|
1541
|
-
"BUILD
|
|
1542
|
-
"
|
|
1543
|
-
"
|
|
1544
|
-
"
|
|
1545
|
-
"
|
|
1546
|
-
"",
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
"
|
|
1552
|
-
"-
|
|
1553
|
-
"",
|
|
1554
|
-
"
|
|
1555
|
-
"-
|
|
1556
|
-
"-
|
|
1557
|
-
"- ONE task at a time, in ORDER.",
|
|
1558
|
-
"- Write complete files; never shorten to fit a tool call. Prefer fs.writeMany for several files, fs.write for one large file, fs.edit for exact text, fs.replaceLines only with fresh line numbers from fs.read.",
|
|
1559
|
-
"- VERIFY before done: after writes, confirm content; after commands, exit 0; after builds, the project’s real build/test command succeeds. A dev server 'ready' line is NOT proof the app is correct — run the stack’s build or tests when they exist.",
|
|
1560
|
-
"- On failure: mark failed, diagnose root cause, fix, retry. Do not jump edits without reading the error context.",
|
|
1561
|
-
"- NEVER claim done / installed / running without a successful tool result you actually saw.",
|
|
1562
|
-
"- For local server apps: shell.start (not background via shell.exec), shell.tail + one localhost probe, leave running, report URL + job id.",
|
|
1563
|
-
"- THE DELIVERABLE IS THE WORKING FEATURE, NOT THE SCAFFOLD. Replace starter boilerplate with what the user asked for (todo UI, API routes, CLI commands, etc.). Leaving the default starter is a failure even if build passes.",
|
|
1564
|
-
"- REVISING PLANS: new user requests → plan.create with prior completed tasks preserved + new tasks appended; wait for approval; do not re-run done tasks. Run-only requests after a finished plan → tools only, no new plan.",
|
|
1565
|
-
"",
|
|
1566
|
-
"FORBIDDEN until plan.create + user /implement: fs.write, fs.writeMany, fs.edit, fs.append, shell.exec (except bare version probes), shell.start, pkg.install, pkg.uninstall, and all scaffolders. Allowed before the plan: fs.list/read/search, tool.check, sysinfo, web.search/web.fetch (docs only), and plan.create. If nudged to act with no plan yet: explore read-only (optional web research), then plan.create — never freestyle scaffold. Scaffolders/install can take many quiet minutes — do not abandon them; if a run is interrupted but package.json already exists, CONTINUE (npm install + implement feature), do not re-scaffold.",
|
|
1567
|
-
"Trivial single-file typo fixes may skip the plan; multi-file apps/features ALWAYS plan.create first, then wait for /implement.",
|
|
1545
|
+
"BUILD FOCUS (this turn is a build/scaffold/feature — use judgment, not a rigid script):",
|
|
1546
|
+
"EXPLORE once: read WORKSPACE STATUS; list the user destination and candidate project only as needed. After a project root is known, work there — do NOT repeatedly relist the parent destination. Non-empty dirs → CONTINUE an existing project / existing stack (NEVER re-scaffold). 'Operation cancelled' = failure.",
|
|
1547
|
+
"UNDERSTAND: match existing stack from manifests/lockfiles (package manager from lockfile). Empty path → pick a modern default and say so. Stack-agnostic scaffolding only into NEW EMPTY folders.",
|
|
1548
|
+
"Scaffold destination is the new subfolder (e.g. Desktop/app), not the parent. Feature apps: replace starter boilerplate — scaffold alone is a failure. For multi-phase app builds, create one concise durable plan with meaningful tasks before mutation and keep task states current; trivial edits can skip tasks.",
|
|
1549
|
+
"Local apps end with shell.start + probe; LEAVE the server running; report URL/port/job id. Absolute paths; never write the user app into the agent package tree.",
|
|
1550
|
+
"On tool WARN/error: change approach — never retry the identical failing command. Debug by root cause; never stop at diagnosis without fix+re-verify.",
|
|
1551
|
+
].join("\n");
|
|
1552
|
+
}
|
|
1553
|
+
export function narrowNmapOperationDirective() {
|
|
1554
|
+
return [
|
|
1555
|
+
"NARROW NMAP OPERATION (the user requested one bounded scan, not a broader pentest):",
|
|
1556
|
+
"- Call net.scan exactly once with the requested target, ports, scan type, and timing/profile semantics.",
|
|
1557
|
+
"- Do NOT call plan.create or task.update. Do NOT add WHOIS, DNS, HTTP fetching, crawling, vulnerability checks, reconnaissance, or attack-surface analysis unless the user explicitly requested them.",
|
|
1558
|
+
"- If the scan needs administrator access, let net.scan open the secure password prompt. Never retry through shell.exec or place a password in command text.",
|
|
1559
|
+
"- For a background result, use only backgroundJob.id as the shell.tail id. Report the canonical job ID and current/terminal status; do not mistake the artifact filename for the ID.",
|
|
1560
|
+
"- Stop after reporting this scan's result or durable job receipt. Ask before broadening the operation.",
|
|
1568
1561
|
].join("\n");
|
|
1569
1562
|
}
|
|
1570
1563
|
/**
|
|
1571
|
-
*
|
|
1572
|
-
* yet. A pentest has a different shape than a coding build: you do NOT have
|
|
1573
|
-
* a clear scope, stack, or feature list up front. The plan must be BUILT
|
|
1574
|
-
* FROM recon findings, not invented in advance. This directive tells the
|
|
1575
|
-
* agent that recon is allowed before a plan exists, that the first plan
|
|
1576
|
-
* comes after real findings, that incremental task additions are expected
|
|
1577
|
-
* as new attack surface appears, and that any out-of-scope discovery must
|
|
1578
|
-
* be flagged to the user rather than acted on.
|
|
1564
|
+
* Compact pentest inject — objective-first red team / VAPT defaults.
|
|
1579
1565
|
*/
|
|
1580
1566
|
export function pentestWorkflowDirective() {
|
|
1581
1567
|
return [
|
|
1582
|
-
"PENTEST
|
|
1583
|
-
"
|
|
1584
|
-
"
|
|
1585
|
-
"
|
|
1586
|
-
"
|
|
1587
|
-
"5. STAY INSIDE THE ENGAGEMENT SCOPE. The engagement scope is the hard boundary. Do NOT scan, probe, fuzz, or attack hosts / domains / ports that are out of scope. If a recon result exposes something clearly out of scope (a discovered subdomain, an adjacent service, an unrelated host, a port on a different network), STOP and FLAG it to the user in plain prose — do NOT act on it automatically. Out-of-scope targets require explicit user confirmation before any active testing.",
|
|
1588
|
-
"6. ENUMERATE WITH STACK-TARGETED TOOLS. Most findings come from thorough, STACK-TARGETED enumeration — not from blindly fuzzing with every extension (.php, .asp, .aspx, .jsp, .cgi). Once you know the stack from step 2, use the right wordlists, extensions, and payloads for THAT stack ONLY. Once you have a vector, carry exploitation through with tools (build / adapt a PoC, generate the payload, run the attack, verify the result) — but pick the vector FROM the findings, not from a hunch.",
|
|
1589
|
-
"7. DISCOVERY HYGIENE AND SIGNAL CONTROL. Do not guess dozens of directories/endpoints or wordlist paths and send speculative fetches. Derive candidates from returned links, robots.txt, sitemap, assets, banners, and the identified stack; use a dedicated, bounded discovery tool when one is warranted. For directory/content discovery, select an appropriate fuzzer (ffuf, gobuster, feroxbuster, dirsearch, or dirb) only after stack fingerprinting and a verified wordlist. Before using a non-standard binary call tool.check; if missing and appropriate, install only that needed tool via pkg.install and verify it before use. Before wordlist-driven discovery call wordlist.find. Configure scanners for quiet/structured output, include only candidate hits or relevant status codes, and filter known negative/wildcard responses at the scanner. Return successes and unusual findings; retain one representative failure only when there are no findings. Never spend model context on progress bars, verbose banners, or thousands of repeated failures.",
|
|
1590
|
-
"8. COMPLETION = STOP. When plan tasks are done and you have written the findings/report (or the user only asked for recon findings), your final deliverable is the report/summary. Do NOT then explore the local workspace, do NOT read the clai package.json, do NOT run npm/bun/vite/next, and do NOT shell.start a localhost server. Remote targets are not local apps. Only start a local server if the user explicitly asked to run or test a local project.",
|
|
1591
|
-
"",
|
|
1592
|
-
"WHAT REQUIRES A PLAN vs. WHAT DOES NOT (read this carefully):",
|
|
1593
|
-
"- Read-only recon (whois.lookup, dns.lookup, net.context, http.fetch GET, tool.batch of read-only lookups, net.scan, pentest.recon) DOES NOT require an active plan or an in-progress task. These calls gather the findings the plan is built on; they are allowed before plan.create and outside the task-update gate.",
|
|
1594
|
-
"- Active / exploit calls (http.fetch with a non-GET method or a body, custom payloads, brute-force, sqlmap / hydra / msfconsole, listener / callback setup, shellcode execution, anything that mutates the target or generates side-effects) DO require an active plan AND an in-progress task AND a one-time pentest authorization prompt. Run them inside a plan task and update the task as you go (in_progress → work → done).",
|
|
1595
|
-
"",
|
|
1596
|
-
"CRITICAL RULES during a pentest engagement:",
|
|
1597
|
-
"- TECH STACK AWARENESS: Every enumeration/exploit tool call MUST be relevant to the identified tech stack. If you detected Next.js, do NOT fuzz for .php, .asp, or .jsp files — focus on /_next/data, /api/ routes, .env, client-side JS analysis, SSR endpoints. If you detected WordPress, focus on wp-admin, wp-content, xmlrpc.php, plugin/theme enumeration. Wrong-stack tool calls waste context tokens and produce zero findings.",
|
|
1598
|
-
"- VERIFY every claim from real tool output: an open port, a service version, an exploit success, a captured credential, a shell. Never fabricate findings. A reported 'vulnerability' without evidence is worse than no report.",
|
|
1599
|
-
"- EVIDENCE: capture the exact command run and its real output for every finding. Long recon / scan transcripts are saved as artifacts you can reference; cite the artifact path in your report.",
|
|
1600
|
-
"- NON-DESTRUCTIVE BY DEFAULT: prove a vulnerability with the least-invasive evidence (a benign PoC, a marker file, a reflected value, whoami / id after a shell). Do not destroy data, DoS the target, or exfiltrate real sensitive data unless the user explicitly asks for that impact.",
|
|
1601
|
-
"- SCOPE BOUNDARY: if a recon call returns something clearly out of the engagement scope, do NOT keep exploring it. Flag it to the user in plain prose and ask whether to add it to scope. Do not silently expand scope.",
|
|
1602
|
-
"- NO-SCOPE FALLBACK: if no engagement scope is configured, treat the explicitly-named target(s) in the user's request as the scope and flag everything else (subdomains, adjacent IPs, unrelated services) before touching it.",
|
|
1603
|
-
"- REPORTING: each finding = TITLE, SEVERITY (critical / high / medium / low / info), AFFECTED asset or endpoint, EVIDENCE (command + key output), REPRODUCTION steps, IMPACT, concrete REMEDIATION.",
|
|
1604
|
-
"- CTF / BOXES: the goal is the flag or the foothold — enumerate, get a shell, escalate, read the flag. Iterate quickly across likely vectors instead of exhausting one, and move on the moment you have what the objective needs.",
|
|
1605
|
-
"- NO LOCAL DEV SERVER ON REMOTE ENGAGEMENTS: shell.start / npm run dev / bun run / vite / next dev / python -m http.server are FORBIDDEN unless the user explicitly named a local path/app to test. The working directory may be the clai tool itself — that is NOT the target. Never treat ~/.clai or the clai source tree as the application under test.",
|
|
1568
|
+
"PENTEST FOCUS (security / pentest / VAPT engagement — find and verify real findings, not theater):",
|
|
1569
|
+
"RECON FIRST (no plan needed): whois.lookup, dns.lookup, net.context, http.fetch GET, tool.batch, net.scan, pentest.recon — plus shell enum/fuzz as needed. Map surface hungrily: subdomains, ports (escalate beyond top-100 when thorough), content/API enum (ffuf/gobuster + wordlist.find), JS harvest, auth entry points. Background long scans; continue other recon.",
|
|
1570
|
+
"Threat model from evidence → actively test high-ROI vectors (authz/IDOR, auth/session/JWT, business logic, real injection sinks, secrets in JS). Confirm with PoC evidence — not port lists alone.",
|
|
1571
|
+
"Preferred shapes: RECON RESPONSE → ANALYSIS + PLAN RESPONSE (standalone plan.create from returned tool output). Incremental tasks as attack surface grows. Report TITLE/SEVERITY/EVIDENCE/REPRO/IMPACT/REMEDIATION + residual/untested.",
|
|
1572
|
+
"Never claim mature posture if major classes were untested. Stay in engagement scope; FLAG out-of-scope hosts. Non-destructive default. No local dev server for remote targets.",
|
|
1606
1573
|
].join("\n");
|
|
1607
1574
|
}
|
|
1608
1575
|
/**
|
|
@@ -1613,9 +1580,9 @@ export function pentestNoLocalServerDirective() {
|
|
|
1613
1580
|
return [
|
|
1614
1581
|
"REMOTE / PENTEST SESSION RULE (always on for this engagement):",
|
|
1615
1582
|
"- Target is remote (or remote-style). After findings/report delivery, STOP.",
|
|
1616
|
-
"-
|
|
1617
|
-
"-
|
|
1618
|
-
"- If
|
|
1583
|
+
"- Do not shell.start / npm|bun|pnpm|yarn run dev / vite / next dev / python -m http.server unless the user explicitly asked for a local app.",
|
|
1584
|
+
"- Do not explore the clai workspace or package.json to invent a local server task.",
|
|
1585
|
+
"- If assessment is complete, answer in prose with evidence — no local-server follow-up.",
|
|
1619
1586
|
].join("\n");
|
|
1620
1587
|
}
|
|
1621
1588
|
export function shouldDimToolChatter(call) {
|