cognesy/instructor-dynamic

Lightweight dynamic structure record and schema builder for Instructor

Maintainers

Package info

github.com/cognesy/instructor-dynamic

Homepage

Issues

pkg:composer/cognesy/instructor-dynamic

Statistics

Installs: 5

Dependents: 2

Suggesters: 0

Stars: 0

v2.0.0 2026-03-12 23:32 UTC

README

Lightweight runtime structures for schema-driven inputs and outputs.

use Cognesy\Dynamic\Structure;
use Cognesy\Schema\SchemaBuilder;

$schema = SchemaBuilder::define('search_args')
    ->string('query')
    ->int('limit', required: false)
    ->schema();

$args = Structure::fromSchema($schema, ['query' => 'laravel']);

$updated = $args->set('limit', 10);

$updated->validate()->isValid(); // true
$updated->toArray();             // ['query' => 'laravel', 'limit' => 10]

Use this package when you need:

  • a small immutable runtime record (Structure)
  • schema-driven structures from callables/classes (StructureFactory)

Schema authoring lives in Cognesy\Schema (SchemaBuilder, SchemaFactory, CallableSchemaFactory).

See CHEATSHEET.md for API details.