solfaces 2.1.2 → 2.3.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.
Files changed (72) hide show
  1. package/README.md +61 -35
  2. package/SKILL.md +4 -5
  3. package/dist/agent/index.cjs +14 -15
  4. package/dist/agent/index.js +4 -5
  5. package/dist/agent/mcp-server.cjs +333 -339
  6. package/dist/{chunk-5DT27HMT.js → chunk-2KW35VRI.js} +3 -3
  7. package/dist/{chunk-5DT27HMT.js.map → chunk-2KW35VRI.js.map} +1 -1
  8. package/dist/{chunk-4YFZ4W2Y.cjs → chunk-BI3GHRKQ.cjs} +22 -23
  9. package/dist/chunk-BI3GHRKQ.cjs.map +1 -0
  10. package/dist/{chunk-DRUSCLEF.js → chunk-MYUSB4LA.js} +28 -8
  11. package/dist/chunk-MYUSB4LA.js.map +1 -0
  12. package/dist/{chunk-3CE7Q44S.js → chunk-N5GDLCCL.js} +324 -110
  13. package/dist/chunk-N5GDLCCL.js.map +1 -0
  14. package/dist/{chunk-66PSL4YO.js → chunk-O2IIBSQH.js} +9 -10
  15. package/dist/chunk-O2IIBSQH.js.map +1 -0
  16. package/dist/{chunk-6QRDULAO.cjs → chunk-PCSRDAWQ.cjs} +28 -7
  17. package/dist/chunk-PCSRDAWQ.cjs.map +1 -0
  18. package/dist/{chunk-WIXGHS77.cjs → chunk-T7HEUW2O.cjs} +6 -6
  19. package/dist/{chunk-WIXGHS77.cjs.map → chunk-T7HEUW2O.cjs.map} +1 -1
  20. package/dist/{chunk-N5DDJ3WQ.js → chunk-UTT764K6.js} +10 -9
  21. package/dist/{chunk-N5DDJ3WQ.js.map → chunk-UTT764K6.js.map} +1 -1
  22. package/dist/{chunk-F54WHRCE.cjs → chunk-W2U6ITMR.cjs} +328 -110
  23. package/dist/chunk-W2U6ITMR.cjs.map +1 -0
  24. package/dist/{chunk-XXJJH56O.cjs → chunk-YGD7EQEX.cjs} +10 -9
  25. package/dist/{chunk-XXJJH56O.cjs.map → chunk-YGD7EQEX.cjs.map} +1 -1
  26. package/dist/core/index.cjs +43 -44
  27. package/dist/core/index.d.cts +39 -5
  28. package/dist/core/index.d.ts +39 -5
  29. package/dist/core/index.js +2 -3
  30. package/dist/index.cjs +61 -58
  31. package/dist/index.d.cts +3 -3
  32. package/dist/index.d.ts +3 -3
  33. package/dist/index.js +5 -6
  34. package/dist/names/index.cjs +9 -9
  35. package/dist/names/index.d.cts +4 -2
  36. package/dist/names/index.d.ts +4 -2
  37. package/dist/names/index.js +1 -1
  38. package/dist/react/index.cjs +112 -125
  39. package/dist/react/index.cjs.map +1 -1
  40. package/dist/react/index.d.cts +23 -1
  41. package/dist/react/index.d.ts +23 -1
  42. package/dist/react/index.js +96 -109
  43. package/dist/react/index.js.map +1 -1
  44. package/dist/solfaces.cdn.global.js +2 -2
  45. package/dist/solfaces.cdn.global.js.map +1 -1
  46. package/dist/themes/index.cjs +18 -14
  47. package/dist/themes/index.d.cts +30 -4
  48. package/dist/themes/index.d.ts +30 -4
  49. package/dist/themes/index.js +1 -1
  50. package/dist/traits-D4tbtZIr.d.cts +259 -0
  51. package/dist/traits-D4tbtZIr.d.ts +259 -0
  52. package/dist/vanilla/index.cjs +6 -7
  53. package/dist/vanilla/index.cjs.map +1 -1
  54. package/dist/vanilla/index.d.cts +1 -1
  55. package/dist/vanilla/index.d.ts +1 -1
  56. package/dist/vanilla/index.js +2 -3
  57. package/dist/vanilla/index.js.map +1 -1
  58. package/package.json +4 -1
  59. package/python/solfaces.py +108 -122
  60. package/reference/integrations.md +1 -1
  61. package/dist/chunk-3CE7Q44S.js.map +0 -1
  62. package/dist/chunk-4YFZ4W2Y.cjs.map +0 -1
  63. package/dist/chunk-66PSL4YO.js.map +0 -1
  64. package/dist/chunk-6QRDULAO.cjs.map +0 -1
  65. package/dist/chunk-CKHLRORB.js +0 -239
  66. package/dist/chunk-CKHLRORB.js.map +0 -1
  67. package/dist/chunk-DRUSCLEF.js.map +0 -1
  68. package/dist/chunk-F54WHRCE.cjs.map +0 -1
  69. package/dist/chunk-TYTBYDQU.cjs +0 -244
  70. package/dist/chunk-TYTBYDQU.cjs.map +0 -1
  71. package/dist/traits-sfe7rM9C.d.cts +0 -106
  72. package/dist/traits-sfe7rM9C.d.ts +0 -106
