AgentSwarms 1.2.1 #50
rohan044
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
AgentSwarms 1.2.1
The app stopped presenting a read it had failed to make as a fact it knew.
Thirty-one modules were audited by recomputing every headline figure
independently from the database and comparing it against what the page claimed,
which is the only way this class of defect surfaces — a page that renders
0looks exactly like a page that worked, and logs nothing either way. The
documentation was put through the same treatment against the running product,
and now carries search and two checkers that fail on drift.
82 commits, 234 files, 3 migrations.
Highlights
A discarded read error is not an empty account. Secrets, the skill library,
notebooks, the prompt library, MCP servers and the model registry each answered
a failed load by rendering the empty state — you have none — rather than we
could not tell. Every one of them now distinguishes the two and offers a retry.
The same shape appeared in worse clothes elsewhere: the MCP page published
0tools, the monitoring page reported healthy over a probe set it had failed to
load, two lab pages awarded verdicts to work that never happened, and the audit
log manufactured evidence of absence — which is the worst possible page to do it
on.
The sharpest version of it argued for an action. A failed count on the model
registry did not merely misreport; it talked an admin into running a sync that
was not needed. A misreported number is a wrong answer, but a misreported number
attached to a call to action is a wrong instruction.
Capped views say they are capped. The analytics page reported a thousand
traces as though they were the population, the trace log presented its page as
the whole, and the analyst's 50-row cap could be reached with no disclosure.
Aggregates still run in the database and the cap only trims what is displayed —
the difference is that the page now says so.
The pages that held are written up too. /monitoring's refresh path, the trace
log's failed-read handling, Web Embedding, and the AI Analyst under direct
attack all survived the pass, documented at the same length as the ones that
failed. A log that records only faults says nothing about where the ground is
solid.
Slack, in both directions. The AI Analyst now answers in the channel where
the question was asked, with request signature verification, and a settings tab
means a workspace can be configured without inserting a row by hand. The
outbound notification webhook is unchanged; this is the other direction, and a
different trust problem.
Import a dbt project. Reads
target/manifest.json— the file dbt writes onevery run, compile or docs build — and says plainly what could not come across.
A team that already runs dbt has months of model descriptions, column docs and
MetricFlow measures; asking them to retype it into a form is why define your
metrics in our UI loses to a YAML file in git.
A pull request that breaks a metric now fails. Git export already wrote every
semantic model as JSON, and nothing read those files back — so a broken governed
metric surfaced later as a refusal at query time, in front of whoever asked the
question rather than whoever made the change.
Skills load on demand once they outgrow the prompt. Every attached skill used
to be pasted into the system prompt in full on every turn. Below
SKILLS_INLINE_MAX_CHARS(default 8000) that is still exactly what happens;above it the prompt carries an index of names and summaries and the agent pulls
the body it needs through a
use_skilltool. Swarms are unaffected — theheadless executor sends no skill ids.
Also in this release
source tables.
dashboard's, with a per-visual checklist, a model picker and a free-text
instruction field for tone and audience.
@agentswarms/react— a React SDK alternative to iframe embeds, for hostapps that want their own message rendering, their own theme, or programmatic
control over the stream, citations and Visual-BI widgets.
was fully documented and fully manual — JWT secret, two signed keys, the
storage-boot caveat, the extension preflight, five values wired into
.envbyhand. It is now scripted.
from there.
search for one conversation without changing the agent.
378 headings, subsections in the on-this-page rail, 28 previously undocumented
tuning variables, scenario guides for swarm shapes and RAG configurations, and
two checkers (
check:docs,check:md-docs) that fail on drift.Security fixes
exporters turn a saved graph into a Python or TypeScript file the user is told
to run, and a swarm can arrive from anyone as a dropped
.swarm.jsonthat isone click from the export menu — which makes every interpolated value
untrusted. Numeric fields are coerced rather than pasted, labels are sanitised
before they reach docstrings, and tool configs are redacted instead of being
serialised with credentials intact.
· N toolsor as nothing at all, so the most powerful key on the page was the one with
nothing written on it.
Notable fixes
server that "did not start in time". It had started.
whether traffic can actually arrive.
told to the model.
loaded.
nested non-wrapping flex item on a row that did wrap, which is why it survived
inspection.
provider supplies it. Reported as "kimi k3 shows 0 cost", which it did on all
116 runs: the model postdated the catalog, so the resolver was correctly
answering that it had no price.
module, so the fix lands on two pages.
Upgrading
git pull npx supabase db push # 3 migrations docker compose up --buildNothing in this release requires a configuration change. Two optional
environment variables were added, both unset by default:
SKILLS_INLINE_MAX_CHARS— the size at which attached skills switch frominline to on-demand loading. Defaults to 8000, which keeps all six bundled
sample skills inline; existing agents behave exactly as before unless you
lower it.
GITHUB_TOKEN— only needed for the semantic-layer pull request check.Slack needs no environment variables: the workspace is configured in the app,
under Integrations.
Known limits
Stated plainly, because the alternative is you discovering them:
and prep flows that fold are fine. Importing a billion rows into a local
dataset is not. There is no distributed in-memory engine; the warehouse is the
engine. See
docs/SCALE_AND_LIMITS.md.wait is legible, but it is still a wait.
writes fresh SQL each turn, so enforcement would cover the governed steps and
not the rest. Partial enforcement is a badge that vouches for less than it
appears to.
modules, but streaming, tool calls and guardrails in Agent Chat were exercised
only in part — a budget cap blocked live model turns at the time. They are
recorded as uncovered rather than left looking as though they passed.
This discussion was created from the release AgentSwarms 1.2.1.
All reactions