Skip to content

VibeFrame v0.2.0

Latest

Choose a tag to compare

@jubayertalha jubayertalha released this 28 Aug 09:52

The agent-ergonomics release: every item shipped here came out of using VibeFrame for real — the six-item friction backlog from live-agent dogfooding (2026-08-23), plus defect fixes from a full hands-on QA/UAT field test (2026-08-27). Nothing speculative.

Added

  • vibe_link action: "unbind" — remove exactly one step or component binding (no index check; removing dead bindings is the point). An unbind + bind pair in one call replaces a stale binding without re-declaring the whole capability.
  • Callback symbols (TS/TSX/JS) — registration-style handlers index as bindable symbols with deterministic names: commander actions (command(status).action), route handlers (get(/api/meta)), tool registrations (registerTool(vibe_link)). CLI and server glue no longer forces declared-only file bindings. Only multiline anonymous callbacks on method calls with a string-literal anchor qualify; iteration/continuation glue never synthesizes a symbol. SQLite index schema is now v2 — existing indexes rebuild automatically on first contact.
  • vibe_validate (and POST /api/validate) returns the standing open findings — compact, severity-ranked, capped at 10 — alongside counts and deltas. No second query needed to see what is still wrong.
  • CI-gate coveragevibeframe validate exit codes (0 clean / 1 on open error findings, in both offline and daemon modes) are locked in by the dogfood suite; the CLI reference documents the one-line CI recipe.

Fixed

  • vibe_link rejects unbindable file targets upfront with guidance — unindexable files (docs/config), globs matching nothing, and non-repo-relative paths return a note plus path candidates and write nothing, instead of landing and erroring later as broken-binding. Just-written files are indexed on demand before judging, so a correct link never bounces on the watcher race.
  • vibe_decide is idempotent — an identical retry returns the existing decision instead of minting a duplicate ADR; a same-slug conflict is refused with guidance to pass supersedes or pick a new slug.
  • vibe_task finish warns when error findings remain open — finishing over a failing CI gate never looks clean.
  • vibeframe validate gates on authored-model parse errors in daemon mode too, matching offline behavior.
  • vibe_link symbol candidates are similarity-ranked (edit distance) — a typo's nearest neighbor comes first.
  • Two component-glob binds in one call no longer overwrite each other; YAML lists grown from empty write block style, never flow.

Install

npm i -D vibe-frame-cli   # command: vibeframe

Registry-free: the attached tarballs install directly (npm i -D ./vibe-frame-cli-0.2.0.tgz after installing its five vibe-frame-* dependency tarballs). All six packages are published with npm provenance attestations via trusted publishing.

Full details in CHANGELOG.md.