package/README.md CHANGED
@@ -21,10 +21,10 @@ Built for dApps, AI agents, social features, leaderboards, and anywhere a wallet
21
21
 
22
22
  ## Why SolFaces?
23
23
 
24
- - **Deterministic** — Same wallet always produces the same avatar. No database needed.
24
+ - **Deterministic** — Same wallet address always produces a unique avatar and name. No database needed.
25
25
  - **Zero dependencies** — Core engine has no runtime dependencies.
26
- - **~2.56B unique faces** — 11 traits with expanded ranges = massive combination space.
27
- - **SolNames** — Every wallet gets a deterministic, human-friendly name derived via SHA-256 (e.g. "SunnyIcon"). ~1M display names, ~65.5B unique tags.
26
+ - **~53M unique avatars** — 10 visual traits deterministically sampled = massive combination space.
27
+ - **SolNames** — Every wallet gets a deterministic, human-friendly name derived via SHA-256 (e.g. "Sunny Icon"). ~1M display names, ~65.5B unique tags.
28
28
  - **11 built-in themes** — Default, Dark, Light, Mono, Flat, Transparent, plus 3 Pixel and 2 Glass themes (React).
29
29
  - **Gradient-rich rendering** — Skin-luminance-driven colors, specular highlights, cheek blush, gradient hair, glow overlays.
30
30
  - **Works everywhere** — React, vanilla JS, Node, Python, CDN script tag, edge functions.
@@ -123,13 +123,13 @@ mountSolFace("#avatar", "7xKXqR...", { size: 48 });
123
123
  import { deriveName, deriveIdentity } from "solfaces";
124
124
 
125
125
  deriveName("7xKXqR...");
126
- // → "SunnyIcon" (deterministic, SHA-256 derived)
126
+ // → "Sunny Icon" (deterministic, SHA-256 derived)
127
127
 
128
128
  deriveName("7xKXqR...", "tag");
129
- // → "SunnyIcon#2f95" (unique identifier)
129
+ // → "Sunny Icon#2f95" (unique identifier)
130
130
 
131
131
  deriveName("7xKXqR...", "full");
132
- // → "SunnyIcon-InfiniteOre" (formal contexts)
132
+ // → "Sunny Icon-Infinite Ore" (formal contexts)
133
133
 
134
134
  const id = deriveIdentity("7xKXqR...");
135
135
  // → { short, name, tag, full, adjective, noun, hash, discriminator }
@@ -170,8 +170,8 @@ SHA-256("solnames-v1:" + wallet) → 32 bytes
170
170
  ├─→ Bytes 0-3: seed PRNG → adjective + noun
171
171
  └─→ Bytes 8-9: hex discriminator → "2f95"
172
172
 
