@kindgi/tools 0.1.4-rc.5 → 0.1.5-rc.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.
package/dist/define.d.ts CHANGED
@@ -130,6 +130,12 @@ export declare function defineToolAsync<const TInSchema extends AnySchema, const
130
130
  * The returned value has the manifest fields only; there is no
131
131
  * `handler` (metadata-only shape).
132
132
  */
133
+ /**
134
+ * The prefix of tools built into Kindgi (e.g. `kindgi_remember`): their
135
+ * ids are what the model calls, verbatim, so they have no dots. A
136
+ * published tool can't use it; pack tools are `<pack>.<tool>`.
137
+ */
138
+ export declare const BUILT_IN_TOOL_PREFIX = "kindgi_";
133
139
  export declare function validateToolManifest(manifest: unknown): Result<ToolManifest, InvalidToolDefinitionError | InvalidSchemaError | UnknownEffectError>;
134
140
  /** Exported for tests and downstream registry building. */
135
141
  export declare function toolIdOf(spec: Pick<ToolManifest, 'id'>): ToolId;
@@ -1 +1 @@
1
- {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
package/dist/define.js CHANGED
@@ -239,6 +239,12 @@ function checkEffectKinds(manifest) {
239
239
  * The returned value has the manifest fields only; there is no
240
240
  * `handler` (metadata-only shape).
241
241
  */
242
+ /**
243
+ * The prefix of tools built into Kindgi (e.g. `kindgi_remember`): their
244
+ * ids are what the model calls, verbatim, so they have no dots. A
245
+ * published tool can't use it; pack tools are `<pack>.<tool>`.
246
+ */
247
+ export const BUILT_IN_TOOL_PREFIX = 'kindgi_';
242
248
  export function validateToolManifest(manifest) {
243
249
  if (manifest === null || typeof manifest !== 'object') {
244
250
  return {
@@ -263,6 +269,16 @@ export function validateToolManifest(manifest) {
263
269
  return { kind: 'err', error: toDefinitionError(err) };
264
270
  }
265
271
  const parsed = candidate;
272
+ if (parsed.id.startsWith(BUILT_IN_TOOL_PREFIX)) {
273
+ return {
274
+ kind: 'err',
275
+ error: {
276
+ code: 'invalid-tool-definition',
277
+ message: `Tool id "${parsed.id}": the prefix "${BUILT_IN_TOOL_PREFIX}" is reserved for tools built into Kindgi. Name pack tools "<pack>.<tool>".`,
278
+ issues: [{ path: '/id', message: `must not start with "${BUILT_IN_TOOL_PREFIX}"` }],
279
+ },
280
+ };
281
+ }
266
282
  const badEffect = checkEffectKinds(parsed);
267
283
  if (badEffect)
268
284
  return { kind: 'err', error: badEffect };
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAgBxB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAmC,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,UAAU,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAClE,OAAO,EACL,YAAY,GAKb,MAAM,YAAY,CAAC;AAEpB,MAAM,eAAe,GAAG,gDAAgD,CAAC;AAEzE;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,wDAAwD,CAAC;AAEjF,IAAI,cAAwC,CAAC;AAC7C,SAAS,QAAQ;IACf,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC;IACxD,MAAM,KAAK,GAAG,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oDAAoD,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;IAC7B,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAS,uBAAuB;IAC9B,OAAO,oBAAoB,EAAE,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CACvB,MAAe,EACf,KAAyB,EACzB,IAAqC;IAErC,IAAI,CAAC;QACH,iBAAiB,CAAC,MAA2C,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QACpF,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,QAAQ,KAAK,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YAC3G,KAAK;YACL,KAAK;SACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CACxB,MAAiB,EACjB,KAAyB,EACzB,SAAmC;IAKnC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjD,CAAC;IACD,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC7D,IAAI,SAAS,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,aAAa,CACpB,GAA8B,EAC9B,KAAyB;IAEzB,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,QAAQ,KAAK,kCAAkC,GAAG,CAAC,OAAO,EAAE;QACrE,KAAK;QACL,KAAK,EAAE,GAAG,CAAC,KAAK;KACjB,CAAC;AACJ,CAAC;AA0HD,MAAM,UAAU,UAAU,CACxB,IAA0C,EAC1C,UAA6B,EAAE;IAE/B,kEAAkE;IAClE,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,OAAO,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAQD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAMnC,IAAoE,EACpE,UAA6B,EAAE;IAE/B,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,MAAM,gBAAgB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,OAAO,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,kBAAkB,CAMzB,IAAoE,EACpE,SAAmC,EACnC,OAA0B;IAE1B,gDAAgD;IAChD,kEAAkE;IAClE,oEAAoE;IACpE,gEAAgE;IAChE,+DAA+D;IAC/D,uDAAuD;IACvD,MAAM,WAAW,GAAI,IAAuC,CAAC,OAAO,CAAC;IACrE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1E,OAAO;YACL,IAAI,EAAE,KAAK;YACX,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EACL,+KAA+K;gBACjL,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,iDAAiD;qBAC3D;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,MAAM,aAAa,GAAI,IAAuC,CAAC,OAAO,CAAC;IACvE,MAAM,eAAe,GAAI,IAAqC,CAAC,IAAI,CAAC;IACpE,IAAI,aAAa,KAAK,SAAS,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QACjE,OAAO;YACL,IAAI,EAAE,KAAK;YACX,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EACL,6GAA6G;gBAC/G,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;aACnE;SACF,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,KAAK,SAAS,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QACjE,OAAO;YACL,IAAI,EAAE,KAAK;YACX,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EACL,oFAAoF;gBACtF,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;aACtE;SACF,CAAC;IACJ,CAAC;IACD,IAAI,gBAAgB,GAAG,aAEV,CAAC;IACd,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO;gBACL,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE;oBACL,IAAI,EAAE,yBAAyB;oBAC/B,OAAO,EAAE,iDAAiD,eAAe,CAAC,IAAI,8GAA8G;oBAC5L,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,eAAe,CAAC,IAAI,GAAG,EAAE,CAAC;iBACpF;aACF,CAAC;QACJ,CAAC;QACD,gBAAgB,GAAG,KAAK,CACtB,eAAe,EACd,IAAgC,CAAC,EAAE,EACpC,OAAO,CAAC,WAAW,CAC6C,CAAC;IACrE,CAAC;IAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACxE,IAAI,aAAa,CAAC,IAAI,KAAK,KAAK;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;IACrF,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC3E,IAAI,cAAc,CAAC,IAAI,KAAK,KAAK;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;IAEvF,sEAAsE;IACtE,kEAAkE;IAClE,+DAA+D;IAC/D,4BAA4B;IAC5B,MAAM,QAAQ,GAAG;QACf,GAAI,IAAgC;QACpC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,IAAI;QAC/B,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI;QACjC,OAAO,EAAE,gBAAgB;KACkB,CAAC;IAE9C,MAAM,QAAQ,GAAiB,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEtD,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC,QAAQ,CAAe,eAAe,EAAE,QAAQ,CAAC,CAAC;IAClF,IAAI,YAAY,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC;QAC/B,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAExD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACrE,IAAI,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACtD,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACxE,IAAI,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAExD,MAAM,IAAI,GAAG;QACX,GAAG,QAAQ;QACX,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACnF,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;KACb,CAAC;IAE5E,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,YAAY,CAAkB,IAA2B;IAChE,8EAA8E;IAC9E,2EAA2E;IAC3E,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC;IAC/E,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAG1B;IACC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,MAAM,MAAM,GAAG,CAAkD,CAAC;QAClE,OAAO;YACL,IAAI,EAAE,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;YACxE,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB;SACnF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAsB;IAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,YAAY,CAAC,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,OAAO;gBACL,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,SAAS,QAAQ,CAAC,EAAE,mCAAmC,GAAG,CAAC,IAAI,GAAG;gBAC3E,IAAI,EAAE,GAAG,CAAC,IAAI;aACf,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;GAUG;AACH;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAC;AAE9C,MAAM,UAAU,oBAAoB,CAClC,QAAiB;IAEjB,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO;YACL,IAAI,EAAE,KAAK;YACX,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,iCAAiC;gBAC1C,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;aACrD;SACF,CAAC;IACJ,CAAC;IACD,sEAAsE;IACtE,oEAAoE;IACpE,gEAAgE;IAChE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,QAAmC,CAAC;IAChF,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC,QAAQ,CAAe,eAAe,EAAE,SAAS,CAAC,CAAC;IACnF,IAAI,YAAY,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC;QAC/B,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IACxD,CAAC;IACD,MAAM,MAAM,GAAG,SAAoC,CAAC;IACpD,IAAK,MAAM,CAAC,EAAwB,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACtE,OAAO;YACL,IAAI,EAAE,KAAK;YACX,KAAK,EAAE;gBACL,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,YAAY,MAAM,CAAC,EAAuB,kBAAkB,oBAAoB,6EAA6E;gBACtK,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAwB,oBAAoB,GAAG,EAAE,CAAC;aACpF;SACF,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACjE,IAAI,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACtD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,IAAI,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACxD,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAClD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,QAAsB;IAClD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,IAAI,IAAI,EAAE,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAC5C,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjE,MAAM,OAAO,GACX,MAAM,KAAK,IAAI;QACb,CAAC,CAAC,gDAAgD;QAClD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5B,CAAC,CAAC,4EAA4E;YAC9E,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE;gBACxB,CAAC,CAAC,kBAAkB;gBACpB,CAAC,CAAC,SAAS,CAAC;IACpB,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5C,OAAO;QACL,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,SAAS,QAAQ,CAAC,EAAE,sBAAsB,OAAO,EAAE;QAC5D,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,QAAQ,CAAC,IAA8B;IACrD,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,kEAAkE;AAClE,MAAM,CAAC,MAAM,wBAAwB,GAAG,eAAe,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,11 @@
1
- export { defineTool, defineToolAsync, validateToolManifest, TOOL_SCHEMA_URI_EXPORTED as TOOL_SCHEMA_URI, } from './define.js';
1
+ export { BUILT_IN_TOOL_PREFIX, defineTool, defineToolAsync, validateToolManifest, TOOL_SCHEMA_URI_EXPORTED as TOOL_SCHEMA_URI, } from './define.js';
2
2
  export type { DefineToolOptions, DefineToolSpec, DefinedTool, InferInput, InferOutput, } from './define.js';
3
3
  import './http.js';
4
4
  export { registerToolSpecSynthesizer, getToolSpecSynthesizer } from './spec-registry.js';
5
5
  export type { ToolSpecSynthesizer, ToolSpecSynthesizerOptions } from './spec-registry.js';
6
6
  export { invokeTool } from './invoke.js';
7
7
  export { ToolPreconditionError, isToolPreconditionError } from './precondition.js';
8
+ export { TOOL_ENV_RECORD_KEY, toolCallRecordKey } from './record-keys.js';
8
9
  export type { InvokeToolOptions } from './invoke.js';
9
10
  export { createToolRegistry } from './registry.js';
10
11
  export type { ToolRegisterOptions, ToolRegistry, ToolResolution } from './registry.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,wBAAwB,IAAI,eAAe,GAC5C,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,UAAU,EACV,WAAW,GACZ,MAAM,aAAa,CAAC;AAIrB,OAAO,WAAW,CAAC;AACnB,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACzF,YAAY,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACnF,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EACV,OAAO,EACP,eAAe,EACf,MAAM,EACN,UAAU,EACV,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,IAAI,EACJ,aAAa,EACb,aAAa,EACb,WAAW,EACX,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,kBAAkB,EAClB,yBAAyB,EACzB,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,wBAAwB,IAAI,eAAe,GAC5C,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,UAAU,EACV,WAAW,GACZ,MAAM,aAAa,CAAC;AAIrB,OAAO,WAAW,CAAC;AACnB,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACzF,YAAY,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EACV,OAAO,EACP,eAAe,EACf,MAAM,EACN,UAAU,EACV,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,IAAI,EACJ,aAAa,EACb,aAAa,EACb,WAAW,EACX,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,kBAAkB,EAClB,yBAAyB,EACzB,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  // Copyright (C) 2026 Kindgi Inc.
3
- export { defineTool, defineToolAsync, validateToolManifest, TOOL_SCHEMA_URI_EXPORTED as TOOL_SCHEMA_URI, } from './define.js';
3
+ export { BUILT_IN_TOOL_PREFIX, defineTool, defineToolAsync, validateToolManifest, TOOL_SCHEMA_URI_EXPORTED as TOOL_SCHEMA_URI, } from './define.js';
4
4
  // Side-effect import — registers the 'http' spec synthesizer at
5
5
  // package load so `defineTool({spec: {kind: 'http', ...}})` works
6
6
  // out of the box for any consumer that imports @kindgi/tools.
@@ -8,6 +8,7 @@ import './http.js';
8
8
  export { registerToolSpecSynthesizer, getToolSpecSynthesizer } from './spec-registry.js';
9
9
  export { invokeTool } from './invoke.js';
10
10
  export { ToolPreconditionError, isToolPreconditionError } from './precondition.js';
11
+ export { TOOL_ENV_RECORD_KEY, toolCallRecordKey } from './record-keys.js';
11
12
  export { createToolRegistry } from './registry.js';
12
13
  export { latestVersion, nextVersion, pickVersion } from './versions.js';
13
14
  export { toManifest, toMcpManifest } from './manifest.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EACL,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,wBAAwB,IAAI,eAAe,GAC5C,MAAM,aAAa,CAAC;AAQrB,gEAAgE;AAChE,kEAAkE;AAClE,8DAA8D;AAC9D,OAAO,WAAW,CAAC;AACnB,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAEnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,wBAAwB,IAAI,eAAe,GAC5C,MAAM,aAAa,CAAC;AAQrB,gEAAgE;AAChE,kEAAkE;AAClE,8DAA8D;AAC9D,OAAO,WAAW,CAAC;AACnB,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * The `NodeContext.record` key a tool call's own `ToolContext.record(key, …)`
3
+ * is journaled under, as the dispatch site sets it:
4
+ *
5
+ * - an agent turn's call: `tool-call:<call id>:<tool id>:<key>` (call ids
6
+ * are unique only by provider convention, so the tool id keeps two
7
+ * tools apart);
8
+ * - a flow's tool step: `tool-call:<tool id>:<key>`, in its node's scope
9
+ * (already per node, loop iteration and fanout branch).
10
+ *
11
+ * Judgment capture builds the same keys to read a call's records back.
12
+ */
13
+ export declare function toolCallRecordKey(input: {
14
+ readonly toolId: string;
15
+ readonly key: string;
16
+ /** The model's id for an agent turn's call; absent for a flow's tool step. */
17
+ readonly callId?: string;
18
+ }): string;
19
+ /** The `ToolContext.record` key a runtime keeps a call's resolved env values under. */
20
+ export declare const TOOL_ENV_RECORD_KEY = "env";
21
+ //# sourceMappingURL=record-keys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-keys.d.ts","sourceRoot":"","sources":["../src/record-keys.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,MAAM,CAIT;AAED,uFAAuF;AACvF,eAAO,MAAM,mBAAmB,QAAQ,CAAC"}
@@ -0,0 +1,22 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (C) 2026 Kindgi Inc.
3
+ /**
4
+ * The `NodeContext.record` key a tool call's own `ToolContext.record(key, …)`
5
+ * is journaled under, as the dispatch site sets it:
6
+ *
7
+ * - an agent turn's call: `tool-call:<call id>:<tool id>:<key>` (call ids
8
+ * are unique only by provider convention, so the tool id keeps two
9
+ * tools apart);
10
+ * - a flow's tool step: `tool-call:<tool id>:<key>`, in its node's scope
11
+ * (already per node, loop iteration and fanout branch).
12
+ *
13
+ * Judgment capture builds the same keys to read a call's records back.
14
+ */
15
+ export function toolCallRecordKey(input) {
16
+ return input.callId === undefined
17
+ ? `tool-call:${input.toolId}:${input.key}`
18
+ : `tool-call:${input.callId}:${input.toolId}:${input.key}`;
19
+ }
20
+ /** The `ToolContext.record` key a runtime keeps a call's resolved env values under. */
21
+ export const TOOL_ENV_RECORD_KEY = 'env';
22
+ //# sourceMappingURL=record-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-keys.js","sourceRoot":"","sources":["../src/record-keys.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAKjC;IACC,OAAO,KAAK,CAAC,MAAM,KAAK,SAAS;QAC/B,CAAC,CAAC,aAAa,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,EAAE;QAC1C,CAAC,CAAC,aAAa,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;AAC/D,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC"}
package/dist/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { Logger } from '@kindgi/log';
1
2
  import type { ZodLikeSchema } from '@kindgi/schema';
2
3
  import type { OrgId, ProjectId, TenantId, ToolId, UserId } from '@kindgi/types';
3
4
  /**
@@ -100,6 +101,15 @@ export interface ToolContext {
100
101
  * `SecretBinding` scoped to the invoking tenant.
101
102
  */
102
103
  readonly resolveSecret?: (ref: ToolSecretRef) => Promise<string>;
104
+ /**
105
+ * A logger bound to this call: its records carry the run's ids and the
106
+ * caller's trace id (`ctx.log.info('looked up order', { orderId })`).
107
+ * The pack service sets it; a caller that synthesises a context may
108
+ * not, so write `ctx.log?.info(…)` in code that also runs elsewhere. A
109
+ * secret's value is never a field (the logger redacts secret-looking
110
+ * keys and shapes, but don't rely on it).
111
+ */
112
+ readonly log?: Logger;
103
113
  /**
104
114
  * The values of the settings blocks the calling agent version pins, by
105
115
  * block id (`ctx.settings['acme.weights'].recency`). Unset when the
@@ -118,6 +128,34 @@ export interface ToolContext {
118
128
  * passes its own.
119
129
  */
120
130
  readonly secrets?: Readonly<Record<string, string>>;
131
+ /**
132
+ * The env values this tool declares in `needsSpec.env`, by name,
133
+ * resolved by the runtime for this call: the call's project's value,
134
+ * else its org's, else the tenant's, in the env the runtime serves
135
+ * (`KINDGI_ENV`). A name no scope sets gets its schema's `default`.
136
+ * Every declared name is present: one with neither a value nor a
137
+ * default, or whose value doesn't match its schema, fails the call
138
+ * before the handler runs. The runtime records the values with the
139
+ * call (`record`), so the call re-run after a wait or a retry sees the
140
+ * same ones. Not for credentials: env values are shown with the run
141
+ * (use `secrets`).
142
+ * Absent when the tool declares none, and from an older runtime — a
143
+ * unit test passes its own.
144
+ */
145
+ readonly env?: Readonly<Record<string, string>>;
146
+ /**
147
+ * Decide once for this call, durably: the step that runs the tool's
148
+ * `NodeContext.record`, under a key for this call. The first call for
149
+ * `key` runs `decide`, journals its result, then returns it; when the
150
+ * step runs again (resumed after a wait, or retried), it returns the
151
+ * journaled result and `decide` doesn't run. A throw or `undefined`
152
+ * isn't journaled. The result is kept as JSON.
153
+ *
154
+ * The runtime keeps a call's resolved env here, so a re-run sees the
155
+ * values the call first saw. Set by the dispatch site (an agent turn's
156
+ * tool dispatch, a flow's tool step); absent outside a run.
157
+ */
158
+ readonly record?: <T>(key: string, decide: () => T | Promise<T>) => Promise<T>;
121
159
  }
122
160
  /**
123
161
  * Pointer to a tenant-scoped secret used by a declarative tool
@@ -178,6 +216,13 @@ export type NetworkPolicy = {
178
216
  * Schemas. An authoring tool that accepts Zod converts with
179
217
  * `z.toJSONSchema()` before the manifest is built.
180
218
  *
219
+ * `env` and `secrets` are resolved per call (`ctx.env`, `ctx.secrets`).
220
+ * Their values are strings, as in a process environment; each schema
221
+ * checks the string (`enum`, `pattern`, `minLength`…) and nothing is
222
+ * coerced. An `env` name whose schema has a `default` is optional; every
223
+ * other declared name is required. `config` is reserved: no runtime
224
+ * resolves it yet.
225
+ *
181
226
  * `capabilities` names capability-router features (e.g. `'embedding'`);
182
227
  * `bindings` names deployment-plugged binding keys (e.g. `'blob'`).
183
228
  *
@@ -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":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAYjC,4FAA4F;AAC5F,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO;IACP,QAAQ;IACR,SAAS;IACT,SAAS;IACT,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,uBAAuB;CACf,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAajC,4FAA4F;AAC5F,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO;IACP,QAAQ;IACR,SAAS;IACT,SAAS;IACT,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,uBAAuB;CACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kindgi/tools",
3
- "version": "0.1.4-rc.5",
3
+ "version": "0.1.5-rc.0",
4
4
  "description": "Tool authoring shape + registry + invocation for Kindgi. A tool is a typed, effect-declared unit of work — the same definition runs in-process for one flow, over MCP for another. Pure — no kernel dependency; the kernel bridges tools to node handlers separately.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -30,8 +30,9 @@
30
30
  "type-manifest.json"
31
31
  ],
32
32
  "dependencies": {
33
- "@kindgi/schema": "0.1.4-rc.5",
34
- "@kindgi/types": "0.1.4-rc.5",
33
+ "@kindgi/log": "0.1.5-rc.0",
34
+ "@kindgi/schema": "0.1.5-rc.0",
35
+ "@kindgi/types": "0.1.5-rc.0",
35
36
  "ajv": "^8.17.1",
36
37
  "ajv-formats": "^3.0.1",
37
38
  "semver": "^7.6.3"
@@ -45,7 +46,7 @@
45
46
  }
46
47
  },
47
48
  "devDependencies": {
48
- "@kindgi/specs": "0.1.4-rc.5",
49
+ "@kindgi/specs": "0.1.5-rc.0",
49
50
  "@types/node": "^22.10.5",
50
51
  "@types/semver": "^7.5.8",
51
52
  "typescript": "^5.7.3",
package/src/define.ts CHANGED
@@ -456,6 +456,13 @@ function checkEffectKinds(manifest: ToolManifest): UnknownEffectError | undefine
456
456
  * The returned value has the manifest fields only; there is no
457
457
  * `handler` (metadata-only shape).
458
458
  */
459
+ /**
460
+ * The prefix of tools built into Kindgi (e.g. `kindgi_remember`): their
461
+ * ids are what the model calls, verbatim, so they have no dots. A
462
+ * published tool can't use it; pack tools are `<pack>.<tool>`.
463
+ */
464
+ export const BUILT_IN_TOOL_PREFIX = 'kindgi_';
465
+
459
466
  export function validateToolManifest(
460
467
  manifest: unknown,
461
468
  ): Result<ToolManifest, InvalidToolDefinitionError | InvalidSchemaError | UnknownEffectError> {
@@ -482,6 +489,16 @@ export function validateToolManifest(
482
489
  return { kind: 'err', error: toDefinitionError(err) };
483
490
  }
484
491
  const parsed = candidate as unknown as ToolManifest;
492
+ if ((parsed.id as unknown as string).startsWith(BUILT_IN_TOOL_PREFIX)) {
493
+ return {
494
+ kind: 'err',
495
+ error: {
496
+ code: 'invalid-tool-definition',
497
+ message: `Tool id "${parsed.id as unknown as string}": the prefix "${BUILT_IN_TOOL_PREFIX}" is reserved for tools built into Kindgi. Name pack tools "<pack>.<tool>".`,
498
+ issues: [{ path: '/id', message: `must not start with "${BUILT_IN_TOOL_PREFIX}"` }],
499
+ },
500
+ };
501
+ }
485
502
  const badEffect = checkEffectKinds(parsed);
486
503
  if (badEffect) return { kind: 'err', error: badEffect };
487
504
  const badInput = compilesAsSchema(parsed.input, 'input', parsed);
package/src/index.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  // Copyright (C) 2026 Kindgi Inc.
3
3
 
4
4
  export {
5
+ BUILT_IN_TOOL_PREFIX,
5
6
  defineTool,
6
7
  defineToolAsync,
7
8
  validateToolManifest,
@@ -22,6 +23,7 @@ export { registerToolSpecSynthesizer, getToolSpecSynthesizer } from './spec-regi
22
23
  export type { ToolSpecSynthesizer, ToolSpecSynthesizerOptions } from './spec-registry.js';
23
24
  export { invokeTool } from './invoke.js';
24
25
  export { ToolPreconditionError, isToolPreconditionError } from './precondition.js';
26
+ export { TOOL_ENV_RECORD_KEY, toolCallRecordKey } from './record-keys.js';
25
27
  export type { InvokeToolOptions } from './invoke.js';
26
28
  export { createToolRegistry } from './registry.js';
27
29
  export type { ToolRegisterOptions, ToolRegistry, ToolResolution } from './registry.js';
@@ -0,0 +1,28 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (C) 2026 Kindgi Inc.
3
+
4
+ /**
5
+ * The `NodeContext.record` key a tool call's own `ToolContext.record(key, …)`
6
+ * is journaled under, as the dispatch site sets it:
7
+ *
8
+ * - an agent turn's call: `tool-call:<call id>:<tool id>:<key>` (call ids
9
+ * are unique only by provider convention, so the tool id keeps two
10
+ * tools apart);
11
+ * - a flow's tool step: `tool-call:<tool id>:<key>`, in its node's scope
12
+ * (already per node, loop iteration and fanout branch).
13
+ *
14
+ * Judgment capture builds the same keys to read a call's records back.
15
+ */
16
+ export function toolCallRecordKey(input: {
17
+ readonly toolId: string;
18
+ readonly key: string;
19
+ /** The model's id for an agent turn's call; absent for a flow's tool step. */
20
+ readonly callId?: string;
21
+ }): string {
22
+ return input.callId === undefined
23
+ ? `tool-call:${input.toolId}:${input.key}`
24
+ : `tool-call:${input.callId}:${input.toolId}:${input.key}`;
25
+ }
26
+
27
+ /** The `ToolContext.record` key a runtime keeps a call's resolved env values under. */
28
+ export const TOOL_ENV_RECORD_KEY = 'env';
package/src/types.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  // Copyright (C) 2026 Kindgi Inc.
3
3
 
4
+ import type { Logger } from '@kindgi/log';
4
5
  import type { ZodLikeSchema } from '@kindgi/schema';
5
6
  import type { OrgId, ProjectId, TenantId, ToolId, UserId } from '@kindgi/types';
6
7
 
@@ -118,6 +119,15 @@ export interface ToolContext {
118
119
  * `SecretBinding` scoped to the invoking tenant.
119
120
  */
120
121
  readonly resolveSecret?: (ref: ToolSecretRef) => Promise<string>;
122
+ /**
123
+ * A logger bound to this call: its records carry the run's ids and the
124
+ * caller's trace id (`ctx.log.info('looked up order', { orderId })`).
125
+ * The pack service sets it; a caller that synthesises a context may
126
+ * not, so write `ctx.log?.info(…)` in code that also runs elsewhere. A
127
+ * secret's value is never a field (the logger redacts secret-looking
128
+ * keys and shapes, but don't rely on it).
129
+ */
130
+ readonly log?: Logger;
121
131
  /**
122
132
  * The values of the settings blocks the calling agent version pins, by
123
133
  * block id (`ctx.settings['acme.weights'].recency`). Unset when the
@@ -136,6 +146,34 @@ export interface ToolContext {
136
146
  * passes its own.
137
147
  */
138
148
  readonly secrets?: Readonly<Record<string, string>>;
149
+ /**
150
+ * The env values this tool declares in `needsSpec.env`, by name,
151
+ * resolved by the runtime for this call: the call's project's value,
152
+ * else its org's, else the tenant's, in the env the runtime serves
153
+ * (`KINDGI_ENV`). A name no scope sets gets its schema's `default`.
154
+ * Every declared name is present: one with neither a value nor a
155
+ * default, or whose value doesn't match its schema, fails the call
156
+ * before the handler runs. The runtime records the values with the
157
+ * call (`record`), so the call re-run after a wait or a retry sees the
158
+ * same ones. Not for credentials: env values are shown with the run
159
+ * (use `secrets`).
160
+ * Absent when the tool declares none, and from an older runtime — a
161
+ * unit test passes its own.
162
+ */
163
+ readonly env?: Readonly<Record<string, string>>;
164
+ /**
165
+ * Decide once for this call, durably: the step that runs the tool's
166
+ * `NodeContext.record`, under a key for this call. The first call for
167
+ * `key` runs `decide`, journals its result, then returns it; when the
168
+ * step runs again (resumed after a wait, or retried), it returns the
169
+ * journaled result and `decide` doesn't run. A throw or `undefined`
170
+ * isn't journaled. The result is kept as JSON.
171
+ *
172
+ * The runtime keeps a call's resolved env here, so a re-run sees the
173
+ * values the call first saw. Set by the dispatch site (an agent turn's
174
+ * tool dispatch, a flow's tool step); absent outside a run.
175
+ */
176
+ readonly record?: <T>(key: string, decide: () => T | Promise<T>) => Promise<T>;
139
177
  }
140
178
 
141
179
  /**
@@ -197,6 +235,13 @@ export type NetworkPolicy =
197
235
  * Schemas. An authoring tool that accepts Zod converts with
198
236
  * `z.toJSONSchema()` before the manifest is built.
199
237
  *
238
+ * `env` and `secrets` are resolved per call (`ctx.env`, `ctx.secrets`).
239
+ * Their values are strings, as in a process environment; each schema
240
+ * checks the string (`enum`, `pattern`, `minLength`…) and nothing is
241
+ * coerced. An `env` name whose schema has a `default` is optional; every
242
+ * other declared name is required. `config` is reserved: no runtime
243
+ * resolves it yet.
244
+ *
200
245
  * `capabilities` names capability-router features (e.g. `'embedding'`);
201
246
  * `bindings` names deployment-plugged binding keys (e.g. `'blob'`).
202
247
  *