From baee5b2614b50e7d4b66eb8831db26b3914b2087 Mon Sep 17 00:00:00 2001 From: AlkaidSTART <2595006848@qq.com> Date: Wed, 12 Aug 2026 15:52:20 +0800 Subject: [PATCH 1/3] =?UTF-8?q?refactor:=20=E6=8B=86=E5=88=86=20session=20?= =?UTF-8?q?=E4=B8=BA=20context/memory/tools/runtime=20=E9=A2=86=E5=9F=9F?= =?UTF-8?q?=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../compaction/branch-summarization.ts | 5 +- .../src/harness/compaction/compaction.ts | 5 +- .../src/harness/compaction/utils.ts | 4 +- .../harness/{session => }/context/builder.ts | 0 .../{session => }/context/context-builder.ts | 0 .../context/context-summarizer.ts | 0 .../{session => }/context/context-types.ts | 0 .../{session => }/context/runtime-context.ts | 0 .../{session => }/context/task-context.ts | 0 packages/agent-core/src/harness/core/agent.ts | 2 +- .../{session => }/memory/memory-retriever.ts | 2 +- .../{session => }/memory/memory-schema.ts | 0 .../{session => }/memory/memory-store.ts | 2 +- .../{session => }/memory/memory-writer.ts | 4 +- .../agent-core/src/harness/runtime/index.ts | 3 + .../{core/loop.ts => runtime/run-loop.ts} | 78 +--- .../src/harness/runtime/session-runtime.ts | 73 +++ .../src/harness/runtime/tool-runtime.ts | 16 + .../src/harness/session/activity-query.ts | 107 +++++ .../agent-core/src/harness/session/history.ts | 84 ++++ .../agent-core/src/harness/session/index.ts | 14 +- .../session/sessionInfo/session-repository.ts | 420 ------------------ .../src/harness/session/store-registry.ts | 25 ++ .../src/harness/session/store-types.ts | 94 ++++ .../src/harness/session/task-session.ts | 123 +++++ .../src/harness/{session => }/tools/bash.ts | 0 .../harness/{session => }/tools/executor.ts | 2 +- .../{session => }/tools/getEnvironment.ts | 0 .../harness/{session => }/tools/gitDiff.ts | 0 .../src/harness/{session => }/tools/index.ts | 0 .../src/harness/{session => }/tools/ocr.ts | 0 .../harness/{session => }/tools/pathUtils.ts | 0 .../{session => tools}/policy/guard.ts | 0 .../{session => tools}/policy/modes.ts | 0 .../harness/{session => }/tools/readFile.ts | 0 .../src/harness/{session => }/tools/search.ts | 0 .../harness/{session => }/tools/writeFile.ts | 0 packages/agent-core/src/web/export.ts | 2 +- source/app.tsx | 6 +- tests/agent-session-runloop.spec.ts | 4 +- tests/agent.spec.ts | 6 +- tests/compaction.spec.ts | 2 +- tests/runLoop.spec.ts | 2 +- tests/session-repository.spec.ts | 2 +- tsconfig.json | 6 +- vitest.config.ts | 6 +- 46 files changed, 581 insertions(+), 518 deletions(-) rename packages/agent-core/src/harness/{session => }/context/builder.ts (100%) rename packages/agent-core/src/harness/{session => }/context/context-builder.ts (100%) rename packages/agent-core/src/harness/{session => }/context/context-summarizer.ts (100%) rename packages/agent-core/src/harness/{session => }/context/context-types.ts (100%) rename packages/agent-core/src/harness/{session => }/context/runtime-context.ts (100%) rename packages/agent-core/src/harness/{session => }/context/task-context.ts (100%) rename packages/agent-core/src/harness/{session => }/memory/memory-retriever.ts (90%) rename packages/agent-core/src/harness/{session => }/memory/memory-schema.ts (100%) rename packages/agent-core/src/harness/{session => }/memory/memory-store.ts (94%) rename packages/agent-core/src/harness/{session => }/memory/memory-writer.ts (81%) create mode 100644 packages/agent-core/src/harness/runtime/index.ts rename packages/agent-core/src/harness/{core/loop.ts => runtime/run-loop.ts} (67%) create mode 100644 packages/agent-core/src/harness/runtime/session-runtime.ts create mode 100644 packages/agent-core/src/harness/runtime/tool-runtime.ts create mode 100644 packages/agent-core/src/harness/session/activity-query.ts create mode 100644 packages/agent-core/src/harness/session/history.ts delete mode 100644 packages/agent-core/src/harness/session/sessionInfo/session-repository.ts create mode 100644 packages/agent-core/src/harness/session/store-registry.ts create mode 100644 packages/agent-core/src/harness/session/store-types.ts create mode 100644 packages/agent-core/src/harness/session/task-session.ts rename packages/agent-core/src/harness/{session => }/tools/bash.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/executor.ts (96%) rename packages/agent-core/src/harness/{session => }/tools/getEnvironment.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/gitDiff.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/index.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/ocr.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/pathUtils.ts (100%) rename packages/agent-core/src/harness/{session => tools}/policy/guard.ts (100%) rename packages/agent-core/src/harness/{session => tools}/policy/modes.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/readFile.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/search.ts (100%) rename packages/agent-core/src/harness/{session => }/tools/writeFile.ts (100%) diff --git a/packages/agent-core/src/harness/compaction/branch-summarization.ts b/packages/agent-core/src/harness/compaction/branch-summarization.ts index 6022093..74eaefb 100644 --- a/packages/agent-core/src/harness/compaction/branch-summarization.ts +++ b/packages/agent-core/src/harness/compaction/branch-summarization.ts @@ -1,5 +1,5 @@ -import type { ContextMessage } from '../session/context/context-types'; -import type { EntryLike, SessionStoreLike } from '../session/sessionInfo/session-repository'; +import type { ContextMessage } from '../context/context-types'; +import type { EntryLike, SessionStoreLike } from '../session/store-types'; import type { SummarizeFn } from './compaction'; import { computeFileLists, @@ -279,4 +279,3 @@ export const branchSummaryEntryToMessage = (entry: EntryLike): ContextMessage | } return { role: 'user', content: `[分支摘要]\n${payload.summary}` }; }; - diff --git a/packages/agent-core/src/harness/compaction/compaction.ts b/packages/agent-core/src/harness/compaction/compaction.ts index bc53dbf..54f71d2 100644 --- a/packages/agent-core/src/harness/compaction/compaction.ts +++ b/packages/agent-core/src/harness/compaction/compaction.ts @@ -1,5 +1,5 @@ -import type { ContextMessage } from '../session/context/context-types'; -import type { EntryLike, SessionStoreLike } from '../session/sessionInfo/session-repository'; +import type { ContextMessage } from '../context/context-types'; +import type { EntryLike, SessionStoreLike } from '../session/store-types'; import { computeFileLists, createFileOps, @@ -392,4 +392,3 @@ export const compactionEntryToMessage = (entry: EntryLike): ContextMessage | nul } return createSummaryMessage(payload.summary); }; - diff --git a/packages/agent-core/src/harness/compaction/utils.ts b/packages/agent-core/src/harness/compaction/utils.ts index dc3577d..64b9948 100644 --- a/packages/agent-core/src/harness/compaction/utils.ts +++ b/packages/agent-core/src/harness/compaction/utils.ts @@ -1,5 +1,5 @@ -import type { ContextMessage } from '../session/context/context-types'; -import type { EntryLike } from '../session/sessionInfo/session-repository'; +import type { ContextMessage } from '../context/context-types'; +import type { EntryLike } from '../session/store-types'; /** 摘要阶段累积的文件读写信息,后续追加到摘要里让模型保留文件上下文。 */ export interface FileOperations { diff --git a/packages/agent-core/src/harness/session/context/builder.ts b/packages/agent-core/src/harness/context/builder.ts similarity index 100% rename from packages/agent-core/src/harness/session/context/builder.ts rename to packages/agent-core/src/harness/context/builder.ts diff --git a/packages/agent-core/src/harness/session/context/context-builder.ts b/packages/agent-core/src/harness/context/context-builder.ts similarity index 100% rename from packages/agent-core/src/harness/session/context/context-builder.ts rename to packages/agent-core/src/harness/context/context-builder.ts diff --git a/packages/agent-core/src/harness/session/context/context-summarizer.ts b/packages/agent-core/src/harness/context/context-summarizer.ts similarity index 100% rename from packages/agent-core/src/harness/session/context/context-summarizer.ts rename to packages/agent-core/src/harness/context/context-summarizer.ts diff --git a/packages/agent-core/src/harness/session/context/context-types.ts b/packages/agent-core/src/harness/context/context-types.ts similarity index 100% rename from packages/agent-core/src/harness/session/context/context-types.ts rename to packages/agent-core/src/harness/context/context-types.ts diff --git a/packages/agent-core/src/harness/session/context/runtime-context.ts b/packages/agent-core/src/harness/context/runtime-context.ts similarity index 100% rename from packages/agent-core/src/harness/session/context/runtime-context.ts rename to packages/agent-core/src/harness/context/runtime-context.ts diff --git a/packages/agent-core/src/harness/session/context/task-context.ts b/packages/agent-core/src/harness/context/task-context.ts similarity index 100% rename from packages/agent-core/src/harness/session/context/task-context.ts rename to packages/agent-core/src/harness/context/task-context.ts diff --git a/packages/agent-core/src/harness/core/agent.ts b/packages/agent-core/src/harness/core/agent.ts index eb6b0a9..04fef07 100644 --- a/packages/agent-core/src/harness/core/agent.ts +++ b/packages/agent-core/src/harness/core/agent.ts @@ -1,4 +1,4 @@ -import { runLoop } from '@agent-core/harness/core/loop'; +import { runLoop } from '@agent-core/harness/runtime/run-loop'; import type { StreamHandlers } from '@agent-core/harness/core/llm'; import { createTaskState, type AgentMode } from '@agent-core/harness/core/state'; diff --git a/packages/agent-core/src/harness/session/memory/memory-retriever.ts b/packages/agent-core/src/harness/memory/memory-retriever.ts similarity index 90% rename from packages/agent-core/src/harness/session/memory/memory-retriever.ts rename to packages/agent-core/src/harness/memory/memory-retriever.ts index ddeb3d1..528764b 100644 --- a/packages/agent-core/src/harness/session/memory/memory-retriever.ts +++ b/packages/agent-core/src/harness/memory/memory-retriever.ts @@ -1,4 +1,4 @@ -import { memoryStore } from '@agent-core/harness/session/memory/memory-store'; +import { memoryStore } from './memory-store'; export interface RetrievedMemory { longFacts: string[]; diff --git a/packages/agent-core/src/harness/session/memory/memory-schema.ts b/packages/agent-core/src/harness/memory/memory-schema.ts similarity index 100% rename from packages/agent-core/src/harness/session/memory/memory-schema.ts rename to packages/agent-core/src/harness/memory/memory-schema.ts diff --git a/packages/agent-core/src/harness/session/memory/memory-store.ts b/packages/agent-core/src/harness/memory/memory-store.ts similarity index 94% rename from packages/agent-core/src/harness/session/memory/memory-store.ts rename to packages/agent-core/src/harness/memory/memory-store.ts index 73acfdb..c1dfe49 100644 --- a/packages/agent-core/src/harness/session/memory/memory-store.ts +++ b/packages/agent-core/src/harness/memory/memory-store.ts @@ -2,7 +2,7 @@ import { randomUUID } from 'node:crypto'; import type { LongMemoryItem, MemorySnapshot, -} from '@agent-core/harness/session/memory/memory-schema'; +} from './memory-schema'; export class MemoryStore { private readonly longMemory: LongMemoryItem[] = []; diff --git a/packages/agent-core/src/harness/session/memory/memory-writer.ts b/packages/agent-core/src/harness/memory/memory-writer.ts similarity index 81% rename from packages/agent-core/src/harness/session/memory/memory-writer.ts rename to packages/agent-core/src/harness/memory/memory-writer.ts index 5a53bd7..afebcfe 100644 --- a/packages/agent-core/src/harness/session/memory/memory-writer.ts +++ b/packages/agent-core/src/harness/memory/memory-writer.ts @@ -1,6 +1,6 @@ import type { TaskState } from '@core/state'; -import type { ContextMessage } from '@agent-core/harness/session/context/context-types'; -import { memoryStore } from '@agent-core/harness/session/memory/memory-store'; +import type { ContextMessage } from '../context/context-types'; +import { memoryStore } from './memory-store'; const countStableMentions = (messages: ContextMessage[], text: string): number => messages.reduce((count, item) => { diff --git a/packages/agent-core/src/harness/runtime/index.ts b/packages/agent-core/src/harness/runtime/index.ts new file mode 100644 index 0000000..8c269df --- /dev/null +++ b/packages/agent-core/src/harness/runtime/index.ts @@ -0,0 +1,3 @@ +export * from './run-loop'; +export * from './session-runtime'; +export * from './tool-runtime'; diff --git a/packages/agent-core/src/harness/core/loop.ts b/packages/agent-core/src/harness/runtime/run-loop.ts similarity index 67% rename from packages/agent-core/src/harness/core/loop.ts rename to packages/agent-core/src/harness/runtime/run-loop.ts index a824b60..8396c5e 100644 --- a/packages/agent-core/src/harness/core/loop.ts +++ b/packages/agent-core/src/harness/runtime/run-loop.ts @@ -1,33 +1,27 @@ -import { callLLM, streamLLM, type StreamHandlers } from './llm'; -import { ContextBuilder } from '../session/context/context-builder'; -import { buildRuntimeContext } from '../session/context/runtime-context'; -import type { ContextMessage } from '../session/context/context-types'; +import { callLLM, streamLLM, type StreamHandlers } from '../core/llm'; +import { ContextBuilder } from '../context/context-builder'; +import { buildRuntimeContext } from '../context/runtime-context'; +import type { ContextMessage } from '../context/context-types'; import { systemPrompt } from '../prompt/system'; import { toolPrompt } from '../prompt/tool'; import { getModePrompt } from '../prompt/modes'; -import type { TaskState } from './state'; +import type { TaskState } from '../core/state'; import { extractFinalText, parseAgentResponse, shouldContinueLoop, } from '../protocol/parser'; import { isToolCallAction } from '../protocol/action'; -import { executeToolCall } from '../session/tools/executor'; -import { promoteStableFact } from '../session/memory/memory-writer'; -import { retrieveMemoryForTask } from '../session/memory/memory-retriever'; -import { - appendTaskEntry, - appendTaskRecord, - ensureTaskSession, - getSharedSessionStoreOrNull, - readTaskHistory, - type SessionStoreLike, -} from '../session/sessionInfo/session-repository'; +import { promoteStableFact } from '../memory/memory-writer'; +import { retrieveMemoryForTask } from '../memory/memory-retriever'; +import { getSharedSessionStoreOrNull } from '../session/store-registry'; +import type { SessionStoreLike } from '../session/store-types'; +import { createSessionRuntime } from './session-runtime'; +import { runToolCall } from './tool-runtime'; import { DEFAULT_COMPACTION_SETTINGS, compact, createSummaryMessage, - persistCompactionEntry, prepareMessagesToCompact, shouldCompact, type CompactionSettings, @@ -48,12 +42,12 @@ export interface RunLoopOptions { summarize?: SummarizeFn; } +/** 编排 Agent 主循环,会话持久化与工具执行分别委托给 session-runtime 与 tool-runtime。 */ export const runLoop = async ( task: TaskState, handlers: StreamHandlers = {}, options: RunLoopOptions = {}, ): Promise => { - const history: ContextMessage[] = []; const store = options.persist === true ? (options.sessionStore ?? getSharedSessionStoreOrNull()) : null; @@ -67,11 +61,9 @@ export const runLoop = async ( : null; const summarize: SummarizeFn = options.summarize ?? (async (messages) => callLLM(messages)); - if (store) { - ensureTaskSession(task, store); - appendTaskEntry(task, { role: 'user', content: task.input, tags: ['task-input'] }, store); - history.push(...readTaskHistory(task, { limit: 100 }, store)); - } + // 会话恢复、条目与记录追加、压缩持久化统一交给 session-runtime。 + const session = createSessionRuntime(task, store); + const history: ContextMessage[] = [...session.history]; const maybeCompact = async (historyToCompact: ContextMessage[]): Promise => { if (!compactionSettings) { @@ -96,9 +88,7 @@ export const runLoop = async ( historyToCompact.length = 0; historyToCompact.push(createSummaryMessage(result.summary), ...result.retainedTail); - if (store) { - persistCompactionEntry(task.id, result, store); - } + session.persistCompaction(result); handlers.onTrace?.(`上下文已压缩到摘要,保留最近 ${result.retainedTail.length} 条消息`); }; @@ -137,39 +127,13 @@ export const runLoop = async ( if (!res) { return '无法获取 LLM 回复'; } - history.push({ - role: 'assistant', - content: res, - }); - if (store) { - appendTaskEntry(task, { role: 'assistant', content: res, tags: ['model-response'] }, store); - } + history.push({ role: 'assistant', content: res }); + session.appendAssistant(res); const parsed = parseAgentResponse(res); if (parsed && isToolCallAction(parsed)) { - if (store) { - appendTaskRecord(task, { - type: 'tool_call', - opKind: parsed.tool, - payload: parsed, - }, store); - } - const execution = await executeToolCall(task.mode, parsed); - history.push({ - role: 'user', - content: execution.content, - }); - if (store) { - appendTaskEntry(task, { role: 'tool', content: execution.content, tool: parsed.tool, tags: ['tool-result', parsed.tool] }, store); - appendTaskRecord(task, { - type: 'tool_result', - opKind: parsed.tool, - payload: { - tool: parsed.tool, - content: execution.content, - }, - }, store); - } + const execution = await runToolCall(task, parsed, session); + history.push({ role: 'user', content: execution.content }); handlers.onTrace?.(execution.trace); continue; } @@ -186,4 +150,4 @@ export const runLoop = async ( } return '已超出最大循环次数'; -}; +}; \ No newline at end of file diff --git a/packages/agent-core/src/harness/runtime/session-runtime.ts b/packages/agent-core/src/harness/runtime/session-runtime.ts new file mode 100644 index 0000000..baff470 --- /dev/null +++ b/packages/agent-core/src/harness/runtime/session-runtime.ts @@ -0,0 +1,73 @@ +import type { ContextMessage } from '../context/context-types'; +import { persistCompactionEntry, type CompactResult } from '../compaction/compaction'; +import type { TaskState } from '../core/state'; +import type { ToolCallAction } from '../protocol/action'; +import type { SessionStoreLike } from '../session/store-types'; +import { readTaskHistory } from '../session/history'; +import { + appendTaskEntry, + appendTaskRecord, + ensureTaskSession, +} from '../session/task-session'; + +export interface SessionRuntime { + history: ContextMessage[]; + appendAssistant(content: string): void; + recordToolCall(parsed: ToolCallAction): void; + appendToolResult(toolName: string, content: string): void; + persistCompaction(result: CompactResult): void; +} + +const noop = (): void => undefined; + +/** 收敛 runLoop 的会话恢复与持久化细节,store 为空时提供无副作用实现。 */ +export const createSessionRuntime = ( + task: TaskState, + store: SessionStoreLike | null, +): SessionRuntime => { + if (!store) { + return { + history: [], + appendAssistant: noop, + recordToolCall: noop, + appendToolResult: noop, + persistCompaction: noop, + }; + } + + ensureTaskSession(task, store); + appendTaskEntry(task, { role: 'user', content: task.input, tags: ['task-input'] }, store); + + return { + history: readTaskHistory(task, { limit: 100 }, store), + appendAssistant(content) { + appendTaskEntry( + task, + { role: 'assistant', content, tags: ['model-response'] }, + store, + ); + }, + recordToolCall(parsed) { + appendTaskRecord(task, { + type: 'tool_call', + opKind: parsed.tool, + payload: parsed, + }, store); + }, + appendToolResult(toolName, content) { + appendTaskEntry( + task, + { role: 'tool', content, tool: toolName, tags: ['tool-result', toolName] }, + store, + ); + appendTaskRecord(task, { + type: 'tool_result', + opKind: toolName, + payload: { tool: toolName, content }, + }, store); + }, + persistCompaction(result) { + persistCompactionEntry(task.id, result, store); + }, + }; +}; diff --git a/packages/agent-core/src/harness/runtime/tool-runtime.ts b/packages/agent-core/src/harness/runtime/tool-runtime.ts new file mode 100644 index 0000000..393c95e --- /dev/null +++ b/packages/agent-core/src/harness/runtime/tool-runtime.ts @@ -0,0 +1,16 @@ +import type { TaskState } from '../core/state'; +import type { ToolCallAction } from '../protocol/action'; +import { executeToolCall, type ToolExecutionResult } from '../tools/executor'; +import type { SessionRuntime } from './session-runtime'; + +/** 执行工具并复用会话运行时记录调用与结果。 */ +export const runToolCall = async ( + task: TaskState, + parsed: ToolCallAction, + session: SessionRuntime, +): Promise => { + session.recordToolCall(parsed); + const execution = await executeToolCall(task.mode, parsed); + session.appendToolResult(parsed.tool, execution.content); + return execution; +}; diff --git a/packages/agent-core/src/harness/session/activity-query.ts b/packages/agent-core/src/harness/session/activity-query.ts new file mode 100644 index 0000000..b63522e --- /dev/null +++ b/packages/agent-core/src/harness/session/activity-query.ts @@ -0,0 +1,107 @@ +import type { EntryLike, SessionStoreLike } from './store-types'; +import { getSharedSessionStore } from './store-registry'; + +/** + * 活动面板需要的历史条目。 + */ +export interface RecentHistoryItem { + id: string; + sessionId: string; + role: 'user' | 'assistant'; + content: string; + timestamp: string; +} + +/** + * 活动面板用于扫描相关页面的最近条目。 + */ +export interface RecentFeedItem { + id: string; + sessionId: string; + role: string; + content: string; + timestamp: string; +} + +const entryToRecentHistoryItem = (entry: EntryLike): RecentHistoryItem | null => { + if (entry.type !== 'user' && entry.type !== 'assistant') { + return null; + } + const payload = entry.payload as { content?: unknown } | null; + if (!payload || typeof payload.content !== 'string') { + return null; + } + return { + id: entry.id, + sessionId: entry.sessionId, + role: entry.type, + content: payload.content, + timestamp: entry.timestamp, + }; +}; + +const entryToRecentFeedItem = (entry: EntryLike): RecentFeedItem | null => { + const payload = entry.payload as { content?: unknown } | null; + if (!payload || typeof payload.content !== 'string') { + return null; + } + return { + id: entry.id, + sessionId: entry.sessionId, + role: entry.type, + content: payload.content, + timestamp: entry.timestamp, + }; +}; + +/** + * 读取最近会话中的 user/assistant 条目,按时间倒序。 + */ +export const loadRecentHistory = ( + limit = 8, + store: SessionStoreLike = getSharedSessionStore(), +): RecentHistoryItem[] => { + const sessions = store.listSessions({ limit: 20 }); + const result: RecentHistoryItem[] = []; + + for (const session of sessions) { + const entries = store.getEntries(session.id, { limit: 1000 }); + for (let index = entries.length - 1; index >= 0; index--) { + const item = entryToRecentHistoryItem(entries[index]); + if (item) { + result.push(item); + if (result.length >= limit) { + return result; + } + } + } + } + + return result; +}; + +/** + * 读取最近条目,包含 tool 输出,用于扫描相关页面。 + */ +export const loadRecentFeed = ( + limit = 200, + store: SessionStoreLike = getSharedSessionStore(), +): RecentFeedItem[] => { + const sessions = store.listSessions({ limit: 20 }); + const result: RecentFeedItem[] = []; + + for (const session of sessions) { + const entries = store.getEntries(session.id, { limit: 1000 }); + for (let index = entries.length - 1; index >= 0; index--) { + const item = entryToRecentFeedItem(entries[index]); + if (item) { + result.push(item); + if (result.length >= limit) { + return result; + } + } + } + } + + return result; +}; diff --git a/packages/agent-core/src/harness/session/history.ts b/packages/agent-core/src/harness/session/history.ts new file mode 100644 index 0000000..faf7cab --- /dev/null +++ b/packages/agent-core/src/harness/session/history.ts @@ -0,0 +1,84 @@ +import type { ContextMessage } from '../context/context-types'; +import type { EntryLike, SessionStoreLike } from './store-types'; +import { getSharedSessionStore } from './store-registry'; + +const entryToContextMessage = (entry: EntryLike): ContextMessage | null => { + const payload = entry.payload as { content?: unknown; role?: unknown } | null; + if (!payload || typeof payload.content !== 'string') { + return null; + } + + // user 消息由 context-builder 单独放入,避免重复;tool 结果沿用 runLoop 的 user 角色。 + if (entry.type === 'assistant') { + return { role: 'assistant', content: payload.content }; + } + if (entry.type === 'tool') { + return { role: 'user', content: payload.content }; + } + if (entry.type === 'compaction' || entry.type === 'branch_summary') { + const summary = (payload as { summary?: unknown }).summary; + if (typeof summary !== 'string') { + return null; + } + const prefix = entry.type === 'compaction' ? '[历史摘要]' : '[分支摘要]'; + return { role: 'user', content: `${prefix}\n${summary}` }; + } + return null; +}; + +const isContextMessage = (value: unknown): value is ContextMessage => { + if (!value || typeof value !== 'object') { + return false; + } + const message = value as { role?: unknown; content?: unknown }; + return ( + (message.role === 'user' || message.role === 'assistant') && + typeof message.content === 'string' + ); +}; + +/** + * 读取任务会话历史,供 runLoop 恢复上下文使用。 + * 只返回 assistant/tool 条目,user 指令由 buildRuntimeContext 单独拼接。 + */ +export const readTaskHistory = ( + task: { id: string }, + options: { limit?: number } = {}, + store: SessionStoreLike = getSharedSessionStore(), +): ContextMessage[] => { + // getEntries 按 seq 升序返回,这里取最近 limit 条,避免只拿到最早的历史。 + const limit = options.limit ?? 1000; + const entries = store.getEntries(task.id, { limit: Math.max(limit, 1000) }); + + let lastCompactionIndex = -1; + for (let index = entries.length - 1; index >= 0; index--) { + if (entries[index].type === 'compaction') { + lastCompactionIndex = index; + break; + } + } + + if (lastCompactionIndex >= 0) { + const compaction = entries[lastCompactionIndex]; + const payload = compaction.payload as { retainedTail?: unknown } | null; + const retainedTail = Array.isArray(payload?.retainedTail) + ? payload.retainedTail.filter(isContextMessage) + : []; + const history: ContextMessage[] = [ + ...(entryToContextMessage(compaction) ? [entryToContextMessage(compaction)!] : []), + ...retainedTail, + ...entries + .slice(lastCompactionIndex + 1) + .map(entryToContextMessage) + .filter((item): item is ContextMessage => item !== null), + ]; + return history.slice(-limit); + } + + return entries + .slice(-limit) + .map(entryToContextMessage) + .filter((item): item is ContextMessage => item !== null); +}; + +export { entryToContextMessage }; diff --git a/packages/agent-core/src/harness/session/index.ts b/packages/agent-core/src/harness/session/index.ts index 42dd4ee..05dce44 100644 --- a/packages/agent-core/src/harness/session/index.ts +++ b/packages/agent-core/src/harness/session/index.ts @@ -1,9 +1,5 @@ -export * from './context/builder'; -export * from './memory/memory-retriever'; -export * from './memory/memory-schema'; -export * from './memory/memory-store'; -export * from './memory/memory-writer'; -export * from './policy/guard'; -export * from './policy/modes'; -export * from './sessionInfo/session-repository'; -export * from './tools'; +export * from './activity-query'; +export * from './history'; +export * from './store-registry'; +export * from './store-types'; +export * from './task-session'; diff --git a/packages/agent-core/src/harness/session/sessionInfo/session-repository.ts b/packages/agent-core/src/harness/session/sessionInfo/session-repository.ts deleted file mode 100644 index a4904ba..0000000 --- a/packages/agent-core/src/harness/session/sessionInfo/session-repository.ts +++ /dev/null @@ -1,420 +0,0 @@ -import type { TaskState } from '@agent-core/harness/core/state'; -import type { ContextMessage } from '../context/context-types'; - -/** 默认泳道名称,与 session-sqlite store 保持一致 */ -export const DEFAULT_LANE = 'default'; - -/** - * SessionStoreLike 是 agent-core 依赖的最小会话存储接口。 - * 具体实现由 session-sqlite 的 SessionStore 提供,避免 agent-core 反向依赖存储包。 - */ -export interface SessionStoreLike { - close?(): void; - getSession(id: string): SessionLike | null; - createSession(input: { - id?: string; - cwd: string; - parentSessionId?: string | null; - metadata?: Record; - }): SessionLike; - replaceSession(input: { - id?: string; - cwd: string; - parentSessionId?: string | null; - metadata?: Record; - }): SessionLike; - appendEntry( - sessionId: string, - input: { - id?: string; - parentId?: string | null; - type: string; - payload: unknown; - branchId?: string; - lane?: string; - }, - ): EntryLike; - appendRecord( - sessionId: string, - input: { - lane: string; - runId?: string | null; - type: string; - opKind?: string | null; - payload: unknown; - }, - ): RecordLike; - getStats(sessionId: string): SessionStatsLike; - updateStats( - sessionId: string, - stats: Omit, - ): SessionStatsLike; - getEntries( - sessionId: string, - options: { limit?: number }, - ): EntryLike[]; - listSessions(options: { limit?: number }): SessionLike[]; -} - -/** 会话基本信息的最小形状 */ -export interface SessionLike { - id: string; - createdAt: string; - cwd: string; - parentSessionId: string | null; - metadata: Record; -} - -/** 条目信息的最小形状 */ -export interface EntryLike { - sessionId: string; - seq: number; - id: string; - parentId: string | null; - type: string; - timestamp: string; - payload: unknown; -} - -/** 记录信息的最小形状 */ -export interface RecordLike { - sessionId: string; - seq: number; - id: string; - lane: string; - runId: string | null; - type: string; - opKind: string | null; - timestamp: string; - payload: unknown; -} - -/** 会话统计的最小形状 */ -export interface SessionStatsLike { - sessionId: string; - messageCount: number; - cachedTokens: number; - uncachedTokens: number; - totalTokens: number; - costTotal: number; -} - -/** - * 会话条目写入参数。 - */ -export interface TaskEntryInput { - /** 条目唯一 ID,不传则由 SessionStore 生成 */ - id?: string; - /** 父条目 ID,不传时默认挂在当前泳道叶子下 */ - parentId?: string | null; - /** 条目角色,会同时作为 entries.type 保存 */ - role: 'user' | 'assistant' | 'tool' | 'system'; - /** 条目正文 */ - content: string; - /** 工具名,tool 类条目使用 */ - tool?: string | null; - /** 标签,便于后续检索和活动面板展示 */ - tags?: string[]; - /** 分支 ID */ - branchId?: string; - /** 泳道 */ - lane?: string; -} - -/** - * 运行记录写入参数,对应 schema 中的 records 表。 - */ -export interface TaskRecordInput { - lane?: string; - runId?: string | null; - type: string; - opKind?: string | null; - payload: unknown; -} - -/** - * 活动面板需要的历史条目。 - */ -export interface RecentHistoryItem { - id: string; - sessionId: string; - role: 'user' | 'assistant'; - content: string; - timestamp: string; -} - -/** - * 活动面板用于扫描相关页面的最近条目。 - */ -export interface RecentFeedItem { - id: string; - sessionId: string; - role: string; - content: string; - timestamp: string; -} - -let sharedStore: SessionStoreLike | null = null; - -/** 获取进程内共享的 SessionStoreLike。 */ -export const getSharedSessionStore = (): SessionStoreLike => { - if (!sharedStore) { - throw new Error('会话存储未初始化,请先调用 setSharedSessionStore'); - } - return sharedStore; -}; - -/** 获取当前共享存储,未初始化时返回 null。 */ -export const getSharedSessionStoreOrNull = (): SessionStoreLike | null => sharedStore; - -/** 替换共享 SessionStore,测试传入 :memory: 或注入自定义实例时使用。 */ -export const setSharedSessionStore = (store: SessionStoreLike | null): void => { - sharedStore = store; -}; - -/** 关闭并清空共享 SessionStore。 */ -export const closeSharedSessionStore = (): void => { - sharedStore?.close?.(); - sharedStore = null; -}; - -const taskMetadata = (task: TaskState) => ({ - mode: task.mode, - objective: task.objective, - constraints: task.constraints, - createdAt: task.createdAt, -}); - -/** - * 为任务创建对应会话。已存在时更新元数据,避免覆盖已有历史条目。 - */ -export const ensureTaskSession = ( - task: TaskState, - store: SessionStoreLike = getSharedSessionStore(), -): SessionLike => { - const cwd = task.workspace ?? process.cwd(); - const metadata = taskMetadata(task); - - if (store.getSession(task.id)) { - return store.replaceSession({ - id: task.id, - cwd, - metadata, - }); - } - - return store.createSession({ - id: task.id, - cwd, - metadata, - }); -}; - -/** - * 追加一条 agent 对话条目,并同步递增会话消息数统计。 - */ -export const appendTaskEntry = ( - task: TaskState, - input: TaskEntryInput, - store: SessionStoreLike = getSharedSessionStore(), -): EntryLike => { - const entryInput = { - id: input.id, - parentId: input.parentId, - type: input.role, - payload: { - role: input.role, - content: input.content, - tool: input.tool ?? null, - tags: input.tags ?? [], - }, - branchId: input.branchId, - lane: input.lane ?? DEFAULT_LANE, - }; - - const entry = store.appendEntry(task.id, entryInput); - const stats = store.getStats(task.id); - store.updateStats(task.id, { - ...stats, - messageCount: stats.messageCount + 1, - }); - return entry; -}; - -/** - * 追加一条运行记录,对应 schema 中的 records 表。 - */ -export const appendTaskRecord = ( - task: TaskState, - input: TaskRecordInput, - store: SessionStoreLike = getSharedSessionStore(), -): RecordLike => - store.appendRecord(task.id, { - lane: input.lane ?? 'run', - runId: input.runId ?? task.id, - type: input.type, - opKind: input.opKind ?? null, - payload: input.payload, - }); - -const entryToContextMessage = (entry: EntryLike): ContextMessage | null => { - const payload = entry.payload as { content?: unknown; role?: unknown } | null; - if (!payload || typeof payload.content !== 'string') { - return null; - } - - // user 消息由 context-builder 单独放入,避免重复;tool 结果沿用 runLoop 的 user 角色。 - if (entry.type === 'assistant') { - return { role: 'assistant', content: payload.content }; - } - if (entry.type === 'tool') { - return { role: 'user', content: payload.content }; - } - if (entry.type === 'compaction' || entry.type === 'branch_summary') { - const summary = (payload as { summary?: unknown }).summary; - if (typeof summary !== 'string') { - return null; - } - const prefix = entry.type === 'compaction' ? '[历史摘要]' : '[分支摘要]'; - return { role: 'user', content: `${prefix}\n${summary}` }; - } - return null; -}; - -const isContextMessage = (value: unknown): value is ContextMessage => { - if (!value || typeof value !== 'object') { - return false; - } - const message = value as { role?: unknown; content?: unknown }; - return ( - (message.role === 'user' || message.role === 'assistant') && - typeof message.content === 'string' - ); -}; - -/** - * 读取任务会话历史,供 runLoop 恢复上下文使用。 - * 只返回 assistant/tool 条目,user 指令由 buildRuntimeContext 单独拼接。 - */ -export const readTaskHistory = ( - task: TaskState, - options: { limit?: number } = {}, - store: SessionStoreLike = getSharedSessionStore(), -): ContextMessage[] => { - // getEntries 按 seq 升序返回,这里取最近 limit 条,避免只拿到最早的历史。 - const limit = options.limit ?? 1000; - const entries = store.getEntries(task.id, { limit: Math.max(limit, 1000) }); - - let lastCompactionIndex = -1; - for (let index = entries.length - 1; index >= 0; index--) { - if (entries[index].type === 'compaction') { - lastCompactionIndex = index; - break; - } - } - - if (lastCompactionIndex >= 0) { - const compaction = entries[lastCompactionIndex]; - const payload = compaction.payload as { retainedTail?: unknown } | null; - const retainedTail = Array.isArray(payload?.retainedTail) - ? payload.retainedTail.filter(isContextMessage) - : []; - const history: ContextMessage[] = [ - ...(entryToContextMessage(compaction) ? [entryToContextMessage(compaction)!] : []), - ...retainedTail, - ...entries - .slice(lastCompactionIndex + 1) - .map(entryToContextMessage) - .filter((item): item is ContextMessage => item !== null), - ]; - return history.slice(-limit); - } - - return entries - .slice(-limit) - .map(entryToContextMessage) - .filter((item): item is ContextMessage => item !== null); -}; - -const entryToRecentHistoryItem = (entry: EntryLike): RecentHistoryItem | null => { - if (entry.type !== 'user' && entry.type !== 'assistant') { - return null; - } - const payload = entry.payload as { content?: unknown } | null; - if (!payload || typeof payload.content !== 'string') { - return null; - } - return { - id: entry.id, - sessionId: entry.sessionId, - role: entry.type, - content: payload.content, - timestamp: entry.timestamp, - }; -}; - -const entryToRecentFeedItem = (entry: EntryLike): RecentFeedItem | null => { - const payload = entry.payload as { content?: unknown } | null; - if (!payload || typeof payload.content !== 'string') { - return null; - } - return { - id: entry.id, - sessionId: entry.sessionId, - role: entry.type, - content: payload.content, - timestamp: entry.timestamp, - }; -}; - -/** - * 读取最近会话中的 user/assistant 条目,按时间倒序。 - */ -export const loadRecentHistory = ( - limit = 8, - store: SessionStoreLike = getSharedSessionStore(), -): RecentHistoryItem[] => { - const sessions = store.listSessions({ limit: 20 }); - const result: RecentHistoryItem[] = []; - - for (const session of sessions) { - const entries = store.getEntries(session.id, { limit: 1000 }); - for (let index = entries.length - 1; index >= 0; index--) { - const item = entryToRecentHistoryItem(entries[index]); - if (item) { - result.push(item); - if (result.length >= limit) { - return result; - } - } - } - } - - return result; -}; - -/** - * 读取最近条目,包含 tool 输出,用于扫描相关页面。 - */ -export const loadRecentFeed = ( - limit = 200, - store: SessionStoreLike = getSharedSessionStore(), -): RecentFeedItem[] => { - const sessions = store.listSessions({ limit: 20 }); - const result: RecentFeedItem[] = []; - - for (const session of sessions) { - const entries = store.getEntries(session.id, { limit: 1000 }); - for (let index = entries.length - 1; index >= 0; index--) { - const item = entryToRecentFeedItem(entries[index]); - if (item) { - result.push(item); - if (result.length >= limit) { - return result; - } - } - } - } - - return result; -}; diff --git a/packages/agent-core/src/harness/session/store-registry.ts b/packages/agent-core/src/harness/session/store-registry.ts new file mode 100644 index 0000000..8562c5a --- /dev/null +++ b/packages/agent-core/src/harness/session/store-registry.ts @@ -0,0 +1,25 @@ +import type { SessionStoreLike } from './store-types'; + +let sharedStore: SessionStoreLike | null = null; + +/** 获取进程内共享的 SessionStoreLike。 */ +export const getSharedSessionStore = (): SessionStoreLike => { + if (!sharedStore) { + throw new Error('会话存储未初始化,请先调用 setSharedSessionStore'); + } + return sharedStore; +}; + +/** 获取当前共享存储,未初始化时返回 null。 */ +export const getSharedSessionStoreOrNull = (): SessionStoreLike | null => sharedStore; + +/** 替换共享 SessionStore,测试传入 :memory: 或注入自定义实例时使用。 */ +export const setSharedSessionStore = (store: SessionStoreLike | null): void => { + sharedStore = store; +}; + +/** 关闭并清空共享 SessionStore。 */ +export const closeSharedSessionStore = (): void => { + sharedStore?.close?.(); + sharedStore = null; +}; diff --git a/packages/agent-core/src/harness/session/store-types.ts b/packages/agent-core/src/harness/session/store-types.ts new file mode 100644 index 0000000..a3a419d --- /dev/null +++ b/packages/agent-core/src/harness/session/store-types.ts @@ -0,0 +1,94 @@ +/** + * SessionStoreLike 是 agent-core 依赖的最小会话存储接口。 + * 具体实现由 session-sqlite 的 SessionStore 提供,避免 agent-core 反向依赖存储包。 + */ +export interface SessionStoreLike { + close?(): void; + getSession(id: string): SessionLike | null; + createSession(input: { + id?: string; + cwd: string; + parentSessionId?: string | null; + metadata?: Record; + }): SessionLike; + replaceSession(input: { + id?: string; + cwd: string; + parentSessionId?: string | null; + metadata?: Record; + }): SessionLike; + appendEntry( + sessionId: string, + input: { + id?: string; + parentId?: string | null; + type: string; + payload: unknown; + branchId?: string; + lane?: string; + }, + ): EntryLike; + appendRecord( + sessionId: string, + input: { + lane: string; + runId?: string | null; + type: string; + opKind?: string | null; + payload: unknown; + }, + ): RecordLike; + getStats(sessionId: string): SessionStatsLike; + updateStats( + sessionId: string, + stats: Omit, + ): SessionStatsLike; + getEntries( + sessionId: string, + options: { limit?: number }, + ): EntryLike[]; + listSessions(options: { limit?: number }): SessionLike[]; +} + +/** 会话基本信息的最小形状 */ +export interface SessionLike { + id: string; + createdAt: string; + cwd: string; + parentSessionId: string | null; + metadata: Record; +} + +/** 条目信息的最小形状 */ +export interface EntryLike { + sessionId: string; + seq: number; + id: string; + parentId: string | null; + type: string; + timestamp: string; + payload: unknown; +} + +/** 记录信息的最小形状 */ +export interface RecordLike { + sessionId: string; + seq: number; + id: string; + lane: string; + runId: string | null; + type: string; + opKind: string | null; + timestamp: string; + payload: unknown; +} + +/** 会话统计的最小形状 */ +export interface SessionStatsLike { + sessionId: string; + messageCount: number; + cachedTokens: number; + uncachedTokens: number; + totalTokens: number; + costTotal: number; +} diff --git a/packages/agent-core/src/harness/session/task-session.ts b/packages/agent-core/src/harness/session/task-session.ts new file mode 100644 index 0000000..a3efcbb --- /dev/null +++ b/packages/agent-core/src/harness/session/task-session.ts @@ -0,0 +1,123 @@ +import type { TaskState } from '../core/state'; +import type { + EntryLike, + RecordLike, + SessionLike, + SessionStoreLike, +} from './store-types'; +import { getSharedSessionStore } from './store-registry'; + +/** 默认泳道名称,与 session-sqlite store 保持一致 */ +export const DEFAULT_LANE = 'default'; + +/** + * 会话条目写入参数。 + */ +export interface TaskEntryInput { + /** 条目唯一 ID,不传则由 SessionStore 生成 */ + id?: string; + /** 父条目 ID,不传时默认挂在当前泳道叶子下 */ + parentId?: string | null; + /** 条目角色,会同时作为 entries.type 保存 */ + role: 'user' | 'assistant' | 'tool' | 'system'; + /** 条目正文 */ + content: string; + /** 工具名,tool 类条目使用 */ + tool?: string | null; + /** 标签,便于后续检索和活动面板展示 */ + tags?: string[]; + /** 分支 ID */ + branchId?: string; + /** 泳道 */ + lane?: string; +} + +/** + * 运行记录写入参数,对应 schema 中的 records 表。 + */ +export interface TaskRecordInput { + lane?: string; + runId?: string | null; + type: string; + opKind?: string | null; + payload: unknown; +} + +const taskMetadata = (task: TaskState) => ({ + mode: task.mode, + objective: task.objective, + constraints: task.constraints, + createdAt: task.createdAt, +}); + +/** + * 为任务创建对应会话。已存在时更新元数据,避免覆盖已有历史条目。 + */ +export const ensureTaskSession = ( + task: TaskState, + store: SessionStoreLike = getSharedSessionStore(), +): SessionLike => { + const cwd = task.workspace ?? process.cwd(); + const metadata = taskMetadata(task); + + if (store.getSession(task.id)) { + return store.replaceSession({ + id: task.id, + cwd, + metadata, + }); + } + + return store.createSession({ + id: task.id, + cwd, + metadata, + }); +}; + +/** + * 追加一条 agent 对话条目,并同步递增会话消息数统计。 + */ +export const appendTaskEntry = ( + task: TaskState, + input: TaskEntryInput, + store: SessionStoreLike = getSharedSessionStore(), +): EntryLike => { + const entryInput = { + id: input.id, + parentId: input.parentId, + type: input.role, + payload: { + role: input.role, + content: input.content, + tool: input.tool ?? null, + tags: input.tags ?? [], + }, + branchId: input.branchId, + lane: input.lane ?? DEFAULT_LANE, + }; + + const entry = store.appendEntry(task.id, entryInput); + const stats = store.getStats(task.id); + store.updateStats(task.id, { + ...stats, + messageCount: stats.messageCount + 1, + }); + return entry; +}; + +/** + * 追加一条运行记录,对应 schema 中的 records 表。 + */ +export const appendTaskRecord = ( + task: TaskState, + input: TaskRecordInput, + store: SessionStoreLike = getSharedSessionStore(), +): RecordLike => + store.appendRecord(task.id, { + lane: input.lane ?? 'run', + runId: input.runId ?? task.id, + type: input.type, + opKind: input.opKind ?? null, + payload: input.payload, + }); diff --git a/packages/agent-core/src/harness/session/tools/bash.ts b/packages/agent-core/src/harness/tools/bash.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/bash.ts rename to packages/agent-core/src/harness/tools/bash.ts diff --git a/packages/agent-core/src/harness/session/tools/executor.ts b/packages/agent-core/src/harness/tools/executor.ts similarity index 96% rename from packages/agent-core/src/harness/session/tools/executor.ts rename to packages/agent-core/src/harness/tools/executor.ts index a039c83..7be3fff 100644 --- a/packages/agent-core/src/harness/session/tools/executor.ts +++ b/packages/agent-core/src/harness/tools/executor.ts @@ -1,5 +1,5 @@ import { tools } from './'; -import { enforceToolPermission } from '../policy/guard'; +import { enforceToolPermission } from './policy/guard'; import type { AgentMode } from '@agent-core/harness/core/state'; import type { ToolCallAction } from '@agent-core/harness/protocol/action'; import { createToolResultObservation } from '@agent-core/harness/protocol/observation'; diff --git a/packages/agent-core/src/harness/session/tools/getEnvironment.ts b/packages/agent-core/src/harness/tools/getEnvironment.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/getEnvironment.ts rename to packages/agent-core/src/harness/tools/getEnvironment.ts diff --git a/packages/agent-core/src/harness/session/tools/gitDiff.ts b/packages/agent-core/src/harness/tools/gitDiff.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/gitDiff.ts rename to packages/agent-core/src/harness/tools/gitDiff.ts diff --git a/packages/agent-core/src/harness/session/tools/index.ts b/packages/agent-core/src/harness/tools/index.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/index.ts rename to packages/agent-core/src/harness/tools/index.ts diff --git a/packages/agent-core/src/harness/session/tools/ocr.ts b/packages/agent-core/src/harness/tools/ocr.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/ocr.ts rename to packages/agent-core/src/harness/tools/ocr.ts diff --git a/packages/agent-core/src/harness/session/tools/pathUtils.ts b/packages/agent-core/src/harness/tools/pathUtils.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/pathUtils.ts rename to packages/agent-core/src/harness/tools/pathUtils.ts diff --git a/packages/agent-core/src/harness/session/policy/guard.ts b/packages/agent-core/src/harness/tools/policy/guard.ts similarity index 100% rename from packages/agent-core/src/harness/session/policy/guard.ts rename to packages/agent-core/src/harness/tools/policy/guard.ts diff --git a/packages/agent-core/src/harness/session/policy/modes.ts b/packages/agent-core/src/harness/tools/policy/modes.ts similarity index 100% rename from packages/agent-core/src/harness/session/policy/modes.ts rename to packages/agent-core/src/harness/tools/policy/modes.ts diff --git a/packages/agent-core/src/harness/session/tools/readFile.ts b/packages/agent-core/src/harness/tools/readFile.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/readFile.ts rename to packages/agent-core/src/harness/tools/readFile.ts diff --git a/packages/agent-core/src/harness/session/tools/search.ts b/packages/agent-core/src/harness/tools/search.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/search.ts rename to packages/agent-core/src/harness/tools/search.ts diff --git a/packages/agent-core/src/harness/session/tools/writeFile.ts b/packages/agent-core/src/harness/tools/writeFile.ts similarity index 100% rename from packages/agent-core/src/harness/session/tools/writeFile.ts rename to packages/agent-core/src/harness/tools/writeFile.ts diff --git a/packages/agent-core/src/web/export.ts b/packages/agent-core/src/web/export.ts index ecae32a..f8a7c56 100644 --- a/packages/agent-core/src/web/export.ts +++ b/packages/agent-core/src/web/export.ts @@ -4,7 +4,7 @@ import type { EntryLike, SessionStoreLike, SessionStatsLike, -} from '../harness/session/sessionInfo/session-repository'; +} from '../harness/session/store-types'; /** GitHub Pages 客户端读取的会话快照格式。 */ export interface WebEntry { diff --git a/source/app.tsx b/source/app.tsx index 47cc2e1..bdbd887 100644 --- a/source/app.tsx +++ b/source/app.tsx @@ -7,17 +7,17 @@ import { llmModel } from '@agent-core/harness/core/llm'; import TextInput from 'ink-text-input'; import Spinner from 'ink-spinner'; import { get_encoding } from 'tiktoken'; -import { memoryStore } from '@agent-core/harness/session/memory/memory-store'; +import { memoryStore } from '@agent-core/harness/memory/memory-store'; import { getSharedSessionStore, loadRecentFeed, loadRecentHistory, setSharedSessionStore, type RecentHistoryItem, -} from '@agent-core/harness/session/sessionInfo/session-repository'; +} from '@agent-core/harness/session'; import { writeWebExport } from '@web/export'; import { SessionStore } from '../packages/session-sqlite/src/index'; -import { resolveUserPath } from '@agent-core/harness/session/tools/pathUtils'; +import { resolveUserPath } from '@agent-core/harness/tools/pathUtils'; const encoding = get_encoding('cl100k_base'); diff --git a/tests/agent-session-runloop.spec.ts b/tests/agent-session-runloop.spec.ts index e17009c..2a4ee6c 100644 --- a/tests/agent-session-runloop.spec.ts +++ b/tests/agent-session-runloop.spec.ts @@ -4,14 +4,14 @@ vi.mock('@core/llm', () => ({ streamLLM: vi.fn(), })); -import { runLoop } from '@core/loop'; +import { runLoop } from '@agent-core/harness/runtime/run-loop'; import { streamLLM } from '@core/llm'; import { createTaskState } from '@core/state'; import { SessionStore } from '../packages/session-sqlite/src/index'; import { closeSharedSessionStore, setSharedSessionStore, -} from '@agent-core/harness/session/sessionInfo/session-repository'; +} from '@agent-core/harness/session'; describe('runLoop SQLite 持久化', () => { let store: SessionStore; diff --git a/tests/agent.spec.ts b/tests/agent.spec.ts index 8133123..0246300 100644 --- a/tests/agent.spec.ts +++ b/tests/agent.spec.ts @@ -1,12 +1,12 @@ import { vi, describe, it, expect } from 'vitest'; // Mock runLoop to avoid calling the real loop implementation -vi.mock('@core/loop', () => ({ +vi.mock('@agent-core/harness/runtime/run-loop', () => ({ runLoop: vi.fn(async () => 'handled:task'), })); -import { agent } from '@core/agent'; -import { runLoop } from '@core/loop'; +import { agent } from '@agent-core/harness/core/agent'; +import { runLoop } from '@agent-core/harness/runtime/run-loop'; describe('agent', () => { it('calls runLoop with input and returns the final response', async () => { diff --git a/tests/compaction.spec.ts b/tests/compaction.spec.ts index d001992..04c3280 100644 --- a/tests/compaction.spec.ts +++ b/tests/compaction.spec.ts @@ -1,6 +1,6 @@ import { afterEach, describe, expect, it, vi } from 'vitest'; import { SessionStore } from '../packages/session-sqlite/src/index'; -import type { ContextMessage } from '@agent-core/harness/session/context/context-types'; +import type { ContextMessage } from '@agent-core/harness/context/context-types'; import { compact, createSummaryMessage, diff --git a/tests/runLoop.spec.ts b/tests/runLoop.spec.ts index 3da20af..838092e 100644 --- a/tests/runLoop.spec.ts +++ b/tests/runLoop.spec.ts @@ -5,7 +5,7 @@ vi.mock('@core/llm', () => ({ streamLLM: vi.fn(), })); -import { runLoop } from '@core/loop'; +import { runLoop } from '@agent-core/harness/runtime/run-loop'; import { streamLLM } from '@core/llm'; import { createTaskState } from '@core/state'; diff --git a/tests/session-repository.spec.ts b/tests/session-repository.spec.ts index 44cb2fd..e3f9f3b 100644 --- a/tests/session-repository.spec.ts +++ b/tests/session-repository.spec.ts @@ -10,7 +10,7 @@ import { loadRecentHistory, readTaskHistory, setSharedSessionStore, -} from '@agent-core/harness/session/sessionInfo/session-repository'; +} from '@agent-core/harness/session'; describe('SessionRepository', () => { let store: SessionStore; diff --git a/tsconfig.json b/tsconfig.json index f26785d..4581f75 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -19,9 +19,9 @@ "@utils/*": ["./packages/agent-core/src/harness/utils/*"], "@web/*": ["./packages/agent-core/src/web/*"], "@prompt/*": ["./packages/agent-core/src/harness/prompt/*"], - "@tools": ["./packages/agent-core/src/harness/session/tools/index.ts"], - "@tools/*": ["./packages/agent-core/src/harness/session/tools/*"], - "@policy/*": ["./packages/agent-core/src/harness/session/policy/*"], + "@tools": ["./packages/agent-core/src/harness/tools/index.ts"], + "@tools/*": ["./packages/agent-core/src/harness/tools/*"], + "@policy/*": ["./packages/agent-core/src/harness/tools/policy/*"], "@protocol/*": ["./packages/agent-core/src/harness/protocol/*"] } }, diff --git a/vitest.config.ts b/vitest.config.ts index a80ab5e..c88459f 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -19,9 +19,9 @@ export default defineConfig({ { find: '@utils', replacement: path.resolve(__dirname, './packages/agent-core/src/harness/utils') }, { find: '@web', replacement: path.resolve(__dirname, './packages/agent-core/src/web') }, { find: '@prompt', replacement: path.resolve(__dirname, './packages/agent-core/src/harness/prompt') }, - { find: /^@tools$/, replacement: path.resolve(__dirname, './packages/agent-core/src/harness/session/tools/index.ts') }, - { find: /^@tools\//, replacement: path.resolve(__dirname, './packages/agent-core/src/harness/session/tools') + '/' }, - { find: '@policy', replacement: path.resolve(__dirname, './packages/agent-core/src/harness/session/policy') }, + { find: /^@tools$/, replacement: path.resolve(__dirname, './packages/agent-core/src/harness/tools/index.ts') }, + { find: /^@tools\//, replacement: path.resolve(__dirname, './packages/agent-core/src/harness/tools') + '/' }, + { find: '@policy', replacement: path.resolve(__dirname, './packages/agent-core/src/harness/tools/policy') }, { find: '@protocol', replacement: path.resolve(__dirname, './packages/agent-core/src/harness/protocol') }, ], }, From bc8cf03a42e49333deb0333a2d835d7ba8623557 Mon Sep 17 00:00:00 2001 From: AlkaidSTART <2595006848@qq.com> Date: Wed, 12 Aug 2026 16:37:31 +0800 Subject: [PATCH 2/3] =?UTF-8?q?docs:=20=E8=A1=A5=E5=85=85=E4=BA=A4?= =?UTF-8?q?=E4=BA=92=E5=BC=8F=E6=9E=B6=E6=9E=84=E5=9B=BE=E5=B9=B6=E5=AE=8C?= =?UTF-8?q?=E5=96=84=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + README.md | 2 + docs/call-code-architecture.html | 13686 +++++++++++++++++++++++++++++ 3 files changed, 13689 insertions(+) create mode 100644 docs/call-code-architecture.html diff --git a/.gitignore b/.gitignore index 22655b2..31ad486 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ packages/client/dist/ *.tsbuildinfo bundle.* docs/* +!docs/call-code-architecture.html diff --git a/README.md b/README.md index a0ec2dc..27ced51 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,8 @@ OpenAI-compatible LLM 模型层 └── 循环执行,直到任务完成 ``` +完整的交互式架构图见 [docs/call-code-architecture.html](docs/call-code-architecture.html),支持明暗主题切换、搜索、关系高亮与节点聚焦,可直接在浏览器打开。 + 运行时的核心流程: 1. CLI 接收自然语言任务,交给 agent 构建上下文并调用 LLM。 diff --git a/docs/call-code-architecture.html b/docs/call-code-architecture.html new file mode 100644 index 0000000..879a330 --- /dev/null +++ b/docs/call-code-architecture.html @@ -0,0 +1,13686 @@ + + + + + + + call-code 架构 Diagram + + + + + + + + + + + +
+ +
+
+
+

call-code 架构

+
+
+ + + + + + +
+ + call-code 架构 + A architecture diagram generated by Archify. + + + + + + + + + + + + + + + + + + + + + + + + + agent-core + + + + + + + + + + + + + + + + CLI 交互层 · source/app.tsx · Architecture component + + + + CLI 交互层 + source/app.tsx + + + + 核心运行器 · agent · runLoop · Architecture component + + + + 核心运行器 + agent · runLoop + + + + LLM 服务 · OpenAI 兼容接口 · Architecture component + + + + LLM 服务 + OpenAI 兼容接口 + + + + 上下文构建 · token 预算 · 摘要 · agent-core + + + + 上下文构建 + token 预算 · 摘要 + + + + 协议解析 · tool_call / final · agent-core + + + + 协议解析 + tool_call / final + + + + 模式权限 · PLAN / BUILD · agent-core + + + + 模式权限 + PLAN / BUILD + + + + 内置工具集 · read/write/bash/git_diff/ocr · agent-core + + + + 内置工具集 + read/write/bash/git_diff/ocr + + + + 记忆 · 短期 / 长期 · agent-core + + + + 记忆 + 短期 / 长期 + + + + 会话存储 · node:sqlite · Architecture component + + + + 会话存储 + node:sqlite + + + + 会话展示端 · React + Vite · GitHub Pages · Architecture component + + + + 会话展示端 + React + Vite · GitHub Pages + + + + + + 任务输入 + + + + chat.completions + + + + 流式响应 + + + + + + 记忆读写 + + + + 会话持久化 + + + + 导出 data.json + + + + + + + Legend + + + Frontend + + + + Backend + + + + Database + + + + External + + + +

+ + + + + + + + +
+ + +
+
+
+
+

功能特性

+
+
    +
  • • Ink 终端界面 · 双模式 PLAN/BUILD
  • +
  • • 本地工具集 · 结构化 action 协议
  • +
  • • 短期 / 长期记忆 · token 预算裁剪
  • +
  • • node:sqlite 会话持久化 + GitHub Pages 展示
  • +
+
+ +
+
+
+

运行流程

+
+
    +
  • • CLI 接任务 → 核心构建上下文
  • +
  • • LLM 返回 tool_call / final
  • +
  • • policy 校验权限后工具执行
  • +
  • • 结果回写 observation 循环直至完成
  • +
+
+
+ +
+ + + + From 50f91b1e63c8a8c33e91c7078ec636d3e9a75e1a Mon Sep 17 00:00:00 2001 From: AlkaidSTART <2595006848@qq.com> Date: Wed, 12 Aug 2026 16:40:40 +0800 Subject: [PATCH 3/3] =?UTF-8?q?docs:=20=E5=9C=A8=20README=20=E4=B8=AD?= =?UTF-8?q?=E5=86=85=E5=B5=8C=E6=9E=B6=E6=9E=84=E5=9B=BE=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + README.md | 10 ++++++++-- docs/call-code-architecture.png | Bin 0 -> 259972 bytes 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 docs/call-code-architecture.png diff --git a/.gitignore b/.gitignore index 31ad486..b986d75 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ packages/client/dist/ bundle.* docs/* !docs/call-code-architecture.html +!docs/call-code-architecture.png diff --git a/README.md b/README.md index 27ced51..38de30d 100644 --- a/README.md +++ b/README.md @@ -46,9 +46,15 @@ OpenAI-compatible LLM 模型层 └── 循环执行,直到任务完成 ``` -完整的交互式架构图见 [docs/call-code-architecture.html](docs/call-code-architecture.html),支持明暗主题切换、搜索、关系高亮与节点聚焦,可直接在浏览器打开。 +整体架构(图)如下: -运行时的核心流程: +

+ call-code 架构图 +

+ +交互式版本见 [docs/call-code-architecture.html](docs/call-code-architecture.html),可明暗主题切换、搜索、关系高亮与节点聚焦,直接在浏览器打开。 + +运行时核心流程: 1. CLI 接收自然语言任务,交给 agent 构建上下文并调用 LLM。 2. 模型返回 `tool_call` 或 `final`,由 protocol 解析为结构化 action。 diff --git a/docs/call-code-architecture.png b/docs/call-code-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..e7de0e257c7e2e1f52ad63ab5b8e8522d7353e7b GIT binary patch literal 259972 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