173
- Display: WavingMistral
174
- Tag: WavingMistral#2f95
173
+ Display: Waving Mistral
174
+ Tag: Waving Mistral#2f95
175
175
  ```
176
176
 
177
177
  ### Name Formats
@@ -179,9 +179,9 @@ Tag: WavingMistral#2f95
179
179
  | Format | Example | Unique Names | Use Case |
180
180
  |---------|------------------------------|-------------|-----------------------------|
181
181
  | short | "Waving" | 1,000 | Tight UIs, badges |
182
- | display | "WavingMistral" | ~1,000,000 | Default — profiles, feeds |
183
- | tag | "WavingMistral#2f95" | ~65.5B | Unique identifier |
184
- | full | "WavingMistral-InfiniteOre" | ~1T | Formal contexts |
182
+ | display | "Waving Mistral" | ~1,000,000 | Default — profiles, feeds |
183
+ | tag | "Waving Mistral#2f95" | ~65.5B | Unique identifier |
184
+ | full | "Waving Mistral-Infinite Ore" | ~1T | Formal contexts |
185
185
 
186
186
  ### Usage
187
187
 
@@ -189,10 +189,10 @@ Tag: WavingMistral#2f95
189
189
  import { deriveName, deriveIdentity } from "solfaces";
190
190
  // or: import { deriveName } from "solfaces/names";
191
191
 
192
- deriveName("7xKXqR..."); // → "SunnyIcon" (display format)
192
+ deriveName("7xKXqR..."); // → "Sunny Icon" (display format)
193
193
  deriveName("7xKXqR...", "short"); // → "Sunny"
194
- deriveName("7xKXqR...", "tag"); // → "SunnyIcon#2f95"
195
- deriveName("7xKXqR...", "full"); // → "SunnyIcon-InfiniteOre"
194
+ deriveName("7xKXqR...", "tag"); // → "Sunny Icon#2f95"
195
+ deriveName("7xKXqR...", "full"); // → "Sunny Icon-Infinite Ore"
196
196
 
197
197
  const id = deriveIdentity("7xKXqR...");
198
198
  // → { short, name, tag, full, adjective, noun, hash, discriminator }
@@ -224,9 +224,9 @@ import { SolFace } from "solfaces/react";
224
224
  ```ts
225
225
  import { isValidSolName, parseSolName } from "solfaces/names";
226
226
 
227
- isValidSolName("SunnyIcon"); // true
228
- isValidSolName("SunnyIcon#2f95"); // true
229
- parseSolName("SunnyIcon#2f95");
227
+ isValidSolName("Sunny Icon"); // true
228
+ isValidSolName("Sunny Icon#2f95"); // true
229
+ parseSolName("Sunny Icon#2f95");
230
230
  // → { adjective: "Sunny", noun: "Icon", discriminator: "2f95" }
