Repository navigation
What's Changed
- Take tinyinference's null-tolerant sequence decoder by @senamakel in #138
- Test prompt caching with DeepSeek V4 Flash by @senamakel in #139
- feat(session): persist assistant reasoning content by @senamakel in #141
- docs: retarget README, docs, and wiki at the minimal harness positioning by @senamakel in #140
- fix(session): serialize concurrent schema migrations by @senamakel in #142
- fix(select): let a list/search query keep the tools that retrieve what it found by @YellowSnnowmann in #147
- fix(pformat): tag each argument with its slot number instead of counting empties by @yh928 in #144
- feat(dialect): honour trusted_verbatim when framing tool results by @yh928 in #145
- Stamp the effective cache policy onto outgoing requests so prefix protection reaches the wire by @senamakel in #148
- feat(openai): prompt cache breakpoints, and bump tinytools for ToolExposure by @senamakel in #146
- chore(deps): update tinytools exposure metadata by @senamakel in #149
- fix(no_progress): catch successful repeats that are not back to back by @M3gA-Mind in #150
- Move tool protocols into TinyTools by @senamakel in #153
- Consume focused TinyInference crates and own prompt-guided providers by @senamakel in #152
- Migrate the harness to canonical tools and host capabilities by @senamakel in #154
- Extract session and orchestration runtime crates by @senamakel in #158
- Restore feature-matrix CI and coverage gate by @senamakel in #159
- Preserve prompt cache prefixes across harness tool turns by @senamakel in #160
- Add deep feature and E2E coverage by @senamakel in #161
- docs: workspace-wide documentation pass (module READMEs, rustdoc, inline comments) by @senamakel in #162
- chore(deps): drop unused dependencies and bump dirs to 6 by @senamakel in #165
- chore: ignore Dependabot patch releases by @senamakel in #168
- harness: defer tool schemas behind a tool_search/tool_call bridge by @senamakel in #163
- harness: emit DeferredToolCall only for catalogued targets by @senamakel in #169
- feat(harness): single-owner tool dialects via tinytools-agent by @senamakel in #164
- feat: add reusable session and subagent runtimes by @senamakel in #170
- test: cover harness mock e2e capabilities by @senamakel in #172
- Split run-ledger operations and trim provider dependencies by @senamakel in #173
- Remove Rhai, REPL, and declarative language surfaces by @senamakel in #176
- Add 100-agent harness stress profiling by @senamakel in #177
- chore: update tinyinference provider extensions by @senamakel in #174
- Refactor harness around host-owned middleware by @senamakel in #175
- fix(harness): preserve Claude Code mixed content by @senamakel in #157
- Centralize asynchronous subagent orchestration by @senamakel in #178
- Runtime comparison + Phases 0–7: correctness, loop control, streaming, durability v2, sessions, toolsets, model profiles by @senamakel in #171
- Support updated upstream submodule APIs by @senamakel in #179
- fix: restore orchestration compatibility APIs by @senamakel in #181
- fix: preserve literal image marker text by @senamakel in #180
- feat(prompt): per-tier system segments and model-family execution guidance by @senamakel in #183
- Tool exposure by @senamakel in #186
- Add Python / TypeScript code-style tool dispatchers by @senamakel in #184
- feat(discover): pluggable ToolRanker with BM25 fallback and compare mode by @senamakel in #185
- chore(vendor): tinytools to main (FamilyThenDecide merged) by @senamakel in #189
- fix(cache): stable layout under text dialects; RunPolicy::host_renders_tool_catalogue by @senamakel in #190
- feat(graph): session todo list tool (Claude/Codex shape) beside the task board by @senamakel in #191
- refactor(graph): replace the todos kanban board with a flat todo list by @senamakel in #193
- test(session): remove workflow lease timing flake by @senamakel in #192
- ci: isolate optional feature test artifacts by @senamakel in #195
- fix(graph): restore the todo description's bookkeeping rules lost in #193 by @senamakel in #194
- chore(deps): bump vendored tinytools for the DSML tool_call tag fix by @senamakel in #196
- Durable session identity: resume a conversation by id, and stop losing history by @senamakel in #197
- ci: parallelise the workflow and stop discarding the build cache by @senamakel in #202
- Session todo list by @senamakel in #200
- Dsml tool call tag v2 by @senamakel in #199
- Merge commit '68b0eb0abc490541979d9fa2d869f7b4ee0b2189' into resolve-… by @senamakel in #201
- Remove declarative RAG language remnants by @senamakel in #203
- fix(session): stamp every turn step's iteration and order generation chains by @senamakel in #207
- fix(discover): declare tool_call.arguments as a JSON string so constrained providers stop emptying it by @senamakel in #209
- Bump TinyTools for DSML parser fixes and add coverage by @senamakel in #205
- Session stores the tools each turn was sent with and restores them on resume by @senamakel in #206
- chore(vendor): bump tinytools for parse_replayed_results by @senamakel in #210
- feat(harness): media feature with GenerateImageTool / GenerateVideoTool by @senamakel in #208
- feat(harness,session): tool-start input, run-queue snapshot, plan mode, generation fork for edit/regenerate by @senamakel in #211
- chore: update TinyInference submodule to upstream main by @senamakel in #212
- fix(cache): distinguish stable prefix changes from history compaction by @senamakel in #213
- fix(discovery): promote searched tools with typed schemas by @senamakel in #214
- fix(runtime): identify a transcript locator by destination, not allocation by @sanil-23 in #215
- fix: ground text tool continuations in the latest request by @senamakel in #216
- test: cover greeting to deferred email tool continuation by @senamakel in #218
- Track equivalent classified failures across agent retries by @senamakel in #219
- Stop stalled narration in streamed model calls by @senamakel in #217
- Report native Langfuse generation metrics by @senamakel in #220
- fix: recover transcripts after interrupted writes by @senamakel in #222
- fix(harness): retry completed replies without visible output by @senamakel in #221
- fix(harness): let hosts exclude replayed history from user-input screening by @M3gA-Mind in #223
- fix(agent_loop): nudge when a text-dialect tool block is claimed but undecodable by @M3gA-Mind in #224
- fix(agent_loop): let tinytools' fence policy decide fenced calls on the unary path by @M3gA-Mind in #225
- chore(vendor): bump tinytools to 82c0d97 and tinyinference to c29d511, with harness acceptance tests by @M3gA-Mind in #226
- fix(harness): point unknown-tool calls at tool_search instead of listing every tool by @senamakel in #227
- fix(todos): tighten the todo tool description by @senamakel in #231
- feat(harness): ModelSummarizer + fault-tolerant summarizer and thread-title helpers from OpenHuman by @senamakel in #230
- feat(tools,goals): absorb OpenHuman time/goal tool behaviour so the host copies can go by @senamakel in #229
- Move host-independent tool helpers from OpenHuman into tinyagents-harness by @senamakel in #228
- fix: limit todo replacements per response by @senamakel in #232
- Recover mixed DeepSeek DSML tool calls by @senamakel in #235
- feat(runtime): host-neutral Cursor-compatible command hooks engine by @senamakel in #237
- feat(harness): host-agnostic context-ladder middleware and embedding tool ranker by @senamakel in #234
- feat(session): host-agnostic transcript view, legacy-session importer and turn-state store by @senamakel in #233
- feat(harness): tool-result artifact persistence and use_skill tool packs (OpenHuman wave 2) by @senamakel in #239
- Oh stack 6791 by @senamakel in #240
- fix(session): serialize transcript generation writes across processes by @senamakel in #236
- Oh stack 6793 by @senamakel in #241
- Issue/198 by @senamakel in #243
- Oh extract leaves by @senamakel in #238
- Oh stack 6797 by @senamakel in #242
- chore(deps): refresh tinyinference and tinytools to main by @senamakel in #246
- feat(wrap-up): add fired_for(instance_id) by @senamakel in #247
- chore(deps): refresh tinytools and tinyinference to main by @senamakel in #248
- chore(deps): refresh nested tinyinference to main (provider error matchers) by @senamakel in #249
- fix(session): drop the unsafe MoveFileExW call that breaks Windows builds by @M3gA-Mind in #252
- chore: bump tinytools (network tools, image_info, workspace_state) by @senamakel in #250
- feat: wave 4 extraction from OpenHuman (tools, durable run status, trace export, stash, command center, turn-state mirror, steering forwarder) by @senamakel in #251
- chore(deps): bump tinyinference for Wave 4 inference extraction by @senamakel in #253
- fix: wave 4 follow-ups (generation spend, clarification options, wait_loop args, residual order) by @senamakel in #254
- chore(deps): bump tinyinference for endpoint-only local inference by @senamakel in #255
- chore(deps): bump tinyinference for the shared budget matcher and failure predicates by @senamakel in #258
- feat(harness): tool-call policy gate with an approval outcome and resolver seam by @senamakel in #256
- feat(session): role constructors so hosts can use TranscriptMessage directly by @senamakel in #259
- feat(orchestration): host-neutral detached subagent status, wait, ledger and roster by @senamakel in #257
- fix(detached): return cancellation ledger write failures by @senamakel in #262
- chore(deps): bump tinyinference to tinytools-agent 0.5 (single tinytools in the lock) by @senamakel in #260
- feat(runtime): invoke_agent_streaming keeps the typed HostedError on the streaming path by @senamakel in #261
- feat(transcript): typed row form for tool calls, results and images (read-both) by @senamakel in #263
- feat: ToolPolicyGate::evaluate and detached subagent steer/cancel-by-thread by @senamakel in #264
- feat(harness): carry the timeout bound on HostedError by @senamakel in #265
- feat(session): typed in-memory transcript row by @senamakel in #266
- fix(transcript): compare lifted legacy rows by their stored text by @senamakel in #268
- test: move inline tests into *_tests.rs files by @senamakel in #267
- test: rename legacy test.rs and *_test.rs files to *_tests.rs by @senamakel in #269
- feat(harness): RunPolicy::default_reasoning for a run-level thinking level by @senamakel in #271
- refactor(harness)!: remove the intrinsic tool_call bridge by @senamakel in #272
- chore(deps): bump tinyinference for Anthropic cache_control on any gateway by @senamakel in #273
- W5 subagents by @senamakel in #270
- chore: bump tinytools to latest main by @senamakel in #274
- fix(harness): bound recovered tool-call ids to 40 characters by @fede-kamel in #275
- fix(harness): keep tool-call markup out of summaries and tool-less answers by @senamakel in #277
- feat(artifacts): detached tool-result store that writes outside the working tree by @senamakel in #278
- fix(harness): persist compaction across calls instead of re-compacting every turn by @senamakel in #276
- chore(deps): bump vendor/tinytools to latest main (8f18f7fd) by @senamakel in #279
- fix(harness): drop a replaced host-carried summary; fix ConcatSummarizer rustdoc by @senamakel in #281
- chore(deps): bump tinyinference for scrub_credentials false-positive fix by @senamakel in #283
- feat(harness): mid-turn budget notice in FinalCallWrapUpMiddleware by @senamakel in #285
- feat(harness): one-shot VerifyBeforeFinishMiddleware (spec check before the first final answer) by @senamakel in #290
- fix(summarization): keep the turn's user message across mid-turn compaction by @senamakel in #288
- feat(agent-loop): nudge after truncated-empty retries instead of finishing blank by @senamakel in #284
- feat(harness): tool-result durations and a turn-budget clock (openhuman#6953) by @senamakel in #291
- feat(harness): push_ephemeral_instruction + profile preview so nudges don't reset DeepSeek's cache (openhuman#6962) by @senamakel in #289
- feat: improve context compaction and pin TinyInference scrubber by @senamakel in #286
- fix(harness): keep JSON tool results parseable under duration and turn-clock notes by @senamakel in #292
- Bench 6952 verify before finish pin by @senamakel in #294
- fix(harness): compose detached artifacts with thread store by @senamakel in #287
- Merge tinyagents#285 (0e1b862) onto openhuman's pin f1a1433 by @senamakel in #296
- Bench 6960 on openhuman main by @senamakel in #295
- feat(harness): typed task-state compaction, token-budgeted tail, min(80%, 350k) trigger by @senamakel in #282
- Bench 6962 deepseek cache pin by @senamakel in #293
- Preserve split task fields and finish conversation review fixes by @senamakel in #297
- test(summarization): regression test for checkpoint-aware turn-message pin by @senamakel in #300
- fix(wrap_up): route budget/final nudges through ephemeral placement; verify_before_finish yields to budget notice by @senamakel in #301
- Allow explicit prefix refresh on resumed sessions by @senamakel in #298
- Retain generic uploads and durable multimodal references by @senamakel in #302
- chore: prepare TinyAgents 2.1.3 release by @senamakel in #303
New Contributors
- @fede-kamel made their first contribution in #275
Full Changelog: v2.1.2...v2.1.3