Skip to content
/

Continuous Claude

continuous-claude-parcadei · parcadei/Continuous-Claude-v3 · ★ 3.8k · last commit 2026-01-26

Compound learning across Claude Code sessions via PostgreSQL memory extraction from thinking blocks, YAML handoffs for session transfer, 32 specialized agents, and 109 skills with natural-language activation.

Best whenThinking blocks contain the real reasoning; extracting them automatically via a background daemon creates compounding knowledge that makes each session smart…
Skip ifCompacting context (losing reasoning), Plugin sprawl (MCP tools that clash with context)
vs seeds
superpowers(skills-only behavioral framework for Claude Code) but 7x the skill count (109 vs 14), adds PostgreSQL+pgvector global m…
Primitive shape 171 total
Skills 109 Subagents 32 Hooks 30
00

Summary

Continuous Claude (parcadei) — Summary

Continuous Claude transforms Claude Code into a continuously-learning multi-agent development environment. Its mantra is "compound, don't compact": instead of losing context on compaction, the system extracts learnings automatically to PostgreSQL+pgvector via a background daemon, creates YAML handoff documents for cross-session continuity, and routes tasks to 32 named specialized agents (scout, oracle, kraken, aegis, maestro, etc.). With 109 skills, 30 hooks (many written in Python/TypeScript), a 5-layer TLDR code analysis system, and a natural-language skill activation engine (hook-injected suggestions via UserPromptSubmit), it is the most comprehensive single-developer AI harness in this batch. At 3,789 GitHub stars, it occupies the "maximum Claude Code power user" niche.

differs_from_seeds: Most similar to superpowers (skills-only behavioral framework) but 7x the skill count and adds PostgreSQL memory, 32 named sub-agents, a background daemon, and a multi-model memory extraction pipeline. Compared to ccmemory (the memory seed), Continuous Claude uses PostgreSQL+pgvector instead of Neo4j, extracts thinking-block reasoning rather than typed conversation nodes, and operates through a Python daemon rather than an MCP server. The YAML handoff format (400 tokens vs ~2000 for markdown) is a novel efficiency innovation not present in any seed.

01

Overview

Continuous Claude (parcadei) — Overview

Origin

Created by parcadei. MIT license. Python + TypeScript. Active January 2026. 3,789 stars.

Philosophy

"The mantra: Compound, don't compact. Extract learnings automatically, then start fresh with full context."

"An agent is five things: Prompt + Tools + Context + Memory + Model. We optimize each."

"We resist plugin sprawl. Every MCP, subscription, and tool you add promises improvement but risks breaking context, tools, or prompts through clashes."

The "Anti-Complexity" principle is interesting given how feature-rich Continuous Claude itself is: it resists external tool accumulation while building a rich internal tool suite.

Core Problems Solved

Problem Solution
Context loss on compaction YAML handoffs (400 tokens vs ~2000 for markdown)
Starting fresh each session Memory daemon auto-extracts learnings from thinking blocks
Reading entire files burns tokens 5-layer TLDR code analysis + semantic index
Complex tasks need coordination 32 named agents with meta-skill orchestration
Repeating workflows manually 109 skills with natural language triggers

Memory Philosophy

"The key insight: thinking blocks contain the real reasoning — not just what Claude did, but why. The daemon extracts this automatically."

This is distinct from ccmemory's approach (which captures from conversation nodes) — Continuous Claude specifically targets Claude's extended thinking output, which contains richer reasoning than the final responses.

"Continuous" Meaning

The name is a pun: continuous because Claude maintains state across sessions; compounding because each session makes the system smarter (learnings accumulate like compound interest).

02

Architecture

Continuous Claude (parcadei) — Architecture

Distribution

Standalone repo — clone + run setup wizard. Not an npm package or plugin.

Install

git clone https://github.com/parcadei/Continuous-Claude-v3.git
cd Continuous-Claude-v3/opc
uv run python -m scripts.setup.wizard

12-step wizard: backup existing config → check prerequisites (Docker, Python, uv) → database + API keys → start Docker stack → run migrations → install Claude Code integration (32 agents, 109 skills, 30 hooks) → math features (SymPy, Z3, Pint) → TLDR tool → diagnostics + Loogle.

Directory Layout