231
231
  ```
232
232
 
@@ -243,6 +243,7 @@ const opts: DeriveOptions = {
243
243
  nouns: ["Tiger", "Eagle", "Bear", "Wolf", "Hawk"],
244
244
  domain: "my-app-v1", // Custom domain prefix (default: "solnames-v1")
245
245
  blockedCombos: new Set(["BoldBear"]), // Custom blocked pairs
246
+ separator: "-", // Custom separator (default: " ")
246
247
  };
247
248
 
248
249
  deriveName("7xKXqR...", "display", opts); // Uses custom word lists
@@ -251,6 +252,24 @@ deriveIdentity("7xKXqR...", opts); // Full identity with custom lists
251
252
 
252
253
  All fields are optional — omit any to use the built-in defaults.
253
254
 
255
+ ### Custom Separator
256
+
257
+ Names default to space-separated (`"Fierce Sortie"`). Customize with the `separator` option:
258
+
259
+ ```ts
260
+ deriveName("7xKXqR..."); // "Fierce Sortie" (default)
261
+ deriveName("7xKXqR...", "display", { separator: "" }); // "FierceSortie" (legacy PascalCase)
262
+ deriveName("7xKXqR...", "display", { separator: "-" }); // "Fierce-Sortie" (hyphenated)
263
+ deriveName("7xKXqR...", "display", { separator: "_" }); // "Fierce_Sortie" (underscored)
264
+ ```
265
+
266
+ The separator applies to all formats — display, tag, and full:
267
+
268
+ ```ts
269
+ deriveName("7xKXqR...", "tag", { separator: "-" }); // "Fierce-Sortie#be71"
270
+ deriveName("7xKXqR...", "full", { separator: "-" }); // "Fierce-Sortie-Cherry-Pegasus"
271
+ ```
272
+
254
273
  - **1000 adjectives + 1000 nouns** — curated positive/neutral PascalCase words (customizable via `DeriveOptions`)
255
274
  - **Same name everywhere** — TypeScript, Python, CDN, and server all produce identical output
256
275
  - **Blocked combinations** — offensive adjective+noun pairs are automatically skipped (customizable via `DeriveOptions`)
@@ -318,7 +337,13 @@ import { glassTheme, glassDarkTheme } from "solfaces/themes";
318
337
 
319
338
  ## AI Agent Identity
320
339
 
321
- AI trading bots, autonomous agents, and on-chain programs are becoming users — they need a visual identity, a personality, and a recognizable presence. SolFaces gives every agent a deterministic face tied to their wallet, plus natural language self-descriptions they can use in system prompts to know and reference what they look like.
340
+ Any Solana trading bot or autonomous agent just needs its wallet address and it instantly gets:
341
+
342
+ - **A face** — unique, deterministic SVG avatar (~53M unique combinations)
343
+ - **A name** — `"Fierce Sortie"`, `"Waving Mistral"`, etc. — like a real first/last name
344
+ - **Self-awareness** — a first-person description it can use in its system prompt to know what it looks like and introduce itself
345
+
346
+ No registration, no storage, no API calls. Just math from the wallet address. Every bot on Solana can have a recognizable identity that's consistent everywhere — on-chain, in Discord, Telegram, dashboards, leaderboards.
322
347
 
323
348
  ### System Prompt Integration
324
349
 
@@ -328,8 +353,8 @@ import { agentAppearancePrompt } from "solfaces";
328
353
  const appearance = agentAppearancePrompt("7xKXqR...", "Atlas");
329
354
  // → "My visual identity is a SolFace avatar (ID: a3f2b1c0) derived from
330
355
  // my wallet address. I'm Atlas. I have a squircle face with warm golden skin,
331
- // almond-shaped hazel eyes with gently curved eyebrows, and flowing
332
- // auburn wavy hair. I'm wearing aviator sunglasses. I have a playful grin.
356
+ // almond-shaped hazel eyes, natural eyebrows, and am bald.
357
+ // I'm wearing aviator sunglasses. I have a playful grin.
333
358
  // This appearance is deterministic — anyone who looks up my wallet will
334
359
  // see the same face."
335
360
 
@@ -629,7 +654,7 @@ const result = await handleToolCall("generate_solface_svg", {
629
654
  "mcpServers": {
630
655
  "solfaces": {
631
656
  "command": "npx",
632
- "args": ["-y", "solfaces"]
657
+ "args": ["-y", "solfaces-mcp"]
633
658
  }
634
659
  }
635
660
  }
@@ -736,7 +761,7 @@ For sites without a build step — Webflow, Notion embeds, plain HTML, WordPress
736
761
  | `traitHash(wallet)` | `string` | 8-char hex hash |
737
762
  | `resolveTheme(name?, themes?)` | `SolFaceTheme \| undefined` | Look up theme by name from a map |
738
763
  | `mergeTheme(base, overrides)` | `SolFaceTheme` | Merge two themes |
739
- | `effectiveAccessory(traits)` | `number` | Accessory index (earring suppressed for long/bob hair) |
764
+ | `effectiveAccessory(traits)` | `number` | Resolved accessory index (0–11) |
740
765
  | `renderSolFaceSVG(wallet, options?)` | `string` | Raw SVG markup |
741
766
  | `renderSolFaceDataURI(wallet, options?)` | `string` | Data URI for `<img>` tags |
742
767
  | `renderSolFaceBase64(wallet, options?)` | `string` | Base64 data URI |
@@ -843,19 +868,20 @@ Available keys: `skin`, `eyes`, `hair`, `bg`, `mouth`, `eyebrow`, `accessory`, `
843
868
 
844
869
  | Trait | Variants | Options |
845
870
  |-------|----------|---------|
846
- | Face Shape | 4 | Squircle (all — preserved for PRNG ordering) |
847
871
  | Skin Color | 10 | Porcelain, Ivory, Fair, Light, Sand, Golden, Warm, Caramel, Brown, Deep |
