Releases: RubikSQL/AgentHeaven
v0.9.2
v0.9.2 (2025-12-23)
-
Feature: A preliminary version for
AgentSpecis added (temporarily) for fast prototyping of agents with tools, to be standardized in the following releases -
Feature:
LLMnow supportsstructuredfor structured outputs (requires backend to support streaming for now) anddelta_messages. Meanwhile,messagesis now compatible with streaming as well -
Feature:
LLMinference with tool use now supports kwargsrepair_tool_calls=True(default behavior), which automatically fixes malformed tool call arguments based on the providedToolSpecs' arguments -
Feature:
auto*now supports ExperienceUKFT, KLStore, KLEngine, and KLBase as inputs, with newsearch_args,ExampleType, andExampleSourceinterfaces -
Feature:
ahvn configCLI now supports--cwd/-cto specify which working directory to use for local config operations -
Feature:
ahvn config showCLI now supports adding optional positional argument to specify a sub-key to show only that part of the config -
Feature:
BaseUKFnow supportsset,unset,setdefbesidesget -
Feature:
BaseUKF.clonenow supportsupd_<field>for updating iterable fields instead of overwriting -
Enhancement:
Databasenow supportspoolargs for robsut connection management -
Feature:
DAACKLEnginenow supports custom file (for storing metadata and synonyms) encoding viaencodingparameter -
Feature:
HEAVEN_KB.get_promptnow supports specifying additional search facets via**kwargsto disambiguate prompts with the same name -
Feature:
delta_messagesandgather_streamutilities added to facilitate streaming LLM queries -
Feature:
ahvn pj <path>CLI command added to view thehpjpath -
Feature:
ORMUKFAdaptornow supportsmain_table_name(),dims_table_name(dim), andtable_names()methods -
Feature: config now adds
llm.litellm_debugoption to control LiteLLM debug mode separately (only effective whencore.debugis alsoTrue) -
Deprecate:
raise_mismatchwithmode='ignore'now returns the original value directly, whilemode='match'returns the suggestion -
Deprecate:
LLMChunkis no longer exposed (renamed to_LLMChunk) as it is an internal state for implementingLLM.stream -
Deprecate: renamed
Cache.remove(func, **kwargs)->Cache.unset(func, **kwargs)to correspond toCache.set, with the newCache.remove(entry)corresponding toCache.add -
Deprecate:
auto*prompt composers' defaults now come before user-provided descriptions/instructions instead of after -
Deprecate: changed
dset/dunsetbehavior whenkey_path=None -
Fix: default encoding now correctly reads from
core.encodinginHEAVEN_CMinstead ofencoding -
Fix: fixed database adaptor index creation when some fields are aliased, expecting tremendous speedup when using
FacetKLEngineon large datasets -
Fix: milvus vdb
aliasconnection support -
Fix: improved system prompts translation
-
Fix: system prompts now correctly handle
input_schemaandoutput_schema -
Fix: fixed
copy_direrrors whenmode='skip' -
Fix:
parse_mdnow correctly handles incomplete streaming and nested markdown structures
v0.9.2.dev1
v0.9.2.dev1 (2025-12-09)
-
Feature: new
ScanKLEngine, which brute-force scans all entries in the KLStore for search, useful for small datasets and testing -
Feature:
HEAVEN_KBwhich stores built-in ahvn ukfs, as a first attempt towards AgentHeaven's self-containment -
Feature:
dmerge(used in ConfigManager) now supports overwriting nested dictionaries with the special key_OVERWRITE_ -
Feature: Progress bar utils is added to AgentHeaven utils for a unified callback progress reporting system
-
Feature:
system/prompt.jinjanow supportstoolspecsto render tool specifications in prompts with instruction on text-based function calling -
Feature:
autocode/autofunc/autotaskprompts are converted toPromptUKFT, which now supportsformatandbindand have altered composers -
Feature:
BaseUKFnow supportsgetto retrieve nested values fromcontent_resourcesusing dot-separated key paths -
Fix: LLM tool calling now properly parses
index(missing for backends likevllm) for merging tool call deltas -
Feature:
ToolSpecnow supportsto_functionto convert aToolSpecback to a callable function with proper signature -
Feature:
funcwraputility added to wrap a function with the signature and metadata of another function -
Feature:
KLBasenow supportsdefault_enginewhich is used when no engine is specified insearch -
Deprecate:
KLBasenow interprets CRUD tostoragesandenginesseparately; if both are None, all storages and engines are used; if one is None, it is set to empty list if the other is non-empty, otherwise all. -
Deprecate:
klengine.batch_size->klengine.sync_batch_sizefor sync operations to clarify usage -
Fix: fixed
auto*creating a different function signature than expected whenbindis used, causingCache.memoizeto fail -
Fix:
system/prompt.jinjanow guarantees two blank lines between sections, even when some sections are omitted -
Fix: updated default LLM presets
-
Fix:
ahvn chatandahvn sessionnow default to appropriate presets (chat) if none specified
v0.9.2.dev0
v0.9.2.dev0 (2025-12-02)
-
Feature:
utils.exts.auto*functions now use a dynamic examples list, enabling cache-based imitation. -
Feature:
KLEnginenow stores search args and returns inr['kl'].metadata['search']for each search result -
Feature:
config copynow supports copying all configs with user confirmation by passing no keyword arguments -
Deprecate:
ToolSpec.jsonschemadisabled strict mode to be compatible with optional parameters -
Fix:
BaseKLEngine.searchnow respects the_searchdefaults wheninclude=None -
Fix:
DAACKLEnginenow defaults to return["id", "kl", "strs"], and correctly parsesstrs -
Fix:
VectorKLEnginewith customk_encodernow properly skips the newDummyUKFTduring encoding -
Fix:
VectorKLEngineandMongoKLEnginenow has safer batch encode/embed methods that handle empty lists
v0.9.1.dev1
v0.9.1.dev1 (2025-11-26)
-
Feature:
LLMnow supports tool-based interactions andLLM.toolusewhich is compatible withToolSpec -
Feature:
ToolSpecnow supports decorating functions like@ToolSpec(name="func") -
Deprecate:
LLM'snparameter for batch inference is temporarily removed -
Optimize: Refactored dependency management with lazy imports
-
Feature:
KLStorenow supportsbatch_get, withDatabaseKLStoreandMongoKLStorehaving efficient implementations -
Feature:
FacetKLEngineandMongoKLEnginenow supportsorderbyparameter in search methods -
Feature:
ConfigManagernow supportsconfig copyand inheritance by other packages -
Feature:
ahvn sessionbug fixes, safeguards, defaults and user experience improvements -
Feature:
UKF*TextTypenow supportsmax_length() -
Optimize: Better inheritance behavior: ukf tags & type default
-
Optimize: BaseUKF defaults to empty
content_composersandtriggersdict to reduce memory usage -
Fix: milvus vdb store collection was not fully loaded before dummy removal
-
Fix:
babel initnow creates an empty_locales.jinjafile if not existing -
Fix:
babel translatenow correctly handles multi-line strings in jinja templates
v0.9.1.dev0
v0.9.1.dev0 (2025-11-21)
- Initial release