AgentDBDocs

Release notes

What changed in each AgentDB release that you can see or use.

#1.0.0-rc.13 2026-11-03

custom dashboards, app.agentdb.link, docs portal, index advice, scaling prep

#Custom dashboards on their own domain

  • Four sharing modes: only_me (the owning account), people (invited by email), password, and link (anyone with the link; approved per version by a person). Sign-in goes through the app (code flow to /_auth); sessions are per dashboard.
  • OAuth/MCP on two hosts: protected-resource and authorization-server metadata, WWW-Authenticate resource_metadata, OpenAPI servers and /v1/capabilities name the configured legacy host when asked on it, and the public URL otherwise; an arbitrary Host is never echoed. Tokens are not bound to a host, so tokens and refresh tokens issued on either address work on both (tested: a connector set up on alpha refreshes there after the switch).
  • Defaults and texts: the CLI default server, the agent skill and server messages name https://app.agentdb.link; the code no longer names the old host (test). User docs use the new address with a note that the old one works until the end date.
  • Sessions: cookies stay __Host- (host-only): after the switch people sign in once more on app; the redirect keeps the return path. No Domain= cookies.

#1.0.0-rc.12 2026-11-03

public-surface hardening, 1.0 operations checks

#1.0.0-rc.11 2026-11-03

password accounts, two-step sign-in, hosted dashboards, discovery

#Added: password accounts

  • Password rules: 12 to 256 characters, not the email address, not one repeated character, not a common password.
  • Forgot password at /app/forgot-password and /app/reset-password: same answer for every address; single-use link valid 30 minutes; a reset ends every session of the account and emails a notice. At most 3 links of one kind per account per hour.
  • Settings → Sign-in and security in /app: add a password to a magic-link account (it works only after an emailed confirmation), change the password (needs the current one; other sessions end; notice email), change the email address (link to the new address, notice to the old, the change happens only after confirmation; keys, workspaces, memberships and connectors are untouched), resend the confirmation link. All session writes need Origin and x-csrf-token.
  • One page for emailed account links: /app/confirm-email shows what the link does and the masked address (GET /v1/app/account-link/peek), and uses it only when the person presses Confirm (POST /v1/app/account-link/confirm).

#Changed (compatibility, password accounts)

  • POST /v1/signup (agent/API signup) is unchanged: it still returns the key once. The account is now marked agent_signup and gets a confirmation email; the key works whether or not the person confirms.
  • An emailed sign-in link and an accepted invitation now mark the address as confirmed. The sign-in itself works as before.
  • GET /v1/app/me has a new account object (email_verified, has_password, password_changed_at). Additive.

#Added: two-step sign-in and recovery

  • Recovery codes: 10 single-use codes (80 bits each, stored as SHA-256), shown once when two-step sign-in turns on; Make new recovery codes replaces them (needs a current second factor). Settings shows how many are left.
  • Machine credentials are not affected: API keys, agent keys, OAuth access tokens and CLI keys keep working.
  • The key review exempts a sign-up key only when the server never returned it (password sign-up). POST /v1/signup with the client hint source: "web" returns its key, so that key is always listed. Found in the rc.11 merge check.
  • Account audit: second_factor.added, second_factor.removed, second_factor.failure (aggregated), second_factor.reset, recovery_codes.generated, recovery_code.used, passkey.renamed, passkey.counter_regressed, account_key.created, account.recovered, email.change_cancelled, password.cleared_unverified; login.success names the second factor used.

#Added

  • Stability label on every operation. Each operation is stable (covered by the 1.x contract), experimental (may change before 2.0) or deprecated (with replaced_by). 201 operations are stable, 24 are experimental (connectors, the shared inbox and conversations, semantic search, content_dispatch) and none is deprecated; reasons are in the code. The label shows in the index (a count per category), in category, search and detail: "full" listings (non-stable only), in the per-operation detail (stability, stability_note), in GET /v1/capabilities (mcp.tools_stability), in OpenAPI (x-stability) and in MCP tools/list (_meta["agentdb/stability"]; non-stable descriptions end with a note). Single source: the STABILITY map in the code.