848
- | Eye Style | 8 | Round, Minimal, Almond, Wide, Relaxed, Joyful, Bright, Gentle |
849
- | Eye Color | 5 | Chocolate, Sky, Emerald, Hazel, Storm |
850
- | Eyebrows | 5 | Wispy, Straight, Natural, Arched, Angled |
851
- | Nose | 4 | Shadow, Button, Soft, Nostrils |
872
+ | Eye Style | 9 | Round, Minimal, Almond, Wide, Relaxed, Joyful, Bright, Gentle, Side-look |
873
+ | Eye Color | 8 | Chocolate, Sky, Emerald, Hazel, Storm, Amber, Violet, Gray |
874
+ | Eyebrows | 8 | Wispy, Straight, Natural, Arched, Angled, Worried, Bushy, Thin |
875
+ | Nose | 8 | Shadow, Button, Soft, Nostrils, Pointed, Wide, Bridge, Snub |
852
876
  | Mouth | 8 | Smile, Calm, Happy, Oh, Smirk, Grin, Flat, Pout |
853
- | Hair Style | 10 | Bald, Short, Curly, Side Sweep, Puff, Long, Bob, Buzz, Wavy, Topknot |
854
- | Hair Color | 10 | Black, Espresso, Walnut, Honey, Copper, Silver, Charcoal, Burgundy, Strawberry, Ginger |
855
- | Accessory | 10 | None, Beauty Mark, Round Glasses, Rect Glasses, Earring, Headband, Freckles, Stud Earrings, Aviators, Band-Aid |
856
- | Background | 10 | Rose, Olive, Sage, Fern, Mint, Ocean, Sky, Lavender, Orchid, Blush |
877
+ | Hair Style | 10 | Sampled for PRNG ordering; all render as bald |
878
+ | Hair Color | 10 | Sampled for PRNG ordering; used for headband color derivation |
879
+ | Accessory | 12 | None, Beauty Mark, Round Glasses, Rect Glasses, Earring, Headband, Freckles, Stud Earrings, Aviators, Band-Aid, Left Eyebrow Slit, Right Eyebrow Slit |
880
+ | Background | 12 | Rose, Olive, Sage, Fern, Mint, Ocean, Sky, Lavender, Orchid, Blush, Lilac, Seafoam |
881
+
882
+ **Unique visual combinations: ~53,084,160**
857
883
 
858
- **Total unique combinations: ~2,560,000,000**
884
+ > 10 skin × 9 eyes × 8 eye colors × 8 brows × 8 noses × 8 mouths × 12 accessories × 12 backgrounds ≈ 53M. Hair style and hair color are sampled for PRNG determinism but don't produce visible output (all render bald).
859
885
 
860
886
  Algorithm: **djb2 hash** → **mulberry32 PRNG** → sequential trait sampling. Sub-millisecond. Deterministic across JS and Python.
861
887
 
@@ -895,7 +921,7 @@ solfaces/
895
921
  │ ├── agent/
896
922
  │ │ ├── tools.ts # 6 canonical tool definitions + handlers
897
923
  │ │ ├── index.ts # Format adapters (MCP, OpenAI, Anthropic, Vercel AI)
898
- │ │ └── mcp-server.ts # Standalone MCP server (npx solfaces)
924
+ │ │ └── mcp-server.ts # Standalone MCP server (npx solfaces-mcp)
899
925
  │ ├── cdn.ts # IIFE bundle for <script> tag
900
926
  │ ├── api-templates.ts # Copy-paste route handlers
901
927
  │ └── index.ts
@@ -908,7 +934,7 @@ solfaces/
908
934
  ### Key Design Decisions
909
935
 
910
936
  - **`colors.ts` is the single source of truth** for all color math. Both `renderer.ts` and `SolFace.tsx` import from it, preventing renderer drift.
911
- - **`effectiveAccessory()`** handles earring suppression: long and bob hairstyles suppress earring accessories.
937
+ - **`effectiveAccessory()`** resolves the final accessory index (0–11) from the trait set.
912
938
  - **`_` prefix** on theme fields marks React-only features (pixel, glass). The string renderer ignores these.
913
939
  - **Detail levels** are resolved at render time: `"auto"` → full if size >= 48, simplified otherwise.
914
940
 
@@ -918,7 +944,7 @@ solfaces/
918
944
 
919
945
  v2.0.0 is a breaking release:
920
946
 
