@actalk/inkos-core 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,6 @@
1
- import type OpenAI from "openai";
2
- import type { LLMMessage, LLMResponse } from "../llm/provider.js";
1
+ import type { LLMClient, LLMMessage, LLMResponse } from "../llm/provider.js";
3
2
  export interface AgentContext {
4
- readonly client: OpenAI;
3
+ readonly client: LLMClient;
5
4
  readonly model: string;
6
5
  readonly projectRoot: string;
7
6
  readonly bookId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agents/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGlE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,8BAAsB,SAAS;IAC7B,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;gBAEzB,GAAG,EAAE,YAAY;cAIb,IAAI,CAClB,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,EACnC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GACvE,OAAO,CAAC,WAAW,CAAC;IAIvB,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agents/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAG7E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,8BAAsB,SAAS;IAC7B,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;gBAEzB,GAAG,EAAE,YAAY;cAIb,IAAI,CAClB,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,EACnC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GACvE,OAAO,CAAC,WAAW,CAAC;IAIvB,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;CAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/agents/base.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AASpD,MAAM,OAAgB,SAAS;IACV,GAAG,CAAe;IAErC,YAAY,GAAiB;QAC3B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAES,KAAK,CAAC,IAAI,CAClB,QAAmC,EACnC,OAAwE;QAExE,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;CAGF"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/agents/base.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AASpD,MAAM,OAAgB,SAAS;IACV,GAAG,CAAe;IAErC,YAAY,GAAiB;QAC3B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAES,KAAK,CAAC,IAAI,CAClB,QAAmC,EACnC,OAAwE;QAExE,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;CAGF"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ export { type ProjectConfig, type LLMConfig, type NotifyChannel, ProjectConfigSc
4
4
  export { type CurrentState, type ParticleLedger, type PendingHooks, type PendingHook, type LedgerEntry } from "./models/state.js";
5
5
  export { type GenreProfile, type ParsedGenreProfile, GenreProfileSchema, parseGenreProfile } from "./models/genre-profile.js";
6
6
  export { type BookRules, type ParsedBookRules, BookRulesSchema, parseBookRules } from "./models/book-rules.js";
7
- export { createLLMClient, chatCompletion, type LLMResponse, type LLMMessage } from "./llm/provider.js";
7
+ export { createLLMClient, chatCompletion, chatWithTools, type LLMClient, type LLMResponse, type LLMMessage, type ToolDefinition, type ToolCall, type AgentMessage, type ChatWithToolsResult } from "./llm/provider.js";
8
8
  export { BaseAgent, type AgentContext } from "./agents/base.js";
9
9
  export { ArchitectAgent, type ArchitectOutput } from "./agents/architect.js";
10
10
  export { WriterAgent, type WriteChapterInput, type WriteChapterOutput } from "./agents/writer.js";
@@ -16,7 +16,7 @@ export { readGenreProfile, readBookRules, listAvailableGenres, getBuiltinGenresD
16
16
  export { buildWriterSystemPrompt } from "./agents/writer-prompts.js";
17
17
  export { PipelineRunner, type PipelineConfig, type ChapterPipelineResult, type DraftResult, type ReviseResult, type TruthFiles, type BookStatusInfo } from "./pipeline/runner.js";
18
18
  export { Scheduler, type SchedulerConfig } from "./pipeline/scheduler.js";
19
- export { runAgentLoop, AGENT_TOOLS, type AgentLoopOptions } from "./pipeline/agent.js";
19
+ export { runAgentLoop, AGENT_TOOLS as AGENT_TOOLS, type AgentLoopOptions } from "./pipeline/agent.js";
20
20
  export { StateManager } from "./state/manager.js";
21
21
  export { dispatchNotification, type NotifyMessage } from "./notify/dispatcher.js";
22
22
  export { sendTelegram, type TelegramConfig } from "./notify/telegram.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAChK,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnI,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAClI,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9H,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG/G,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGvG,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7J,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAClL,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,oBAAoB,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAChK,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnI,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAClI,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9H,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG/G,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,KAAK,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGvN,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7J,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAClL,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,WAAW,IAAI,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGtG,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,oBAAoB,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ export { ProjectConfigSchema, LLMConfigSchema } from "./models/project.js";
5
5
  export { GenreProfileSchema, parseGenreProfile } from "./models/genre-profile.js";
6
6
  export { BookRulesSchema, parseBookRules } from "./models/book-rules.js";
7
7
  // LLM
8
- export { createLLMClient, chatCompletion } from "./llm/provider.js";
8
+ export { createLLMClient, chatCompletion, chatWithTools } from "./llm/provider.js";
9
9
  // Agents
10
10
  export { BaseAgent } from "./agents/base.js";
11
11
  export { ArchitectAgent } from "./agents/architect.js";
@@ -19,7 +19,7 @@ export { buildWriterSystemPrompt } from "./agents/writer-prompts.js";
19
19
  // Pipeline
20
20
  export { PipelineRunner } from "./pipeline/runner.js";
21
21
  export { Scheduler } from "./pipeline/scheduler.js";
22
- export { runAgentLoop, AGENT_TOOLS } from "./pipeline/agent.js";
22
+ export { runAgentLoop, AGENT_TOOLS as AGENT_TOOLS } from "./pipeline/agent.js";
23
23
  // State
24
24
  export { StateManager } from "./state/manager.js";
25
25
  // Notify
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAA+D,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAChK,OAAO,EAAwC,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAA0D,mBAAmB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEnI,OAAO,EAA8C,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9H,OAAO,EAAwC,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE/G,MAAM;AACN,OAAO,EAAE,eAAe,EAAE,cAAc,EAAqC,MAAM,mBAAmB,CAAC;AAEvG,SAAS;AACT,OAAO,EAAE,SAAS,EAAqB,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAmD,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAqC,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAsC,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,UAAU,EAA8C,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAA8D,MAAM,0BAA0B,CAAC;AAC7J,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE,WAAW;AACX,OAAO,EAAE,cAAc,EAA8H,MAAM,sBAAsB,CAAC;AAClL,OAAO,EAAE,SAAS,EAAwB,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,WAAW,EAAyB,MAAM,qBAAqB,CAAC;AAEvF,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,SAAS;AACT,OAAO,EAAE,oBAAoB,EAAsB,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAuB,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAqB,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAyB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAA+D,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAChK,OAAO,EAAwC,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAA0D,mBAAmB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEnI,OAAO,EAA8C,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9H,OAAO,EAAwC,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE/G,MAAM;AACN,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAsI,MAAM,mBAAmB,CAAC;AAEvN,SAAS;AACT,OAAO,EAAE,SAAS,EAAqB,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAmD,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAqC,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAsC,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,UAAU,EAA8C,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAA8D,MAAM,0BAA0B,CAAC;AAC7J,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE,WAAW;AACX,OAAO,EAAE,cAAc,EAA8H,MAAM,sBAAsB,CAAC;AAClL,OAAO,EAAE,SAAS,EAAwB,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,WAAW,IAAI,WAAW,EAAyB,MAAM,qBAAqB,CAAC;AAEtG,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,SAAS;AACT,OAAO,EAAE,oBAAoB,EAAsB,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAuB,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAqB,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAyB,MAAM,yBAAyB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import OpenAI from "openai";
2
+ import Anthropic from "@anthropic-ai/sdk";
2
3
  import type { LLMConfig } from "../models/project.js";
3
4
  export interface LLMResponse {
4
5
  readonly content: string;
@@ -12,9 +13,47 @@ export interface LLMMessage {
12
13
  readonly role: "system" | "user" | "assistant";
13
14
  readonly content: string;
14
15
  }
15
- export declare function createLLMClient(config: LLMConfig): OpenAI;
16
- export declare function chatCompletion(client: OpenAI, model: string, messages: ReadonlyArray<LLMMessage>, options?: {
16
+ export interface LLMClient {
17
+ readonly provider: "openai" | "anthropic";
18
+ readonly _openai?: OpenAI;
19
+ readonly _anthropic?: Anthropic;
20
+ }
21
+ export interface ToolDefinition {
22
+ readonly name: string;
23
+ readonly description: string;
24
+ readonly parameters: Record<string, unknown>;
25
+ }
26
+ export interface ToolCall {
27
+ readonly id: string;
28
+ readonly name: string;
29
+ readonly arguments: string;
30
+ }
31
+ export type AgentMessage = {
32
+ readonly role: "system";
33
+ readonly content: string;
34
+ } | {
35
+ readonly role: "user";
36
+ readonly content: string;
37
+ } | {
38
+ readonly role: "assistant";
39
+ readonly content: string | null;
40
+ readonly toolCalls?: ReadonlyArray<ToolCall>;
41
+ } | {
42
+ readonly role: "tool";
43
+ readonly toolCallId: string;
44
+ readonly content: string;
45
+ };
46
+ export interface ChatWithToolsResult {
47
+ readonly content: string;
48
+ readonly toolCalls: ReadonlyArray<ToolCall>;
49
+ }
50
+ export declare function createLLMClient(config: LLMConfig): LLMClient;
51
+ export declare function chatCompletion(client: LLMClient, model: string, messages: ReadonlyArray<LLMMessage>, options?: {
17
52
  readonly temperature?: number;
18
53
  readonly maxTokens?: number;
19
54
  }): Promise<LLMResponse>;
55
+ export declare function chatWithTools(client: LLMClient, model: string, messages: ReadonlyArray<AgentMessage>, tools: ReadonlyArray<ToolDefinition>, options?: {
56
+ readonly temperature?: number;
57
+ readonly maxTokens?: number;
58
+ }): Promise<ChatWithToolsResult>;
20
59
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/llm/provider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAKzD;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,EACnC,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,GACA,OAAO,CAAC,WAAW,CAAC,CAoCtB"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/llm/provider.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,37 @@
1
1
  import OpenAI from "openai";
2
+ import Anthropic from "@anthropic-ai/sdk";
3
+ // === Factory ===
2
4
  export function createLLMClient(config) {
3
- return new OpenAI({
4
- apiKey: config.apiKey,
5
- baseURL: config.baseUrl,
6
- });
5
+ if (config.provider === "anthropic") {
6
+ // Anthropic SDK appends /v1/ internally — strip if user included it
7
+ const baseURL = config.baseUrl.replace(/\/v1\/?$/, "");
8
+ return {
9
+ provider: "anthropic",
10
+ _anthropic: new Anthropic({ apiKey: config.apiKey, baseURL }),
11
+ };
12
+ }
13
+ // openai or custom — both use OpenAI SDK
14
+ return {
15
+ provider: "openai",
16
+ _openai: new OpenAI({ apiKey: config.apiKey, baseURL: config.baseUrl }),
17
+ };
7
18
  }
19
+ // === Simple Chat (used by all agents via BaseAgent.chat()) ===
8
20
  export async function chatCompletion(client, model, messages, options) {
9
- // Use streaming mode — some providers (codex-for.me) require it
21
+ if (client.provider === "anthropic") {
22
+ return chatCompletionAnthropic(client._anthropic, model, messages, options);
23
+ }
24
+ return chatCompletionOpenAI(client._openai, model, messages, options);
25
+ }
26
+ // === Tool-calling Chat (used by agent loop) ===
27
+ export async function chatWithTools(client, model, messages, tools, options) {
28
+ if (client.provider === "anthropic") {
29
+ return chatWithToolsAnthropic(client._anthropic, model, messages, tools, options);
30
+ }
31
+ return chatWithToolsOpenAI(client._openai, model, messages, tools, options);
32
+ }
33
+ // === OpenAI Implementation ===
34
+ async function chatCompletionOpenAI(client, model, messages, options) {
10
35
  const stream = await client.chat.completions.create({
11
36
  model,
12
37
  messages: messages.map((m) => ({ role: m.role, content: m.content })),
@@ -20,9 +45,8 @@ export async function chatCompletion(client, model, messages, options) {
20
45
  let totalTokens = 0;
21
46
  for await (const chunk of stream) {
22
47
  const delta = chunk.choices[0]?.delta?.content;
23
- if (delta) {
48
+ if (delta)
24
49
  chunks.push(delta);
25
- }
26
50
  if (chunk.usage) {
27
51
  promptTokens = chunk.usage.prompt_tokens ?? 0;
28
52
  completionTokens = chunk.usage.completion_tokens ?? 0;
@@ -30,12 +54,214 @@ export async function chatCompletion(client, model, messages, options) {
30
54
  }
31
55
  }
32
56
  const content = chunks.join("");
33
- if (!content) {
57
+ if (!content)
34
58
  throw new Error("LLM returned empty response");
59
+ return { content, usage: { promptTokens, completionTokens, totalTokens } };
60
+ }
61
+ async function chatWithToolsOpenAI(client, model, messages, tools, options) {
62
+ const openaiMessages = messages.map(agentMessageToOpenAI);
63
+ const openaiTools = tools.map((t) => ({
64
+ type: "function",
65
+ function: { name: t.name, description: t.description, parameters: t.parameters },
66
+ }));
67
+ const stream = await client.chat.completions.create({
68
+ model,
69
+ messages: openaiMessages,
70
+ tools: openaiTools,
71
+ tool_choice: "auto",
72
+ stream: true,
73
+ });
74
+ let content = "";
75
+ const toolCallMap = new Map();
76
+ for await (const chunk of stream) {
77
+ const delta = chunk.choices[0]?.delta;
78
+ if (!delta)
79
+ continue;
80
+ if (delta.content)
81
+ content += delta.content;
82
+ if (delta.tool_calls) {
83
+ for (const tc of delta.tool_calls) {
84
+ const existing = toolCallMap.get(tc.index);
85
+ if (existing) {
86
+ if (tc.function?.arguments)
87
+ existing.arguments += tc.function.arguments;
88
+ }
89
+ else {
90
+ toolCallMap.set(tc.index, {
91
+ id: tc.id ?? "",
92
+ name: tc.function?.name ?? "",
93
+ arguments: tc.function?.arguments ?? "",
94
+ });
95
+ }
96
+ }
97
+ }
98
+ }
99
+ const toolCalls = [...toolCallMap.entries()]
100
+ .sort(([a], [b]) => a - b)
101
+ .map(([, tc]) => ({ id: tc.id, name: tc.name, arguments: tc.arguments }));
102
+ return { content, toolCalls };
103
+ }
104
+ function agentMessageToOpenAI(msg) {
105
+ if (msg.role === "system")
106
+ return { role: "system", content: msg.content };
107
+ if (msg.role === "user")
108
+ return { role: "user", content: msg.content };
109
+ if (msg.role === "tool")
110
+ return { role: "tool", content: msg.content, tool_call_id: msg.toolCallId };
111
+ // assistant
112
+ if (msg.toolCalls && msg.toolCalls.length > 0) {
113
+ return {
114
+ role: "assistant",
115
+ content: msg.content,
116
+ tool_calls: msg.toolCalls.map((tc) => ({
117
+ id: tc.id,
118
+ type: "function",
119
+ function: { name: tc.name, arguments: tc.arguments },
120
+ })),
121
+ };
35
122
  }
123
+ return { role: "assistant", content: msg.content };
124
+ }
125
+ // === Anthropic Implementation ===
126
+ async function chatCompletionAnthropic(client, model, messages, options) {
127
+ const systemText = messages
128
+ .filter((m) => m.role === "system")
129
+ .map((m) => m.content)
130
+ .join("\n\n");
131
+ const nonSystem = messages.filter((m) => m.role !== "system");
132
+ const stream = await client.messages.create({
133
+ model,
134
+ ...(systemText ? { system: systemText } : {}),
135
+ messages: nonSystem.map((m) => ({
136
+ role: m.role,
137
+ content: m.content,
138
+ })),
139
+ temperature: options?.temperature ?? 0.7,
140
+ max_tokens: options?.maxTokens ?? 8192,
141
+ stream: true,
142
+ });
143
+ const chunks = [];
144
+ let inputTokens = 0;
145
+ let outputTokens = 0;
146
+ for await (const event of stream) {
147
+ if (event.type === "content_block_delta" && event.delta.type === "text_delta") {
148
+ chunks.push(event.delta.text);
149
+ }
150
+ if (event.type === "message_start") {
151
+ inputTokens = event.message.usage?.input_tokens ?? 0;
152
+ }
153
+ if (event.type === "message_delta") {
154
+ outputTokens = (event.usage?.output_tokens) ?? 0;
155
+ }
156
+ }
157
+ const content = chunks.join("");
158
+ if (!content)
159
+ throw new Error("LLM returned empty response");
36
160
  return {
37
161
  content,
38
- usage: { promptTokens, completionTokens, totalTokens },
162
+ usage: {
163
+ promptTokens: inputTokens,
164
+ completionTokens: outputTokens,
165
+ totalTokens: inputTokens + outputTokens,
166
+ },
39
167
  };
40
168
  }
169
+ async function chatWithToolsAnthropic(client, model, messages, tools, options) {
170
+ const systemText = messages
171
+ .filter((m) => m.role === "system")
172
+ .map((m) => m.content)
173
+ .join("\n\n");
174
+ const nonSystem = messages.filter((m) => m.role !== "system");
175
+ const anthropicMessages = agentMessagesToAnthropic(nonSystem);
176
+ const anthropicTools = tools.map((t) => ({
177
+ name: t.name,
178
+ description: t.description,
179
+ input_schema: t.parameters,
180
+ }));
181
+ const stream = await client.messages.create({
182
+ model,
183
+ ...(systemText ? { system: systemText } : {}),
184
+ messages: anthropicMessages,
185
+ tools: anthropicTools,
186
+ max_tokens: options?.maxTokens ?? 8192,
187
+ stream: true,
188
+ });
189
+ let content = "";
190
+ const toolCalls = [];
191
+ let currentBlock = null;
192
+ for await (const event of stream) {
193
+ if (event.type === "content_block_start" && event.content_block.type === "tool_use") {
194
+ currentBlock = {
195
+ id: event.content_block.id,
196
+ name: event.content_block.name,
197
+ input: "",
198
+ };
199
+ }
200
+ if (event.type === "content_block_delta") {
201
+ if (event.delta.type === "text_delta") {
202
+ content += event.delta.text;
203
+ }
204
+ if (event.delta.type === "input_json_delta" && currentBlock) {
205
+ currentBlock.input += event.delta.partial_json;
206
+ }
207
+ }
208
+ if (event.type === "content_block_stop" && currentBlock) {
209
+ toolCalls.push({
210
+ id: currentBlock.id,
211
+ name: currentBlock.name,
212
+ arguments: currentBlock.input,
213
+ });
214
+ currentBlock = null;
215
+ }
216
+ }
217
+ return { content, toolCalls };
218
+ }
219
+ function agentMessagesToAnthropic(messages) {
220
+ const result = [];
221
+ for (const msg of messages) {
222
+ if (msg.role === "system")
223
+ continue;
224
+ if (msg.role === "user") {
225
+ result.push({ role: "user", content: msg.content });
226
+ continue;
227
+ }
228
+ if (msg.role === "assistant") {
229
+ const blocks = [];
230
+ if (msg.content) {
231
+ blocks.push({ type: "text", text: msg.content });
232
+ }
233
+ if (msg.toolCalls) {
234
+ for (const tc of msg.toolCalls) {
235
+ blocks.push({
236
+ type: "tool_use",
237
+ id: tc.id,
238
+ name: tc.name,
239
+ input: JSON.parse(tc.arguments),
240
+ });
241
+ }
242
+ }
243
+ if (blocks.length === 0) {
244
+ blocks.push({ type: "text", text: "" });
245
+ }
246
+ result.push({ role: "assistant", content: blocks });
247
+ continue;
248
+ }
249
+ if (msg.role === "tool") {
250
+ const toolResult = {
251
+ type: "tool_result",
252
+ tool_use_id: msg.toolCallId,
253
+ content: msg.content,
254
+ };
255
+ // Merge consecutive tool results into one user message (Anthropic requires alternating roles)
256
+ const prev = result[result.length - 1];
257
+ if (prev && prev.role === "user" && Array.isArray(prev.content)) {
258
+ prev.content.push(toolResult);
259
+ }
260
+ else {
261
+ result.push({ role: "user", content: [toolResult] });
262
+ }
263
+ }
264
+ }
265
+ return result;
266
+ }
41
267
  //# sourceMappingURL=provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/llm/provider.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAiB5B,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,OAAO,IAAI,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,KAAa,EACb,QAAmC,EACnC,OAGC;IAED,gEAAgE;IAChE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QAClD,KAAK;QACL,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,GAAG;QACxC,UAAU,EAAE,OAAO,EAAE,SAAS,IAAI,IAAI;QACtC,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;IAEH,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC;QAC/C,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC;YAC9C,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,CAAC;YACtD,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,OAAO;QACL,OAAO;QACP,KAAK,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE;KACvD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/llm/provider.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import type OpenAI from "openai";
1
+ import { type ToolDefinition } from "../llm/provider.js";
2
2
  import { type PipelineConfig } from "./runner.js";
3
- /** Tool definitions for the agent loop (OpenAI function calling format). */
4
- declare const TOOLS: OpenAI.Chat.Completions.ChatCompletionTool[];
3
+ /** Tool definitions for the agent loop. */
4
+ declare const TOOLS: ReadonlyArray<ToolDefinition>;
5
5
  export interface AgentLoopOptions {
6
6
  readonly onToolCall?: (name: string, args: Record<string, unknown>) => void;
7
7
  readonly onToolResult?: (name: string, result: string) => void;
@@ -9,6 +9,6 @@ export interface AgentLoopOptions {
9
9
  readonly maxTurns?: number;
10
10
  }
11
11
  export declare function runAgentLoop(config: PipelineConfig, instruction: string, options?: AgentLoopOptions): Promise<string>;
12
- /** Export tool definitions so OpenClaw or other systems can reference them. */
12
+ /** Export tool definitions so external systems can reference them. */
13
13
  export { TOOLS as AGENT_TOOLS };
14
14
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/pipeline/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlE,4EAA4E;AAC5E,QAAA,MAAM,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAiItD,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5E,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC,CA8IjB;AAgHD,+EAA+E;AAC/E,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/pipeline/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC3F,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlE,2CAA2C;AAC3C,QAAA,MAAM,KAAK,EAAE,aAAa,CAAC,cAAc,CAsGxC,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5E,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC,CAqFjB;AA+GD,sEAAsE;AACtE,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,CAAC"}
@@ -1,132 +1,106 @@
1
+ import { chatWithTools } from "../llm/provider.js";
1
2
  import { PipelineRunner } from "./runner.js";
2
- /** Tool definitions for the agent loop (OpenAI function calling format). */
3
+ /** Tool definitions for the agent loop. */
3
4
  const TOOLS = [
4
5
  {
5
- type: "function",
6
- function: {
7
- name: "write_draft",
8
- description: "写一章草稿。生成正文、更新状态卡/账本/伏笔池、保存章节文件。",
9
- parameters: {
10
- type: "object",
11
- properties: {
12
- bookId: { type: "string", description: "书籍ID" },
13
- guidance: { type: "string", description: "本章创作指导(可选,自然语言)" },
14
- },
15
- required: ["bookId"],
6
+ name: "write_draft",
7
+ description: "写一章草稿。生成正文、更新状态卡/账本/伏笔池、保存章节文件。",
8
+ parameters: {
9
+ type: "object",
10
+ properties: {
11
+ bookId: { type: "string", description: "书籍ID" },
12
+ guidance: { type: "string", description: "本章创作指导(可选,自然语言)" },
16
13
  },
14
+ required: ["bookId"],
17
15
  },
18
16
  },
19
17
  {
20
- type: "function",
21
- function: {
22
- name: "audit_chapter",
23
- description: "审计指定章节。检查连续性、OOC、数值、伏笔等问题。",
24
- parameters: {
25
- type: "object",
26
- properties: {
27
- bookId: { type: "string", description: "书籍ID" },
28
- chapterNumber: { type: "number", description: "章节号(不填则审计最新章)" },
29
- },
30
- required: ["bookId"],
18
+ name: "audit_chapter",
19
+ description: "审计指定章节。检查连续性、OOC、数值、伏笔等问题。",
20
+ parameters: {
21
+ type: "object",
22
+ properties: {
23
+ bookId: { type: "string", description: "书籍ID" },
24
+ chapterNumber: { type: "number", description: "章节号(不填则审计最新章)" },
31
25
  },
26
+ required: ["bookId"],
32
27
  },
33
28
  },
34
29
  {
35
- type: "function",
36
- function: {
37
- name: "revise_chapter",
38
- description: "修订指定章节。根据审计问题修正。支持三种模式:polish(润色)、rewrite(改写)、rework(重写)。",
39
- parameters: {
40
- type: "object",
41
- properties: {
42
- bookId: { type: "string", description: "书籍ID" },
43
- chapterNumber: { type: "number", description: "章节号(不填则修订最新章)" },
44
- mode: { type: "string", enum: ["polish", "rewrite", "rework"], description: "修订模式(默认rewrite)" },
45
- },
46
- required: ["bookId"],
30
+ name: "revise_chapter",
31
+ description: "修订指定章节。根据审计问题修正。支持三种模式:polish(润色)、rewrite(改写)、rework(重写)。",
32
+ parameters: {
33
+ type: "object",
34
+ properties: {
35
+ bookId: { type: "string", description: "书籍ID" },
36
+ chapterNumber: { type: "number", description: "章节号(不填则修订最新章)" },
37
+ mode: { type: "string", enum: ["polish", "rewrite", "rework"], description: "修订模式(默认rewrite)" },
47
38
  },
39
+ required: ["bookId"],
48
40
  },
49
41
  },
50
42
  {
51
- type: "function",
52
- function: {
53
- name: "scan_market",
54
- description: "扫描市场趋势。从平台排行榜获取实时数据并分析。",
55
- parameters: {
56
- type: "object",
57
- properties: {},
58
- },
43
+ name: "scan_market",
44
+ description: "扫描市场趋势。从平台排行榜获取实时数据并分析。",
45
+ parameters: {
46
+ type: "object",
47
+ properties: {},
59
48
  },
60
49
  },
61
50
  {
62
- type: "function",
63
- function: {
64
- name: "create_book",
65
- description: "创建一本新书。生成世界观、卷纲、文风指南等基础设定。",
66
- parameters: {
67
- type: "object",
68
- properties: {
69
- title: { type: "string", description: "书名" },
70
- genre: { type: "string", enum: ["xuanhuan", "xianxia", "urban", "game", "fanfic", "horror", "short", "other"], description: "题材" },
71
- platform: { type: "string", enum: ["tomato", "feilu", "qidian", "other"], description: "目标平台" },
72
- brief: { type: "string", description: "创作简述/需求(自然语言)" },
73
- },
74
- required: ["title", "genre", "platform"],
51
+ name: "create_book",
52
+ description: "创建一本新书。生成世界观、卷纲、文风指南等基础设定。",
53
+ parameters: {
54
+ type: "object",
55
+ properties: {
56
+ title: { type: "string", description: "书名" },
57
+ genre: { type: "string", enum: ["xuanhuan", "xianxia", "urban", "game", "fanfic", "horror", "short", "other"], description: "题材" },
58
+ platform: { type: "string", enum: ["tomato", "feilu", "qidian", "other"], description: "目标平台" },
59
+ brief: { type: "string", description: "创作简述/需求(自然语言)" },
75
60
  },
61
+ required: ["title", "genre", "platform"],
76
62
  },
77
63
  },
78
64
  {
79
- type: "function",
80
- function: {
81
- name: "get_book_status",
82
- description: "获取书籍状态概览:章数、字数、最近章节审计情况。",
83
- parameters: {
84
- type: "object",
85
- properties: {
86
- bookId: { type: "string", description: "书籍ID" },
87
- },
88
- required: ["bookId"],
65
+ name: "get_book_status",
66
+ description: "获取书籍状态概览:章数、字数、最近章节审计情况。",
67
+ parameters: {
68
+ type: "object",
69
+ properties: {
70
+ bookId: { type: "string", description: "书籍ID" },
89
71
  },
72
+ required: ["bookId"],
90
73
  },
91
74
  },
92
75
  {
93
- type: "function",
94
- function: {
95
- name: "read_truth_files",
96
- description: "读取书籍的长期记忆(状态卡、资源账本、伏笔池)+ 世界观和卷纲。",
97
- parameters: {
98
- type: "object",
99
- properties: {
100
- bookId: { type: "string", description: "书籍ID" },
101
- },
102
- required: ["bookId"],
76
+ name: "read_truth_files",
77
+ description: "读取书籍的长期记忆(状态卡、资源账本、伏笔池)+ 世界观和卷纲。",
78
+ parameters: {
79
+ type: "object",
80
+ properties: {
81
+ bookId: { type: "string", description: "书籍ID" },
103
82
  },
83
+ required: ["bookId"],
104
84
  },
105
85
  },
106
86
  {
107
- type: "function",
108
- function: {
109
- name: "list_books",
110
- description: "列出所有书籍。",
111
- parameters: {
112
- type: "object",
113
- properties: {},
114
- },
87
+ name: "list_books",
88
+ description: "列出所有书籍。",
89
+ parameters: {
90
+ type: "object",
91
+ properties: {},
115
92
  },
116
93
  },
117
94
  {
118
- type: "function",
119
- function: {
120
- name: "write_full_pipeline",
121
- description: "完整管线:写草稿 → 审计 → 自动修订(如需要)。一键完成。",
122
- parameters: {
123
- type: "object",
124
- properties: {
125
- bookId: { type: "string", description: "书籍ID" },
126
- count: { type: "number", description: "连续写几章(默认1)" },
127
- },
128
- required: ["bookId"],
95
+ name: "write_full_pipeline",
96
+ description: "完整管线:写草稿 → 审计 → 自动修订(如需要)。一键完成。",
97
+ parameters: {
98
+ type: "object",
99
+ properties: {
100
+ bookId: { type: "string", description: "书籍ID" },
101
+ count: { type: "number", description: "连续写几章(默认1)" },
129
102
  },
103
+ required: ["bookId"],
130
104
  },
131
105
  },
132
106
  ];
@@ -148,7 +122,7 @@ export async function runAgentLoop(config, instruction, options) {
148
122
  | read_truth_files | 读取长期记忆(状态卡、资源账本、伏笔池)和设定(世界观、卷纲、本书规则) |
149
123
  | create_book | 建书,生成世界观、卷纲、本书规则(自动加载题材 genre profile) |
150
124
  | write_draft | 写一章草稿(自动加载 genre profile + book_rules) |
151
- | audit_chapter | 审计章节(18维度,按题材条件启用) |
125
+ | audit_chapter | 审计章节(19维度,按题材条件启用) |
152
126
  | revise_chapter | 修订章节(支持 polish/rewrite/rework 三种模式) |
153
127
  | write_full_pipeline | 完整管线:写 → 审 → 改(如需要) |
154
128
  | scan_market | 扫描平台排行榜,分析市场趋势 |
@@ -177,84 +151,33 @@ export async function runAgentLoop(config, instruction, options) {
177
151
  const maxTurns = options?.maxTurns ?? 20;
178
152
  let lastAssistantMessage = "";
179
153
  for (let turn = 0; turn < maxTurns; turn++) {
180
- // Use streaming (some providers like codex-for.me require it)
181
- const stream = await config.client.chat.completions.create({
182
- model: config.model,
183
- messages,
184
- tools: TOOLS,
185
- tool_choice: "auto",
186
- stream: true,
187
- });
188
- // Accumulate streamed response into a complete message
189
- let content = "";
190
- const toolCalls = new Map();
191
- for await (const chunk of stream) {
192
- const delta = chunk.choices[0]?.delta;
193
- if (!delta)
194
- continue;
195
- if (delta.content) {
196
- content += delta.content;
197
- }
198
- if (delta.tool_calls) {
199
- for (const tc of delta.tool_calls) {
200
- const existing = toolCalls.get(tc.index);
201
- if (existing) {
202
- if (tc.function?.arguments) {
203
- existing.arguments += tc.function.arguments;
204
- }
205
- }
206
- else {
207
- toolCalls.set(tc.index, {
208
- id: tc.id ?? "",
209
- name: tc.function?.name ?? "",
210
- arguments: tc.function?.arguments ?? "",
211
- });
212
- }
213
- }
214
- }
215
- }
216
- // Build the assistant message for history
217
- const assembledToolCalls = toolCalls.size > 0
218
- ? [...toolCalls.entries()]
219
- .sort(([a], [b]) => a - b)
220
- .map(([, tc]) => ({
221
- id: tc.id,
222
- type: "function",
223
- function: { name: tc.name, arguments: tc.arguments },
224
- }))
225
- : undefined;
154
+ const result = await chatWithTools(config.client, config.model, messages, TOOLS);
155
+ // Push assistant message to history
226
156
  messages.push({
227
157
  role: "assistant",
228
- content: content || null,
229
- ...(assembledToolCalls ? { tool_calls: assembledToolCalls } : {}),
158
+ content: result.content || null,
159
+ ...(result.toolCalls.length > 0 ? { toolCalls: result.toolCalls } : {}),
230
160
  });
231
- // If model produced text, emit it
232
- if (content) {
233
- lastAssistantMessage = content;
234
- options?.onMessage?.(content);
161
+ if (result.content) {
162
+ lastAssistantMessage = result.content;
163
+ options?.onMessage?.(result.content);
235
164
  }
236
165
  // If no tool calls, we're done
237
- if (!assembledToolCalls || assembledToolCalls.length === 0) {
166
+ if (result.toolCalls.length === 0)
238
167
  break;
239
- }
240
168
  // Execute tool calls
241
- for (const toolCall of assembledToolCalls) {
242
- const fn = toolCall.function;
243
- const args = JSON.parse(fn.arguments);
244
- options?.onToolCall?.(fn.name, args);
245
- let result;
169
+ for (const toolCall of result.toolCalls) {
170
+ const args = JSON.parse(toolCall.arguments);
171
+ options?.onToolCall?.(toolCall.name, args);
172
+ let toolResult;
246
173
  try {
247
- result = await executeTool(pipeline, state, config, fn.name, args);
174
+ toolResult = await executeTool(pipeline, state, config, toolCall.name, args);
248
175
  }
249
176
  catch (e) {
250
- result = JSON.stringify({ error: String(e) });
177
+ toolResult = JSON.stringify({ error: String(e) });
251
178
  }
252
- options?.onToolResult?.(fn.name, result);
253
- messages.push({
254
- role: "tool",
255
- content: result,
256
- tool_call_id: toolCall.id,
257
- });
179
+ options?.onToolResult?.(toolCall.name, toolResult);
180
+ messages.push({ role: "tool", toolCallId: toolCall.id, content: toolResult });
258
181
  }
259
182
  }
260
183
  return lastAssistantMessage;
@@ -296,7 +219,6 @@ async function executeTool(pipeline, state, config, name, args) {
296
219
  createdAt: now,
297
220
  updatedAt: now,
298
221
  };
299
- // If user provided a brief, create a pipeline with that context
300
222
  const brief = args.brief;
301
223
  if (brief) {
302
224
  const contextPipeline = new PipelineRunner({ ...config, externalContext: brief });
@@ -340,6 +262,6 @@ async function executeTool(pipeline, state, config, name, args) {
340
262
  return JSON.stringify({ error: `Unknown tool: ${name}` });
341
263
  }
342
264
  }
343
- /** Export tool definitions so OpenClaw or other systems can reference them. */
265
+ /** Export tool definitions so external systems can reference them. */
344
266
  export { TOOLS as AGENT_TOOLS };
345
267
  //# sourceMappingURL=agent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/pipeline/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/pipeline/agent.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type OpenAI from "openai";
1
+ import type { LLMClient } from "../llm/provider.js";
2
2
  import type { BookConfig } from "../models/book.js";
3
3
  import type { ChapterMeta } from "../models/chapter.js";
4
4
  import type { NotifyChannel } from "../models/project.js";
@@ -7,7 +7,7 @@ import type { RadarSource } from "../agents/radar-source.js";
7
7
  import type { AuditResult } from "../agents/continuity.js";
8
8
  import type { RadarResult } from "../agents/radar.js";
9
9
  export interface PipelineConfig {
10
- readonly client: OpenAI;
10
+ readonly client: LLMClient;
11
11
  readonly model: string;
12
12
  readonly projectRoot: string;
13
13
  readonly notifyChannels?: ReadonlyArray<NotifyChannel>;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/pipeline/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/pipeline/runner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actalk/inkos-core",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "InkOS core: models, agents, pipeline, LLM integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -22,6 +22,7 @@
22
22
  "directory": "packages/core"
23
23
  },
24
24
  "dependencies": {
25
+ "@anthropic-ai/sdk": "^0.78.0",
25
26
  "js-yaml": "^4.1.1",
26
27
  "openai": "^4.80.0",
27
28
  "zod": "^3.24.0"