Skip to content

v0.9.0 — rag_go consumer needs (7 gaps) + host controls

Choose a tag to compare

@muthuishere muthuishere released this 13 Jul 20:34
138b36d

Implements all seven gaps from ADR-0001 (docs/adr/0001-rag-go-consumer-needs.md) across all five ports (js/python/golang/java/csharp), byte-identical, additive and backward-compatible. A caller passing none of the new options gets identical behavior to 0.8.0.

Client request shaping (§8)

  • RequestParams (caller-wins body merge; messages/tools/stream forbidden) + BodyTransform (rewrite the assembled body last, no proxy needed)
  • Injectable HTTP transport for LLM calls
  • Omit empty tool keys (tools/tool_choice dropped when the toolkit is empty)
  • ConversationStore accessor (read/rewind the transcript; no shadow store)

MCP load lifecycle (§2)

  • ctx/cancellation-aware load (propagates through connect/init/list; bounded SSE start; parent-cancel aborts the build, per-server timeout isolates)
  • Per-server tool allowlist (tools map; builtins/skills semantics; original names)
  • List-only inventory (ListMcpTools — connect, list, disconnect; unfiltered + per-server status)

Toolkit ergonomics

  • DisableTools / DisableSkills — flat name lists to turn things off across every source

All five CI suites green. Also includes a fix: MCP load never orphans a stdio child on an aborted/timed-out connect.