rock-lobster
v0.2.0
Published
Autonomous operations agent for repository management
Maintainers
Readme
🦞 Rock Lobster
Autonomous operations agent. Self-coordinating. Privacy-preserving. Built on Praxis.
What Is This?
Rock Lobster is the next generation of OpenClaw's lobster plugin — reimagined as a standalone autonomous ops agent built on the Plures stack. It doesn't need a gateway. It doesn't need a cloud. It coordinates work across repos, teams, and machines using Praxis rules and P2P sync.
Quick Start
# Install dependencies
npm install
# Build the project
npm run build
# Run tests
npm test
# Run the example (from the compiled output)
node dist/examples/memory-usage.jsWhy "Rock Lobster"?
Because lobster was a scheduler plugin. Rock Lobster is a self-aware operations agent that:
- 📋 Plans — Uses Praxis rules to decide what work matters, when, and who does it
- 🧠 Remembers — SLM captures decisions, patterns, and lessons learned
- 🔄 Coordinates — PluresDB sync keeps multiple agents in lockstep
- 🔒 Respects boundaries — OASIS PPE governs what data flows where
- 🤖 Delegates — Assigns work to Copilot, subagents, or human reviewers
Architecture
┌─────────────────────────────────────────┐
│ Rock Lobster Agent │
│ │
│ ┌───────────┐ ┌───────────────────┐ │
│ │ Praxis │ │ Work Rotation │ │
│ │ Rules │──│ Engine │ │
│ │ │ │ (repos.yaml → │ │
│ │ schedule │ │ daily tasks) │ │
│ │ delegate │ └───────────────────┘ │
│ │ escalate │ │
│ │ learn │ ┌───────────────────┐ │
│ └───────────┘ │ SLM Memory │ │
│ │ (patterns, fixes, │ │
│ ┌───────────┐ │ decisions) │ │
│ │ PluresDB │ └───────────────────┘ │
│ │ (state, │ │
│ │ sync, │ ┌───────────────────┐ │
│ │ tasks) │ │ Integrations │ │
│ └───────────┘ │ GitHub · Email │ │
│ │ Slack · Calendar │ │
│ └───────────────────┘ │
└─────────────────────────────────────────┘
↕ Hyperswarm P2P ↕
┌─────────────────────────────────────────┐
│ Other Rock Lobster instances │
│ (work machine, home, CI runner) │
└─────────────────────────────────────────┘Core Capabilities
Work Rotation Engine
Replaces tier-based repo handling with equal rotation:
- Every repo gets scheduled time (design → issues → strategy → roadmap)
- Dormant repos flagged for archive review
- Configurable via
repos.yamlregistry
Praxis Rule Modules
# Schedule rules
WHEN day_of_week(tuesday) AND repo_status(R, "active")
AND assigned_day(R, tuesday)
THEN work_mode(R, "design") PRIORITY 1
# Delegation rules
WHEN issue(I) WITH label(I, "copilot") AND NOT assigned(I, "Copilot")
THEN assign(I, "Copilot") AND comment(I, "Assigned to Copilot coding agent")
# Escalation rules
WHEN pr(P) WITH age(P, >48h) AND status(P, "failing")
THEN escalate(P, "human") AND notify("Stale PR needs attention")
# Learning rules
WHEN error_pattern(E) WITH occurrences(E, >3)
THEN create_issue("recurring error", E) AND store_memory(E, "error-fix")Privacy-Aware Coordination
- Work machine agent sees only work repos (PPE enforced)
- Home agent handles personal repos + cross-cutting ops
- CI agent has read-only access to all repos for monitoring
- No agent sees more than its trust level allows
SLM Integration (Phase 2 - Implemented)
Rock Lobster now includes comprehensive memory integration for operational intelligence:
Four Memory Categories:
- Error-Fix: Captures error patterns and their fixes from CI failures, PR issues
- Repository Context: Stores build systems, dependencies, quirks, and workflows
- Human Preferences: Learns from overrides, code style, and communication preferences
- Temporal Patterns: Tracks when operations succeed/fail (time-based patterns)
Key Features:
- ✅ Memory capture for all operational events
- ✅ Smart querying and similarity search
- ✅ Delegation decision support with context
- ✅ Learning from delegation outcomes
- ✅ Relevance scoring and memory expiration
- ✅ Comprehensive test coverage
Usage Example:
import { createMemorySystem } from './src/memory';
const memory = createMemorySystem();
// Capture an error-fix pattern
await memory.errorCapture.captureCIFailure({
repository: 'plures/praxis',
workflowName: 'CI',
errorMessage: 'Type error in rules.ts',
fixDescription: 'Added type annotation',
});
// Get delegation context
const context = await memory.delegationHelper.getTaskContext({
repository: 'plures/praxis',
taskType: 'bug_fix',
description: 'Fix type error',
});See src/memory/README.md for detailed documentation.
Relationship to OpenClaw Lobster
| Feature | Lobster (OpenClaw) | Rock Lobster |
|---------|-------------------|--------------|
| Scheduling | Cron expressions | Praxis temporal rules |
| State | Ephemeral (session) | Persistent (PluresDB) |
| Memory | None | SLM auto-capture |
| Multi-machine | Not supported | P2P sync |
| Privacy | None | OASIS PPE |
| Delegation | @copilot comments | Proper assignment + tracking |
| Learning | None | Error-fix pairs, pattern recognition |
| Configuration | JSON config | repos.yaml + Praxis facts |
Phases
| Phase | Focus | Timeline | |-------|-------|----------| | 1 | Core: Praxis rules + work rotation + GitHub integration | Weeks 1-6 | | 2 | Memory: SLM integration + pattern learning + error tracking | Weeks 7-12 | | 3 | Network: Multi-machine sync + PPE + agent coordination | Weeks 13-18 | | 4 | Intelligence: Predictive scheduling + auto-strategy + reporting | Weeks 19-24 |
License
AGPL-3.0 — See LICENSE
