CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

regenerating a technical summary of stellar-core

Instructions for regenerating the full set of subsystem and whole-system technical summary skill documents for stellar-core

Invalid
This skill can't be scored yet
Validation errors are blocking scoring. Review and fix them to unlock Quality, Impact and Security scores. See what needs fixing →
SKILL.md
Quality
Evals
Security

Regenerating Technical Summaries of stellar-core

Overview

This skill describes the process of generating (or regenerating) the full set of technical summary skill documents for stellar-core. These summaries provide AI agents with compact architectural context about each subsystem and the system as a whole.

Output Artifacts

The process produces:

  • 21 subsystem summary files in .claude/skills/subsystem-summary-of-$X/SKILL.md
  • 1 whole-system summary file in .claude/skills/stellar-core-summary/SKILL.md

Subsystem List

The following subsystem directories under src/ are each summarized individually:

SubsystemSource DirectoryNotes
bucketsrc/bucket/Bucket list and merge machinery
catchupsrc/catchup/Ledger catchup / sync logic
cryptosrc/crypto/Hashing, signing, key management
databasesrc/database/SQL database abstraction
herdersrc/herder/Consensus coordination, tx queue
historysrc/history/History archive management
historyworksrc/historywork/Work tasks for history operations
invariantsrc/invariant/Runtime invariant checking
ledgersrc/ledger/Ledger state management, LedgerTxn
mainsrc/main/Application, Config, event loop
overlaysrc/overlay/P2P network layer
processsrc/process/Child process management
protocol-currsrc/protocol-curr/Current protocol XDR definitions
rustsrc/rust/ (excl. soroban/)C++/Rust bridge, non-soroban Rust
soroban-envsrc/rust/soroban/p26/soroban-env-{common,host}/One protocol version of soroban env
scpsrc/scp/SCP consensus protocol
simulationsrc/simulation/Network simulation, load generation
testsrc/test/Test utilities and infrastructure
transactionssrc/transactions/Transaction/operation processing
utilsrc/util/Utility classes and helpers
worksrc/work/Async work scheduling framework

Procedure

Phase 1: Generate Subsystem Summaries (Parallelizable)

For each subsystem directory listed above, launch a parallel sub-agent with the following instructions:

  1. Read the entire source of all .h, .cpp, and/or .rs files in that subsystem directory, excluding any test files (files with "test" or "Test" in the name, or files ending in Tests.cpp, Test.cpp, test.cpp).

  2. Create a skill document at .claude/skills/subsystem-summary-of-$X/SKILL.md

  3. Write the document using this template:

---
name: "subsystem-summary-of-$X"
description: "read this skill for a token-efficient summary of the $X subsystem"
---

# Subsystem: $X

## Key Classes and Data Structures
...

## Key Modules
...

## Key Functions
...

## Control Loops, Threads, and Tasks
...

## Ownership Relationships
...

## Key Data Flows
...

The summary should be approximately 10KB and focus on:

  • Key classes / data structures with brief descriptions
  • Key modules and their responsibilities
  • Key functions within major classes
  • Summary of key control loops, threads and/or tasks
  • Ownership relationships between data structures
  • Key data flows between components

Special Cases

  • protocol-curr: Focus on XDR type definitions, enumerations, unions, and type relationships.
  • rust (non-soroban): Include the C++/Rust bridge mechanism (CXX bridge), files in src/rust/src/ and src/rust/*.h/*.cpp, but exclude src/rust/soroban/.
  • soroban-env: Read from one protocol version directory (currently p26), specifically soroban-env-common/src/ and soroban-env-host/src/. Cover Val types, Env traits, Host internals, budget/metering, storage model, and VM dispatch.
  • test: This contains test utilities and infrastructure, not tests themselves. Read everything but still skip files that are purely individual test cases (*Tests.cpp).

Phase 2: Generate Whole-System Summary

After all subsystem summaries are complete, launch a sub-agent that:

  1. Reads ALL 21 subsystem summary files together
  2. Creates .claude/skills/stellar-core-summary/SKILL.md
  3. Writes a ~30KB summary covering:
    • System overview (what stellar-core is)
    • Architecture overview (component relationships)
    • Core subsystems (concise paragraph per subsystem)
    • Threading model (all thread types across subsystems)
    • Key data flows (transaction lifecycle, ledger close, catchup, history publication, overlay messaging)
    • Ownership hierarchy (Application → managers)
    • Cross-cutting concerns (protocol versioning, invariants, metrics, logging, process management, work scheduling)
    • Soroban integration (Rust/C++ FFI, Host runtime)
    • Testing infrastructure
    • Key design patterns (recurring patterns across the codebase)

The description should indicate this is good initial context for any broad-scope task on stellar-core.

When to Regenerate

Regenerate summaries when:

  • Major architectural changes are made to a subsystem
  • New subsystems are added
  • Significant refactoring occurs across multiple subsystems
  • The soroban protocol version advances (update the p26 reference to the latest)

Notes

  • The soroban protocol version directory (currently p26) should be updated to the latest version when regenerating.
  • Each subsystem summary targets ~10KB; the whole-system summary targets ~30KB.
  • All summaries use YAML frontmatter with name: and description: fields.
  • The goal is to provide enough context for an AI agent to understand the architecture without reading all the source code.
Repository

stellar/stellar-core

Path

.claude/skills/summarizing-the-codebase/SKILL.md

Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.