{
  "markdown": "<p align=\"center\">\n  <h1 align=\"center\">ZenBrain</h1>\n  <p align=\"center\"><strong>The neuroscience-inspired memory system for AI agents.</strong></p>\n  <p align=\"center\">7 memory layers. Real neuroscience — FSRS, Hebbian, sleep consolidation, emotional tagging, plus 10 advanced research modules (vmPFC-FSRS, two-factor Hebbian, simulation-selection sleep, Fiedler-value KG health, IB budget, Hopfield STM, ...).<br/>Pure TypeScript. Zero dependencies. 528 tests. Extracted from a production AI platform.</p>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@zensation/algorithms\"><img src=\"https://img.shields.io/npm/v/@zensation/algorithms?color=blue&label=npm\" alt=\"npm version\"></a>\n  <a href=\"https://www.npmjs.com/package/@zensation/algorithms\"><img src=\"https://img.shields.io/npm/dm/@zensation/algorithms?color=blue\" alt=\"npm downloads\"></a>\n  <a href=\"https://github.com/zensation-ai/zenbrain/actions/workflows/ci.yml\"><img src=\"https://github.com/zensation-ai/zenbrain/actions/workflows/ci.yml/badge.svg\" alt=\"CI\"></a>\n  <a href=\"https://github.com/zensation-ai/zenbrain/blob/main/LICENSE\"><img src=\"https://img.shields.io/badge/license-Apache%202.0-blue.svg\" alt=\"License\"></a>\n  <a href=\"https://www.typescriptlang.org/\"><img src=\"https://img.shields.io/badge/TypeScript-5.7+-blue.svg\" alt=\"TypeScript\"></a>\n  <img src=\"https://img.shields.io/badge/dependencies-0-brightgreen.svg\" alt=\"Zero Dependencies\">\n</p>\n\n<p align=\"center\">\n  <sub><strong>Status:</strong> pre-1.0, semver — the public API can still change before <code>1.0</code>.<br/>\n  528 tests green on Node 22, 24 and 26 in CI · every release published to npm with build provenance ·\n  every change recorded in the <a href=\"./CHANGELOG.md\">CHANGELOG</a> · issues and pull requests get a first response typically within 72 hours.</sub>\n</p>\n\n---\n\n<p align=\"center\">\n  <img src=\"docs/demo.gif\" alt=\"ZenBrain Playground Demo\" width=\"700\"/>\n</p>\n\n<p align=\"center\">\n  <strong><a href=\"https://zensation.ai/en/playground\">▶ Try the live playground in your browser</a></strong> — runs this published code, no install required.\n</p>\n\n<details>\n<summary><strong>📄 Paper & Citation</strong> — ZenBrain: A Neuroscience-Inspired 7-Layer Memory Architecture for Autonomous AI Systems</summary>\n\n<br/>\n\n- **arXiv preprint** (cs.AI): [arxiv.org/abs/2604.23878](https://arxiv.org/abs/2604.23878)\n- **Open-access archive** (Zenodo / CERN): [doi.org/10.5281/zenodo.19353663](https://doi.org/10.5281/zenodo.19353663)\n- **ORCID**: [0009-0001-1793-012X](https://orcid.org/0009-0001-1793-012X)\n- **License**: CC BY 4.0 (paper) · Apache-2.0 (code)\n\n```bibtex\n@misc{bering2026zenbrain,\n  title         = {ZenBrain: A Neuroscience-Inspired 7-Layer Memory Architecture for Autonomous AI Systems},\n  author        = {Bering, Alexander},\n  year          = {2026},\n  eprint        = {2604.23878},\n  archivePrefix = {arXiv},\n  primaryClass  = {cs.AI},\n  doi           = {10.5281/zenodo.19353663},\n  url           = {https://arxiv.org/abs/2604.23878}\n}\n```\n\nFeedback, replications, and counter-results are explicitly welcome — please open an issue or reach out via [research@zensation.ai](mailto:research@zensation.ai).\n\n</details>\n\n> **Your AI forgets everything after every conversation.** ZenBrain fixes that — with the same mechanisms your brain uses: spaced repetition, emotional consolidation, Hebbian strengthening, and exponential forgetting curves. Not a vector database with a wrapper. Actual neuroscience.\n\n> **Architecture vs. this package.** ZenBrain's architecture is **15 neuroscience-inspired mechanisms — 9 foundational algorithms + 6 Predictive Memory Architecture (PMA) components** ([paper](https://arxiv.org/abs/2604.23878)). The 6 PMA components are proprietary and run in the production system. **This open-source package ships the algorithm library: 10 core algorithms + 10 advanced research modules (20 modules), zero-dependency.**\n\n---\n\n## Benchmark: LongMemEval-500\n\nOn LongMemEval-500, ZenBrain **wins all nine head-to-head answer-quality comparisons** against\nLetta, Mem0 and A-Mem — three competitors x three LLM judges, under Bonferroni-corrected\nsignificance (alpha = 0.05/18, p_min = 6.2e-31, d in [0.18, 0.52]). It reaches **91.3% of a\nfull-context oracle's binary-judge accuracy at 1/106th of the per-query token cost**\n(47.7% vs. 52.2%).\n\nThe paper prints where ZenBrain loses as well: on LoCoMo, substring-based aggregate F1 favours\nlexical retrieval (BM25) by metric design, and we do not contest that. The advantage is most\npronounced on judge-graded answer quality and cross-session reasoning.\n\n**The mechanism comparison further down re-runs from this repository in under a minute** —\n`bash scripts/compare-mechanisms.sh`, no API keys and nothing to install. It prints a positive\nand a negative control before the result, so the instrument can be checked before its output\nis trusted. The method, the effect sizes and the ablations behind the numbers above are in the\npaper; this repository does not yet ship a runner for them.\n\n- Method, effect sizes and ablations: [arXiv:2604.23878](https://arxiv.org/abs/2604.23878)\n- Open-access archive: [10.5281/zenodo.19353663](https://doi.org/10.5281/zenodo.19353663)\n\n---\n\n## How ZenBrain differs from Mem0, Letta and Zep\n\nZenBrain implements fifteen mechanisms taken from human memory research. No system among those\nsurveyed in the paper integrates more than two of them. The table below records which of the\nmechanisms appear in the public source of three widely used memory systems, at pinned versions,\non a fixed date.\n\n| Mechanism | ZenBrain | Mem0 | Letta | Zep |\n|---|:--:|:--:|:--:|:--:|\n| FSRS spaced repetition | yes | — | — | — |\n| Hebbian learning | yes | — | — | — |\n| Ebbinghaus forgetting curves | yes | — | — | — |\n| Sleep consolidation | yes | — | — | — |\n| Emotional tagging | yes | — | — | — |\n| Zero runtime dependencies | yes | — | — | — |\n\n<sub><strong>How this was measured, 27 August 2026.</strong> Full-text search over the\nchecked-out public source of <a href=\"https://github.com/mem0ai/mem0\">mem0ai/mem0</a>\n(npm <code>mem0ai</code> 3.1.7, PyPI <code>mem0ai</code> 2.0.19),\n<a href=\"https://github.com/letta-ai/letta-code\">letta-ai/letta-code</a>\n(npm <code>@letta-ai/letta-code</code> 0.31.2) and\n<a href=\"https://github.com/getzep/zep\">getzep/zep</a>, lockfiles excluded. A dash means\n<strong>the term does not occur in that snapshot</strong> — not that the system cannot do\nsomething comparable under another name. Dependency counts are declared direct dependencies:\n<code>@zensation/core</code> resolves to two packages, both our own; <code>mem0ai</code>\ndeclares four, <code>@letta-ai/letta-code</code> eighteen. Re-run the whole check yourself with\n<a href=\"./scripts/compare-mechanisms.sh\"><code>scripts/compare-mechanisms.sh</code></a>; it\nprints its own positive and negative controls so you can see the instrument works before you\ntrust the result.</sub>\n\nHuman memory does not work like a key-value store. The brain keeps specialised systems for\ndifferent kinds of memory, forgets actively, modulates by emotion and retrieves by context.\nZenBrain brings those mechanisms to AI agents.\n\n### Advanced algorithms (since v0.3.0, May 2026)\n\nOn top of the 10 core algorithms above, `@zensation/algorithms` ships 10 advanced algorithms grounded in recent neuroscience and ML research. Each is exposed as its own sub-path (`@zensation/algorithms/<name>`) and remains zero-dependency:\n\n- **`fsrs-vmPFC`** — Prediction-Error coupled FSRS\n- **`hebbian-two-factor`** — Two-Factor synaptic consolidation\n- **`sleep-simulation-selection`** — RL-based replay selection\n- **`spectral-health`** — Fiedler-value KG health monitor\n- **`ib-budget`** — Information-Bottleneck retention budget\n- **`dopamine-routing`** · **`hopfield-stm`** · **`personalized-pagerank`** · **`surprise-gradient-memory`** · **`temporal-multi-route`**\n\nSee [`CHANGELOG.md`](./CHANGELOG.md#030--2026-05-08) for details.\n\n## Quick Start\n\n> **Requires Node.js 22 or newer** (since `0.4.0`). On Node 20 or older, npm silently installs the last\n> compatible release (`@zensation/algorithms@0.3.4`, `@zensation/core@0.2.2`) instead of the current one —\n> which looks like a broken package but is a platform mismatch. See [CHANGELOG](./CHANGELOG.md#040--2026-08-05).\n\n```bash\nnpm install @zensation/algorithms\n```\n\n```typescript\nimport {\n  initFromDecayClass,\n  getRetrievability,\n  updateAfterRecall,\n  tagEmotion,\n  computeEmotionalWeight,\n  computeHebbianStrengthening,\n  propagateForRelation,\n} from '@zensation/algorithms';\n\n// 1. Schedule a memory with FSRS\nconst memory = initFromDecayClass('normal_decay');\n\n// 2. A week later, check recall probability (Ebbinghaus curve)\nconst aWeekLater = new Date(Date.now() + 7 * 24 * 60 * 60 * 1000);\nconst retention = getRetrievability(memory, aWeekLater);\nconsole.log(`Recall probability: ${(retention * 100).toFixed(1)}%`);\n// ~36.8% — retrievability has decayed over the week\n\n// 3. User recalled it anyway — update scheduling\nconst updated = updateAfterRecall(memory, 4, retention, aWeekLater);\n// stability 7 -> 8.19: recalling at low retrievability gives a bigger boost\n\n// 4. Tag emotional significance\nconst emotion = tagEmotion('I am absolutely thrilled — I got the promotion!');\nconst weight = computeEmotionalWeight(emotion);\nconsole.log(`Decay multiplier: ${weight.decayMultiplier}x`);\n// 2.7x — emotional memories decay nearly 3x slower\n\n// 5. Strengthen knowledge connections (Hebbian)\nconst stronger = computeHebbianStrengthening(1.0);\n// 1.09 — \"neurons that fire together wire together\"\n\n// 6. Propagate confidence through your knowledge graph\nconst confidence = propagateForRelation(0.5, 0.8, 1.0, 'supports');\n// 0.9 — supporting evidence increases confidence\n```\n\n### Want the advanced algorithms?\n\n```typescript\nimport {\n  computeKGPredictionError,\n  computeAdaptiveFSRSInterval,\n} from '@zensation/algorithms/fsrs-vmPFC';\n\n// Couple FSRS scheduling with the prediction-error signal from your\n// knowledge graph: when the embedding has shifted a lot since the last\n// review (high cosine distance), shrink the next interval; otherwise push\n// it out. Both arrays must have the same length.\nconst lastEmbedding = [0.1, 0.2, 0.3, 0.4];\nconst currentEmbedding = [0.5, 0.4, 0.1, 0.2];\nconst pe = computeKGPredictionError(lastEmbedding, currentEmbedding);\nconst nextInterval = computeAdaptiveFSRSInterval(14, pe);\n```\n\nEach advanced algorithm has its own sub-path (`@zensation/algorithms/spectral-health`, `@zensation/algorithms/ib-budget`, …). All zero dependencies.\n\n## Runnable examples\n\nFive self-contained examples live in [`examples/`](./examples):\n\n| Example | Shows |\n|---|---|\n| [`basic-chatbot.ts`](./examples/basic-chatbot.ts) | Working Memory + Short-Term Memory for conversation context — no SDK needed |\n| [`with-claude.ts`](./examples/with-claude.ts) | An Anthropic Claude assistant that remembers across conversations |\n| [`with-langchain.ts`](./examples/with-langchain.ts) | ZenBrain as the memory backend of a LangChain agent |\n| [`with-crewai.ts`](./examples/with-crewai.ts) | Multiple agents sharing Working Memory, with Hebbian strengthening |\n| [`with-vercel-ai.ts`](./examples/with-vercel-ai.ts) | A memory-aware system prompt for the Vercel AI SDK `streamText` pattern |\n\n```bash\nnpx tsx examples/basic-chatbot.ts\n```\n\nThe integration examples additionally need their respective SDK installed. Want a LlamaIndex.TS or Mastra example? Those are open as [good first issues](https://github.com/zensation-ai/zenbrain/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).\n\n## The Science Behind It\n\n### 7-Layer Memory Architecture\n\n```\nLayer 7: Cross-Context Memory    ← Shared knowledge across domains\nLayer 6: Core Memory             ← Pinned facts (Letta-style)\nLayer 5: Procedural Memory       ← \"How to do X\" (skills & workflows)\nLayer 4: Long-Term Semantic      ← Facts with FSRS scheduling\nLayer 3: Episodic Memory         ← Concrete experiences & events\nLayer 2: Short-Term / Session    ← Current conversation context\nLayer 1: Working Memory          ← Active task focus (7±2 items)\n```\n\nEach layer has different retention characteristics, consolidation rules, and retrieval mechanisms — just like the human brain.\n\n### FSRS Spaced Repetition\n\n[FSRS](https://github.com/open-spaced-repetition/fsrs4anki) (Free Spaced Repetition Scheduler) outperforms SM-2 by 30%. It uses the **desirable difficulty** principle: reviewing when retention is low gives a bigger stability boost. Your AI reviews important facts at optimal intervals — never too early (wasteful), never too late (forgotten).\n\n### Emotional Memory\n\nThe amygdala modulates memory consolidation — emotional events are remembered more vividly (flashbulb memory). ZenBrain's emotional tagger assigns arousal, valence, and significance scores using a 400+ keyword lexicon (English & German). Emotional memories get up to **3x longer** decay half-lives.\n\n### Hebbian Learning\n\n\"Neurons that fire together wire together\" (Hebb, 1949). Knowledge graph edges that are frequently co-activated grow stronger. Unused edges decay and eventually get pruned. The result: a self-organizing knowledge structure that reflects actual usage patterns, with homeostatic normalization to prevent runaway growth.\n\n### Ebbinghaus Forgetting Curves\n\nEbbinghaus (1885) showed that memory decays exponentially: `R = e^(-t/S)`. ZenBrain implements personalized decay profiles that adapt to individual learning patterns, with SM-2 compatibility for existing spaced repetition systems.\n\n### Context-Dependent Retrieval\n\nTulving's Encoding Specificity Principle (1973): memories are recalled better when the retrieval context matches the encoding context. ZenBrain captures temporal context (time of day, day of week) and task type at encoding time, providing up to a **30% retrieval boost** when contexts match.\n\n### Bayesian Confidence Propagation\n\nKnowledge isn't isolated — facts support or contradict each other. ZenBrain propagates confidence through your knowledge graph using Bayesian belief updates: supporting evidence increases confidence, contradictions decrease it, with damping for numerical stability.\n\n### Sleep Consolidation\n\nDuring sleep, the hippocampus replays recent experiences, strengthening important memories and pruning weak connections (Stickgold & Walker, 2013). ZenBrain simulates this process: `selectForReplay()` prioritizes emotional and recently-accessed memories, `simulateReplay()` boosts their stability by 50%, and `pruneWeakConnections()` removes weak Hebbian edges — implementing the Synaptic Homeostasis Hypothesis (Tononi & Cirelli, 2006).\n\n```typescript\nimport { selectForReplay, simulateReplay } from '@zensation/algorithms/sleep-consolidation';\n\n// Select memories for overnight consolidation\nconst toReplay = selectForReplay(allMemories);\n// Simulate sleep replay — stability ↑, weak edges pruned\nconst result = simulateReplay(toReplay);\nconsole.log(`Replayed ${result.summary.totalReplayed} memories, avg stability +${result.summary.avgStabilityIncrease.toFixed(1)} days`);\n```\n\n### Memory Coordinator\n\nThe `MemoryCoordinator` orchestrates all 7 layers into a single cohesive system — inspired by Global Workspace Theory (Baars, 1988):\n\n```typescript\nimport { MemoryCoordinator } from '@zensation/core';\n\nconst memory = new MemoryCoordinator({ storage: adapter, embedding: embedder });\n\n// Auto-routes to the right layer (semantic, episodic, procedural, or core)\nawait memory.store('User prefers TypeScript', { type: 'auto' });\n\n// Cross-layer search with ranked, deduplicated results\nconst results = await memory.recall('programming preferences');\n\n// Consolidate: promote episodic → semantic, apply decay\nawait memory.consolidate();\n\n// FSRS review queue across all layers\nconst dueItems = await memory.getReviewQueue();\n```\n\n## Packages\n\n| Package | Description | Status |\n|---------|-------------|--------|\n| [`@zensation/algorithms`](https://www.npmjs.com/package/@zensation/algorithms) · [source](./packages/algorithms) | 20 algorithm modules — 10 core (FSRS, Hebbian, Ebbinghaus, emotional, Bayesian, sleep consolidation, intervals, visualization) + 10 advanced (vmPFC-FSRS, two-factor Hebbian, IB budget, Hopfield STM, …) | :white_check_mark: Published |\n| [`@zensation/core`](https://www.npmjs.com/package/@zensation/core) · [source](./packages/core) | Memory layers, coordinator, adapter interfaces | :white_check_mark: Published |\n| [`@zensation/adapter-postgres`](https://www.npmjs.com/package/@zensation/adapter-postgres) · [source](./packages/adapters/postgres) | PostgreSQL + pgvector storage adapter | :white_check_mark: Published |\n| [`@zensation/adapter-sqlite`](https://www.npmjs.com/package/@zensation/adapter-sqlite) · [source](./packages/adapters/sqlite) | SQLite storage adapter (zero-config) | :white_check_mark: Published |\n| [`@zensation/mcp`](https://www.npmjs.com/package/@zensation/mcp) · [source](./packages/mcp) | MCP server — gives any MCP client (Claude Desktop, Claude Code, Cursor) the seven layers as four tools. Carries the protocol SDK, so the core stays dependency-free | :white_check_mark: Published |\n| [`@zensation/ai-sdk`](https://www.npmjs.com/package/@zensation/ai-sdk) · [source](./packages/ai-sdk) | Vercel AI SDK middleware — recall before the model call, store after it. Works with any provider, **zero runtime dependencies** | :white_check_mark: Published |\n\n### Tree-Shakeable Imports\n\nEvery algorithm is available as a subpath export:\n\n```typescript\n// Import everything\nimport { tagEmotion, updateAfterRecall } from '@zensation/algorithms';\n\n// Or just what you need (better tree-shaking)\nimport { updateAfterRecall } from '@zensation/algorithms/fsrs';\nimport { tagEmotion } from '@zensation/algorithms/emotional';\nimport { computeHebbianStrengthening } from '@zensation/algorithms/hebbian';\nimport { propagateForRelation } from '@zensation/algorithms/bayesian';\nimport { selectForReplay } from '@zensation/algorithms/sleep-consolidation';\nimport { getRetrievabilityWithCI } from '@zensation/algorithms/intervals';\nimport { generateRetentionCurve } from '@zensation/algorithms/visualization';\n```\n\n## Use Cases\n\n### AI Chatbots with Long-Term Memory\n\n```typescript\nimport { updateAfterRecall, getRetrievability, scheduleNextReview } from '@zensation/algorithms/fsrs';\nimport { tagEmotion, computeEmotionalWeight } from '@zensation/algorithms/emotional';\n\n// When your AI learns a fact about the user:\nfunction rememberFact(fact: string) {\n  const memory = initFromDecayClass('normal_decay');\n  const emotion = tagEmotion(fact);\n  const weight = computeEmotionalWeight(emotion);\n\n  // Emotional facts get longer retention\n  return {\n    ...memory,\n    emotionalWeight: weight.consolidationWeight,\n    decayMultiplier: weight.decayMultiplier,\n  };\n}\n\n// Before each conversation, check what needs reinforcement:\nfunction getFactsDueForReview(facts: MemoryState[]) {\n  return facts.filter(f => getRetrievability(f) < 0.7);\n}\n```\n\n### Knowledge Graph with Self-Organizing Edges\n\n```typescript\nimport { computeHebbianStrengthening, computeHebbianDecay } from '@zensation/algorithms/hebbian';\nimport { propagateForRelation } from '@zensation/algorithms/bayesian';\n\n// When two concepts are mentioned together:\nfunction coActivate(edge: { weight: number }) {\n  edge.weight = computeHebbianStrengthening(edge.weight);\n}\n\n// Periodic maintenance — decay unused edges:\nfunction decayEdges(edges: { weight: number; lastUsed: Date }[]) {\n  for (const edge of edges) {\n    edge.weight = computeHebbianDecay(edge.weight);\n    // Edges below MIN_WEIGHT (0.1) can be pruned\n  }\n}\n```\n\n### RAG with Confidence Scoring\n\n```typescript\nimport { propagateForRelation, isSignificantChange } from '@zensation/algorithms/bayesian';\n\n// After retrieval, propagate confidence through related facts:\nfunction updateConfidenceGraph(facts: Fact[], relations: Relation[]) {\n  for (const rel of relations) {\n    const newConf = propagateForRelation(\n      rel.target.confidence,\n      rel.source.confidence,\n      rel.weight,\n      rel.type // 'supports' | 'contradicts' | 'related_to'\n    );\n    if (isSignificantChange(newConf, rel.target.confidence)) {\n      rel.target.confidence = newConf;\n    }\n  }\n}\n```\n\n## Extracted From Production\n\nThese aren't toy implementations — ZenBrain's algorithms are extracted from [ZenAI](https://zensation.ai), a production AI platform. Everything claimed here is verifiable in this repository:\n\n- **528 tests** (429 algorithms + 99 core), all passing\n- **Zero runtime dependencies** — pure TypeScript, dual ESM + CJS, tree-shakeable subpath exports\n- **Reproducible** — building from this source produces the same 153-file `@zensation/algorithms@0.4.2` tarball published on npm\n- **7-layer** memory architecture grounded in published neuroscience\n\n## Contributing\n\nWe welcome contributions! See [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines.\nIssues and pull requests get a first response typically within 72 hours.\n\n**Resources:** [API Reference](./docs/api-reference.md) | [Recipes](./docs/recipes.md) | [Architecture](./docs/architecture.md) | [Benchmarks](./docs/benchmarks.md) | [FAQ](./docs/FAQ.md) | [Roadmap](./docs/ROADMAP.md)\n\n```bash\n# Clone the repo\ngit clone https://github.com/zensation-ai/zenbrain.git\ncd zenbrain\n\n# Install dependencies\nnpm install\n\n# Run tests\nnpm test\n\n# Build all packages\nnpm run build\n```\n\n## Research\n\nZenBrain's architecture and algorithms are documented in an open-access technical disclosure:\n\n- **arXiv preprint** (cs.AI): [arxiv.org/abs/2604.23878](https://arxiv.org/abs/2604.23878)\n- **Open-access archive:** [ZenBrain: A Neuroscience-Inspired 7-Layer Memory Architecture for Autonomous AI Systems](https://doi.org/10.5281/zenodo.19353663) (Zenodo, DOI: [10.5281/zenodo.19353663](https://doi.org/10.5281/zenodo.19353663) — resolves to the latest version)\n- **TDCommons:** [Technical Disclosure](https://www.tdcommons.org/dpubs_series/9683) (CC BY 4.0)\n- **HuggingFace:** [Model Card & Benchmarks](https://huggingface.co/zensation-ai/zenbrain)\n\nIf you use ZenBrain in academic work, please cite:\n\n```bibtex\n@misc{bering2026zenbrain,\n  title         = {ZenBrain: A Neuroscience-Inspired 7-Layer Memory Architecture for Autonomous AI Systems},\n  author        = {Bering, Alexander},\n  year          = {2026},\n  eprint        = {2604.23878},\n  archivePrefix = {arXiv},\n  primaryClass  = {cs.AI},\n  doi           = {10.5281/zenodo.19353663},\n  url           = {https://arxiv.org/abs/2604.23878}\n}\n```\n\n## Community\n\n- **GitHub Discussions**: [Ask a question, show what you built](https://github.com/zensation-ai/zenbrain/discussions) — help, show-and-tell, feature requests\n- **GitHub Issues**: [Bug reports & feature requests](https://github.com/zensation-ai/zenbrain/issues)\n- **Email**: open-source@zensation.ai\n\n## License\n\n[Apache 2.0](./LICENSE) — use it in production, modify it, distribute it. Just keep the attribution.\n\n---\n\n<p align=\"center\">\n  Built by <a href=\"https://zensation.ai\">ZenSation</a> in Kiel, Germany.\n</p>\n",
  "bytes": 23049,
  "sha": "7bb3b0a8ccb28393144cbef77a9fc448169918a06132d42155229a0299d80472",
  "repo_slug": "zensation-ai/zenbrain",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_ai_zensation_zenbrain_da567312/readme"
}