#Added: hosted dashboards

  • AgentDB hosts the dashboard page. dashboards_create now also returns page_url, https://<server>/d/<dashboard id>#<token>.
  • Panels and layout can change. dashboards_update accepts title, panels and layout with the current version. A different version answers VERSION_CONFLICT. The last 10 versions are kept.
  • New operations: dashboards_get (definition, version, history; REST GET /v1/workspaces/{ws}/dashboards/{id}) and dashboards_rotate_token (new link for the same id, the old one stops at once; REST POST …/dashboards/{id}/rotate-token).
  • Access counts: dashboards_list adds access_stats (last_accessed_at, views per day for 30 days). Counts only: no addresses and no tokens.
  • Creator: dashboards_list adds created_by, created_by_label (with ", revoked key" when the creating key is gone) and created_by_status. Dashboards still belong to the workspace.
  • /app → Settings → Dashboards (owners and admins): list, open, new link and revoke, each with a confirm step. Browser session only, with Origin and CSRF checks. Session routes: GET /v1/app/workspaces/{ws}/dashboards, POST …/{id}/rotate, POST …/{id}/revoke, GET /v1/app/dashboards/{id}/preview.
  • Audit events in the workspace access log: dashboard.created, dashboard.updated, dashboard.token_rotated, dashboard.revoked, published_view.created, published_view.revoked.
  • MCP tool descriptions for the dashboard tools have an example each.

#Changed (compatibility, dashboards)

  • New link dashboards expire after 90 days unless the call sets expires_in_days (1-365), expires_in_hours or expires_at, or passes expires_in_days: null for no expiry. Existing dashboards are not changed. Password and key dashboards get no default.

#1.0.0-rc.10 2026-11-03

safe email links, approval emails, connected apps

#Changed (compatibility)

  • decide_in changes from a relative path to an absolute URL. The relative path stays available in the new field decide_in_path. Clients that joined decide_in to a base URL should read decide_in_path instead.

#Changed (agent discoverability, additive)

  • Approval policy keys are discoverable. A claude.ai test (OAuth MCP connector, rc.9) concluded that objects and fields did not exist and created a policy without an object scope. Every approval_policies_create / approval_policies_update key (name, operations, objects, fields, condition {field, op, value}, applies_to, approvers {min_role, members, kinds}, quorum, expires_in_seconds, confirm, enabled, human_only, distinct_approver) now has a description in the tool's input schema (also REST/OpenAPI), and the tool description names them all with an example. applies_to explains the default ["agent"] and ["agent", "key"] for account-key agents.
  • approvals_submit documents both forms: the MCP tool form (operation + arguments) and the REST/domain form (records.update + params + input).
  • approvals_decide and friends name approval_id. A call that sends id (or the path name, e.g. approval) instead of the tool's id argument now gets a VALIDATION_ERROR that names the right key (details.received), for every MCP tool with an id argument. No alias is accepted. The description also covers action_hash and FORBIDDEN human_session_required with decide_in.
  • Principal naming is consistent. workspace_info (and REST GET /v1/workspaces/{ws}) add key_type and via, also inside principal; workspace_list, workspace_get and REST GET /v1/account/workspaces add via. For an OAuth connector all report key_type: "account" and via: "oauth"; principal.kind stays "key". via is oauth, api_key, session or automation.

#1.0.0-rc.9 2026-11-02

authenticated human approvals, email logo, rollback docs

#Changed (compatibility)

  • Keys that used to approve under the default rule or an existing policy now get human_session_required. Owners who want keys to keep deciding set human_only: false on the policy.
  • approvals_get / approvals_list add human_only, action_hash, decide_in and decisions[].via. approvals_decide accepts action_hash. imports_run accepts approval_id.

#1.0.0-rc.8 2026-11-02

discovery, one normalization, explorer completion, self-delete, re-import, media worker, security and real-agent fixes