.claude/
├── agents/          # 32 named agent .md + optional .json config files
├── hooks/           # 30+ hook scripts (Python, TypeScript, shell)
│   ├── session-start-continuity.sh
│   ├── skill-activation-prompt.sh
│   ├── memory-awareness.sh
│   ├── pre-compact-continuity.sh
│   ├── post-edit-diagnostics.sh
│   └── ...
├── skills/          # 109 skill directories
│   ├── create_handoff/SKILL.md
│   ├── resume_handoff/SKILL.md
│   ├── recall/SKILL.md
│   ├── remember/SKILL.md
│   ├── tldr-code/SKILL.md
│   └── ...
├── settings.json    # Hook registration + permissions
└── mcp_config.json  # MCP server configuration

opc/
├── docker/          # PostgreSQL + pgvector Docker Compose
├── pyproject.toml   # Python dependencies (uv)
└── scripts/
    ├── setup/wizard.py
    ├── core/recall_learnings.py
    └── core/store_learning.py

thoughts/
└── shared/
    └── handoffs/    # YAML handoff documents
        └── {session-name}/
            └── YYYY-MM-DD_HH-MM_{description}.yaml

Required Runtime

  • Python 3.11+ + uv package manager
  • Docker (for PostgreSQL + pgvector)
  • Claude Code CLI
  • Optional: Perplexity, NIA accounts for external research

Database Schema

4 tables in PostgreSQL:

  • sessions — cross-terminal awareness
  • file_claims — cross-terminal file locking
  • archival_memory — long-term learnings with BGE embeddings
  • handoffs — session handoffs with embeddings
03

Components

Continuous Claude (parcadei) — Components

Agents (32)

aegis, agentica-agent, arbiter, architect, atlas, braintrust-analyst, chronicler, context-query-agent, critic, debug-agent, herald, judge, kraken, liaison, maestro, memory-extractor, onboard, oracle, pathfinder, phoenix, plan-agent, plan-reviewer, profiler, research-codebase, review-agent, scout, scribe, sentinel, + others

Key agents:

Agent Role
scout Parallel codebase exploration
oracle External research (Perplexity integration)
kraken Heavy implementation
maestro Orchestration of other agents
memory-extractor Extracts learnings from thinking blocks (daemon)
aegis Security-focused review
debug-agent Parallel debugging

Skills (109)

Key skills:

Skill Purpose
create_handoff Create YAML handoff document for session transfer
resume_handoff Load handoff from previous session
recall Search memory for relevant learnings
remember Explicitly store a learning
tldr-code 5-layer code analysis (tldr-overview, tldr-deep, tldr-router, tldr-stats)
fix Multi-step fix workflow (debug → premortem → kraken → commit)
build Build workflow (plan-agent → kraken)
tdd TDD workflow
compound-learnings Trigger daemon-level learning extraction
skill-activation-prompt Show relevant skills based on user message
premortem Pre-failure analysis
qlty-check Code quality check (pyright, ruff)
parallel-agents Orchestrate parallel agent runs

Full list includes: agentica-, ast-grep-find, background-agent-pings, braintrust-, context management, explicit-identity, firecrawl-scrape, git-commits, github-search, graceful-degradation, loogle-search, math-, mcp-, morph-, nia-docs, observe-before-editing, perplexity-search, research-, router-first-architecture, search-, security, sub-agents, system_overview, tdd-, test, tldr-*, tour, validate-agent, wiring, workflow-router

Hooks (30+)

Hook File Event(s) Purpose
session-start-continuity.sh SessionStart Load continuity ledger + recall relevant memories
skill-activation-prompt.sh UserPromptSubmit Inject skill recommendations based on message analysis
memory-awareness.sh UserPromptSubmit Surface MEMORY MATCH indicators
pre-compact-continuity.sh PreCompact Enforce create_handoff before compaction
post-edit-diagnostics.sh PostToolUse Run pyright/ruff after file edits
compiler-in-the-loop.sh PostToolUse Shift-left validation after edits
edit-context-inject.sh PreToolUse Inject TLDR context before edits
import-validator.sh PostToolUse Validate Python imports after edits
session-register.sh SessionStart Register session in PostgreSQL
session-end-cleanup.sh SessionEnd Cleanup + trigger daemon
file-claims.sh PreToolUse Cross-terminal file locking
auto-handoff-stop.py Stop Force create_handoff before agent stops

Memory Daemon

Background process that:

  1. Detects stale session heartbeat (>5 min idle)
  2. Spawns headless Claude (Sonnet)
  3. Analyzes thinking blocks from session
  4. Extracts learnings to archival_memory
  5. Learnings available for recall next session
05

Prompts

Continuous Claude (parcadei) — Prompts

Excerpt 1: create_handoff Skill (from .claude/skills/create_handoff/SKILL.md)

