lettactl 0.8.0 → 0.8.2

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
@@ -4,10 +4,13 @@
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
5
  [![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=flat&logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
6
6
 
7
+ ![LettaCTL](assets/main.png)
8
+
7
9
  > **Need help?** Join the [Letta Discord](https://discord.com/invite/letta) for support and discussions.
8
10
 
9
11
  A kubectl-style CLI for managing stateful Letta AI agent fleets with declarative configuration. Think "Docker Compose" but for AI agents - define your entire agent setup in YAML and deploy with one command.
10
12
 
13
+ ![lettactl demo](assets/lettactl_demo.gif)
11
14
  ## Two Ways to Use LettaCtl
12
15
 
13
16
  | **CLI Tool** | **Programmatic SDK** |
@@ -923,4 +926,4 @@ lettactl health
923
926
  **Validate config:**
924
927
  ```bash
925
928
  lettactl validate -f agents.yml
926
- ```
929
+ ```
@@ -9,5 +9,7 @@ export declare function createNotFoundError(resourceType: string, name: string):
9
9
  /**
10
10
  * Formats Letta API errors with helpful context
11
11
  */
12
- export declare function formatLettaError(message: string): string;
12
+ export declare function formatLettaError(message: string, context?: {
13
+ blockName?: string;
14
+ }): string;
13
15
  //# sourceMappingURL=error-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../src/lib/error-handler.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAClD,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAEhB,GAAG,MAAM,CAAC,KAAG,OAAO,CAAC,CAAC,CAAC,CAQtC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAE7E;AAYD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAYxD"}
1
+ {"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../src/lib/error-handler.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EAClD,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAEhB,GAAG,MAAM,CAAC,KAAG,OAAO,CAAC,CAAC,CAAC,CAQtC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAE7E;AAYD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAwB1F"}
@@ -35,7 +35,18 @@ const PROVIDER_ENV_VARS = {
35
35
  /**
36
36
  * Formats Letta API errors with helpful context
37
37
  */
38
- function formatLettaError(message) {
38
+ function formatLettaError(message, context) {
39
+ // Check for memory block character limit exceeded
40
+ const limitMatch = message.match(/Exceeds (\d+) character limit \(requested (\d+)\)/i);
41
+ if (limitMatch) {
42
+ const limit = parseInt(limitMatch[1], 10);
43
+ const actual = parseInt(limitMatch[2], 10);
44
+ const blockInfo = context?.blockName ? `Memory block '${context.blockName}'` : 'Memory block';
45
+ return `${blockInfo} exceeds character limit\n` +
46
+ ` Limit: ${limit.toLocaleString()} characters\n` +
47
+ ` Actual: ${actual.toLocaleString()} characters\n` +
48
+ ` Hint: Increase the 'limit' field in your YAML or reduce content size`;
49
+ }
39
50
  // Check for provider not supported error
40
51
  const providerMatch = message.match(/Provider (\w+) is not supported/i);
41
52
  if (providerMatch) {
@@ -1 +1 @@
1
- {"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../src/lib/error-handler.ts"],"names":[],"mappings":";;AAGA,8CAYC;AAKD,kDAEC;AAeD,4CAYC;AAjDD;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,WAAmB,EACnB,EAA8B;IAE9B,OAAO,KAAK,EAAE,GAAG,IAAO,EAAc,EAAE;QACtC,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,GAAG,WAAW,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC;YAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,YAAoB,EAAE,IAAY;IACpE,OAAO,IAAI,KAAK,CAAC,GAAG,YAAY,KAAK,IAAI,aAAa,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,iBAAiB,GAA2B;IAChD,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;IAC9B,aAAa,EAAE,uBAAuB;IACtC,KAAK,EAAE,eAAe;IACtB,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,kBAAkB;CAC7B,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAe;IAC9C,yCAAyC;IACzC,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACxE,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;QAClF,OAAO,aAAa,QAAQ,6CAA6C;YACvE,gDAAgD,MAAM,8BAA8B;YACpF,uDAAuD,QAAQ,EAAE,CAAC;IACtE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../src/lib/error-handler.ts"],"names":[],"mappings":";;AAGA,8CAYC;AAKD,kDAEC;AAeD,4CAwBC;AA7DD;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,WAAmB,EACnB,EAA8B;IAE9B,OAAO,KAAK,EAAE,GAAG,IAAO,EAAc,EAAE;QACtC,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,GAAG,WAAW,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC;YAClF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,YAAoB,EAAE,IAAY;IACpE,OAAO,IAAI,KAAK,CAAC,GAAG,YAAY,KAAK,IAAI,aAAa,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,iBAAiB,GAA2B;IAChD,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;IAC9B,aAAa,EAAE,uBAAuB;IACtC,KAAK,EAAE,eAAe;IACtB,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,kBAAkB;CAC7B,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAe,EAAE,OAAgC;IAChF,kDAAkD;IAClD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvF,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,iBAAiB,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC;QAC9F,OAAO,GAAG,SAAS,4BAA4B;YAC7C,YAAY,KAAK,CAAC,cAAc,EAAE,eAAe;YACjD,aAAa,MAAM,CAAC,cAAc,EAAE,eAAe;YACnD,wEAAwE,CAAC;IAC7E,CAAC;IAED,yCAAyC;IACzC,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACxE,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;QAClF,OAAO,aAAa,QAAQ,6CAA6C;YACvE,gDAAgD,MAAM,8BAA8B;YACpF,uDAAuD,QAAQ,EAAE,CAAC;IACtE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lettactl",
3
- "version": "0.8.0",
3
+ "version": "0.8.2",
4
4
  "description": "kubectl-style CLI for managing Letta AI agent fleets",
5
5
  "main": "dist/sdk.js",
6
6
  "exports": {