@pinecall/agents 0.9.20 → 0.9.22

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/README.md CHANGED
@@ -5,12 +5,13 @@ methods are what the model can call, docstrings are the prompt, and `render()` d
5
5
  current turn.
6
6
 
7
7
  ```tsx
8
+ /** You are the front desk of Clínica Norte. Formal, short sentences. */
8
9
  export default class ClinicaNorte extends Agent {
9
10
  stage: Stages<"identify" | "choose" | "book"> = "identify";
10
11
  patient?: Patient | undefined;
11
12
  slot?: Slot | undefined;
12
13
 
13
- /** Busca al paciente por nombre y teléfono. Pide los dos antes de llamarla. */
14
+ /** Finds the patient by name and phone. Ask for both before calling it. */
14
15
  @tool({ stage: "identify", pii: ["name", "phone"] })
15
16
  async findPatient(name: string, phone: string): Promise<Patient | null> {
16
17
  this.patient = await this.agenda().find(name, phone);
@@ -22,8 +23,8 @@ export default class ClinicaNorte extends Agent {
22
23
  override render() {
23
24
  return (
24
25
  <>
25
- {this.stage === "identify" && <p>Saluda y pide nombre y teléfono.</p>}
26
- {this.patient && <p>Hablas con {this.patient.name}, ya en la ficha.</p>}
26
+ {this.stage === "identify" && <p>Greet the caller and ask for their name and phone.</p>}
27
+ {this.patient && <p>You are talking to {this.patient.name}, already on file.</p>}
27
28
  </>
28
29
  );
29
30
  }
@@ -38,17 +39,31 @@ WebSocket.
38
39
  ## Install
39
40
 
40
41
  ```bash
41
- npm i @pinecall/agents pinecall # the framework, and the CLI that runs what you write in it
42
+ npm i @pinecall/agents # in the project: the framework your agents are written in
43
+ npm i -g pinecall # once per machine: the CLI, the same for TypeScript, Ruby and Python
42
44
  ```
43
45
 
44
- The CLI is its own package, [`pinecall`](https://github.com/pinecall/cli): it never loads this
45
- one, it starts the agents of your project through `@pinecall/agents/serve`, which is why both are
46
- dependencies of the project. It needs a gateway: use Pinecall's hosted one, or run your own with
47
- [`pip install pinecall`](https://github.com/pinecall/runtime) (see
48
- [from-zero](https://github.com/pinecall/runtime/blob/main/docs/from-zero.md)).
46
+ The CLI is its own package, [`pinecall`](https://github.com/pinecall/cli), and never a dependency
47
+ of the project: it never loads this one, it starts the agents of your project through the
48
+ `@pinecall/agents/serve` your project pinned. It needs a gateway: use Pinecall's hosted one, or run your own with
49
+ [`pip install pinecall-runtime`](https://github.com/pinecall/runtime) (see
50
+ [Self-hosting](https://docs.pinecall.io/self-hosting/overview/)).
49
51
 
50
52
  ## Quick start
51
53
 
54
+ ```bash
55
+ npm i -g pinecall
56
+ pinecall new front-desk # a project of one agent: the class, its test, a golden, the toolchain
57
+ cd front-desk && npm install
58
+ pinecall link # sign in through the browser; writes your key to ./.env
59
+ pinecall chat # talk to the agent in this terminal
60
+ pinecall test # run its golden against a real model
61
+ pinecall start # run the agent (this is the process you deploy)
62
+ ```
63
+
64
+ The whole example, a clinic's receptionist with stages, a calendar and documents, from this
65
+ checkout:
66
+
52
67
  ```bash
53
68
  pnpm install
54
69
  npm i -g pinecall # the CLI; the example takes the framework from this checkout
@@ -63,8 +78,8 @@ pinecall test # run the goldens
63
78
  Other useful verbs: `pinecall prompt --state <file>` prints the exact prompt a state produces
64
79
  (`--channel web --medium text` for the one a written chat gets);
