Releases: cachly-dev/cachly-mcp
v0.10.111
Added
- Org-wide ROI in
cache_org_stats— calls the newGET /api/v1/orgs/:id/savingsendpoint and appends org-aggregated savings: instance count, total hits, hits last 24h, total + monthly USD savings, top-5 per-instance breakdown. Falls back to Redis-only output when the endpoint is unavailable or the caller is not an org member. GET /api/v1/orgs/:id/savings(Go API) — sumsSavingsEstimateacross all instances withorg_id = :id. Caller must be an accepted org member (403 otherwise). Instances whose stats fail are skipped with a warn log.src/ci-integration/brain-from-ci-gitlab.yml— GitLab CI integration: two.postjobs (on_success/on_failure, since GitLab does not expose final pipeline status to a running job),allow_failure: true, samepush-ci-outcome.mjshelper..github/workflows/brain-ci-feedback.yml— dogfooding: cachly's own repo now pushes every CI outcome to the Brain (requiresCACHLY_JWT+CACHLY_BRAIN_INSTANCE_IDrepo secrets; skips cleanly until set).
Fixed
- GitHub Action template — removed job-level
ifreferencingsecrets.*(thesecretscontext is not available in job-levelifexpressions; the workflow would fail to parse).PREV_STATUSnow derived fromrun_attempt > 1instead ofprevious_attempt_url.
See the CHANGELOG for full details.
v0.10.107
See CHANGELOG.md for details.
See the CHANGELOG for full details.
v0.10.104
Added
brain_briefing— flips the Brain from pull-only to push. Call it onfile_open(with the file path),pr_open(with the PR title/body), ordeploy(with a short description) and the Brain proactively surfaces up to 5 ranked warnings — confidence, severity, what to watch, and a known fix — before anything breaks. Returns an overallrisk_level(low/medium/high) derived from the strongest match. Optionalthreshold(default 0.6) tunes signal-to-noise.- New API endpoint
POST /api/v1/instances/:id/briefing— tokenises the event context (camelCase-aware, same tokeniser as PR scan), matches it against the instance's lessons above the confidence threshold, and ranks results.
See the CHANGELOG for full details.
v0.10.85
See CHANGELOG.md for details.
See the CHANGELOG for full details.
v0.10.84
See CHANGELOG.md for details.
See the CHANGELOG for full details.
v0.10.83
See CHANGELOG.md for details.
See the CHANGELOG for full details.
v0.10.82
See CHANGELOG.md for details.
See the CHANGELOG for full details.
v0.10.81
Onboarding-Bench (time-to-first-recall, measured) + external dashboard plan
Measuring the v0.10.80 starter-corpus impact. Recall-lift was already proven
(npm run bench); this release measures the other decisive metric —
time-to-first-recall — as a cold-start hit rate through the real search engine.
New: npm run bench:onboarding (src/bench/onboarding-bench.ts)
- 16 realistic first-session queries, phrased the way a frustrated developer types
them (NOT the lesson's topic slug), each mapped to a starter topic. - Two scenarios over the real keyword search engine:
cold(empty Brain) vs
seeded(starter corpus, which auto-seeds on first session when git history is empty). - Result: first-query hit@1 0% → 87.5%, hit@3 0% → 100%, MRR 0% → 93.8%, answered 0% → 100%.
- Interpretation: an empty Brain returns nothing on the first query (user must do work
- learn before any recall is possible — time-to-first-recall spans a full work cycle);
the seeded Brain hits immediately (collapses to seconds). Documented in BENCH.md.
5 new CI-guard tests (src/__tests__/onboarding-bench.test.ts): cold must answer
0%; seeded must keep hit@3 ≥ 90%, hit@1 ≥ 70%, MRR ≥ 80%; seeding must lift every
metric; every cold-start query maps to a real starter topic; the bench exercises the
whole corpus (no flattering subset).
New:PLAN-DASHBOARD.md— complete build spec for the external Team-Knowledge-Reuse
dashboard (cachly-insights, a separate repo): grounded in the actual funnel events and
cachly:stats:*keys the MCP server already emits. Covers data sources, architecture,
TimescaleDB schema, the five dashboard views (activation funnel, TTFR with seeded-vs-cold
cohort split, per-org reuse, brain health, marketplace), GDPR constraints, repo bootstrap
steps, milestones, and the one cross-repo prerequisite (resolved telemetry stream in the
cachly API).
No new tools (still 113). Build: cleantsc. Tests: 567 passing (14 suites). Lint: 0 warnings.
See the CHANGELOG for full details.
- learn before any recall is possible — time-to-first-recall spans a full work cycle);
v0.10.80
Starter corpus — first recall in seconds, attacking time-to-first-recall
The onboarding gap: a brand-new Brain (fresh repo, shallow clone, no fix-commits in git history) returned nothing on the user's very first smart_recall — so time-to-first-recall never started ticking and the "aha" moment was delayed by a whole session.
New: curated starter corpus (src/starter-corpus.ts) — 16 universal, high-value, stack-agnostic engineering lessons with proven fixes: Docker layer cache, git force-push safety, flaky-test timing, ESM/CJS interop, JWT clock skew, Postgres migration locks, Redis eviction policy, K8s OOM limits, CORS preflight, dotenv precedence, unhandled rejections, SQL N+1, HTTP retry idempotency, cache stampede, secrets-in-logs, TLS cert expiry. No secrets, no PII, no project-specific paths.
New tool: brain_seed_starter(instance_id, topic_filter?, force?, dry_run?)
- Seeds the corpus so the very first query hits. Tagged
source:"starter", never overrides your own lessons, idempotent (won't double-seed withoutforce), stampsborn_atso the metric starts counting. topic_filtermatches by topic OR tag;dry_runpreviews;forcere-seeds + overwrites.
Auto-seeding on first session: whensession_startauto-bootstraps from git history and that yields zero lessons (new/empty repo), the starter corpus is seeded automatically — the user's first real query returns a useful answer instead of an empty brain. The empty-brain welcome also surfaces thebrain_seed_startercommand explicitly.
113 MCP tools (up from 112).
18 new tests (src/__tests__/starter-seed.test.ts): corpus integrity (unique topics, required fields, no-PII scan), seeding to best+history keys,source:"starter"tagging,born_atstamping, idempotency,forcere-seed, user-lesson protection,topic_filterby topic + tag, no-match path,dry_run, and — critically — the real keyword search engine surfacing the right seeded lesson for natural queries ("docker build slow", "pod OOMKilled", "jwt token rejected").
Build: cleantsc. Tests: 562 passing (all 13 suites). Lint: 0 warnings.
See the CHANGELOG for full details.
v0.10.79
Brain Marketplace — full shareable Brain lifecycle + stress tests
Three more MCP tools completing the share/import lifecycle:
brain_share_list(instance_id)— lists all Brain snapshots you've shared, with share IDs, lesson counts, visibility, and creation date. Checks the cachly API first; falls back to the local provenance log.brain_unshare(instance_id, share_id)— revokes and permanently deletes a public share. Link goes dead immediately. Gracefully removes from local log when API is unreachable.brain_discover(query?, topic?, limit?)— searches the cachly Brain marketplace for publicly shared Brain snapshots. Returns ranked results with lesson counts, topics, import counts, and a one-linebrain_importcommand. Shows a "marketplace coming soon" message with alternative paths when the API isn't live yet.
publishCLI command:npx @cachly-dev/mcp-server@latest publish [--public] [--title "My Patterns"]— creates a public Brain snapshot and prints a formatted card with the share URL + import command.--publicmakes it discoverable in the marketplace; default is unlisted (link-only).
112 MCP tools (up from 109).
24 new tests covering:brain_share_list: empty state, API results, local-log fallback, missing argsbrain_unshare: success, 404, ECONNREFUSED local-log-only removal, missing argsbrain_discover: results display, topic filter, empty state, marketplace-not-live fallback- Full lifecycle integration: share → list → unshare in a single test
team_expertise_mapstress test: 50 contributors, top_n cap, sort order, empty/single contributor, 0-lesson contributor, default capbrain_who_knowsregression: multi-contributor ranking, inbound edge traversalbrain_coverageregression: high score with attribution, low score with only failures
Build: cleantsc. Tests: 544 passing (all 12 suites). Lint: 0 warnings.
See the CHANGELOG for full details.