{"slug": "show-hn-agentic-data-kernal", "title": "Show HN: Agentic Data Kernal", "summary": "Jason Doyle released Agentic Data Kernel 0.2.0-alpha.1, an open-source data infrastructure system for long-running software agents that manages knowledge, workflow state, and external effects with bitemporal assertions, hybrid retrieval, and PostgreSQL row-level security. The project, forked from a private project and maintained independently, offers development and PostgreSQL runtime profiles and is available via npm as 'agentic-data-kernel'.", "body_md": "Author note, 2 September 2026, Jason DoyleThis project began as a feature forked from a private project and is now maintained independently as open source. The documentation is heavily AI assisted and may contain errors. Verify important behavior against the implementation, tests, and current release before using it in production.\n\nOpen source data infrastructure for long-running software agents.\n\nAgentic Data Kernel keeps knowledge, workflow state, and external effects in a single governed system. It is designed for applications that need to answer:\n\n- What is currently known?\n- When was it valid?\n- Where did it come from?\n- What conflicts with it?\n- Which workflow or external action depended on it?\n\n- Bitemporal assertions with evidence, epistemic kind, perspective, and typed uncertainty\n- Explicit\n`known`\n\n,`unknown`\n\n, and`conflicted`\n\nresolution results - Hybrid lexical, vector, relational, graph, and temporal retrieval\n- Durable workflow state, timers, idempotency, and execution receipts\n- Transactional inventory reservations and payment effect intents\n- Scoped API keys, purpose binding, and PostgreSQL row-level security\n- Encrypted immutable artifact storage with key rotation\n- Authorized effect delivery with budgets, retries, and status reconciliation\n- HTTP, MCP, TypeScript, CLI, and read-only local SQL interfaces\n\n| Use case | What the kernel provides |\n|---|---|\n| Catalog and master-data reconciliation | Source-backed claims, conflicting values, temporal correction, and reviewable resolution |\n| Persistent agent memory | Distinct observations, facts, inferences, decisions, and experiences with provenance |\n| Retail order workflows | Inventory holds, expiry timers, payment effects, idempotent retries, and durable order state |\n| Customer support operations | Tenant-scoped context retrieval, current-state checks, and evidence-linked decisions |\n| Incident response | Temporal observations, hypotheses, workflow history, and controlled remediation effects |\n| Controlled payment automation | Purpose-scoped credentials, effect budgets, authorization fences, and audit receipts |\n\nSee [docs/USE_CASES.md](/Jason-Doyle/agentic-data-kernal/blob/main/docs/USE_CASES.md) for detailed flows and current\nsupport.\n\nThe current release is `0.2.0-alpha.1`\n\n.\n\nTwo runtime profiles are maintained:\n\n**Development profile:** embedded SQLite, loopback HTTP, local MCP, and read-only SQL for inspection.**PostgreSQL profile:** PostgreSQL 18, pgvector, forced tenant isolation, authenticated APIs, encrypted artifacts, provider embeddings, effect workers, TLS, migrations, metrics, backup, restore, and load tooling.\n\nThe PostgreSQL profile targets bounded single-primary deployments. See\n[docs/PRODUCTION.md](/Jason-Doyle/agentic-data-kernal/blob/main/docs/PRODUCTION.md) before exposing it outside a trusted\nenvironment.\n\nInstall the TypeScript library:\n\n```\nnpm install agentic-data-kernel@next\n```\n\nRun the embedded example without cloning the repository:\n\n```\nnpx --yes agentic-data-kernel@next example --db .data\\example.db\n```\n\nPublished prereleases use the npm `next`\n\ntag. Production applications should\npin an exact package version.\n\n``` js\nimport { AgenticKernel, SqliteStore } from \"agentic-data-kernel\";\n\nconst store = new SqliteStore(\".data/app.db\");\nconst kernel = new AgenticKernel(store);\n```\n\nThe npm package provides:\n\n`agentic-data-kernel`\n\nand`agentic-data`\n\nfor the embedded CLI;`agentic-data-prod`\n\nfor production administration and runtime commands;`agentic-data-kernel/production`\n\nfor PostgreSQL integrations.\n\nRequirements:\n\n- Node.js 22.19 or newer\n- npm 10 or newer\n\n```\nnpm install\nnpm run build\nnpm test\nnpm run example\n```\n\nThe sample workflow:\n\n- stores conflicting supplier claims about a product;\n- preserves both claims and returns an explicit conflict;\n- searches across a customer, product, and incident graph;\n- reserves inventory transactionally;\n- creates a durable payment effect;\n- records the provider outcome;\n- confirms the order without duplicating inventory changes on replay.\n\nThe sample database is written to `.data\\example.db`\n\n.\n\nNode's built-in `node:sqlite`\n\nAPI is experimental in Node 22. This affects only\nthe development profile.\n\nBuild:\n\n```\nnpm run build\n```\n\nInitialize a database:\n\n```\nnode --no-warnings dist\\cli.js init --db .data\\agentic.db\n```\n\nExecute an operation:\n\n```\nnode --no-warnings dist\\cli.js execute `\n  --db .data\\agentic.db `\n  --file examples\\put-product.json\n```\n\nInspect state with read-only SQL:\n\n```\nnode --no-warnings dist\\cli.js sql `\n  --db .data\\agentic.db `\n  --query \"SELECT assertion_id, predicate, status FROM assertions\"\n```\n\nThe SQL interface accepts `SELECT`\n\n, `EXPLAIN`\n\n, and schema-inspection PRAGMAs.\n\n```\nnpm run serve\n```\n\nDefault address: `http://127.0.0.1:4318`\n\n| Route | Purpose |\n|---|---|\n`GET /health` |\nLiveness |\n`GET /v1/catalog` |\nSupported operations and guarantees |\n`POST /v1/execute` |\nExecute one Agent Intent operation |\n\nThe development server is loopback-only and has no network SQL route.\n\nStart the development MCP server from a published package:\n\n```\nnpx --yes agentic-data-kernel@next mcp --db .data\\agentic.db\n```\n\nOr start it from a source checkout:\n\n```\nnpm run mcp\n```\n\nIt publishes `agentic-data://catalog`\n\nand these tools:\n\n`execute_intent`\n\n`search_knowledge`\n\n`resolve_claims`\n\n`reserve_inventory`\n\n`get_machine`\n\nUse `npm run prod:mcp`\n\nfor an authenticated PostgreSQL-backed MCP process.\n\n| Example | Command |\n|---|---|\n| TypeScript library | `npm run example:library` |\n| MCP client | `npm run example:mcp` |\n| Authenticated production HTTP | `npm run example:production-http` |\n| Production retail workflow | `npm run example:production-retail` |\n| Embedding provider | `npm run example:embedding` |\n| Embedding protocol helper | `npm run example:mock-embeddings` |\n| Effect receiver contract | `npm run example:mock-effects` |\n\nSetup, environment variables, and receiver contracts are documented in\n[docs/INTEGRATIONS.md](/Jason-Doyle/agentic-data-kernal/blob/main/docs/INTEGRATIONS.md).\n\nRequirements:\n\n- Docker with Compose\n- An OpenAI-compatible 1536-dimensional embedding endpoint\n- Generated database, authentication, and artifact-encryption secrets\n\nUse the versioned production image:\n\n```\nCopy-Item .env.example .env\n.\\scripts\\generate-secrets.ps1\n$env:AGENTIC_DATA_IMAGE = \"ghcr.io/jason-doyle/agentic-data-kernel:0.2.0-alpha.1\"\ndocker compose --profile server pull\ndocker compose --profile server up --no-build\n```\n\nOr build the image from the checked-out source:\n\n```\nCopy-Item .env.example .env\n.\\scripts\\generate-secrets.ps1\ndocker compose --profile server up --build\n```\n\nThe included deployment:\n\n- creates a non-superuser runtime database role;\n- applies checksum-verified migrations separately;\n- initializes artifact-directory ownership;\n- runs the API and effect worker independently;\n- publishes only the Caddy TLS endpoint;\n- keeps PostgreSQL bound to loopback by default.\n\nFull setup and operating procedures are in\n[docs/PRODUCTION.md](/Jason-Doyle/agentic-data-kernal/blob/main/docs/PRODUCTION.md).\n\nVersion 0.1 executes one typed operation per envelope:\n\n```\n{\n  \"protocolVersion\": \"0.1\",\n  \"requestId\": \"claim-1\",\n  \"idempotencyKey\": \"claim-1\",\n  \"principal\": {\n    \"tenantId\": \"example-retail\",\n    \"principalId\": \"catalog-agent\",\n    \"purpose\": \"catalog-ingestion\"\n  },\n  \"operation\": {\n    \"op\": \"assert\",\n    \"assertion\": {\n      \"subjectEntityId\": \"product:sku-17\",\n      \"predicate\": \"packaged_weight\",\n      \"object\": {\n        \"type\": \"number\",\n        \"value\": 4.8,\n        \"unit\": \"kg\"\n      },\n      \"kind\": \"reported_fact\",\n      \"strength\": {\n        \"type\": \"rank\",\n        \"value\": \"normal\"\n      }\n    }\n  }\n}\n```\n\nThe production server derives authority from the authenticated API key and rejects envelopes whose tenant, principal, or purpose does not match.\n\n```\nHTTP / MCP / TypeScript / CLI\n             |\n     Agent Intent validation\n             |\n   identity, scope, purpose\n             |\n knowledge + workflow kernel\n   | assertions and evidence\n   | conflict resolution\n   | hybrid retrieval\n   | timers and state machines\n   | effects and receipts\n             |\n SQLite development adapter\n             or\n PostgreSQL + pgvector + RLS\n```\n\n[Use cases](/Jason-Doyle/agentic-data-kernal/blob/main/docs/USE_CASES.md)[Benefits and tradeoffs](/Jason-Doyle/agentic-data-kernal/blob/main/docs/TRADEOFFS.md)[Integration guide](/Jason-Doyle/agentic-data-kernal/blob/main/docs/INTEGRATIONS.md)[API reference](/Jason-Doyle/agentic-data-kernal/blob/main/docs/API.md)[Production profile](/Jason-Doyle/agentic-data-kernal/blob/main/docs/PRODUCTION.md)[Release process](/Jason-Doyle/agentic-data-kernal/blob/main/docs/RELEASING.md)[Threat model](/Jason-Doyle/agentic-data-kernal/blob/main/docs/THREAT_MODEL.md)[Security policy](/Jason-Doyle/agentic-data-kernal/blob/main/SECURITY.md)[Contributing](/Jason-Doyle/agentic-data-kernal/blob/main/CONTRIBUTING.md)[Support](/Jason-Doyle/agentic-data-kernal/blob/main/SUPPORT.md)[Code of conduct](/Jason-Doyle/agentic-data-kernal/blob/main/CODE_OF_CONDUCT.md)[Changelog](/Jason-Doyle/agentic-data-kernal/blob/main/CHANGELOG.md)\n\n- The included deployment uses one PostgreSQL primary.\n- The default rate limiter is process-local.\n- The vector schema currently requires 1536-dimensional embeddings.\n- Effect receivers must honor idempotency keys.\n- Projection epochs, multi-operation plans, and context-package optimization are not yet implemented.\n\nApache-2.0. See [LICENSE](/Jason-Doyle/agentic-data-kernal/blob/main/LICENSE).", "url": "https://wpnews.pro/news/show-hn-agentic-data-kernal", "canonical_source": "https://github.com/Jason-Doyle/agentic-data-kernal", "published_at": "2026-09-02 16:15:24+00:00", "updated_at": "2026-09-02 16:22:57.133138+00:00", "lang": "en", "topics": ["ai-agents", "ai-infrastructure", "developer-tools"], "entities": ["Jason Doyle", "Agentic Data Kernel", "PostgreSQL", "SQLite", "npm"], "alternates": {"html": "https://wpnews.pro/news/show-hn-agentic-data-kernal", "markdown": "https://wpnews.pro/news/show-hn-agentic-data-kernal.md", "text": "https://wpnews.pro/news/show-hn-agentic-data-kernal.txt", "jsonld": "https://wpnews.pro/news/show-hn-agentic-data-kernal.jsonld"}}