#Added

  • Workspace import. A data export (GET /export?format=bundle, or the .ndjson) becomes a NEW workspace in your account; nothing is merged. REST POST /v1/workspaces/{ws}/workspace-imports (the bundle is a file of that workspace), MCP workspace_import (category import_export), CLI agentdb workspace import <bundle>, explorer "Import a workspace" in the switcher. Keeps schema and record ids, versions, timestamps, links, attachments and files with every version (checked again by the file policy, scanner and quota), record rules, retention, search, indexes and views. dry_run: true reports counts, problems and quota impact without creating anything. Atomic (a failed import leaves no workspace) and idempotent (the same key returns the same workspace). Automations only with include_automations: true: paused or disabled, webhooks with a new secret. Strict bundle checks: allow-listed tar entries only, checksums, size, entry, ratio and line limits. docs/WORKSPACES.md.
  • REST GET /v1/capabilities?search=|category=|operation=|detail= and CLI agentdb capabilities --search|--category|--operation|--index return the same views. OpenAPI operations carry tags and x-agentdb-category; the document lists the categories as top-level tags.
  • Opt-in compact MCP tool list: /mcp?tools=compact or header x-agentdb-tools: compact lists 16 core tools; all tools stay callable. The default stays the full list.
  • UNSUPPORTED_OPERATION details add did_you_mean (closest operations) and category.
  • Hub: Inbox, Channels, Reports and Settings tabs (, ). /app/hub shows the member's inbox across workspaces (mentions, direct messages, assignments, approvals, reminders, knowledge reviews, form submissions, SLA breaches, failures) with mark read / unread / done; the channels the member belongs to with threads and posting as the member; saved report views of every workspace drawn by the explorer's report renderer; and notification email settings. Writes use the one /app write path (Origin, CSRF, 12 h session, role, Idempotency-Key). Routes: GET /v1/app/hub/{inbox,channels,reports}, GET|PATCH /v1/app/workspaces/:ws/inbox[/:item], GET|POST /v1/app/workspaces/:ws/channels/:channel/messages, GET|PUT /v1/app/workspaces/:ws/notification-settings.
  • One notification service (). Every inbox item goes through createInboxItem in the code. New: dead job runs and webhook deliveries create inbox items for owners and admins without permission rules. onApprovalEvent wakes the email sender; registerNotificationSource lists unread inbox items in the hub.
  • File uploads in public forms (). files in a form definition; POST /v1/forms/{ws}/{token}/files/{input} uploads one file bound to the form ticket (size and type limits, magic bytes, malware scan when on, one per input, used tickets refused). The submission attaches the files to the record, keeps them with a quarantined submission (release attaches, discard deletes) or deletes them; uploads without a submit expire with the ticket.
  • Deferred: video poster frames (no safe, maintained pure-JS/wasm decoder for Node), image transforms, M4A/Ogg waveforms.
  • Customer workspace self-delete with a 30-day grace period. The owning account deletes a workspace by typing its name: /app Settings → Danger zone, POST /v1/workspaces/{ws}/delete {confirm_name}, CLI agentdb workspace delete <ws> --confirm-name "<name>", MCP workspace_delete. Only the owner's session or account keys; never workspace keys, agents or members.

#Changed

  • Data export format 2. The export adds object_settings, search, index, view and file_version lines, file version/folder/tags, automation metadata for unrestricted callers (never a secret) and a sha256 on the end line. Bundles carry files/<id>.v<n> for earlier versions. Format 1 readers that skip unknown line types keep working.
  • application/gzip is in the default file allow-list (verified by its magic bytes), so export bundles can be uploaded for import.
  • One value-folding mechanism. Import inspect, import dry run and run, duplicate suggestions and link-target suggestions now compare values through one module, the code, with named levels exact, trim, case, accents, punctuation and a suggestion-only company profile (legal suffixes such as B.V., Ltd, GmbH). Before, dedup and imports folded accents and punctuation differently, and inspect and run used different column rules.
  • Import suggestions (imports_inspect and imports_run, REST/MCP/CLI) add value_suggestions (per value: from, to, level, certainty, reason, candidates, rows, first_rows) and uncertain_normalize. Inspect and a dry run return identical suggestions. Status fields are compared like enums.
  • suggested_normalize and suggested_rules now hold only unambiguous mappings: one allowed value that differs only in spacing or case. Accent, punctuation and legal-suffix matches, several candidates (initech vs Initech/INITECH) and word-prefix conflicts (Lead vs lead/lead_qualified) are uncertain and go to uncertain_normalize for review. Free-text variants are always uncertain.
  • records_duplicates takes level (default punctuation); groups and evidence report the level matched. The normalized key no longer keeps spaces (annmuller).
  • relationships_link_batch: a NOT_FOUND by unique field carries details.suggestion (proposed value, level, certainty, candidates). The link is never made to a folded match.

