-
# Promptkit v0.12.0
released this
2026-10-03 01:27:30 +00:00 | 165 commits to main since this releaseThis release replaces Promptkit's configuration loader with ConfigKit and
migrates maintained catalogs to keyed/v3assets. It intentionally changes
the public construction API and configuration format.Summary
Backends, profiles, and versioned prompts now share one layered configuration
snapshot built whenNewEngineis called. ConfigKit supplies composition,
inheritance, presence, and source history; Promptkit validates the final
effective definitions and captures prompt content and templates. Consumers can
inspect the captured configuration explicitly without triggering a reload.Compatibility
This is an incompatible minor release under Promptkit's pre-1.0
versioning policy. The
former source options,Config.PromptDir,Config.ProfileDir, and the old
profile/backend convenience values have been removed. Configuration documents
now use literal keys beneathbackends,profiles, andprompts; embedded
id/versionfields andbase_profileare no longer accepted. Source groups
compose strictly within a group and overlay in the supplied order. Explicit
zero, false, empty, and null values can now differ from omission; maps overlay
recursively, and an empty map does not clear an inherited map.All final definitions, including unused ones, are validated during engine
construction. Prompt text and static templates are captured then; an existing
engine does not automatically reload changed configuration or message files.
Request artifacts, schemas, credentials, and provider operations retain their
runtime boundaries. See the format reference for the current
configuration contract and the consumer migration guide
for API and source-selection changes.Maintained OpenRouter and Rakestrawhome catalogs are selected as
/v3modules,
both atv3.20260930.0. Their asset format changed; consumers that read catalog
assets directly must adopt the keyed format. The maintained Promptkit profile
IDs remain available under the catalog compatibility policy,
which does not promise fixed profile data.Upgrade
go get gitea.maximumdirect.net/eric/promptkit@v0.12.0Replace removed source and backend registration options with
Config.Sources, explicitly ordered ConfigKit underlays, and optionally a
highest-priority main input. UseDirectoryInputsorFilesystemInputsfor
selected directories,ProfileSourceandBackendSourcefor typed
programmatic values, orconfigkit.Mappingfor explicit null and combined
documents. Move profilebase_profiletoextendsand embedded identities to
mapping keys. Review zero/false/null values and any assumptions that replacing
a model or backend discards unrelated explicit settings. Rebuild the engine
when definitions or referenced message files change. The
consumer guide
provides the migration details and maintained examples.Changes
- Add ConfigKit v0.5.0 as the configuration boundary and consume released
OpenRouter and Rakestrawhome/v3catalog modules. - Add keyed backend, profile, and prompt definitions with final-value domain
validation, explicit presence/null behavior, and source-relative content
capture. - Add
ConfigurationSources, directory discovery helpers, programmatic
profile/backend source builders, and read-only configuration inspection. - Preserve execution workflows while rendering captured templates, applying
backend defaults after inheritance, and honoring explicit suppression of
provider settings. - Remove superseded loader, catalog preflight, and inheritance machinery;
update examples, format guidance, and internal documentation.
COPYRIGHT | LICENSE | ATTRIBUTION
Validated commit:
4b8169da28Downloads
- Add ConfigKit v0.5.0 as the configuration boundary and consume released