Prompting technique: Structured output enforcement with token-efficiency rationale, YAML schema with exact field names mandated

---
name: create-handoff
description: Create handoff document for transferring work to another session
---

# Create Handoff

You are tasked with writing a handoff document to hand off your work to another agent 
in a new session. You will create a handoff document that is thorough, but also **concise**. 
The goal is to compact and summarize your context without losing any of the key details.

**CRITICAL: Use EXACTLY this YAML format. Do NOT deviate or use alternative field names.**

The `goal:` and `now:` fields are shown in the statusline — they MUST be named exactly this.

```yaml
goal: {What this session accomplished - shown in statusline}
now: {What next session should do first - shown in statusline}
test: {Command to verify this work, e.g., pytest tests/test_foo.py}

done_this_session:
  - task: {First completed task}
    files: [{file1.py}, {file2.py}]

blockers: [{any blocking issues}]
questions: [{unresolved questions for next session}]

Why YAML? ~400 tokens vs ~2000 for equivalent markdown handoff.


## Excerpt 2: Skill Activation Hook Injection (from hooks/skill-activation-prompt.sh)

**Prompting technique**: Priority-ranked contextual recommendation with action directive

🎯 SKILL ACTIVATION CHECK ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

⚠️ CRITICAL SKILLS (REQUIRED): → create_handoff

📚 RECOMMENDED SKILLS: → fix → debug

🤖 RECOMMENDED AGENTS (token-efficient): → debug-agent → scout

ACTION: Use Skill tool BEFORE responding ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


## Excerpt 3: Memory System Recall (from README)

**Prompting technique**: Conversational memory interface with hybrid search

Recall learnings (hybrid text + vector search)

cd opc && uv run python scripts/core/recall_learnings.py
--query "authentication patterns"

Natural language in session:

"What did we decide about authentication?" → [MEMORY MATCH] "JWT-based auth with 24hr expiry decided 2026-01-05" → [MEMORY MATCH] "OAuth2 not used because no third-party login needed"

Store explicitly:

"Remember that auth uses JWT" → Stored as WORKING_SOLUTION with high confidence


09

Uniqueness

Continuous Claude (parcadei) — Uniqueness

differs_from_seeds

Closest to superpowers (skills-only behavioral framework for Claude Code) but 7x the skill count (109 vs 14), adds PostgreSQL+pgvector memory, 32 named sub-agents, a background memory daemon, and shift-left PostToolUse validators (pyright/ruff). Compared to ccmemory (the primary memory seed), Continuous Claude uses PostgreSQL+pgvector instead of Neo4j, extracts from Claude's thinking blocks rather than conversation nodes, and combines memory with a full 109-skill + 32-agent development harness. Unlike claude-flow (305-tool MCP server), Continuous Claude ships skills as SKILL.md files + Python scripts, not a monolithic MCP server. The YAML handoff format (400 tokens vs 2000) and thinking-block-targeted memory extraction are unique in the seed corpus.

Key Innovations

  1. Thinking-block memory extraction — the daemon specifically targets Claude's extended thinking output, which contains richer reasoning than final responses
  2. YAML handoffs — token-efficient session transfer (~400 tokens vs ~2000 for markdown); goal + now fields designed for statusline display
  3. Shift-left validation — PostToolUse hooks run pyright + ruff after every file edit, catching errors before tests
  4. Natural language skill activation — UserPromptSubmit hook injects ranked skill/agent recommendations based on message analysis; user doesn't need to know commands
  5. Cross-terminal file locking — PostgreSQL file_claims table prevents concurrent editing conflicts in multi-terminal setups
  6. TLDR code analysis — 5-layer system (overview/deep/router/stats) dramatically reduces tokens needed to understand a codebase

Observable Failure Modes

  1. Heavy infrastructure — requires Docker + PostgreSQL; significantly higher setup complexity than any seed
  2. Docker dependency — fails without Docker running
  3. Daemon cost — headless Sonnet sessions triggered by daemon add API cost even when not actively developing
  4. Complexity budget — 109 skills + 30 hooks + 32 agents creates risk of inter-component conflicts (the "anti-complexity" principle the author names is violated by the system itself)
  5. Python 3.11 + uv requirement — specific version and tool requirements create setup friction
  6. Not cross-IDE — Claude Code only; no 17-IDE adapter story like planning-with-files
04

Workflow

Continuous Claude (parcadei) — Workflow

Phases

Phase Trigger Artifact
1. Session Start Launch session-register.sh → PostgreSQL; session-start-continuity.sh → load continuity ledger; memory-awareness.sh → MEMORY MATCH indicators
2. Prompt User message skill-activation-prompt.sh → inject skill recommendations
3. Tool Use Edit/Write post-edit-diagnostics.sh (pyright/ruff); compiler-in-the-loop.sh; TLDR context injection
4. Task Work Agent actions scout/oracle/kraken/maestro agents as needed
5. Handoff Required Session nearing end create_handoff skill → YAML file in thoughts/shared/handoffs/
6. Agent Stop Stop event auto-handoff-stop.py enforces handoff before stop
7. PreCompact Auto-compact pre-compact-continuity.sh enforces handoff
8. Session End SessionEnd session-end-cleanup.sh; memory daemon detects idle → extracts learnings
9. Next Session Launch resume_handoff + recall → full context restored

YAML Handoff Format

---
session: open-source-release
date: 2026-01-08
status: complete
outcome: SUCCEEDED
---

goal: What this session accomplished
now: What next session should do first
test: pytest tests/test_foo.py

done_this_session:
  - task: First completed task
    files: [file1.py, file2.py]

blockers: []
questions: []

YAML chosen over markdown for token efficiency: ~400 tokens vs ~2000 for equivalent markdown.

Skill Activation System

Every UserPromptSubmit injects:

🎯 SKILL ACTIVATION CHECK
━━━━━━━━━━━━━━━━━━━━━━━━━━

⚠️ CRITICAL SKILLS (REQUIRED):
  → create_handoff

📚 RECOMMENDED SKILLS:
  → fix
  → debug

🤖 RECOMMENDED AGENTS:
  → debug-agent
  → scout

ACTION: Use Skill tool BEFORE responding
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Approval Gates

Gate Mechanism
Handoff before stop auto-handoff-stop.py (automatic enforcement)
Handoff before compact pre-compact-continuity.sh (automatic)
File lock acquisition file-claims.sh (cross-terminal locking)
06

Memory Context

Continuous Claude (parcadei) — Memory & Context

Memory Model

Hybrid: PostgreSQL + pgvector (long-term learnings) + YAML handoff files (session-to-session transfer)

Layer Storage Purpose Persistence
Handoff files YAML in thoughts/shared/handoffs/ Session-level context transfer Project
Archival memory PostgreSQL archival_memory table Long-term cross-session learnings Global
Session registry PostgreSQL sessions table Cross-terminal awareness Global
File claims PostgreSQL file_claims table Cross-terminal file locking Session
Continuity ledger File (path not disclosed) Session state tracker Project

Persistence Scope

global — learnings extracted to PostgreSQL persist across all projects (keyed by context). Handoffs are project-scoped in thoughts/shared/handoffs/.

Memory Extraction Pipeline

The memory daemon runs as a background process:

Session ends → daemon detects stale heartbeat (>5 min idle)
            → spawns headless Claude (Sonnet)
            → analyzes thinking blocks from session transcript
            → extracts learnings as typed records:
                WORKING_SOLUTION | DECISION | INSIGHT | FAILED_APPROACH
            → stores with BGE embeddings in archival_memory
            → learnings available via recall in next session

Key insight: thinking blocks (Claude's extended thinking, if enabled) contain richer reasoning than final responses. The daemon specifically targets these.

Search Mechanism

Hybrid — text search + vector (BGE embeddings):

# recall_learnings.py
uv run python scripts/core/recall_learnings.py --query "authentication patterns"
# Returns: hybrid-ranked results from archival_memory

The recall skill surfaces results as inline MEMORY MATCH indicators.

Compaction Strategy

Two complementary approaches:

  1. YAML handoffs: before PreCompact fires, the system enforces handoff creation. The YAML format is deliberately token-efficient (~400 tokens vs ~2000 for markdown).

  2. Post-compaction continuity: session-start-continuity.sh loads the most recent handoff + relevant recall results at session start, reconstructing context from the minimal YAML.

Cross-Session Handoff Flow

End of session N → create_handoff → YAML file
                 → daemon extracts learnings from thinking blocks

Start of session N+1 → resume_handoff → loads YAML
                     → recall → surfaces relevant archival learnings
                     → MEMORY MATCH indicators injected

Comparison to ccmemory

Dimension Continuous Claude ccmemory
DB PostgreSQL + pgvector Neo4j 5.15
Embeddings BGE all-minilm (768-dim)
Extraction trigger Daemon (idle detection) Stop hook (each response)
Source material Thinking blocks Full conversation transcript
Node types 4 (SOLUTION, DECISION, INSIGHT, FAILED) 8 typed nodes + Chunk
Graph structure None (flat table) DAG with 7 relationship types
Handoffs YAML files (session-to-session) None (single continuous graph)
Session concept YAML handoff per session Deprecated session nodes
07

Orchestration

Continuous Claude (parcadei) — Orchestration

Multi-Agent: Yes

32 named agents with distinct roles. Orchestration via maestro agent or meta-skills (fix, build, explore).

Orchestration Pattern: hierarchical

The maestro agent dispatches to specialist agents. Meta-skills (fix, build) define multi-agent workflows:

/fix workflow:
  1. sleuth (investigation)
  2. premortem (failure analysis)
  3. kraken (implementation)
  4. commit (git)

Also: parallel-fan-out for scout/oracle combinations (research + codebase exploration).

Isolation Mechanism: process

File claims (cross-terminal file locking via PostgreSQL) prevent multiple terminals from editing the same files simultaneously. No git-worktree isolation.

Execution Mode: background-daemon

The memory daemon runs continuously in the background (via Docker container + PostgreSQL). The Claude Code sessions are interactive-loop. Combined mode: background-daemon for memory extraction + interactive-loop for actual development.

Multi-Model: Yes

Role Model
Primary development User-configured (any)
Memory extraction claude-sonnet (headless, daemon)
Optional research Perplexity Sonar (oracle agent)
Optional docs NIA (nia-docs skill)

Crash Recovery: yes

YAML handoffs stored as files before every stop/compact. PostgreSQL archival memory persists independently. If session crashes, handoff file + recalled learnings reconstruct context.

Auto-Validators

  • post-edit-diagnostics.sh — pyright + ruff after every file edit
  • compiler-in-the-loop.sh — compile/type check after edits
  • import-validator.sh — validate Python imports after edits
  • qlty-check skill — explicit quality check on demand
08

Ui Cli Surface

Continuous Claude (parcadei) — UI & CLI Surface

CLI Binary: No dedicated binary

Entry point is uv run python -m scripts.setup.wizard for installation. Day-to-day usage is through Claude Code's native interface.

Python Scripts (CLI-like tools)

# Recall learnings
uv run python scripts/core/recall_learnings.py --query "<topic>"

# Store a learning explicitly
uv run python scripts/core/store_learning.py \
    --session-id "my-session" \
    --type WORKING_SOLUTION \
    --content "What I learned" \
    --confidence high

Local UI: None

No web dashboard. PostgreSQL accessed via CLI scripts only.

Skill Activation Display

The most visible "UI" is the skill activation prompt injected before each response:

🎯 SKILL ACTIVATION CHECK
━━━━━━━━━━━━━━━━━━━━━━━━
⚠️ CRITICAL: → create_handoff
📚 RECOMMENDED: → fix, debug
🤖 AGENTS: → debug-agent, scout
ACTION: Use Skill tool BEFORE responding

This is displayed in the Claude Code chat interface.

MEMORY MATCH Indicators

When recall finds relevant learnings, they appear inline:

[MEMORY MATCH] "JWT-based auth decided 2026-01-05" 
[MEMORY MATCH] "OAuth2 rejected: no third-party login needed"

Handoff Statusline

The YAML handoff goal: and now: fields are specifically designed for display in the Claude Code statusline: "goal: What this session accomplished — now: What next session should do first."

Diagnostics

The setup wizard includes diagnostic tools (step 11) for validating the installation. Individual hooks produce diagnostic output in the hook stream.

Related frameworks

same archetype · same primary tool · same memory type

Symphony (OpenAI) ★ 25k

A language-agnostic specification and Elixir reference daemon that continuously polls Linear and dispatches isolated Codex…

cli-agent-orchestrator (awslabs) ★ 634

tmux-based supervisor-worker orchestration across 7 AI coding CLIs, with MCP coordination primitives, persistent memory,…

Agent Orchestrator (ComposioHQ)
ORCH ★ 68

Orchestrates teams of parallel AI agents (CTO + workers + reviewer) on a single codebase with YAML flat-file state, a TUI…

Flokay (Codagent Agent Skills) ★ 26

Full SDLC skill pack from idea evaluation through CI-green PR, with TDD Iron Law enforcement and external validator quality gates.

Superpowers ★ 207k

Enforces spec-first, TDD, and subagent-reviewed development as mandatory automatic workflows rather than optional practices.