#1.0.0-rc.7 2026-11-01

workspace delete fix, CLI output fix

#1.0.0-rc.6 2026-11-01

full ecosystem pack (15 prompts), human explorer, security hardening

#Release notes draft: 1.0.0-rc.6

  • Data model: 17 new field types incl. exact decimal/currency, status with transitions, formula, file, user_ref/agent_ref, recurrence (02, 03, 05, 07).
  • Files and media: audio/video types, metadata, local text extraction, versions, resumable upload, range downloads, signed expiring file links (03).
  • Query and data operations: required relationships, full-text search (FTS5), roll-ups, saved views, schema packages, duplicates and merge, recycle bin and archive, named indexes, customer export (04).
  • Identity and access: named agents with their own keys, members and roles, object/field/owner-record permission rules, generated workspace docs, stability policy and contract test (05).
  • Automation: signed webhooks, scheduler (once/cron/RRULE), flows, background dispatcher (07); channels and inbox (08); approvals and the AgentHub (09); calendar, knowledge and the connector framework (10).
  • Human apps: /app explorer with email-link sign-in (01), editing, components, view displays and published views (06).
  • Packages: AgentCRM, Todos, Kanban, Projects (11); CMS, Forms, Content with a public delivery API and public forms (12); Support, Recruit, Property, Inventory, Assets (13).
  • Security: security review 2 fixes (below), creator revocation for links, webhooks, jobs and flows, idempotent results replayed only to their principal (R-003).
  • Delete is soft by default. records_delete / records_delete_batch move records to a recycle bin for 30 days (per-object retention). Unique values are released at once. Erasing personal data needs permanent: true or records_purge.
  • Archived records are left out of queries, aggregates and related lists unless include_archived: true.
  • File fields: a file field holds one id; options.multiple: true makes it a list of 1-100 ids. This can't be changed later.
  • APPROVAL_REQUIRED (403) for a write that an approval policy covers, once a workspace has policies. The client proposes the write with approvals_submit. Workspaces without policies behave as before.
  • Inbound connector events: X-AgentDB-Event-Id is ignored; the dedupe key comes from the signed body.
  • Saved views: the provisional definition.layout is refused (VALIDATION_ERROR); use definition.display.
  • Idempotency keys reused by another principal answer IDEMPOTENCY_KEY_REUSED.
  • New error codes: APPROVAL_REQUIRED, REQUIRED_RELATIONSHIP_MISSING, FEATURE_DISABLED, SUBMISSION_REJECTED, INVALID_TRANSITION and others; the contract test lists them.
  • Expect deploy-smoke 34 passed, 0 failed.
  • Polish (rc.6 final walkthrough):
  • Operations and release gates:
  • Security fixes (wave 3 review):
  • Security fixes (security review 2):
  • Generated-app UI and editing:
  • App packages AgentCRM, AgentTodos, AgentKanban, AgentProjects:
  • Business vertical packages:
  • Wave-3 package unification (merge of Prompts 11 and 13):
  • Wave-3 merge of Prompt 12 (CMS, Forms, Content) with Prompts 06, 11 and 13:
  • AgentCMS, AgentForms, AgentContent:
  • Creator revocation (security):
  • Query, integrity, search, views, templates, dedup and lifecycle:
  • Field types: 17 new types next to the six existing ones (unchanged): number, decimal and currency (exact; money without rounding drift), time, timezone, duration, multi_select, list, json, email, url, phone, address, geo, rich_text (Markdown without HTML), formula (computed, safe expression language) and status (allowed transitions). Reference: the code.
  • Identity, roles and permissions:
  • Security (R-003): a stored idempotent result is now replayed only to the principal that produced it. API keys share one namespace, so retries still work after key rotation. Another principal that reuses the key gets IDEMPOTENCY_KEY_REUSED. Agent keys can't approve OAuth connections or CLI logins. Renaming a workspace now needs the owner or admin role on that workspace.
  • Field types user_ref and agent_ref (): they hold a person's account id or an agent id. They can be filtered with eq, neq and in, and they are the basis of owner rules.
  • Generated workspace docs (): GET /v1/workspaces/:ws/docs (MCP schema_docs, CLI agentdb docs) returns an OpenAPI fragment, a JSON Schema per object, example bodies and markdown (?format=markdown). They are generated from the workspace's own schema and show only what the caller may see.
  • Stable contract (): the code describes the stability and deprecation policy. The contract test the code checks that no tool, REST operation, error code or required argument disappears.
  • OAuth conformance (): an end-to-end test drives the official MCP SDK OAuth client. It covers discovery, dynamic registration, PKCE, refresh, revocation, expiry and code replay. The manual claude.ai and ChatGPT steps are in the code and are still unverified.
  • Media and content pipeline:
  • Transparent raster icons: the server now serves the AgentDB mark as PNG (32, 192, 512, plus apple-touch-icon.png at 180) and a real multi-size favicon.ico, all with a transparent background. Before, /favicon.ico redirected to an SVG, which connector UIs and favicon services cannot use; they showed a fallback icon on white.
  • MCP server info: title: "AgentDB", websiteUrl, and icons (512 and 192 PNG, plus SVG), so MCP clients can show the logo.
  • Human workspace explorer, phase 1 backend: people sign in at /app/sign-in with an emailed link (15 minutes, single use, same answer for unknown addresses) and browse their workspaces through new /v1/app/* routes: schema, records, one record, linked records, history, attached files, file content and usage. See the code.
  • Record history: new read records.history (activity of one record, newest first, cursor-paged), also as GET /v1/workspaces/:ws/records/:record/history for API keys.
  • Security hardening: email sign-in, account recovery and OAuth email sign-in now answer 200 {sent: true} at once, without waiting for the mailer; a mail failure is logged, not returned as 503. Known and unknown addresses get the same status, body and timing. The explorer confirm page shows the masked address (GET /v1/app/sign-in/peek, does not use the token) before the button. Signing in again ends the browser's previous session. An account keeps at most 20 live sessions; ended ones are deleted. Record history with a cursor answers 404 for a record that never existed.
  • Webhooks: signed HTTPS webhooks for change events (record.*, relationship.*, schema.changed, file.changed, webhook.disabled), optionally per object.
  • AgentScheduler: jobs run once, on a cron schedule or on an RRULE, in an IANA time zone with a declared DST policy.
  • AgentFlows: rules on record created/updated/deleted or field changed, with a where condition in the query format.
  • Recurrence field type (): type: "recurrence" stores a validated RRULE string.
  • 24 new MCP tools (webhooks_*, jobs_*, flows_*, schedule_preview), matching REST routes and CLI groups agentdb webhooks|jobs|flows. Writes need records:write, reads need records:read.
  • Permissions (Prompt 05): only owners, admins and keys without permission rules manage or read webhooks, jobs and flows; an agent needs the admin role (403 FORBIDDEN otherwise; schedule_preview stays open). What they deliver follows the creator's access at that moment: hidden field names are dropped from webhook events, include_record payloads and {{record.data.*}} placeholders only show readable fields, conditions and field.changed triggers on hidden fields never fire, and nothing runs or is delivered once the creator loses access (revoked agent, removed member). Narrowed callers of the change feed no longer see webhook, job and flow events.
  • Change events now carry field names: record.create events include the field names that were set, and record.update events include the object name.
  • Push (): SSE was not built. Long-poll stays the default; see the code.
  • AgentChannels and AgentInbox:
  • Approvals and the AgentHub:
  • AgentCalendar, AgentKnowledge and integrations:

#1.0.0-rc.5 2026-11-01

email Reply-To, development policy

  • Policy: the V1 feature freeze is lifted. Justified, tested and versioned improvements are allowed; production deploys still need explicit authorization.

#1.0.0-rc.4 2026-11-01

import normalization fix

  • Fix (real-user report): an imports_run dry run rejected enum values like Prospect and PROSPECT without suggesting prospect.

#1.0.0-rc.3 2026-11-01

V1 release candidate

  • Security:
  • Operations:
  • Docs:

#1.0.0-rc.2 2026-11-01

V1 release candidate (feature freeze)

  • Imports:
  • Docs:
  • MCP:

#1.0.0-rc.1 2026-11-01

V1 release candidate

  • Security:
  • Imports:
  • MCP: still 46 tools. The only interface change is one new optional argument, on_unresolved_link.

#1.0.0-beta.3 2026-11-01

V1 beta user feedback

  • Dashboard sharing:
  • Batch errors:
  • Composite matching for single records: MCP records_upsert, REST POST /records/upsert-one, CLI records upsert-one --match-on a,b,c.
  • Capabilities:
  • Schema history and undo:
  • Import normalization:
  • Docs: the code (verified in Chromium), the code.
  • Database:
  • MCP: now lists 46 tools (new: records_upsert, dashboards_update, schema_history, schema_undo). Existing tools and arguments are unchanged.

#1.0.0-beta.2 2026-11-01

live data for agent-built dashboards

  • Live data for dashboards (dashboards_create, dashboards_list, dashboards_revoke):
  • Change feed: records_changes / GET /v1/workspaces/{ws}/changes (pull and long-poll).
  • Fixes: Fastify logController (removes the FSTDEP023 warning), and the deploy template now copies install.ps1.
  • MCP: now lists 42 tools.

#1.0.0-beta.1 2026-11-01

V1 Beta candidate

  • Sign in from web AI tools (OAuth 2.1):
  • Discovery: GET /v1/capabilities (no auth) and /openapi.json (generated from the domain schemas). /llms.txt and /skill.md describe OAuth, discovery and recovery.
  • Account recovery: /recover emails a single-use link (30 min) that creates a new account key, optionally revoking all old keys. The answer never reveals whether an account exists.
  • CLI:
  • CI/CD: GitHub Actions ci (typecheck, lint, tests on every push) and release (builds from one commit; tests binaries on macOS, Linux and Windows runners; creates a draft release).
  • Wording: "alpha" becomes "beta" in the product. The synthetic/non-sensitive data restriction stays.
  • Tests: 158. Fixed timing-sensitive and non-root test issues found by CI.

#0.2.0-alpha.9 2026-11-01

existing keys keep working with workspaces

#0.2.0-alpha.8 2026-11-01

several workspaces per account; delete, aggregate, composite keys, schema changes

  • Better batch errors: failed upsert items and import rows carry identifier (match key or first fields), field and, for imports, row. Totals include attempted. records_upsert_batch takes dry_run; imports_run takes atomic (default false, as before) and max_errors.
  • Delete records: records_delete (one, optional version check) and records_delete_batch (≤ 1000 by ids, or by where with a required expected_count; dry_run). Links and attachments are removed; files are kept. New error CONFIRMATION_REQUIRED (409).
  • Composite matching: schema_define_unique_key / schema_remove_unique_key (2-5 fields, enforced and indexed). match_on accepts a list in upserts and imports.
  • Schema changes: schema_update_field (rename, retype with validation, enum values, required, unique, description; dry_run, confirm for lossy) and schema_remove_field (confirm).
  • CLI: records delete, records delete-many, records count, aggregate, schema field-update, field-remove, unique-key-add, unique-key-remove; records upsert --match-on a,b,c --dry-run.
  • Tests: 142 (was 133); fixed a timing-sensitive import test (default 5 s timeout under parallel load).

#0.2.0-alpha.7 2026-11-01

more AI tools

  • agentdb mcp install claude-desktop | windsurf | gemini (plus remove and list). Same keychain-backed agentdb mcp proxy; no keys in config files; other settings kept, backup written.
  • Install output now says what to do next (restart the app, new chat, trusted folder for Gemini).
  • /llms.txt and /skill.md list the new tools. No other server changes.

#0.2.0-alpha.6 2026-10-31

the agentdb CLI

  • Rename: the CLI is agentdb; agentdata keeps working as an alias (rename note on stderr).
  • agentdb login: browser device login (/v1/cli/login/*, page /cli/login), or --api-key (hidden prompt / stdin). Key in the OS credential store. Also logout (revokes keys it was issued), whoami, status.
  • Server: GET /v1/me, POST /v1/me/revoke (a key revokes itself), /skill.md, CLI section in /llms.txt.
  • agentdb mcp install claude|codex|cursor|vscode, mcp list, mcp remove, and mcp proxy (stdio → /mcp with the saved key; no keys in AI tool configs).
  • agentdb records list <object>, agentdb skill print|install claude.

#0.2.0-alpha.5 2026-10-31

file imports

  • New MCP tools and REST routes: imports_start, imports_inspect, imports_run. They import CSV, JSON and JSONL files without putting their contents into tool calls.
  • One-time upload links: valid for 30 minutes, single use, write-only, and not an API key. Use PUT /v1/uploads/{token} (e.g. curl -T), or the browser page /upload/{token} for sandboxes without network access.
  • imports_inspect: columns, detected types, empty and duplicate counts, suggested match keys, the mapping to an existing object, and preview rows.
  • imports_run: reuses the bulk upsert and bulk link operations.
  • Files: stored through the existing AgentFiles path, with type verification, size and storage quotas, and the scanner. application/x-ndjson added to the verified text types.
  • MCP: now 24 tools.

#0.2.0-alpha.4 2026-10-31

  • relationships_link_batch: MCP tool, POST /v1/workspaces/{ws}/links/batch, CLI records link-batch.
  • records_upsert_batch:
  • client_ref: optional on every upsert item and link; echoed in results, errors and BATCH_REJECTED details.
  • CLI:
  • Docs: the code covers the batch rules, retries and a 3-call import recipe, plus the design for inline relationship references (not implemented).

#0.2.0-alpha.3 2026-10-31

  • alpha.agentdb.link/ is now a focused signup screen, not a second landing page. The marketing headline, feature table, steps table and illustration are gone; that content lives on agentdb.link.
  • /assets/illustration.svg removed. Onboarding, the admin panel, /llms.txt, the API and MCP are unchanged.

#0.2.0-alpha.2 2026-10-31

  • Onboarding: after signup, three steps with a sidebar: save the key; pick an AI tool (10 clients, generated setup with copy buttons); run a first task.
  • Agent-first: the landing page offers a prompt that lets a coding agent sign the user up and connect itself; /llms.txt gives plain-text instructions for agents.
  • Closed state: matches the site and links back to agentdb.link. The legal-readiness safeguard is unchanged.
  • Routes: /llms.txt, /favicon.ico, logos, mark and illustration under /assets/. No API, MCP, auth or limit changes.

#0.2.0-alpha.1 2026-10-31

public alpha

  • /: signup page with onboarding. It shows the API URL, workspace and key (once), a ready claude mcp add command, MCP JSON for other clients, a first prompt and a curl check.
  • POST /v1/signup: email + accept_terms gives an account, a workspace and a full-scope key. GET /v1/signup returns the configuration.
  • Abuse controls:
  • accounts, workspaces, usage (records, DB, files), last use, requests, errors and limits since start, the last 50 errors
  • actions: suspend, reactivate, new key, delete
  • Env template: signup settings and public-alpha quotas (100 MiB DB, 250 MiB files, 200 workspaces).
  • Docs: quickstart starts at signup; terms and privacy drafts cover account emails. Invitation docs are marked superseded.

#0.1.0-alpha.3 2026-10-30

#0.1.0-alpha.2 2026-10-30

#0.1.0-alpha.1 2026-10-30

  • Additive typed schema (text, integer, boolean, date, datetime, enum; required and unique fields); relationship types.
  • Records: create, get, update with version checks.
  • Links and one-hop traversal.
  • Typed query DSL with cursor paging.
  • Audit event per mutation.
  • Bounded bulk upsert (≤ 500 items), atomic or per-item, matched by id or unique field.
  • Durable idempotency keys on all mutations.
  • REST v1.
  • MCP (Streamable HTTP, 20 tools), tested with Claude Code.
  • agentdata CLI.
  • Streamed uploads, attachments, authenticated downloads.
  • Verified-type allow-list, quarantine, optional ClamAV.
  • Key revocation and rotation; workspace suspension.
  • Rate and concurrency limits; query deadlines.