fix(editor): Resolve nodes stuck on loading after execution in instance-ai preview (#28450)

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Mutasem Aldmour 2026-04-16 21:07:19 +02:00 committed by GitHub
parent fb2bc1ca5f
commit c97c3b4d12
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
26 changed files with 1519 additions and 42 deletions

View file

@ -16,7 +16,8 @@
"**/CHANGELOG.md", "**/CHANGELOG.md",
"**/cl100k_base.json", "**/cl100k_base.json",
"**/o200k_base.json", "**/o200k_base.json",
"**/*.generated.ts" "**/*.generated.ts",
"**/expectations/**"
] ]
}, },
"formatter": { "formatter": {

View file

@ -253,7 +253,6 @@ Enabled by `E2E_TESTS=true` (set automatically by the Playwright fixture base):
| `POST /rest/instance-ai/test/tool-trace` | Load trace events into n8n memory | | `POST /rest/instance-ai/test/tool-trace` | Load trace events into n8n memory |
| `GET /rest/instance-ai/test/tool-trace/:slug` | Retrieve recorded events | | `GET /rest/instance-ai/test/tool-trace/:slug` | Retrieve recorded events |
| `DELETE /rest/instance-ai/test/tool-trace/:slug` | Clear between tests | | `DELETE /rest/instance-ai/test/tool-trace/:slug` | Clear between tests |
| `POST /rest/instance-ai/test/drain-background-tasks` | Cancel leftover background tasks |
### Page Objects ### Page Objects

View file

@ -12,17 +12,21 @@ jest.mock('../eval/execution.service', () => ({
EvalExecutionService: jest.fn(), EvalExecutionService: jest.fn(),
})); }));
import type { Request } from 'express'; import type { WorkflowRepository } from '@n8n/db';
import type { Request, Response } from 'express';
import { mock } from 'jest-mock-extended'; import { mock } from 'jest-mock-extended';
import { ForbiddenError } from '@/errors/response-errors/forbidden.error'; import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
import { InstanceAiTestController } from '../instance-ai-test.controller'; import { InstanceAiTestController } from '../instance-ai-test.controller';
import type { InstanceAiService } from '../instance-ai.service'; import type { InstanceAiService } from '../instance-ai.service';
import type { InstanceAiThreadRepository } from '../repositories/instance-ai-thread.repository';
describe('InstanceAiTestController', () => { describe('InstanceAiTestController', () => {
const instanceAiService = mock<InstanceAiService>(); const instanceAiService = mock<InstanceAiService>();
const controller = new InstanceAiTestController(instanceAiService); const threadRepo = mock<InstanceAiThreadRepository>();
const workflowRepo = mock<WorkflowRepository>();
const controller = new InstanceAiTestController(instanceAiService, threadRepo, workflowRepo);
const originalEnv = process.env; const originalEnv = process.env;
@ -77,8 +81,9 @@ describe('InstanceAiTestController', () => {
const events = [{ kind: 'tool-call' }]; const events = [{ kind: 'tool-call' }];
instanceAiService.getTraceEvents.mockReturnValue(events); instanceAiService.getTraceEvents.mockReturnValue(events);
const req = mock<Request>(); const req = mock<Request>();
const res = mock<Response>();
const result = controller.getToolTrace(req, 'my-test'); const result = controller.getToolTrace(req, res, 'my-test');
expect(instanceAiService.getTraceEvents).toHaveBeenCalledWith('my-test'); expect(instanceAiService.getTraceEvents).toHaveBeenCalledWith('my-test');
expect(result).toEqual({ events }); expect(result).toEqual({ events });
@ -87,16 +92,18 @@ describe('InstanceAiTestController', () => {
it('should throw ForbiddenError when trace replay is not enabled', () => { it('should throw ForbiddenError when trace replay is not enabled', () => {
delete process.env.E2E_TESTS; delete process.env.E2E_TESTS;
const req = mock<Request>(); const req = mock<Request>();
const res = mock<Response>();
expect(() => controller.getToolTrace(req, 'my-test')).toThrow(ForbiddenError); expect(() => controller.getToolTrace(req, res, 'my-test')).toThrow(ForbiddenError);
}); });
}); });
describe('clearToolTrace', () => { describe('clearToolTrace', () => {
it('should clear trace events for slug', () => { it('should clear trace events for slug', () => {
const req = mock<Request>(); const req = mock<Request>();
const res = mock<Response>();
const result = controller.clearToolTrace(req, 'my-test'); const result = controller.clearToolTrace(req, res, 'my-test');
expect(instanceAiService.clearTraceEvents).toHaveBeenCalledWith('my-test'); expect(instanceAiService.clearTraceEvents).toHaveBeenCalledWith('my-test');
expect(result).toEqual({ ok: true }); expect(result).toEqual({ ok: true });
@ -105,25 +112,33 @@ describe('InstanceAiTestController', () => {
it('should throw ForbiddenError when trace replay is not enabled', () => { it('should throw ForbiddenError when trace replay is not enabled', () => {
delete process.env.E2E_TESTS; delete process.env.E2E_TESTS;
const req = mock<Request>(); const req = mock<Request>();
const res = mock<Response>();
expect(() => controller.clearToolTrace(req, 'my-test')).toThrow(ForbiddenError); expect(() => controller.clearToolTrace(req, res, 'my-test')).toThrow(ForbiddenError);
}); });
}); });
describe('drainBackgroundTasks', () => { describe('reset', () => {
it('should cancel all background tasks and return count', () => { it('should clear per-thread state and delete threads + workflows', async () => {
instanceAiService.cancelAllBackgroundTasks.mockReturnValue(3); threadRepo.find.mockResolvedValue([{ id: 't1' }, { id: 't2' }] as never);
workflowRepo.find.mockResolvedValue([{ id: 'w1' }, { id: 'w2' }, { id: 'w3' }] as never);
const result = controller.drainBackgroundTasks(); const result = await controller.reset();
expect(instanceAiService.cancelAllBackgroundTasks).toHaveBeenCalled(); expect(instanceAiService.cancelAllBackgroundTasks).toHaveBeenCalled();
expect(result).toEqual({ ok: true, cancelled: 3 }); expect(instanceAiService.clearThreadState).toHaveBeenCalledWith('t1');
expect(instanceAiService.clearThreadState).toHaveBeenCalledWith('t2');
expect(threadRepo.clear).toHaveBeenCalled();
expect(workflowRepo.delete).toHaveBeenCalledWith('w1');
expect(workflowRepo.delete).toHaveBeenCalledWith('w2');
expect(workflowRepo.delete).toHaveBeenCalledWith('w3');
expect(result).toEqual({ ok: true, threadsDeleted: 2, workflowsDeleted: 3 });
}); });
it('should throw ForbiddenError when trace replay is not enabled', () => { it('should throw ForbiddenError when trace replay is not enabled', async () => {
delete process.env.E2E_TESTS; delete process.env.E2E_TESTS;
expect(() => controller.drainBackgroundTasks()).toThrow(ForbiddenError); await expect(controller.reset()).rejects.toThrow(ForbiddenError);
}); });
}); });
}); });

View file

@ -1,8 +1,10 @@
import { WorkflowRepository } from '@n8n/db';
import { RestController, Get, Post, Delete, Param } from '@n8n/decorators'; import { RestController, Get, Post, Delete, Param } from '@n8n/decorators';
import type { Request } from 'express'; import type { Request, Response } from 'express';
import { ForbiddenError } from '@/errors/response-errors/forbidden.error'; import { ForbiddenError } from '@/errors/response-errors/forbidden.error';
import { InstanceAiThreadRepository } from './repositories/instance-ai-thread.repository';
import { InstanceAiService } from './instance-ai.service'; import { InstanceAiService } from './instance-ai.service';
/** /**
@ -11,7 +13,11 @@ import { InstanceAiService } from './instance-ai.service';
*/ */
@RestController('/instance-ai') @RestController('/instance-ai')
export class InstanceAiTestController { export class InstanceAiTestController {
constructor(private readonly instanceAiService: InstanceAiService) {} constructor(
private readonly instanceAiService: InstanceAiService,
private readonly threadRepo: InstanceAiThreadRepository,
private readonly workflowRepo: WorkflowRepository,
) {}
@Post('/test/tool-trace', { skipAuth: true }) @Post('/test/tool-trace', { skipAuth: true })
loadToolTrace(req: Request) { loadToolTrace(req: Request) {
@ -26,23 +32,52 @@ export class InstanceAiTestController {
} }
@Get('/test/tool-trace/:slug', { skipAuth: true }) @Get('/test/tool-trace/:slug', { skipAuth: true })
getToolTrace(_req: Request, @Param('slug') slug: string) { getToolTrace(_req: Request, _res: Response, @Param('slug') slug: string) {
this.assertTraceReplayEnabled(); this.assertTraceReplayEnabled();
return { events: this.instanceAiService.getTraceEvents(slug) }; return { events: this.instanceAiService.getTraceEvents(slug) };
} }
@Delete('/test/tool-trace/:slug', { skipAuth: true }) @Delete('/test/tool-trace/:slug', { skipAuth: true })
clearToolTrace(_req: Request, @Param('slug') slug: string) { clearToolTrace(_req: Request, _res: Response, @Param('slug') slug: string) {
this.assertTraceReplayEnabled(); this.assertTraceReplayEnabled();
this.instanceAiService.clearTraceEvents(slug); this.instanceAiService.clearTraceEvents(slug);
return { ok: true }; return { ok: true };
} }
@Post('/test/drain-background-tasks', { skipAuth: true }) /**
drainBackgroundTasks() { * Wipe all Instance AI state and user workflows between tests.
*
* Recording pollution vector: the orchestrator's system prompt tells the LLM
* to "list existing workflows/credentials first", so workflows left over from
* a prior test show up in `list-workflows` tool output and leak into the next
* test's recorded responses (observed: a follow-up test's recording referencing
* the previous test's workflow name).
*
* This endpoint cancels background tasks, clears per-thread in-memory state,
* and deletes all thread + workflow rows.
*/
@Post('/test/reset', { skipAuth: true })
async reset() {
this.assertTraceReplayEnabled(); this.assertTraceReplayEnabled();
const cancelled = this.instanceAiService.cancelAllBackgroundTasks();
return { ok: true, cancelled }; this.instanceAiService.cancelAllBackgroundTasks();
const threads = await this.threadRepo.find({ select: ['id'] });
for (const { id } of threads) {
await this.instanceAiService.clearThreadState(id);
}
await this.threadRepo.clear();
const workflowIds = await this.workflowRepo.find({ select: ['id'] });
for (const { id } of workflowIds) {
await this.workflowRepo.delete(id);
}
return {
ok: true,
threadsDeleted: threads.length,
workflowsDeleted: workflowIds.length,
};
} }
private assertTraceReplayEnabled(): void { private assertTraceReplayEnabled(): void {

View file

@ -246,7 +246,7 @@ watch(
}, },
); );
defineExpose({ iframeRef }); defineExpose({ iframeRef, reloadExecution: loadExecution });
</script> </script>
<template> <template>

View file

@ -275,6 +275,35 @@ describe('getLatestExecutionId', () => {
const parent = makeAgentNode({ children: [child] }); const parent = makeAgentNode({ children: [child] });
expect(getLatestExecutionId(parent)).toEqual({ executionId: 'exec-child', workflowId: 'wf-1' }); expect(getLatestExecutionId(parent)).toEqual({ executionId: 'exec-child', workflowId: 'wf-1' });
}); });
test('prefers build-workflow result.workflowId over run-workflow args.workflowId', () => {
// Trace replay case: the cached LLM's run-workflow args carry the
// recording's stale workflowId, but build-workflow's result always
// reflects the workflow actually created in this run.
const builder = makeAgentNode({
agentId: 'builder-1',
toolCalls: [
makeToolCall({
toolName: 'build-workflow',
result: { success: true, workflowId: 'wf-real' },
}),
],
});
const node = makeAgentNode({
children: [builder],
toolCalls: [
makeToolCall({
toolName: 'executions',
args: { action: 'run', workflowId: 'wf-stale-from-recording' },
result: { executionId: 'exec-1', status: 'success' },
}),
],
});
expect(getLatestExecutionId(node)).toEqual({
executionId: 'exec-1',
workflowId: 'wf-real',
});
});
}); });
describe('getLatestDataTableResult', () => { describe('getLatestDataTableResult', () => {

View file

@ -126,15 +126,19 @@ describe('useEventRelay', () => {
expect(relay).toHaveBeenCalledWith(nodeEvent); expect(relay).toHaveBeenCalledWith(nodeEvent);
}); });
test('does not forward when execution is finished', async () => { test('relays executionFinished when execution appears already finished', async () => {
setup({ activeWfId: 'wf-1' }); setup({ activeWfId: 'wf-1' });
// Vue may coalesce ref updates so the watcher fires for the first time
// with the execution already finished (prev status is undefined).
// The relay should still send executionFinished.
workflowExecutions.value = new Map([ workflowExecutions.value = new Map([
['wf-1', createExecState('wf-1', 'exec-1', 'success', [])], ['wf-1', createExecState('wf-1', 'exec-1', 'success', [])],
]); ]);
await nextTick(); await nextTick();
expect(relay).not.toHaveBeenCalled(); expect(relay).toHaveBeenCalledTimes(1);
expect(relay.mock.calls[0][0].type).toBe('executionFinished');
}); });
test('does not forward when active workflow does not match', async () => { test('does not forward when active workflow does not match', async () => {

View file

@ -100,6 +100,27 @@ describe('useExecutionPushEvents', () => {
// Buffer should be reset for the new execution // Buffer should be reset for the new execution
expect(getBufferedEvents('wf-1')).toHaveLength(1); // only executionStarted for exec-2 expect(getBufferedEvents('wf-1')).toHaveLength(1); // only executionStarted for exec-2
}); });
test('appends to eventLog when same executionId resumes (Wait node)', () => {
const { getStatus, getBufferedEvents } = useExecutionPushEvents();
// First part: execution starts, nodes run, then Wait pauses
simulatePushEvent(executionStartedEvent('exec-1', 'wf-1'));
simulatePushEvent(nodeExecuteBeforeEvent('exec-1', 'ManualTrigger'));
simulatePushEvent(nodeExecuteAfterEvent('exec-1', 'ManualTrigger'));
simulatePushEvent(nodeExecuteBeforeEvent('exec-1', 'Wait'));
simulatePushEvent(nodeExecuteAfterEvent('exec-1', 'Wait'));
expect(getBufferedEvents('wf-1')).toHaveLength(5);
// Wait resumes — server sends another executionStarted with same ID
simulatePushEvent(executionStartedEvent('exec-1', 'wf-1'));
expect(getStatus('wf-1')).toBe('running');
// eventLog should grow (append), not reset
expect(getBufferedEvents('wf-1')).toHaveLength(6);
expect(getBufferedEvents('wf-1')[5].type).toBe('executionStarted');
});
}); });
describe('executionFinished', () => { describe('executionFinished', () => {

View file

@ -92,6 +92,16 @@ export interface LatestExecution {
/** /**
* Walks an agent tree depth-first (most recent last) and returns the executionId * Walks an agent tree depth-first (most recent last) and returns the executionId
* and workflowId from the latest completed run-workflow tool result. * and workflowId from the latest completed run-workflow tool result.
*
* The workflowId preference order is:
* 1. The sibling build-workflow tool's result.workflowId (always the real
* current-run ID, since build-workflow hits the live backend).
* 2. The run-workflow tool call's args.workflowId (falls back for flows that
* run a pre-existing workflow without building it first).
*
* This ordering matters for trace-replay: the cached LLM's args.workflowId
* carries the ID from the original recording, but build-workflow's result
* always reflects the real workflow created during replay.
*/ */
export function getLatestExecutionId(node: InstanceAiAgentNode): LatestExecution | undefined { export function getLatestExecutionId(node: InstanceAiAgentNode): LatestExecution | undefined {
for (let i = node.children.length - 1; i >= 0; i--) { for (let i = node.children.length - 1; i >= 0; i--) {
@ -108,10 +118,16 @@ export function getLatestExecutionId(node: InstanceAiAgentNode): LatestExecution
typeof tc.result === 'object' typeof tc.result === 'object'
) { ) {
const result = tc.result as Record<string, unknown>; const result = tc.result as Record<string, unknown>;
if (typeof result.executionId !== 'string') continue;
const buildResult = getLatestBuildResult(node);
const args = tc.args as Record<string, unknown> | undefined; const args = tc.args as Record<string, unknown> | undefined;
if (typeof result.executionId === 'string' && typeof args?.workflowId === 'string') { const workflowId =
return { executionId: result.executionId, workflowId: args.workflowId }; buildResult?.workflowId ??
} (typeof args?.workflowId === 'string' ? args.workflowId : undefined);
if (!workflowId) continue;
return { executionId: result.executionId, workflowId };
} }
} }
return undefined; return undefined;

View file

@ -5,6 +5,8 @@ import { useI18n } from '@n8n/i18n';
import type { PushMessage } from '@n8n/api-types'; import type { PushMessage } from '@n8n/api-types';
import WorkflowPreview from '@/app/components/WorkflowPreview.vue'; import WorkflowPreview from '@/app/components/WorkflowPreview.vue';
import { useWorkflowsListStore } from '@/app/stores/workflowsList.store'; import { useWorkflowsListStore } from '@/app/stores/workflowsList.store';
import { useWorkflowsStore } from '@/app/stores/workflows.store';
import { useInstanceAiStore } from '../instanceAi.store';
import type { IWorkflowDb } from '@/Interface'; import type { IWorkflowDb } from '@/Interface';
const props = withDefaults( const props = withDefaults(
@ -23,6 +25,8 @@ const emit = defineEmits<{
const i18n = useI18n(); const i18n = useI18n();
const workflowsListStore = useWorkflowsListStore(); const workflowsListStore = useWorkflowsListStore();
const workflowsStore = useWorkflowsStore();
const instanceAiStore = useInstanceAiStore();
const previewRef = useTemplateRef<InstanceType<typeof WorkflowPreview>>('previewComponent'); const previewRef = useTemplateRef<InstanceType<typeof WorkflowPreview>>('previewComponent');
const workflow = ref<IWorkflowDb | null>(null); const workflow = ref<IWorkflowDb | null>(null);
@ -93,11 +97,79 @@ watch(
{ immediate: true }, { immediate: true },
); );
// --- Execution completion polling ---
// The execute_workflow tool returns immediately (fire-and-forget). When the
// preview loads the execution it may still be running or waiting (e.g. Wait
// node). Poll until the execution finishes so the iframe can reload with the
// final node statuses.
//
// While the agent is streaming we poll indefinitely. Once streaming stops we
// allow a short grace window (MAX_POST_STREAM_POLLS) for the execution to
// finish before giving up.
const POLL_INTERVAL_MS = 1_500;
const MAX_POST_STREAM_POLLS = 5; // ~7.5 s grace after streaming ends
let pollTimer: ReturnType<typeof setTimeout> | null = null;
let postStreamAttempts = 0;
function stopPolling() {
if (pollTimer !== null) {
clearTimeout(pollTimer);
pollTimer = null;
}
postStreamAttempts = 0;
}
async function pollExecutionUntilDone(executionId: string) {
if (executionId !== props.executionId) return;
if (instanceAiStore.isStreaming) {
postStreamAttempts = 0;
} else {
postStreamAttempts++;
if (postStreamAttempts > MAX_POST_STREAM_POLLS) return;
}
try {
const execution = await workflowsStore.fetchExecutionDataById(executionId);
if (executionId !== props.executionId) return; // stale
const isFinished = execution?.finished === true;
if (isFinished) {
// Tell the iframe to re-load the now-complete execution data
const preview = previewRef.value as
| { reloadExecution?: () => void; iframeRef?: HTMLIFrameElement | null }
| undefined;
preview?.reloadExecution?.();
return;
}
} catch {
// Execution might not be ready yet retry
}
pollTimer = setTimeout(() => {
void pollExecutionUntilDone(executionId);
}, POLL_INTERVAL_MS);
}
watch(
() => props.executionId,
(execId) => {
stopPolling();
if (execId) {
// Start polling after a short initial delay to give the execution time
pollTimer = setTimeout(() => {
void pollExecutionUntilDone(execId);
}, POLL_INTERVAL_MS);
}
},
);
// Listen for iframe ready signal // Listen for iframe ready signal
window.addEventListener('message', handleIframeMessage); window.addEventListener('message', handleIframeMessage);
onBeforeUnmount(() => { onBeforeUnmount(() => {
window.removeEventListener('message', handleIframeMessage); window.removeEventListener('message', handleIframeMessage);
stopPolling();
}); });
defineExpose({ relayPushEvent }); defineExpose({ relayPushEvent });

View file

@ -86,7 +86,13 @@ export function useEventRelay({
const isFinished = entry.status !== 'running'; const isFinished = entry.status !== 'running';
if (isFinished && prev === 'running' && isActive) { // When Vue coalesces multiple ref updates, the watcher may fire for the
// first time with the execution already finished (prev is undefined).
// Treat undefined the same as 'running' — the entry only exists because
// an executionStarted was captured, so it was running at some point.
const wasRunning = prev === 'running' || prev === undefined;
if (isFinished && wasRunning && isActive) {
// Active workflow transitioned running → finished. // Active workflow transitioned running → finished.
// All pending events were relayed above. Clear the log and send a // All pending events were relayed above. Clear the log and send a
// synthetic executionFinished so the iframe clears its executing // synthetic executionFinished so the iframe clears its executing

View file

@ -32,12 +32,26 @@ export function useExecutionPushEvents() {
const { executionId, workflowId } = event.data; const { executionId, workflowId } = event.data;
executionToWorkflow.set(executionId, workflowId); executionToWorkflow.set(executionId, workflowId);
const next = new Map(workflowExecutions.value); const next = new Map(workflowExecutions.value);
next.set(workflowId, { const existing = workflowExecutions.value.get(workflowId);
executionId,
workflowId, // When the same execution resumes (e.g. after a Wait node timer fires),
status: 'running', // the server sends a second executionStarted with the same executionId.
eventLog: [event], // Append to the existing eventLog so the relay cursor stays valid —
}); // creating a fresh log would desync with the relay's relayedCount.
if (existing?.executionId === executionId) {
next.set(workflowId, {
...existing,
status: 'running',
eventLog: [...existing.eventLog, event],
});
} else {
next.set(workflowId, {
executionId,
workflowId,
status: 'running',
eventLog: [event],
});
}
workflowExecutions.value = next; workflowExecutions.value = next;
return; return;

View file

@ -0,0 +1,109 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are an expert n8n workflow builder. You generate com",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1642"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=..VlN8clyjK_bTMXRqssxRLjqgMfbHT53uuiPN59YfU-1776326890.6291292-1.0.1.1-4Wu8NLEBuhl2M0uxKG6Foeyt.QD6aN0G40B5e.MGqwA; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1645"
],
"request-id": [
"req_011Ca77DSK5vDhmuSxjeVro5"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:10Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26966000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:10Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:10Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:10Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22466000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:12 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b35a6fb8236c-TXL"
]
},
"cookies": {
"_cfuvid": "..VlN8clyjK_bTMXRqssxRLjqgMfbHT53uuiPN59YfU-1776326890.6291292-1.0.1.1-4Wu8NLEBuhl2M0uxKG6Foeyt.QD6aN0G40B5e.MGqwA"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_015kyUMcYmMoWAtL3DFGzNa6\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":442,\"cache_creation_input_tokens\":22307,\"cache_read_input_tokens\":0,\"cache_creation\":{\"ephemeral_5m_input_tokens\":22307,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":47,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"tool_use\",\"id\":\"toolu_014MVFSCerb4gnLWN5biDLqJ\",\"name\":\"nodes\",\"input\":{},\"caller\":{\"type\":\"direct\"}} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"{\\\"act\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"ion\\\": \\\"searc\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"h\\\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \\\"query\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\": \"}}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"Wait\\\"}\"} }\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0 }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"tool_use\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":442,\"cache_creation_input_tokens\":22307,\"cache_read_input_tokens\":0,\"output_tokens\":69} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxNWt5VU1jWW1Nb1dBdEwzREZHek5hNiIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjQ0MiwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjoyMjMwNywiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjAsImNhY2hlX2NyZWF0aW9uIjp7ImVwaGVtZXJhbF81bV9pbnB1dF90b2tlbnMiOjIyMzA3LCJlcGhlbWVyYWxfMWhfaW5wdXRfdG9rZW5zIjowfSwib3V0cHV0X3Rva2VucyI6NDcsInNlcnZpY2VfdGllciI6InN0YW5kYXJkIiwiaW5mZXJlbmNlX2dlbyI6Imdsb2JhbCJ9fSAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0YXJ0CmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RhcnQiLCJpbmRleCI6MCwiY29udGVudF9ibG9jayI6eyJ0eXBlIjoidG9vbF91c2UiLCJpZCI6InRvb2x1XzAxNE1WRlNDZXJiNGduTFdONWJpRExxSiIsIm5hbWUiOiJub2RlcyIsImlucHV0Ijp7fSwiY2FsbGVyIjp7InR5cGUiOiJkaXJlY3QifX0gICAgICAgICAgfQoKZXZlbnQ6IHBpbmcKZGF0YTogeyJ0eXBlIjogInBpbmcifQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IiJ9ICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJ7XCJhY3QifSAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImlvblwiOiBcInNlYXJjIn0gICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImhcIiJ9ICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiLCBcInF1ZXJ5In0gICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiXCI6ICJ9fQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IlwiV2FpdFwifSJ9ICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19zdG9wCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RvcCIsImluZGV4IjowIH0KCmV2ZW50OiBtZXNzYWdlX2RlbHRhCmRhdGE6IHsidHlwZSI6Im1lc3NhZ2VfZGVsdGEiLCJkZWx0YSI6eyJzdG9wX3JlYXNvbiI6InRvb2xfdXNlIiwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsfSwidXNhZ2UiOnsiaW5wdXRfdG9rZW5zIjo0NDIsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MjIzMDcsImNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zIjowLCJvdXRwdXRfdG9rZW5zIjo2OX0gICAgfQoKZXZlbnQ6IG1lc3NhZ2Vfc3RvcApkYXRhOiB7InR5cGUiOiJtZXNzYWdlX3N0b3AiICAgICAgICAgICAgICAgfQoK",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915172-unknown-host-POST-_v1_messages-4d1c93f7.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,109 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are an expert n8n workflow builder. You generate com",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1835"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=59uzNzzcyNzkg0JlF.3rzDZsIthkyqtpvQtwlWZAbQ4-1776326892.9713426-1.0.1.1-APRFIItLNOfxlL5o6.3xCYSu21J4G00sxWqyZVu2OO4; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1836"
],
"request-id": [
"req_011Ca77DcGd9BRWCPvu7mE1D"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:13Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26966000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:13Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:13Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:13Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22466000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:14 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b36918c9e529-TXL"
]
},
"cookies": {
"_cfuvid": "59uzNzzcyNzkg0JlF.3rzDZsIthkyqtpvQtwlWZAbQ4-1776326892.9713426-1.0.1.1-APRFIItLNOfxlL5o6.3xCYSu21J4G00sxWqyZVu2OO4"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01QcX5XqghaDuydR6XeemeQc\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":4923,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":22307,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":53,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"tool_use\",\"id\":\"toolu_01JNrTGTHTnDYVNE9VPnwgva\",\"name\":\"nodes\",\"input\":{},\"caller\":{\"type\":\"direct\"}} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\"}}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"{\\\"acti\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"on\\\": \\\"de\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"scrib\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"e\\\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"nodeT\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"ype\\\": \\\"n8n-\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"nod\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"es-bas\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"e.w\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"ait\\\"}\"}}\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0}\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"tool_use\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":4923,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":22307,\"output_tokens\":77} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxUWNYNVhxZ2hhRHV5ZFI2WGVlbWVRYyIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjQ5MjMsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjIyMzA3LCJjYWNoZV9jcmVhdGlvbiI6eyJlcGhlbWVyYWxfNW1faW5wdXRfdG9rZW5zIjowLCJlcGhlbWVyYWxfMWhfaW5wdXRfdG9rZW5zIjowfSwib3V0cHV0X3Rva2VucyI6NTMsInNlcnZpY2VfdGllciI6InN0YW5kYXJkIiwiaW5mZXJlbmNlX2dlbyI6Imdsb2JhbCJ9fSAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0b29sX3VzZSIsImlkIjoidG9vbHVfMDFKTnJUR1RIVG5EWVZORTlWUG53Z3ZhIiwibmFtZSI6Im5vZGVzIiwiaW5wdXQiOnt9LCJjYWxsZXIiOnsidHlwZSI6ImRpcmVjdCJ9fSAgICAgICB9CgpldmVudDogcGluZwpkYXRhOiB7InR5cGUiOiAicGluZyJ9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoie1wiYWN0aSJ9ICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoib25cIjogXCJkZSJ9ICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoic2NyaWIifSAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiZVwiIn0gfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IiwgIn0gfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6Ilwibm9kZVQifSAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJ5cGVcIjogXCJuOG4tIn0gICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoibm9kIn0gfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImVzLWJhcyJ9ICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImUudyJ9ICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJhaXRcIn0ifX0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0b3AKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdG9wIiwiaW5kZXgiOjB9CgpldmVudDogbWVzc2FnZV9kZWx0YQpkYXRhOiB7InR5cGUiOiJtZXNzYWdlX2RlbHRhIiwiZGVsdGEiOnsic3RvcF9yZWFzb24iOiJ0b29sX3VzZSIsInN0b3Bfc2VxdWVuY2UiOm51bGwsInN0b3BfZGV0YWlscyI6bnVsbH0sInVzYWdlIjp7ImlucHV0X3Rva2VucyI6NDkyMywiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MjIzMDcsIm91dHB1dF90b2tlbnMiOjc3fSAgICAgICAgICAgICAgIH0KCmV2ZW50OiBtZXNzYWdlX3N0b3AKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdG9wIiAgICAgfQoK",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915173-unknown-host-POST-_v1_messages-4d1c93f7.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,109 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are the n8n Instance Agent — an AI assistant embedde",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1497"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=qgI4FIzwqXadnTLWsJmllLOfXt8zYxhGVptmjHGnWcg-1776326894.7148116-1.0.1.1-jqy56mBAG.0rWQ.O0IroXy4ircpv8Ahgbp.ZM0sHsEk; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1500"
],
"request-id": [
"req_011Ca77DjfNBm9hgTYQjEy5D"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:14Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26983000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:14Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:14Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:14Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22483000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:16 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b373fcd9e522-TXL"
]
},
"cookies": {
"_cfuvid": "qgI4FIzwqXadnTLWsJmllLOfXt8zYxhGVptmjHGnWcg-1776326894.7148116-1.0.1.1-jqy56mBAG.0rWQ.O0IroXy4ircpv8Ahgbp.ZM0sHsEk"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01C1bwYer9FH2zAH2Ls8LXJA\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":780,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":57,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"tool_use\",\"id\":\"toolu_01R5L63JSJXXD6FAUrPSRUyM\",\"name\":\"workflows\",\"input\":{},\"caller\":{\"type\":\"direct\"}} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"{\\\"ac\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"tion\\\": \\\"g\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"et\\\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \\\"workfl\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"owId\\\": \\\"b\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"uild-6LEDN\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"gVD\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"}\"} }\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0 }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"tool_use\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":780,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"output_tokens\":79} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxQzFid1llcjlGSDJ6QUgyTHM4TFhKQSIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjc4MCwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6ODk1NSwiY2FjaGVfY3JlYXRpb24iOnsiZXBoZW1lcmFsXzVtX2lucHV0X3Rva2VucyI6MCwiZXBoZW1lcmFsXzFoX2lucHV0X3Rva2VucyI6MH0sIm91dHB1dF90b2tlbnMiOjU3LCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCIsImluZmVyZW5jZV9nZW8iOiJnbG9iYWwifX0gICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0b29sX3VzZSIsImlkIjoidG9vbHVfMDFSNUw2M0pTSlhYRDZGQVVyUFNSVXlNIiwibmFtZSI6IndvcmtmbG93cyIsImlucHV0Ijp7fSwiY2FsbGVyIjp7InR5cGUiOiJkaXJlY3QifX0gICAgICAgICAgICAgIH0KCmV2ZW50OiBwaW5nCmRhdGE6IHsidHlwZSI6ICJwaW5nIn0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiIifSAgICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJ7XCJhYyJ9ICAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6InRpb25cIjogXCJnIn0gICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJldFwiIn0gICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IiwgXCJ3b3JrZmwifSAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6Im93SWRcIjogXCJiIn0gICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJ1aWxkLTZMRUROIn0gIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJnVkQifSAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJcIn0ifSAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RvcApkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX3N0b3AiLCJpbmRleCI6MCAgICAgICB9CgpldmVudDogbWVzc2FnZV9kZWx0YQpkYXRhOiB7InR5cGUiOiJtZXNzYWdlX2RlbHRhIiwiZGVsdGEiOnsic3RvcF9yZWFzb24iOiJ0b29sX3VzZSIsInN0b3Bfc2VxdWVuY2UiOm51bGwsInN0b3BfZGV0YWlscyI6bnVsbH0sInVzYWdlIjp7ImlucHV0X3Rva2VucyI6NzgwLCJjYWNoZV9jcmVhdGlvbl9pbnB1dF90b2tlbnMiOjAsImNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zIjo4OTU1LCJvdXRwdXRfdG9rZW5zIjo3OX0gICB9CgpldmVudDogbWVzc2FnZV9zdG9wCmRhdGE6IHsidHlwZSI6Im1lc3NhZ2Vfc3RvcCIgICAgICAgICAgICAgICB9Cgo=",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915174-unknown-host-POST-_v1_messages-8a23f6c2.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,112 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are the n8n Instance Agent — an AI assistant embedde",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1452"
],
"vary": [
"Accept-Encoding"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=poJI4hn03OkM53IZXJliJIgM.R8sjmxY6CEGTsQOgWs-1776326898.7971935-1.0.1.1-DAuZBgB9AEPcnNtojU2A1Qe_tijFhw64IPDpQjMYrPo; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1454"
],
"request-id": [
"req_011Ca77E3589q5GZ3vpfEV3X"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:18Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26983000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:18Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:18Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:18Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22483000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:20 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b38d7b97dcd9-TXL"
]
},
"cookies": {
"_cfuvid": "poJI4hn03OkM53IZXJliJIgM.R8sjmxY6CEGTsQOgWs-1776326898.7971935-1.0.1.1-DAuZBgB9AEPcnNtojU2A1Qe_tijFhw64IPDpQjMYrPo"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01KMvGWfHt4qQ8kQbDJEPpgx\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":982,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":59,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"tool_use\",\"id\":\"toolu_01MDWCzo5GFiWx1rcqDzsgjY\",\"name\":\"workflows\",\"input\":{},\"caller\":{\"type\":\"direct\"}} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"{\\\"a\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"ct\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"ion\\\": \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"list\\\"\"}}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"limit\\\": 5}\"} }\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0 }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"tool_use\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":982,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"output_tokens\":68} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxS012R1dmSHQ0cVE4a1FiREpFUHBneCIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjk4MiwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6ODk1NSwiY2FjaGVfY3JlYXRpb24iOnsiZXBoZW1lcmFsXzVtX2lucHV0X3Rva2VucyI6MCwiZXBoZW1lcmFsXzFoX2lucHV0X3Rva2VucyI6MH0sIm91dHB1dF90b2tlbnMiOjU5LCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCIsImluZmVyZW5jZV9nZW8iOiJnbG9iYWwifX0gICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0b29sX3VzZSIsImlkIjoidG9vbHVfMDFNRFdDem81R0ZpV3gxcmNxRHpzZ2pZIiwibmFtZSI6IndvcmtmbG93cyIsImlucHV0Ijp7fSwiY2FsbGVyIjp7InR5cGUiOiJkaXJlY3QifX0gICAgICAgICB9CgpldmVudDogcGluZwpkYXRhOiB7InR5cGUiOiAicGluZyJ9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiIn0gICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoie1wiYSJ9ICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJjdCJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJpb25cIjogIn0gICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJcImxpc3RcIiJ9fQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IiwgIn0gICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiXCJsaW1pdFwiOiA1fSJ9ICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RvcApkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX3N0b3AiLCJpbmRleCI6MCAgICAgICAgfQoKZXZlbnQ6IG1lc3NhZ2VfZGVsdGEKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9kZWx0YSIsImRlbHRhIjp7InN0b3BfcmVhc29uIjoidG9vbF91c2UiLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJzdG9wX2RldGFpbHMiOm51bGx9LCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjk4MiwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6ODk1NSwib3V0cHV0X3Rva2VucyI6Njh9ICAgICAgICAgIH0KCmV2ZW50OiBtZXNzYWdlX3N0b3AKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdG9wIiAgICAgICAgICB9Cgo=",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915175-unknown-host-POST-_v1_messages-8a23f6c2.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,109 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are an expert n8n workflow builder. You generate com",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1005"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=HVzbAkrn0OkkhKxFzQS2TP4_tJI5uG95Zf.eyxR.uUE-1776326901.3371863-1.0.1.1-MIJBDLji7RI9Y.eD0FN94A2T7vdNraR6kzvxZxBtNhA; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1007"
],
"request-id": [
"req_011Ca77EE1wVDnfsncTv1ZKA"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:21Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26965000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:21Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:21Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:21Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22465000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:22 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b39d5ee094d7-TXL"
]
},
"cookies": {
"_cfuvid": "HVzbAkrn0OkkhKxFzQS2TP4_tJI5uG95Zf.eyxR.uUE-1776326901.3371863-1.0.1.1-MIJBDLji7RI9Y.eD0FN94A2T7vdNraR6kzvxZxBtNhA"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01HyzpRxeEqNuEjyWU6Z9Cxp\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":7598,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":22307,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":3,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"text\",\"text\":\"\"} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"text_delta\",\"text\":\"Workflow is\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"text_delta\",\"text\":\" built and ready. It chains Manual Trigger → Wait (1 second,\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"text_delta\",\"text\":\" time interval mode) → Set node named \\\"running state test\\\". You can run it now using\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"text_delta\",\"text\":\" the manual trigger.\"}}\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0 }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"end_turn\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":7598,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":22307,\"output_tokens\":45} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxSHl6cFJ4ZUVxTnVFanlXVTZaOUN4cCIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjc1OTgsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjIyMzA3LCJjYWNoZV9jcmVhdGlvbiI6eyJlcGhlbWVyYWxfNW1faW5wdXRfdG9rZW5zIjowLCJlcGhlbWVyYWxfMWhfaW5wdXRfdG9rZW5zIjowfSwib3V0cHV0X3Rva2VucyI6Mywic2VydmljZV90aWVyIjoic3RhbmRhcmQiLCJpbmZlcmVuY2VfZ2VvIjoiZ2xvYmFsIn19ICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0ZXh0IiwidGV4dCI6IiJ9ICAgIH0KCmV2ZW50OiBwaW5nCmRhdGE6IHsidHlwZSI6ICJwaW5nIn0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiV29ya2Zsb3cgaXMifSAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgYnVpbHQgYW5kIHJlYWR5LiBJdCBjaGFpbnMgTWFudWFsIFRyaWdnZXIg4oaSIFdhaXQgKDEgc2Vjb25kLCJ9ICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRpbWUgaW50ZXJ2YWwgbW9kZSkg4oaSIFNldCBub2RlIG5hbWVkIFwicnVubmluZyBzdGF0ZSB0ZXN0XCIuIFlvdSBjYW4gcnVuIGl0IG5vdyB1c2luZyJ9ICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRoZSBtYW51YWwgdHJpZ2dlci4ifX0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0b3AKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdG9wIiwiaW5kZXgiOjAgICAgICAgfQoKZXZlbnQ6IG1lc3NhZ2VfZGVsdGEKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9kZWx0YSIsImRlbHRhIjp7InN0b3BfcmVhc29uIjoiZW5kX3R1cm4iLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJzdG9wX2RldGFpbHMiOm51bGx9LCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjc1OTgsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjIyMzA3LCJvdXRwdXRfdG9rZW5zIjo0NX0gIH0KCmV2ZW50OiBtZXNzYWdlX3N0b3AKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdG9wIiAgICAgICAgICAgICB9Cgo=",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915177-unknown-host-POST-_v1_messages-4d1c93f7.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,109 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are the n8n Instance Agent — an AI assistant embedde",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"782"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=Z3jdcuPf52XHdt_D6UJdP7gj6odHvQ99b8BwCUFUCdk-1776326900.6503463-1.0.1.1-Qn3m3iWw0jvQrpHyLPVLSP2bzgdulhTavoaLRonDwb8; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=787"
],
"request-id": [
"req_011Ca77EB4LZnnFDmvP4Wi4Q"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:20Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26983000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:20Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:20Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:20Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22483000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:21 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b3990ec8e52a-TXL"
]
},
"cookies": {
"_cfuvid": "Z3jdcuPf52XHdt_D6UJdP7gj6odHvQ99b8BwCUFUCdk-1776326900.6503463-1.0.1.1-Qn3m3iWw0jvQrpHyLPVLSP2bzgdulhTavoaLRonDwb8"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01QP8epja8TtU5rTUicHLFcq\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":1066,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":1,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"text\",\"text\":\"\"} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"text_delta\",\"text\":\"It\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"text_delta\",\"text\":\" looks like the build is still in progress. Let me wait for it to complete.\"} }\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0 }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":1,\"content_block\":{\"type\":\"tool_use\",\"id\":\"toolu_01NQDWcEGEAbkpLN1vH2pFFN\",\"name\":\"workflows\",\"input\":{},\"caller\":{\"type\":\"direct\"}} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"{\\\"a\"}}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"ction\\\": \\\"lis\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"t\\\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \\\"limit\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\": \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":1,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"10}\"} }\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":1 }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"tool_use\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":1066,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"output_tokens\":87} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxUVA4ZXBqYThUdFU1clRVaWNITEZjcSIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjEwNjYsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjg5NTUsImNhY2hlX2NyZWF0aW9uIjp7ImVwaGVtZXJhbF81bV9pbnB1dF90b2tlbnMiOjAsImVwaGVtZXJhbF8xaF9pbnB1dF90b2tlbnMiOjB9LCJvdXRwdXRfdG9rZW5zIjoxLCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCIsImluZmVyZW5jZV9nZW8iOiJnbG9iYWwifX0gICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0ZXh0IiwidGV4dCI6IiJ9ICAgICAgICB9CgpldmVudDogcGluZwpkYXRhOiB7InR5cGUiOiAicGluZyJ9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6Ikl0In0gICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGxvb2tzIGxpa2UgdGhlIGJ1aWxkIGlzIHN0aWxsIGluIHByb2dyZXNzLiBMZXQgbWUgd2FpdCBmb3IgaXQgdG8gY29tcGxldGUuIn0gIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0b3AKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdG9wIiwiaW5kZXgiOjAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0YXJ0CmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RhcnQiLCJpbmRleCI6MSwiY29udGVudF9ibG9jayI6eyJ0eXBlIjoidG9vbF91c2UiLCJpZCI6InRvb2x1XzAxTlFEV2NFR0VBYmtwTE4xdkgycEZGTiIsIm5hbWUiOiJ3b3JrZmxvd3MiLCJpbnB1dCI6e30sImNhbGxlciI6eyJ0eXBlIjoiZGlyZWN0In19ICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjEsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiIn0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MSwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJ7XCJhIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjEsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiY3Rpb25cIjogXCJsaXMifSAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjoxLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6InRcIiJ9ICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MSwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiIsIFwibGltaXQifSAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjEsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiXCI6ICJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MSwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiIxMH0ifSAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RvcApkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX3N0b3AiLCJpbmRleCI6MSAgICAgICAgfQoKZXZlbnQ6IG1lc3NhZ2VfZGVsdGEKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9kZWx0YSIsImRlbHRhIjp7InN0b3BfcmVhc29uIjoidG9vbF91c2UiLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJzdG9wX2RldGFpbHMiOm51bGx9LCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjEwNjYsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjg5NTUsIm91dHB1dF90b2tlbnMiOjg3fSAgICB9CgpldmVudDogbWVzc2FnZV9zdG9wCmRhdGE6IHsidHlwZSI6Im1lc3NhZ2Vfc3RvcCIgICAgIH0KCg==",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915177-unknown-host-POST-_v1_messages-8a23f6c2.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,112 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are the n8n Instance Agent — an AI assistant embedde",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1061"
],
"vary": [
"Accept-Encoding"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=aanfq25BkTuZnFJm8.trmgHKqM9HZXeQ5D1BcTtUFtw-1776326905.9431152-1.0.1.1-slZyX_smC7IlHwNQXFqjI.0CX9JL54Qr7wH09VaamuA; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1062"
],
"request-id": [
"req_011Ca77EZdQENSZ38ycmS2Du"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:26Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26983000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:26Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:26Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:26Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22483000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:27 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b3ba2b5c4f3e-TXL"
]
},
"cookies": {
"_cfuvid": "aanfq25BkTuZnFJm8.trmgHKqM9HZXeQ5D1BcTtUFtw-1776326905.9431152-1.0.1.1-slZyX_smC7IlHwNQXFqjI.0CX9JL54Qr7wH09VaamuA"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_015tq4Hrq55ugesT3ZChvqZa\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":1442,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":50,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: content_block_start\ndata: {\"type\":\"content_block_start\",\"index\":0,\"content_block\":{\"type\":\"tool_use\",\"id\":\"toolu_01V7tPJn8ZPucU4gZjkYxCfc\",\"name\":\"executions\",\"input\":{},\"caller\":{\"type\":\"direct\"}} }\n\nevent: ping\ndata: {\"type\": \"ping\"}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"{\\\"action\\\": \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"run\\\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \\\"workf\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"lo\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"wId\\\": \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"A\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"o6PFbRGjhy2\"}}\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"k5S4\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\", \\\"wo\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"rk\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"flowName\\\": \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"\\\"Manual Tr\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"igger - \"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\"Wait -\"} }\n\nevent: content_block_delta\ndata: {\"type\":\"content_block_delta\",\"index\":0,\"delta\":{\"type\":\"input_json_delta\",\"partial_json\":\" Set\\\"}\"} }\n\nevent: content_block_stop\ndata: {\"type\":\"content_block_stop\",\"index\":0 }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"tool_use\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":1442,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"output_tokens\":112} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxNXRxNEhycTU1dWdlc1QzWkNodnFaYSIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjE0NDIsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjg5NTUsImNhY2hlX2NyZWF0aW9uIjp7ImVwaGVtZXJhbF81bV9pbnB1dF90b2tlbnMiOjAsImVwaGVtZXJhbF8xaF9pbnB1dF90b2tlbnMiOjB9LCJvdXRwdXRfdG9rZW5zIjo1MCwic2VydmljZV90aWVyIjoic3RhbmRhcmQiLCJpbmZlcmVuY2VfZ2VvIjoiZ2xvYmFsIn19ICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0YXJ0CmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RhcnQiLCJpbmRleCI6MCwiY29udGVudF9ibG9jayI6eyJ0eXBlIjoidG9vbF91c2UiLCJpZCI6InRvb2x1XzAxVjd0UEpuOFpQdWNVNGdaamtZeENmYyIsIm5hbWUiOiJleGVjdXRpb25zIiwiaW5wdXQiOnt9LCJjYWxsZXIiOnsidHlwZSI6ImRpcmVjdCJ9fSAgICAgICAgICAgIH0KCmV2ZW50OiBwaW5nCmRhdGE6IHsidHlwZSI6ICJwaW5nIn0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiIifSAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJ7XCJhY3Rpb25cIjogIn0gICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IlwicnVuXCIifSAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IiwgXCJ3b3JrZiJ9ICAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImxvIn0gICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IndJZFwiOiAifSAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiXCJBIn0gICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6Im82UEZiUkdqaHkyIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiazVTNCJ9ICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJcIiJ9ICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJpbnB1dF9qc29uX2RlbHRhIiwicGFydGlhbF9qc29uIjoiLCBcIndvIn0gIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJyayJ9ICAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImZsb3dOYW1lXCI6ICJ9ICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJcIk1hbnVhbCBUciJ9ICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6ImlnZ2VyIC0gIn0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6ImlucHV0X2pzb25fZGVsdGEiLCJwYXJ0aWFsX2pzb24iOiJXYWl0IC0ifSAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoiaW5wdXRfanNvbl9kZWx0YSIsInBhcnRpYWxfanNvbiI6IiBTZXRcIn0ifSAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0b3AKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdG9wIiwiaW5kZXgiOjAgICAgICAgICAgfQoKZXZlbnQ6IG1lc3NhZ2VfZGVsdGEKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9kZWx0YSIsImRlbHRhIjp7InN0b3BfcmVhc29uIjoidG9vbF91c2UiLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJzdG9wX2RldGFpbHMiOm51bGx9LCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjE0NDIsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjg5NTUsIm91dHB1dF90b2tlbnMiOjExMn0gICAgICAgfQoKZXZlbnQ6IG1lc3NhZ2Vfc3RvcApkYXRhOiB7InR5cGUiOiJtZXNzYWdlX3N0b3AiICAgIH0KCg==",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915178-unknown-host-POST-_v1_messages-8a23f6c2.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -0,0 +1,112 @@
{
"httpRequest": {
"method": "POST",
"path": "/v1/messages",
"body": {
"type": "STRING",
"string": "[{\"type\":\"text\",\"text\":\"You are the n8n Instance Agent — an AI assistant embedde",
"subString": true
}
},
"httpResponse": {
"statusCode": 200,
"reasonPhrase": "OK",
"headers": {
"x-envoy-upstream-service-time": [
"1147"
],
"vary": [
"Accept-Encoding"
],
"strict-transport-security": [
"max-age=31536000; includeSubDomains; preload"
],
"set-cookie": [
"_cfuvid=OXxbUGbNVsz4xFoCHyRZHTmKe4aS_eHzQzjF96JxWxQ-1776326913.5008917-1.0.1.1-KXVULfcq39P68Q3j4jpohPFNUqfo2_gVV2unJkIhYqE; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.anthropic.com"
],
"server-timing": [
"x-originResponse;dur=1149"
],
"request-id": [
"req_011Ca77F7z5SkXnfaGzuEhmB"
],
"cf-cache-status": [
"DYNAMIC"
],
"anthropic-ratelimit-tokens-reset": [
"2026-04-16T08:08:33Z"
],
"anthropic-ratelimit-tokens-remaining": [
"26982000"
],
"anthropic-ratelimit-tokens-limit": [
"27000000"
],
"anthropic-ratelimit-requests-reset": [
"2026-04-16T08:08:33Z"
],
"anthropic-ratelimit-requests-remaining": [
"19998"
],
"anthropic-ratelimit-requests-limit": [
"20000"
],
"anthropic-ratelimit-output-tokens-reset": [
"2026-04-16T08:08:33Z"
],
"anthropic-ratelimit-output-tokens-remaining": [
"4500000"
],
"anthropic-ratelimit-output-tokens-limit": [
"4500000"
],
"anthropic-ratelimit-input-tokens-reset": [
"2026-04-16T08:08:33Z"
],
"anthropic-ratelimit-input-tokens-remaining": [
"22482000"
],
"anthropic-ratelimit-input-tokens-limit": [
"22500000"
],
"X-Robots-Tag": [
"none"
],
"Server": [
"cloudflare"
],
"Date": [
"Thu, 16 Apr 2026 08:08:34 GMT"
],
"Content-Type": [
"text/event-stream; charset=utf-8"
],
"Content-Security-Policy": [
"default-src 'none'; frame-ancestors 'none'"
],
"Cache-Control": [
"no-cache"
],
"CF-RAY": [
"9ed1b3e96f64dcd9-TXL"
]
},
"cookies": {
"_cfuvid": "OXxbUGbNVsz4xFoCHyRZHTmKe4aS_eHzQzjF96JxWxQ-1776326913.5008917-1.0.1.1-KXVULfcq39P68Q3j4jpohPFNUqfo2_gVV2unJkIhYqE"
},
"body": {
"type": "STRING",
"string": "event: message_start\ndata: {\"type\":\"message_start\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01XQod5zRFcbP5Wrtdkj8YCS\",\"type\":\"message\",\"role\":\"assistant\",\"content\":[],\"stop_reason\":null,\"stop_sequence\":null,\"stop_details\":null,\"usage\":{\"input_tokens\":1981,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"cache_creation\":{\"ephemeral_5m_input_tokens\":0,\"ephemeral_1h_input_tokens\":0},\"output_tokens\":2,\"service_tier\":\"standard\",\"inference_geo\":\"global\"}} }\n\nevent: message_delta\ndata: {\"type\":\"message_delta\",\"delta\":{\"stop_reason\":\"end_turn\",\"stop_sequence\":null,\"stop_details\":null},\"usage\":{\"input_tokens\":1981,\"cache_creation_input_tokens\":0,\"cache_read_input_tokens\":8955,\"output_tokens\":2} }\n\nevent: message_stop\ndata: {\"type\":\"message_stop\" }\n\n",
"rawBytes": "ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsibW9kZWwiOiJjbGF1ZGUtc29ubmV0LTQtNiIsImlkIjoibXNnXzAxWFFvZDV6UkZjYlA1V3J0ZGtqOFlDUyIsInR5cGUiOiJtZXNzYWdlIiwicm9sZSI6ImFzc2lzdGFudCIsImNvbnRlbnQiOltdLCJzdG9wX3JlYXNvbiI6bnVsbCwic3RvcF9zZXF1ZW5jZSI6bnVsbCwic3RvcF9kZXRhaWxzIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjE5ODEsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjg5NTUsImNhY2hlX2NyZWF0aW9uIjp7ImVwaGVtZXJhbF81bV9pbnB1dF90b2tlbnMiOjAsImVwaGVtZXJhbF8xaF9pbnB1dF90b2tlbnMiOjB9LCJvdXRwdXRfdG9rZW5zIjoyLCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCIsImluZmVyZW5jZV9nZW8iOiJnbG9iYWwifX0gICAgfQoKZXZlbnQ6IG1lc3NhZ2VfZGVsdGEKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9kZWx0YSIsImRlbHRhIjp7InN0b3BfcmVhc29uIjoiZW5kX3R1cm4iLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJzdG9wX2RldGFpbHMiOm51bGx9LCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjE5ODEsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjg5NTUsIm91dHB1dF90b2tlbnMiOjJ9ICAgIH0KCmV2ZW50OiBtZXNzYWdlX3N0b3AKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdG9wIiAgICAgICAgICB9Cgo=",
"contentType": "text/event-stream; charset=utf-8"
}
},
"id": "1776326915179-unknown-host-POST-_v1_messages-8a23f6c2.json",
"priority": 0,
"timeToLive": {
"unlimited": true
},
"times": {
"unlimited": true
}
}

View file

@ -49,6 +49,9 @@ export const instanceAiTestConfig = {
N8N_INSTANCE_AI_MODEL: 'anthropic/claude-sonnet-4-6', N8N_INSTANCE_AI_MODEL: 'anthropic/claude-sonnet-4-6',
N8N_INSTANCE_AI_MODEL_API_KEY: ANTHROPIC_API_KEY, N8N_INSTANCE_AI_MODEL_API_KEY: ANTHROPIC_API_KEY,
N8N_INSTANCE_AI_LOCAL_GATEWAY_DISABLED: 'true', N8N_INSTANCE_AI_LOCAL_GATEWAY_DISABLED: 'true',
// Prevent community-node-types requests to api-staging.n8n.io
// from polluting proxy recordings
N8N_VERIFIED_PACKAGES_ENABLED: 'false',
}, },
}, },
} as const; } as const;
@ -59,18 +62,24 @@ export const test = base.extend<InstanceAiFixtures>({
}, },
instanceAiProxySetup: [ instanceAiProxySetup: [
async ({ services, backendUrl }, use, testInfo) => { async ({ n8nContainer, backendUrl }, use, testInfo) => {
// Local-build mode (no Docker container) — skip all proxy setup.
// LLM calls go straight to Anthropic, no recording or replay.
if (!n8nContainer) {
await use(undefined);
return;
}
const services = n8nContainer.services;
const testSlug = slugify(testInfo.title); const testSlug = slugify(testInfo.title);
const folder = `instance-ai/${testSlug}`; const folder = `instance-ai/${testSlug}`;
await services.proxy.clearAllExpectations(); await services.proxy.clearAllExpectations();
// Cancel any leftover background tasks from previous tests so their // Wipe instance-ai threads, per-thread in-memory state, background tasks,
// auto-follow-up LLM calls don't contaminate this test's recordings. // and user workflows so the orchestrator's `list-workflows` tool can't see
// leftovers from a prior test and contaminate this test's recorded responses.
try { try {
await fetch(`${backendUrl}/rest/instance-ai/test/drain-background-tasks`, { await fetch(`${backendUrl}/rest/instance-ai/test/reset`, { method: 'POST' });
method: 'POST',
});
} catch { } catch {
// Endpoint may not be available // Endpoint may not be available
} }

View file

@ -35,6 +35,35 @@ test.describe(
await expect(n8n.instanceAi.getPreviewCanvasNodes()).not.toHaveCount(0); await expect(n8n.instanceAi.getPreviewCanvasNodes()).not.toHaveCount(0);
}); });
test('should mark all nodes as success after execution completes', async ({
n8n,
}, testInfo) => {
test.skip(
testInfo.project.name.includes('multi-main'),
'Execution preview replay is not yet stable in multi-main mode',
);
await n8n.navigate.toInstanceAi();
// A Wait node creates a window where the downstream node is briefly
// marked `running`. When execution ends, the terminal node should flip
// to `success` — the bug is that it stays `running` (orange border).
await n8n.instanceAi.sendMessage(
'Build a workflow with a manual trigger, a Wait node set to 1 second, ' +
'and a Set node called "running state test". After it is built, ' +
'run it.',
);
await expect(n8n.instanceAi.getConfirmApproveButton()).toBeVisible({ timeout: 120_000 });
await n8n.instanceAi.getConfirmApproveButton().click();
await n8n.instanceAi.waitForResponseComplete();
// All three nodes should show the success indicator.
await expect(n8n.instanceAi.getPreviewSuccessIndicators()).toHaveCount(3);
// No node should still be in the running/waiting state.
await expect(n8n.instanceAi.getPreviewRunningNodes()).toHaveCount(0);
});
test('should close preview panel via close button', async ({ n8n }) => { test('should close preview panel via close button', async ({ n8n }) => {
await n8n.navigate.toInstanceAi(); await n8n.navigate.toInstanceAi();