@bendyline/gezel
v1.2.7
Published
Gezel core: shared types, Zod schemas, path helpers, and the gezel.md parser used across Gezel.
Downloads
1,630
Maintainers
Readme
@bendyline/gezel
Core types, Zod schemas, path helpers and the gezel.md parser shared by
every part of Gezel.
This package is the single source of truth for Gezel's wire types. Both the
service and the web UI import it. Its runtime dependencies are few: Zod,
yaml, @xmldom/xmldom (XML parsing), and @bendyline/gezk (the knowledge
catalog format), plus Node built-ins in the Node-only subpaths. Bundlers that
resolve the browser condition get a main entry with no Node dependencies.
npm install @bendyline/gezelEntry points
| Subpath | Contents |
|---|---|
| @bendyline/gezel | Logger, shared types, and the re-exported surface below |
| @bendyline/gezel/schemas | Every Zod schema and its inferred TypeScript type |
| @bendyline/gezel/paths | gezelPaths() and every path helper for ~/.gezel/ |
| @bendyline/gezel/markdown | The gezel.md frontmatter + sections parser |
| @bendyline/gezel/native | Native binary discovery and platform keys |
| @bendyline/gezel/checks | Gate-check primitives used by craftbook scripts |
| @bendyline/gezel/runtime | The browser-safe product runtime (gezels, projects, sessions, scripts) over host-supplied storage, used where no Gezel service runs, such as the phone app |
| @bendyline/gezel/local-loop | The turn loop for on-device models: tool-call recovery, turn policy, and repeat and failure tracking |
| @bendyline/gezel/poppetje | The poppetje character schema, its catalogs, and seeding from a gezel id |
| @bendyline/gezel/svg | SVG sanitizing |
| @bendyline/gezel/kokoro | The Kokoro text-to-speech frontend: text normalization, pronunciation dictionaries, and letter-to-sound rules |
| @bendyline/gezel/speech-models | Node only. The pinned speech-model catalog (Whisper, Kokoro) and SpeechAssetStore, verified downloads shared between apps |
| @bendyline/gezel/remote | The client side of serving models between paired devices |
| @bendyline/gezel/app-models | Zod schemas for the model list apps read from Gezel |
| @bendyline/gezel/eval | The contract of Gezel's benchmark runner: jobs, trials, progress events, and scorecard rules |
| @bendyline/gezel/mobile-providers | Zod schemas for on-device mobile inference: providers, model sources, downloads, inventory, and generation budgets |
| @bendyline/gezel/queue-status | Zod schemas for GET /api/queues: provider queues, session send queues, task handoffs, and the engine cache and pool views |
| @bendyline/gezel/mobile-inference | createNativeInference(), which adapts a native mobile inference plugin to the portable streaming, tool-calling, and cancellation contract |
import { GezelFrontmatterSchema } from '@bendyline/gezel/schemas';
import { gezelPaths } from '@bendyline/gezel/paths';
const paths = gezelPaths();
const gezel = GezelFrontmatterSchema.parse({ name: 'Ada', role: 'Reviewer' });
console.log(paths.gezels, gezel.name);Stability
Public API under semver. Adding a new schema field is a minor; removing or narrowing one is a major.
MIT © Bendyline
