Contributing

We welcome contributions! Here's how to get started.

Development Setup

# Clone the monorepo
git clone https://github.com/monasprox/epistemic.git
cd epistemic

# Install dependencies
pnpm install

# Build the plugin
pnpm --filter @openclaw/memory-claw build

# Run tests
pnpm --filter @openclaw/memory-claw test

Project Structure

extensions/memory-claw/
├── src/
│   ├── index.ts          # Plugin entry point
│   ├── pipeline/         # L0–L5 pipeline layers
│   ├── tools/            # 11 tool implementations
│   ├── storage/          # LanceDB integration
│   ├── decay/            # Temporal decay engine
│   └── types.ts          # TypeScript type definitions
├── tests/                # Test suite
├── docs/                 # This documentation site
└── package.json

Guidelines

  • Write tests for new features
  • Follow the existing code style (Biome linter)
  • Keep PRs focused — one feature or fix per PR
  • Update documentation for user-facing changes
  • Add changelog entries

Reporting Issues

File issues on GitHub Issues with:

  • OpenClaw version and epistemic plugin version
  • Steps to reproduce
  • Expected vs. actual behavior
  • Relevant logs (from epistemic_health or container logs)