@dawn-ai/core 0.2.0 → 0.4.0

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,9 +1,13 @@
1
1
  import type { CapabilityMarker } from "../types.js";
2
2
  /**
3
- * Auto-injects the contents of <process.cwd()>/workspace/AGENTS.md into the
3
+ * Auto-injects the contents of <appRoot>/workspace/AGENTS.md into the
4
4
  * agent's system prompt under a "# Memory" heading. Always-on: the presence
5
5
  * of the file IS the opt-in. Re-reads the file on every model turn so the
6
6
  * agent sees its own updated memory immediately after it calls writeFile.
7
+ *
8
+ * Uses context.appRoot (not process.cwd()) so in-process test harnesses that
9
+ * pass an explicit app root activate this capability regardless of the test
10
+ * runner's working directory. In production (dawn dev), appRoot === cwd.
7
11
  */
8
12
  export declare function createAgentsMdMarker(): CapabilityMarker;
9
13
  //# sourceMappingURL=agents-md.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents-md.d.ts","sourceRoot":"","sources":["../../../src/capabilities/built-in/agents-md.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AASnD;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,CAWvD"}
1
+ {"version":3,"file":"agents-md.d.ts","sourceRoot":"","sources":["../../../src/capabilities/built-in/agents-md.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AASnD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,CAcvD"}
@@ -7,25 +7,32 @@ The block below is the live contents of \`workspace/AGENTS.md\`, re-read on ever
7
7
 
8
8
  ---`;
9
9
  /**
10
- * Auto-injects the contents of <process.cwd()>/workspace/AGENTS.md into the
10
+ * Auto-injects the contents of <appRoot>/workspace/AGENTS.md into the
11
11
  * agent's system prompt under a "# Memory" heading. Always-on: the presence
12
12
  * of the file IS the opt-in. Re-reads the file on every model turn so the
13
13
  * agent sees its own updated memory immediately after it calls writeFile.
14
+ *
15
+ * Uses context.appRoot (not process.cwd()) so in-process test harnesses that
16
+ * pass an explicit app root activate this capability regardless of the test
17
+ * runner's working directory. In production (dawn dev), appRoot === cwd.
14
18
  */
15
19
  export function createAgentsMdMarker() {
16
20
  return {
17
21
  name: "agents-md",
18
22
  detect: async (_routeDir, _context) => true,
19
- load: async (_routeDir, _context) => ({
20
- promptFragment: {
21
- placement: "after_user_prompt",
22
- render: () => renderMemoryFragment(workspaceAgentsMdPath()),
23
- },
24
- }),
23
+ load: async (_routeDir, context) => {
24
+ const agentsMdPath = workspaceAgentsMdPath(context.appRoot);
25
+ return {
26
+ promptFragment: {
27
+ placement: "after_user_prompt",
28
+ render: () => renderMemoryFragment(agentsMdPath),
29
+ },
30
+ };
31
+ },
25
32
  };
26
33
  }
27
- function workspaceAgentsMdPath() {
28
- return resolve(process.cwd(), "workspace", "AGENTS.md");
34
+ function workspaceAgentsMdPath(appRoot) {
35
+ return resolve(appRoot, "workspace", "AGENTS.md");
29
36
  }
30
37
  function renderMemoryFragment(path) {
31
38
  if (!existsSync(path))
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../../src/capabilities/built-in/workspace.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,gBAAgB,EAAsB,MAAM,aAAa,CAAA;AAsMvE,wBAAgB,qBAAqB,IAAI,gBAAgB,CAoBxD"}
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../../src/capabilities/built-in/workspace.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,gBAAgB,EAAsB,MAAM,aAAa,CAAA;AAuNvE,wBAAgB,qBAAqB,IAAI,gBAAgB,CAoBxD"}
@@ -1,17 +1,18 @@
1
1
  import { existsSync } from "node:fs";
2
- import { join, resolve, sep } from "node:path";
2
+ import { join, relative, resolve, sep } from "node:path";
3
3
  import { suggestedCommandPattern, suggestedPathPattern } from "@dawn-ai/permissions";
4
4
  import { localExec, localFilesystem } from "@dawn-ai/workspace";
5
5
  import { interrupt } from "@langchain/langgraph";
6
6
  import { z } from "zod";
7
7
  const WORKSPACE_DIRNAME = "workspace";
8
8
  /**
9
- * Resolve the workspace root to a cwd-relative path. This matches the
10
- * AGENTS.md capability's resolution (process.cwd() + "workspace") so
11
- * the agent's memory and workspace tools point at the same directory.
9
+ * Resolve the workspace root relative to the given app root. In production
10
+ * (`dawn dev`) appRoot === process.cwd(), so this is a no-op change there.
11
+ * In-process testing harnesses pass the explicit app root so capabilities
12
+ * activate regardless of the test runner's working directory.
12
13
  */
13
- function workspaceRoot() {
14
- return join(process.cwd(), WORKSPACE_DIRNAME);
14
+ function workspaceRoot(appRoot) {
15
+ return join(appRoot, WORKSPACE_DIRNAME);
15
16
  }
16
17
  const READ_FILE_INPUT = z.object({ path: z.string().min(1) });
17
18
  const WRITE_FILE_INPUT = z.object({ path: z.string().min(1), content: z.string() });
@@ -116,7 +117,20 @@ function buildWorkspaceTools(workspaceRoot, fs, exec, permissions) {
116
117
  if (!gate.allowed) {
117
118
  throw new Error(gate.reason);
118
119
  }
119
- return fs.readFile(absPath, backendContext(workspaceRoot, ctx.signal));
120
+ const bctx = backendContext(workspaceRoot, ctx.signal);
121
+ const rel = relative(workspaceRoot, absPath);
122
+ // NOTE: must match SUBDIR ("tool-outputs") in @dawn-ai/langchain offload-store.ts
123
+ const isToolOutput = rel === "tool-outputs" || rel.startsWith(`tool-outputs${sep}`);
124
+ const data = await fs.readFile(absPath, bctx, isToolOutput ? { maxBytes: Number.POSITIVE_INFINITY } : undefined);
125
+ if (isToolOutput && fs.touchFile) {
126
+ try {
127
+ await fs.touchFile(absPath, bctx);
128
+ }
129
+ catch {
130
+ /* touch is best-effort; never fail a read because of it */
131
+ }
132
+ }
133
+ return data;
120
134
  },
121
135
  };
122
136
  const writeFile = {
@@ -170,9 +184,9 @@ function buildWorkspaceTools(workspaceRoot, fs, exec, permissions) {
170
184
  export function createWorkspaceMarker() {
171
185
  return {
172
186
  name: "workspace",
173
- detect: async (_routeDir, _context) => existsSync(workspaceRoot()),
187
+ detect: async (_routeDir, context) => existsSync(workspaceRoot(context.appRoot)),
174
188
  load: async (_routeDir, context) => {
175
- const root = workspaceRoot();
189
+ const root = workspaceRoot(context.appRoot);
176
190
  if (!existsSync(root))
177
191
  return {};
178
192
  const fs = context.backends?.filesystem ?? localFilesystem();
@@ -11,6 +11,8 @@ export interface CapabilityMarkerContext {
11
11
  readonly exec?: ExecBackend;
12
12
  };
13
13
  readonly permissions?: PermissionsStore;
14
+ /** Absolute path to the Dawn app root. Capabilities should resolve app-relative paths (e.g. workspace/) against this, NOT process.cwd(). */
15
+ readonly appRoot: string;
14
16
  }
15
17
  export interface DawnToolDefinition {
16
18
  readonly description?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/capabilities/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEpE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAA;IACrC,QAAQ,CAAC,UAAU,EAAE,SAAS,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC5D,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAClB,QAAQ,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAA;QACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;KAC5B,CAAA;IACD,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;CACxC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,CACZ,KAAK,EAAE,OAAO,EACd,OAAO,EAAE;QACP,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QACvD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;KAC7B,KACE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAA;IACvC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,MAAM,CAAA;CACtE;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAA;IAChC,QAAQ,CAAC,SAAS,EAAE,CAClB,KAAK,EAAE,sBAAsB,KAC1B,QAAQ,CAAC,uBAAuB,CAAC,GAAG,aAAa,CAAC,uBAAuB,CAAC,CAAA;CAChF;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAA;IAClD,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAA;IACxD,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAA;IACxC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;CAC/D;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACzF,QAAQ,CAAC,IAAI,EAAE,CACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,uBAAuB,KAC7B,OAAO,CAAC,sBAAsB,CAAC,CAAA;CACrC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/capabilities/types.ts"],"names":[],"mappings":"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"}
@@ -145,6 +145,19 @@ function tsTypeToJsonSchema(type, checker, depth = 0) {
145
145
  return { type: "number" };
146
146
  if (typeString === "boolean")
147
147
  return { type: "boolean" };
148
+ // Standalone literal types (e.g. a discriminant `by: "date"`). A single
149
+ // string literal is not a union, so the union→enum path above doesn't fire;
150
+ // without this it would fall through to tryObjectSchema and be misread as an
151
+ // object carrying String.prototype methods.
152
+ if (type.isStringLiteral()) {
153
+ return { type: "string", enum: [type.value] };
154
+ }
155
+ if (type.isNumberLiteral()) {
156
+ return { type: "number" };
157
+ }
158
+ if ((type.flags & ts.TypeFlags.BooleanLiteral) !== 0) {
159
+ return { type: "boolean" };
160
+ }
148
161
  // Try nested object
149
162
  const objSchema = tryObjectSchema(type, checker, depth);
150
163
  if (objSchema !== undefined)
@@ -153,6 +166,11 @@ function tsTypeToJsonSchema(type, checker, depth = 0) {
153
166
  return { type: "string" };
154
167
  }
155
168
  function tryObjectSchema(type, checker, depth) {
169
+ // Only genuine object types may be expanded into property schemas. Primitives
170
+ // and literal types expose prototype members via getProperties(); guarding on
171
+ // the Object type flag prevents emitting e.g. String.prototype as properties.
172
+ if ((type.flags & ts.TypeFlags.Object) === 0)
173
+ return undefined;
156
174
  const props = type.getProperties();
157
175
  const indexType = checker.getIndexTypeOfType(type, ts.IndexKind.String);
158
176
  // Record<string, T>: no named properties, string index signature present.
package/dist/types.d.ts CHANGED
@@ -23,6 +23,44 @@ export interface DawnConfig {
23
23
  * deploy artifact (langgraph.json env is detected separately).
24
24
  */
25
25
  readonly env?: string;
26
+ readonly toolOutput?: {
27
+ /** Offload tool outputs whose serialized length exceeds this many characters. Default 40000. */
28
+ readonly offloadThresholdChars?: number;
29
+ /** Number of leading lines kept in the in-context preview. Default 10. */
30
+ readonly previewLines?: number;
31
+ /** Max total bytes retained under workspace/tool-outputs/. Default 268435456 (256MB). */
32
+ readonly maxBytes?: number;
33
+ /** Delete offloaded files older than this many ms. Default 10800000 (3h). */
34
+ readonly ttlMs?: number;
35
+ /** Minimum ms between GC scans. Default 10000 (10s). */
36
+ readonly gcThrottleMs?: number;
37
+ /**
38
+ * Tool names whose output is never offloaded. Merged with the built-in
39
+ * defaults (`readFile`, `listDir`), which are always exempt — exempting
40
+ * the retrieval tools is required so the agent can read back offloaded
41
+ * content without it being re-offloaded.
42
+ */
43
+ readonly noOffloadTools?: readonly string[];
44
+ };
45
+ readonly summarization?: {
46
+ /** Enable conversation summarization. Default false. */
47
+ readonly enabled?: boolean;
48
+ /** Token threshold over which older history is summarized. Default 12000. */
49
+ readonly maxTokens?: number;
50
+ /** Most-recent turns kept verbatim (a turn starts at a HumanMessage). Default 6. */
51
+ readonly keepRecentTurns?: number;
52
+ /** Model id for the summary LLM call. Defaults to the route's model. */
53
+ readonly model?: string;
54
+ /** Token counter. Default: a lazy gpt-tokenizer (o200k_base) counter. */
55
+ readonly tokenCounter?: (text: string) => number | Promise<number>;
56
+ /** Summary generator. Default: a built-in single-LLM-call summarizer. */
57
+ readonly summarize?: (args: {
58
+ readonly messages: readonly unknown[];
59
+ readonly model: string;
60
+ readonly previousSummary?: string;
61
+ readonly signal: AbortSignal;
62
+ }) => Promise<string>;
63
+ };
26
64
  }
27
65
  export type RouteSegment = {
28
66
  readonly kind: "static";
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAE1E,YAAY,EAAE,SAAS,EAAE,CAAA;AAEzB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAClB,QAAQ,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAA;QACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAA;KAC5B,CAAA;IACD,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAA;QAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;QAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;KAC5D,CAAA;IACD,QAAQ,CAAC,YAAY,CAAC,EAAE,mBAAmB,CAAA;IAC3C,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;IACpC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpB,gGAAgG;QAChG,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;QACvC,0EAA0E;QAC1E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;QAC9B,yFAAyF;QACzF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;QAC1B,6EAA6E;QAC7E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;QACvB,wDAAwD;QACxD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;QAC9B;;;;;WAKG;QACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAC5C,CAAA;IACD,QAAQ,CAAC,aAAa,CAAC,EAAE;QACvB,wDAAwD;QACxD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;QAC1B,6EAA6E;QAC7E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;QAC3B,oFAAoF;QACpF,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;QACjC,wEAAwE;QACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;QACvB,yEAAyE;QACzE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;QAClE,yEAAyE;QACzE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;YAC1B,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;YACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;YACtB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;YACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;SAC7B,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;KACtB,CAAA;CACF;AAED,MAAM,MAAM,YAAY,GACpB;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,mBAAmB,CAAA;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB,CAAA;AAEL,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAA;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAC7C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAA;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IACxD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACrC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAA;IAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAC9C,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;QACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;QACvD,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;QACpC,QAAQ,CAAC,oBAAoB,EAAE,KAAK,CAAA;KACrC,CAAA;CACF;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAA;CAC/C;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEpD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,CAAA;IACxF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dawn-ai/core",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -34,10 +34,10 @@
34
34
  "tsx": "^4.8.1",
35
35
  "typescript": "5.8.3",
36
36
  "zod": "^4.4.3",
37
- "@dawn-ai/sqlite-storage": "0.2.0",
37
+ "@dawn-ai/sdk": "0.4.0",
38
38
  "@dawn-ai/permissions": "0.1.8",
39
- "@dawn-ai/workspace": "0.1.8",
40
- "@dawn-ai/sdk": "0.2.0"
39
+ "@dawn-ai/sqlite-storage": "0.2.0",
40
+ "@dawn-ai/workspace": "0.2.0"
41
41
  },
42
42
  "peerDependencies": {
43
43
  "@langchain/langgraph-checkpoint": "^1.0.2"
@@ -45,7 +45,7 @@
45
45
  "devDependencies": {
46
46
  "@langchain/langgraph-checkpoint": "^1.0.2",
47
47
  "@types/node": "25.6.0",
48
- "@dawn-ai/config-typescript": "0.2.0",
48
+ "@dawn-ai/config-typescript": "0.4.0",
49
49
  "@dawn-ai/sqlite-storage": "0.2.0"
50
50
  },
51
51
  "scripts": {