Skip to content

v0.12.0 — the scaffold delivers skills

Choose a tag to compare

@basepointer basepointer released this 30 Aug 13:29
· 35 commits to main since this release

Fixed

  • decimalai init produced an agent that could not read any of its skills. On langchain — the framework you get by default — inject_skill_body defaulted to False and the adapter registers no load_skill tool, so both body channels were off. The model received a menu of skill titles with no mechanism to read them. inject_skill_body is now tri-state and resolved per adapter: no tool loop means inject, a tool loop means don't double-deliver, an explicit setting always wins.
  • A single 5xx could destroy 50 buffered traces. Non-429 responses got zero retries, and flush()'s bare except cleared a buffer that auto-flushes at 50. 502/503/504 are now retried, 500 is opt-in per call site, and the buffer survives 5xx and httpx.RequestError.
  • The generated langchain file was not an agent — a chat model named agent with no tool loop, so following its own docstring returned an empty string. It now emits create_agent(...) with a real loop, using langchain.agents.create_agent rather than the deprecated langgraph.prebuilt.create_react_agent.
  • The generated openai-agents file died with MaxTurnsExceeded on a realistic ticket.
  • Google ADK can deliver a skill body. It was refused a scaffold on a "no prompt seam" claim that was wrong.

Added

  • decimalai init --framework pydantic-ai — the third scaffoldable framework. A live run of the generated file answered with a figure that exists only in the skill body the model pulled through load_skill.

Full notes in CHANGELOG.md.