lively4-core CLAUDE.md

Repository instructions for LivelyKernel’s lively4-core project, including its object-oriented code structure and rules for working with the codebase. LivelyKernel is a programming environment whose components use classes and inheritance.

In plain words
What is it for?
Use them when modifying Lively4 classes, shared base components, inherited behavior, parent-child state propagation, database write guards, or repository workflows.
Why use it?
They help an agent make changes that fit the project’s existing architecture instead of duplicating logic or updating only part of a component hierarchy. They also document important Git safety rules and commands.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/livelykernel/lively4-core/claude-md
Clone the repo
git clone --depth 1 https://github.com/LivelyKernel/lively4-core
Per session 5,158 This file is loaded in full into every session.
When invoked 5,158 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.05158 $0.05158
Opus 5 $0.02579 $0.02579
Sonnet 5 $0.01032 $0.01032
Haiku 4.5 $0.00516 $0.00516

Measured 3d ago against content hash 0576978bb253, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

lively4-core CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 490 lines

How it starts

The opening of the file, as written. The whole thing — 490 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

IMPORTANT: Object-Oriented Architecture

This is NOT a typical functional JavaScript project!

Lively4 follows object-oriented principles with class hierarchies and inheritance:

  • Use inheritance properly: If functionality needs to be shared, put it in the base class
  • Single source of truth: Don't duplicate methods across subclasses - use the parent class
  • Polymorphism: Subclasses inherit and can override parent methods when needed
  • Class hierarchy matters: LivelyChatOpenaiRealtimeChat, LivelyOpencode, LivelyAiWorkspace

Example: Database Write Guards

  • ❌ WRONG: Add canWriteToDatabase() to each component separately
  • ✅ RIGHT: Add canWriteToDatabase() to LivelyChat base class, all subclasses inherit it

Example: Composition Pattern - Propagating State

When a parent component contains child components, state changes must be explicitly propagated:

// ❌ WRONG: Only set state on parent
enableReplay() {
  this._replayMode = true;  // Only affects parent, children still write to DB!
}

// ✅ RIGHT: Propagate state to composed children
enableReplay() {
  this._replayMode = true;

  // CRITICAL: Propagate to child components
  this.realtimeComponent._replayMode = true;
  this.opencodeComponent._replayMode = true;
}

disableReplay() {
  this._replayMode = false;

  // CRITICAL: Clear from child components
  if (this.realtimeComponent) this.realtimeComponent._replayMode = false;
  if (this.opencodeComponent) this.opencodeComponent._replayMode = false;
}

Key principle: Child components don't automatically inherit instance variables from their container. State must be explicitly synchronized in composition relationships.

When you find yourself duplicating code across components that share a base class, STOP and move it to the parent class instead.

AI Collaboration Experiment

A significant part of this AI collaboration is an experiment to teach Claude Code how to develop in Lively4. By working together on real development tasks, we are:

Read the full file on GitHub · 490 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 490 lines · 5,158 tokens per session scan A 0576978bb253

Subscribe to this mod's changes

lively4-core CLAUDE.md is an instructions file published in the GitHub repository LivelyKernel/lively4-core (88 stars, last pushed 10d ago), licensed MIT. It adds 5,158 tokens to every session, about $0.0258 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.