learning-loop

SkillMonitoring & ops

Explain and control the stellar-build learning loop, the system that improves your skills from how you use them. Use when the user says "learning loop", "how does the learning loop work", "what is the learning loop", "self-improving skills", "stellar-loop", "show my skill usage", "is tracing on", or wants an overview / status of the local trace-capture + optimize + bench cycle.

Available today. Use it from your connected AI after setup.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the learning-loop skill

What this skill tells your AI

The instructions your AI receives, as published by kaankacar/stellar-build in skills/loop/learning-loop/SKILL.md and read by ahel’s review.

What the learning loop is

stellar-build ships with a local learning loop: the more you use your skills, the better they get — without anything leaving your machine. It mirrors OpenJarvis's jarvis optimize skills / jarvis bench skills cycle, adapted for markdown skills.

Three moving parts:

  1. Capture — a skill use is a multi-turn span, so capture is decoupled from "skill became active". A PostToolUse:Skill hook marks which skill is resident; a Stop hook records each turn's real assistant output; and a SessionEnd hook closes the span with a summary, counting it as one activation. Everything lands in ~/.stellar-build/traces/<day>.jsonl. Fully local. Opt out with STELLAR_BUILD_NO_TRACE=1.
  2. Optimize (/optimize-skills) — compiles those traces into sharper skills: tightened triggers/instructions and few-shot examples mined from your own successful runs. Every edit is backed up and reversible.
  3. Bench (/bench-skills) — scores skills on held-out prompts so you can measure whether an optimization actually helped.
   use skills  ──▶  ~/.stellar-build/traces/*.jsonl
                          │
              /optimize-skills  (DSPy-style compile)
                          │
                          ▼
            sharper ~/.claude/skills/<skill>/SKILL.md   ◀── stellar-loop restore (undo)
                          │
                /bench-skills  (measure the lift)

What to do when invoked

  • Overview / "how does it work" → explain the three parts above, then point to the two action skills and the CLI.
  • "status" / "is tracing on" / "show my usage" → run the CLI and relay the output:
    • stellar-loop status — install + capture + hook state, trace/optimization counts
    • stellar-loop stats — per-skill usage from local traces
    • stellar-loop tail — most recent trace records The CLI is installed at ~/.stellar-build/bin/stellar-loop (add ~/.stellar-build/bin to PATH, or call it by full path).
  • "optimize" / "improve my skills" → hand off to the optimize-skills skill.
  • "benchmark" / "did it help" → hand off to the bench-skills skill.
  • "undo" / "restore" → stellar-loop restore <skill> reverts the last optimization for that skill from its backup.

Data & privacy

  • Everything lives under ~/.stellar-build/ (traces/, backups/, bench/, optimizations.jsonl). Override the root with STELLAR_BUILD_HOME.
  • Nothing is transmitted anywhere — no API calls, no telemetry. The "optimizer" is your own agent session reasoning over local files.
  • Result previews are truncated and examples are generalized before they ever land in a skill, so traces and learned blocks should not accumulate secrets. Wipe anytime with stellar-loop clear (--all also clears backups).

Quick reference

GoalDo this
See if it's workingstellar-loop status
See what you use moststellar-loop stats
Make skills sharper/optimize-skills (or stellar-loop optimize)
Measure the lift/bench-skills (or stellar-loop bench)
Undo an optimizationstellar-loop restore <skill>
Turn capture offexport STELLAR_BUILD_NO_TRACE=1
Delete all tracesstellar-loop clear

Signals

GitHub stars
35
Forks
4
Last commit
Aug 2026
Advanced
Item type
skill
Key
learning-loop
Source
github.com/kaankacar/stellar-build