921
- - **All faces change.** Trait ranges expanded (skin 6→10, mouth 6→8, hair 8→10, accessories 6→10, bg 5→10), so every wallet generates a different face than in v1.
947
+ - **All faces change.** Trait ranges expanded (skin 6→10, mouth 6→8, hair 10, accessories 6→12, bg 5→12, eyes 8→9), so every wallet generates a different face than in v1. Hair is sampled but no longer rendered (all faces are bald).
922
948
  - **Old themes removed.** `solana`, `neon`, `jupiter`, `phantom`, `circle` themes are gone. Use `dark`, `light`, `mono`, `flat`, `transparent`, or the new `glass`/`pixel` themes.
923
949
  - **New rendering engine.** Gradient-rich rendering with skin-luminance-driven colors, ears, hair-back layers, and face overlays.
924
950
  - **New theme fields.** `flat`, `cheekEnabled`, `shadowEnabled`, `glowIntensity`, and React-only `_glass*`/`_pixel*` fields.
package/SKILL.md CHANGED
@@ -5,7 +5,7 @@ description: Generates deterministic avatars and names for Solana wallet address
5
5
 
6
6
  # SolFaces
7
7
 
8
- Deterministic avatar and name generator for Solana wallets. Every wallet address produces a unique, consistent face and name. ~2.56B unique faces, ~1M display names (~65.5B unique tags). Zero dependencies, sub-millisecond, works everywhere.
8
+ Deterministic avatar and name generator for Solana wallets. Every wallet address produces a unique, consistent face and name. ~53M unique avatars, ~1M display names (~65.5B unique tags). Zero dependencies, sub-millisecond, works everywhere.
9
9
 
10
10
  ---
11
11
 
@@ -130,8 +130,8 @@ const svg = renderSolFaceSVG("7xKXtg...", { size: 256 });
130
130
  ### Name derivation
131
131
  ```ts
132
132
  import { deriveName, deriveIdentity } from "solfaces";
133
- deriveName("7xKXtg..."); // "SunnyIcon"
134
- deriveName("7xKXtg...", "tag"); // "SunnyIcon#2f95"
133
+ deriveName("7xKXtg..."); // "Sunny Icon"
134
+ deriveName("7xKXtg...", "tag"); // "Sunny Icon#2f95"
135
135
  const id = deriveIdentity("7xKXtg..."); // full identity object
136
136
  ```
137
137
 
@@ -177,9 +177,8 @@ For comprehensive documentation on specific topics:
177
177
  ## Key Facts
178
178
 
179
179
  - **Deterministic**: Same wallet = same face + same name. djb2 + mulberry32 PRNG (traits), SHA-256 + mulberry32 PRNG (names).
180
- - **11 traits**: Face shape (4), skin (10), eye style (8), eye color (5), eyebrows (5), nose (4), mouth (8), hair style (10), hair color (10), accessory (10), background (10) = ~2.56B unique faces.
180
+ - **10 visual traits**: Skin (10), eye style (9), eye color (8), eyebrows (8), nose (8), mouth (8), hair style (10), hair color (10), accessory (12), background (12) = ~53M unique avatars. Hair style and color are sampled for PRNG ordering but all render as bald. (faceShape field exists for PRNG ordering but all faces render as squircle.)
181
181
  - **SolNames**: 1000 adjectives + 1000 nouns, SHA-256 derived. Formats: short, display (~1M), tag (~65.5B), full (~1T). Custom word lists supported via `DeriveOptions`.
182
- - **Earring suppression**: Long and bob hairstyles suppress earring accessories.
183
182
  - **Cross-language parity**: JS and Python produce identical output.
184
183
  - **Zero dependencies**: Core engine has no runtime deps.
185
184
  - **SVG viewBox**: All avatars use 64x64 viewBox, scaled by `size`.
@@ -1,52 +1,51 @@
1
1
  'use strict';
2
2
 
3
- var chunk4YFZ4W2Y_cjs = require('../chunk-4YFZ4W2Y.cjs');
4
- require('../chunk-TYTBYDQU.cjs');
5
- require('../chunk-F54WHRCE.cjs');
6
- require('../chunk-6QRDULAO.cjs');
7
- require('../chunk-XXJJH56O.cjs');
3
+ var chunkBI3GHRKQ_cjs = require('../chunk-BI3GHRKQ.cjs');
4
+ require('../chunk-W2U6ITMR.cjs');
5
+ require('../chunk-PCSRDAWQ.cjs');
6
+ require('../chunk-YGD7EQEX.cjs');
8
7
 
