bosun-ai/swiftide
 Watch   
 Star   
 Fork   
15 days ago
swiftide

swiftide-v0.33.0

New features

  • a94760d (indexing) Convenience then_expand alias for then_chunk

  • 13d36c0 (agents) Stream output while commands run (#1162)

  • 7ff5a43 (agents) Allow fully overwriting agent history via context (#997)

  • 5bc2a94 (agents) Pass mutable agent to hooks (#1112)

  • 8ced907 (core) [breaking] Preserve exact command output (#1134)

BREAKING CHANGE: preserve exact command output (#1134)

  • 2a0cb52 (core) [breaking] Separate command output streams (#1146)

BREAKING CHANGE: separate command output streams (#1146)

  • 1c1dfc1 (core) [breaking] Split command output into stdout and stderr (#1066)

BREAKING CHANGE: split command output into stdout and stderr (#1066)

  • 67998f9 (integrations) [breaking] Support AWS' new converse api (#1026)

BREAKING CHANGE: There is now a new AWS Bedrock integration. Because Converse is fundamentally different, it's named as aws_bedrock_v2. Inner content parts for chat messages now have a more generic structure so they are also usable for AWS Bedrock. Additionally, a lifetime is introduced for ChatCompletionRequest to get some quick wins.

  • 360b3af (integrations/openai) [breaking] Present and re-use reasoning in responses api (#988)

BREAKING CHANGE: Adds a ChatMessage::Reasoning that will include both the summary and compressed reasoning, so follow up turns in agents can use it properly, and users can display the summary in the UI if they want.

  • 8163a37 (macros) Read tool metadata from Rustdoc (#1182)

  • 087943e (openai) Support extra request body fields (#1094)

  • 65d44f2 (query) Add original and current question to answers::Simple

  • d19fc1d (scraping) Optional Spider Cloud support (#1125)

  • 1ee455d (tasks) [breaking] Add typed fan-out and joins (#1047)

BREAKING CHANGE: Tasks now support typed fan-out and explicit joins, which changes task completion, branch inspection, transition construction, and finish semantics. Update task code to return/match TaskRunOutcome, finish with transitions_to_finish(), build branches with

BREAKING CHANGE: Adds a new variant to chat messages that for user and image parts.

  • 283fbcf Add scoped_owned variant for owned executors with working dir

  • 849ebf9 Add Bedrock Claude reasoning effort support (#1063)

Bug fixes

  • 4a2e859 (agents) Support RMCP 2 content blocks (#1174)

  • 7e1e181 (agents) Always add reasoning items to history (#1055)

  • 0a8dcdf (agents) Resolve pending tool calls before new user message on restart

  • 283b519 (bedrock) Trace Langfuse metadata on failures (#1061)

  • 1b0d6d4 (ci) Ignore external FastEmbed tests (#1139)

  • 26e6d16 (ci) Restore master checks (#1132)

  • ad42fa9 (indexing) Cache nodes only after the pipeline finishes them (#1164)

  • d89c842 (indexing) Keep pipeline futures sendable (#1175)

  • 9c9746c (integrations) Stop selecting tls providers (#1079)

  • 6b4d920 (integrations) Group adjacent tool results for Anthropic providers (#1057)

  • 1dd4417 (integrations/openai) Properly set default on reasoning features and exclude empty encrypted content (#992)

  • 69d1376 (integrations/openai) Only log model and usage for langfuse for embeddings (#1021)

  • d8f44cd (integrations/openai) Add reasoning items before all other items on response (#993)

  • 60be8ed (integrations/redis) Extend owned should not overwrite history

  • d8c6e2d (langfuse) Stop retrying rejected batch items forever (#1178)

  • 9e4f860 (macros) Expose tool argument descriptions (#1110)

  • e8503d4 (openai) Handle in-band provider errors (#1150)

  • dd558c6 (openai) Send reasoning effort to chat completions (#1103)

  • b28a1bb (query) Use current query in answers::Simple only if changed post retrieval

  • 5d65545 (query) Do not clear transformed query after retrieval

  • 3736ce7 (tasks) Render node errors with display (#1154)

  • 5ddd8ec Stabilize tool ordering in chat completion requests (#1058)

  • f81482f Should accept str

  • ab17637 Bedrock Langfuse request capture and span-close event loss (#1072)

  • fc72726 Update to 1.x fixing RUSTSEC-2026-0189 (#1105)

Performance

  • ebede65 (agents) Trace tool output after AfterTool hooks (#1180)

  • 1a5efe9 (core) Share parent derivation across chunkers (#1173)

  • 03669d8 (core) Avoid copying single-chunk command output (#1177)

  • 59a7431 (langfuse) Move recorded values instead of cloning them (#1179)

Miscellaneous

  • a76ff4e (agents) [breaking] Use Prompt for system messages (#1151)

BREAKING CHANGE: use Prompt for system messages (#1151)

  • db63c9d (core) Replace the CommandOutputSink trait with a closure alias (#1171)

  • bcff57e (deps) [breaking] Update dependencies (#1133)

BREAKING CHANGE: Swiftide now requires Rust 1.97. ReasoningItem.id is now Option<String>, and public SQLx, text-splitter, LanceDB, and DuckDB types follow their upgraded dependency APIs.

  • 2c73515 (deps) Refresh compatible dependencies before release

  • 3c8d069 (deps) Update all crates (#1031)

  • 8ffe4de (deps) Update all crates (#984)

  • 50510a5 (integrations/openai) Update async-openai to 0.31 (#978)

  • 55b5b3c (integrations/tree-sitter) Log parse errors as warning instead of errors

Docs

Revert

2025-11-15 22:02:22
swiftide

swiftide-v0.32.1

New features

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.32.0...0.32.1

2025-11-06 17:23:12
swiftide

swiftide-v0.32.0

New features

  • 9ae3331 (agents) [breaking] Improve toolspec api with schemars and support all possible types (#940)

BREAKING CHANGE: macro-level json_type overrides beyond the basic primitives are no longer enforced; rely on Rust type inference or provide an explicit schemars-derived struct/custom schema when specific shapes are required

  • a0cc8d7 (agents) Stop with args with optional schema (#950)

  • 8ad7d97 (agents) Add configurable timeouts to commands and local executor (#963)

  • 29289d3 (agents) [breaking] Add working directories for executor and commands (#941)

BREAKING CHANGE: Add working directories for executor and commands (#941)

  • ce724e5 (agents/mcp) Prefix mcp tools with the server name (#958)

Bug fixes

  • 04cd88b (docs) Replace feature(doc_auto_cfg) with doc(auto_cfg)

  • 7873ce5 (integrations/openai) Simplefy responses api and improve chat completion request ergonomics (#956)

  • 24328d0 (macros) Ensure deny_unknown_attributes is set on generated args (#948)

  • 54245d0 Update async-openai and fix responses api (#964)

  • 72a6c92 Force additionalProperties properly on completion requests (#949)

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.31.3...0.32.0

2025-10-06 23:28:41
swiftide

swiftide-v0.31.3

New features

  • a189ae6 (integrations/openai) Opt-in responses api (#943)

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.31.2...0.31.3

2025-09-24 14:54:19
swiftide

swiftide-v0.31.2

New features

  • f35c9b5 (agents) Add builder lite methods to SystemPrompt

  • 9f533f5 (agents) Add helpers to retrieve or mutate the system prompt

  • febb7eb (agents) Support appending any kind of string to default SystemPrompt

  • 992478e (integrations/tree-sitter) Splitter support for PHP (#932)

Bug fixes

  • 5df7a48 (agents) Only log error tool calls if error after hook

  • 54dceec (agents/local-executor) Also respect workdir in read file and write file

  • 6a688b4 (agents/local-executor) Respect workdir when running commands

  • 5b01c58 (langfuse) Use swiftide Usage in SimplePrompt (#929)

Miscellaneous

  • ec1e301 (agents) Explicit read file test for local executor

  • 8882a53 Improve tests for control tools (#928)

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.31.1...0.31.2

2025-09-16 23:29:17
swiftide

swiftide-v0.31.1

Docs

  • 866b77a (readme) Use raw links for images so they work on crates/docs

  • 513c143 (readme) Remove double back-to-top

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.31.0...0.31.1

2025-09-16 20:07:38
swiftide

swiftide-v0.31.0

New features

  • ad6655d (agents) Add helper to remove default stop tool from agent builder

  • 708ebe4 (agents) Implement From for SystemPromptBuilder

  • db79f21 (agents/tasks) Add helper to create instant transitions from node ids

  • ac7cd22 (indexing) [breaking] Prepare for multi modal and node transformations with generic indexing (#899)

BREAKING CHANGE: Indexing pipelines are now generic over their inner type. This is a major change that enables major cool stuff in the future. Most of Swiftide still runs on Node, and will be migrated when needed/appropriate. A TextNode alias is provided and most indexing traits now take the node's inner generic parameter as Input/Output associated types.

  • 4e20804 (integrations) More convenient usage reporting via callback (#897)

  • 5923532 (integrations/openai, core) Add StructuredPrompt and implement for OpenAI (#912)

  • d2681d5 Integrate with Langfuse via tracing and make traces consistent and pretty (#907)

  • b3f18cd Add convenience helpers to get ToolOutput values as ref

Bug fixes

  • 0071b72 (agents) Replace tools when adding multiple with the same name

  • dab4cf7 (integrations) Remove sync requirement in future from on_usage_async

  • 6702314 (langfuse) Ensure all data is on the right generation span (#913)

  • e389c8b (langfuse) Set type field correctly on SimplePrompt

Miscellaneous

  • 5ba9a7d (agents) Implement default for AgentCanFail tool

  • 412dacb (agents/tasks) Clean up closure api for node registration

  • 478d583 (openai) Remove double include_usage in complete_stream

Docs

Style

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.30.1...0.31.0

2025-08-20 01:20:19
swiftide

swiftide-v0.30.1

Bug fixes

  • 0114573 (agents) Explicitly handle out of bounds and empty edge cases for message history

  • 1005ac2 (core) Export tokenizer traits from the root crate

  • e4c01e1 (integrations/tiktoken) Tiktoken feature flag in root crate

  • d56496d (integrations/tiktoken) Fix my inability to count in late hours

Miscellaneous

  • 352bf40 (core) Implement AsRef for ChatMessage

  • aadfb7b (integrations/openai) Concise debug logs and more verbose trace

  • f975d40 (query) Reduce debugging noise for queries

Style

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.30.0...0.30.1

2025-08-16 16:06:20
swiftide

swiftide-v0.30.0

New features

  • dc574b4 (agents) Multi agent setup with graph-like Tasks (#861)

  • 8740762 (agents) Allow mutating an existing system prompt in the builder (#887)

  • 4bbf207 (agents/local-executor) Allow clearing, adding and removing env variable (#875)

  • 7873493 (agents/local-executor) Support running inline shebang scripts (#874)

  • a6d4379 Proper streaming backoff for Chat Completion (#895)

Bug fixes

  • 2b8e138 (openai) More gracefully allow handling streaming errors if the client is decorated (#891)

  • f2948b5 (pipeline) Revert cache nodes after they've been successfully ran (#800) (#852)

Performance

Miscellaneous

Docs

  • 84ffa45 Minimal updates for tasks

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.29.0...0.30.0

2025-07-29 20:04:33
swiftide

swiftide-v0.29.0

New features

  • 25a86fa (agents) Lots of utility functions for agents (#862)

  • a70840b (openai) Add helper to set the end user field for requests

  • f8ddeba (tree-sitter) Add html support for splitting and parsing (#850)

Bug fixes

  • aaa5cd9 (agents) Add user message before invoking hooks (#853)

  • 592be04 (agents) Reduce verbosity of streaming hook (#854)

  • 9778295 (agents) Ensure error causes are always accessible

  • efd35da (docs) Fix prompt doctests

  • e2670c0 (duckdb) Force install and update extensions (#851)

  • 6a7ea3b (redis) Redis instrumentation only at trace level

Miscellaneous

  • 0a8ce37 Public chat completion streaming types

  • 0000000 Update Cargo.toml dependencies

Full Changelog: https://github.com/bosun-ai/swiftide/compare/0.28.1...0.29.0