65
80
  `pinecall docs push` uploads a knowledge base and `pinecall docs attach <base>` gives it to the
66
- agent; `pinecall deploy` runs the project on the box instead of your own server, with
67
- `pinecall secrets` for what it is started with ([docs/deploying.md](https://github.com/pinecall/cli/blob/main/docs/deploying.md)). Every verb runs against the sandbox unless `--prod` is given. The CLI reads `PINECALL_KEY`
81
+ agent; `pinecall deploy` runs the project on Pinecall instead of your own server, with
82
+ `pinecall secrets` for what it is started with ([Deploy to Pinecall](https://docs.pinecall.io/guides/deploy/)). Every verb runs against the sandbox unless `--prod` is given. The CLI reads `PINECALL_KEY`
68
83
  and `PINECALL_URL` from the environment or the project's `.env`. Full reference:
69
84
  [docs/the-cli.md](https://github.com/pinecall/cli/blob/main/docs/the-cli.md).
70
85
 
@@ -72,7 +87,7 @@ A project holds one or more agents: `agents/<name>/agent.tsx` and their tests in
72
87
  `test/<name>/`. Voice, model, language, greeting, knowledge and the documents an agent searches
73
88
  are per-world settings, not class fields or files in the repository: `pinecall agent set
74
89
  --language es` is how the agent's calls come to be in Spanish. Running in production on your own server:
75
- [docs/production.md](docs/production.md).
90
+ [Run it on your own server](https://docs.pinecall.io/guides/own-server/).
76
91
 
77
92
  ## Development
78
93
 
@@ -107,14 +122,13 @@ The wire is the runtime's, kept in `src/wire/`; the runtime's golden call log, i
107
122
 
108
123
  | | |
109
124
  |---|---|
110
- | [docs/tutorial.md](docs/tutorial.md) | from an empty directory to an agent with knowledge and memory |
111
- | [docs/writing-an-agent.md](docs/writing-an-agent.md) | state, tools, stages, channels, knowledge, memory, hooks |
112
- | [docs/the-prompt.md](docs/the-prompt.md) | how the prompt is built and cached |
113
- | [docs/testing-an-agent.md](docs/testing-an-agent.md) | unit tests, goldens, personas, replays, scores |
114
- | [the CLI](https://github.com/pinecall/cli/blob/main/docs/the-cli.md) | every verb, in the `pinecall` repo |
115
- | [docs/worlds-and-teams.md](docs/worlds-and-teams.md) | keys, sandbox and production, teams |
116
- | [docs/production.md](docs/production.md) | running an agent on your own server |
125
+ | [Tutorial](docs/tutorial.md) | forty minutes, from an empty directory to an agent with knowledge and memory, tested and shipped |
126
+ | [Writing an agent](docs/writing-an-agent.md) | the class: config, state, stages, tools, hooks, the call, the panel |
127
+ | [The view](docs/the-view.md) | the four blocks of the prompt, and `render()` |
128
+ | [Testing an agent](docs/testing-an-agent.md) | ring 0 with no network, no key and no model, and the rings above |
129
+ | [Production](docs/production.md) | `pinecall deploy`, `mount` in your own app, or `pinecall start --prod` |
117
130
  | [ARCHITECTURE.md](ARCHITECTURE.md) | the package file by file |
131
+ | [docs.pinecall.io](https://docs.pinecall.io) | the product: agents, judges, goldens, the console, the CLI |
118
132
 
119
133
  ## License
120
134
 
@@ -1,7 +1,7 @@
1
1
  /** The call's room: its participants and the commands that act on them. */
2
2
  import { type Camel, type CommandData } from "../wire/codec.js";
3
3
  import { type CommandType } from "../wire/registry.js";
4
- /** A participant's role in the call (protocol/schema/defs.json). */
4
+ /** A participant's role in the call (the wire's `ParticipantKind`, src/wire/defs.ts). */
5
5
  export type ParticipantKind = "caller" | "agent" | "supervisor" | "listener" | "sip";
6
6
  /** One participant in the room. */
7
7
  export interface Participant {
@@ -1 +1 @@
1
- {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../../src/call/room.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,oEAAoE;AACpE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,KAAK,CAAC;AAErF,mCAAmC;AACnC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wDAAwD;AACxD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAE9F,8EAA8E;AAC9E,qBAAa,iBAAiB;IAE1B,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFvB,YACW,QAAQ,EAAE,MAAM,EACR,IAAI,EAAE,SAAS,EAC9B;IAEJ,uFAAuF;IACvF,IAAI,IAAI,IAAI,CAEX;IAED,+DAA+D;IAC/D,MAAM,IAAI,IAAI,CAEb;CACF;AAED,uGAAuG;AACvG,qBAAa,IAAI;;IAGH,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,SAAS,EAAI;IAEhD,kCAAkC;IAClC,IAAI,YAAY,IAAI,WAAW,EAAE,CAEhC;IAED,qCAAqC;IACrC,IAAI,MAAM,IAAI,WAAW,GAAG,SAAS,CAEpC;IAED,+EAA+E;IAC/E,GAAG,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAElC;IAED,iCAAiC;IACjC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE7C;IAED,qEAAqE;IACrE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,IAAI,EAAE,KAAK,GAAG,aAAa,CAAA;KAAE,GAAG,IAAI,CAEjE;IAED,4EAA4E;IAC5E,MAAM,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,eAAe,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAIzF;IAED,0BAA0B;IAC1B,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAE3B;IAED,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAGlD;CACF"}
1
+ {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../../src/call/room.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,yFAAyF;AACzF,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,KAAK,CAAC;AAErF,mCAAmC;AACnC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wDAAwD;AACxD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAE9F,8EAA8E;AAC9E,qBAAa,iBAAiB;IAE1B,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFvB,YACW,QAAQ,EAAE,MAAM,EACR,IAAI,EAAE,SAAS,EAC9B;IAEJ,uFAAuF;IACvF,IAAI,IAAI,IAAI,CAEX;IAED,+DAA+D;IAC/D,MAAM,IAAI,IAAI,CAEb;CACF;AAED,uGAAuG;AACvG,qBAAa,IAAI;;IAGH,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,SAAS,EAAI;IAEhD,kCAAkC;IAClC,IAAI,YAAY,IAAI,WAAW,EAAE,CAEhC;IAED,qCAAqC;IACrC,IAAI,MAAM,IAAI,WAAW,GAAG,SAAS,CAEpC;IAED,+EAA+E;IAC/E,GAAG,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAElC;IAED,iCAAiC;IACjC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE7C;IAED,qEAAqE;IACrE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,IAAI,EAAE,KAAK,GAAG,aAAa,CAAA;KAAE,GAAG,IAAI,CAEjE;IAED,4EAA4E;IAC5E,MAAM,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,eAAe,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAIzF;IAED,0BAA0B;IAC1B,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAE3B;IAED,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAGlD;CACF"}
@@ -1,5 +1,6 @@
1
1
  /** `@pinecall/agents/serve`: the entry the CLI starts an agent with — `start` holds it, `prompt` prints it. */
2
2
  import { type Io } from "./io.js";
3
- /** Run one verb; 2 when it cannot run at all, with the sentence on `err`. */
3
+ /** Run one verb; 2 when it cannot run at all, with the sentence on `err` — a flag it does not have,
4
+ * a class it cannot serve, or a gateway that refuses the registration (a slug of another org). */
4
5
  export declare function main(argv: string[], io?: Io): Promise<number>;
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAO/G,OAAO,EAAa,KAAK,EAAE,EAAE,MAAM,SAAS,CAAC;AAW7C,6EAA6E;AAC7E,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAE,EAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAYhF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAQ/G,OAAO,EAAa,KAAK,EAAE,EAAE,MAAM,SAAS,CAAC;AAW7C;kGACkG;AAClG,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAE,EAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAYhF"}
@@ -2,6 +2,7 @@
2
2
  import { realpathSync } from "node:fs";
3
3
  import { pathToFileURL } from "node:url";
4
4
  import { DeclarationRefused } from "../agent/tools.js";
5
+ import { Refused } from "../client/index.js";
5
6
  import { processIo } from "./io.js";
6
7
  import { CannotServe } from "./load.js";
7
8
  import { prompt } from "./prompt.js";
@@ -11,7 +12,8 @@ const USAGE = `usage: serve start --file <agent.tsx> --slug <slug> [--file … -
11
12
 
12
13
  Reads PINECALL_URL, PINECALL_KEY and PINECALL_ENV from its environment and nothing else.
13
14
  start leaves on SIGINT, SIGTERM or the end of its stdin, draining first; a second signal leaves now.`;
14
- /** Run one verb; 2 when it cannot run at all, with the sentence on `err`. */
15
+ /** Run one verb; 2 when it cannot run at all, with the sentence on `err` — a flag it does not have,
16
+ * a class it cannot serve, or a gateway that refuses the registration (a slug of another org). */
15
17
  export async function main(argv, io = processIo()) {
16
18
  const [verb, ...rest] = argv;
17
19
  try {
@@ -21,7 +23,7 @@ export async function main(argv, io = processIo()) {
21
23
  return await prompt(rest, io);
22
24
  }
23
25
  catch (failed) {
24
- if (!(failed instanceof CannotServe) && !(failed instanceof DeclarationRefused) && !isAFlag(failed))
26
+ if (!(failed instanceof CannotServe) && !(failed instanceof DeclarationRefused) && !(failed instanceof Refused) && !isAFlag(failed))
25
27
  throw failed;
26
28
  io.err.write(`${failed.message}\n`);
27
29
  return 2;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAE/G,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAW,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,KAAK,GAAG;;;;uGAIyF,CAAC;AAExG,6EAA6E;AAC7E,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAc,EAAE,EAAE,GAAO,SAAS,EAAE;IAC7D,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC;QACH,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,YAAY,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,MAAM,MAAM,CAAC;QAClH,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;QACpC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;IAC3B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,OAAO,CAAC,MAAe;IAC9B,MAAM,IAAI,GAAI,MAAgC,CAAC,IAAI,CAAC;IACpD,OAAO,MAAM,YAAY,KAAK,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACnG,CAAC;AAED,kFAAkF;AAClF,SAAS,OAAO;IACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,CAAC;QACH,OAAO,OAAO,IAAI,CAAC,GAAG,KAAK,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,OAAO,EAAE;IAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/serve/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAE/G,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAW,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,KAAK,GAAG;;;;uGAIyF,CAAC;AAExG;kGACkG;AAClG,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAc,EAAE,EAAE,GAAO,SAAS,EAAE;IAC7D,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC;QACH,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,YAAY,kBAAkB,CAAC,IAAI,CAAC,CAAC,MAAM,YAAY,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,MAAM,MAAM,CAAC;QAClJ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;QACpC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;IAC3B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,OAAO,CAAC,MAAe;IAC9B,MAAM,IAAI,GAAI,MAAgC,CAAC,IAAI,CAAC;IACpD,OAAO,MAAM,YAAY,KAAK,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACnG,CAAC;AAED,kFAAkF;AAClF,SAAS,OAAO;IACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,CAAC;QACH,OAAO,OAAO,IAAI,CAAC,GAAG,KAAK,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,OAAO,EAAE;IAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pinecall/agents",
3
- "version": "0.9.20",
3
+ "version": "0.9.22",
4
4
  "description": "Write an agent as a class: its fields are the state, its @tool methods are the model's verbs, and its docstrings are the prompt. The pinecall CLI serves it",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Pinecall <hello@pinecall.io>",