9
8
 
10
9
 
11
10
  Object.defineProperty(exports, "SOLFACE_TOOLS", {
12
11
  enumerable: true,
13
- get: function () { return chunk4YFZ4W2Y_cjs.SOLFACE_TOOLS; }
12
+ get: function () { return chunkBI3GHRKQ_cjs.SOLFACE_TOOLS; }
14
13
  });
15
14
  Object.defineProperty(exports, "allToolsAnthropic", {
16
15
  enumerable: true,
17
- get: function () { return chunk4YFZ4W2Y_cjs.allToolsAnthropic; }
16
+ get: function () { return chunkBI3GHRKQ_cjs.allToolsAnthropic; }
18
17
  });
19
18
  Object.defineProperty(exports, "allToolsMCP", {
20
19
  enumerable: true,
21
- get: function () { return chunk4YFZ4W2Y_cjs.allToolsMCP; }
20
+ get: function () { return chunkBI3GHRKQ_cjs.allToolsMCP; }
22
21
  });
23
22
  Object.defineProperty(exports, "allToolsOpenAI", {
24
23
  enumerable: true,
25
- get: function () { return chunk4YFZ4W2Y_cjs.allToolsOpenAI; }
24
+ get: function () { return chunkBI3GHRKQ_cjs.allToolsOpenAI; }
26
25
  });
27
26
  Object.defineProperty(exports, "allToolsVercelAI", {
28
27
  enumerable: true,
29
- get: function () { return chunk4YFZ4W2Y_cjs.allToolsVercelAI; }
28
+ get: function () { return chunkBI3GHRKQ_cjs.allToolsVercelAI; }
30
29
  });
31
30
  Object.defineProperty(exports, "handleToolCall", {
32
31
  enumerable: true,
33
- get: function () { return chunk4YFZ4W2Y_cjs.handleToolCall; }
32
+ get: function () { return chunkBI3GHRKQ_cjs.handleToolCall; }
34
33
  });
35
34
  Object.defineProperty(exports, "toAnthropic", {
36
35
  enumerable: true,
37
- get: function () { return chunk4YFZ4W2Y_cjs.toAnthropic; }
36
+ get: function () { return chunkBI3GHRKQ_cjs.toAnthropic; }
38
37
  });
39
38
  Object.defineProperty(exports, "toMCP", {
40
39
  enumerable: true,
41
- get: function () { return chunk4YFZ4W2Y_cjs.toMCP; }
40
+ get: function () { return chunkBI3GHRKQ_cjs.toMCP; }
42
41
  });
43
42
  Object.defineProperty(exports, "toOpenAI", {
44
43
  enumerable: true,
45
- get: function () { return chunk4YFZ4W2Y_cjs.toOpenAI; }
44
+ get: function () { return chunkBI3GHRKQ_cjs.toOpenAI; }
46
45
  });
47
46
  Object.defineProperty(exports, "toVercelAI", {
48
47
  enumerable: true,
49
- get: function () { return chunk4YFZ4W2Y_cjs.toVercelAI; }
48
+ get: function () { return chunkBI3GHRKQ_cjs.toVercelAI; }
50
49
  });
51
50
  //# sourceMappingURL=index.cjs.map
52
51
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,6 @@
1
- export { SOLFACE_TOOLS, allToolsAnthropic, allToolsMCP, allToolsOpenAI, allToolsVercelAI, handleToolCall, toAnthropic, toMCP, toOpenAI, toVercelAI } from '../chunk-66PSL4YO.js';
2
- import '../chunk-CKHLRORB.js';
3
- import '../chunk-3CE7Q44S.js';
4
- import '../chunk-DRUSCLEF.js';
5
- import '../chunk-N5DDJ3WQ.js';
1
+ export { SOLFACE_TOOLS, allToolsAnthropic, allToolsMCP, allToolsOpenAI, allToolsVercelAI, handleToolCall, toAnthropic, toMCP, toOpenAI, toVercelAI } from '../chunk-O2IIBSQH.js';
2
+ import '../chunk-N5GDLCCL.js';
3
+ import '../chunk-MYUSB4LA.js';
4
+ import '../chunk-UTT764K6.js';
6
5
  //# sourceMappingURL=index.js.map
7
6
  //# sourceMappingURL=index.js.map