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.
npx skills add Dannykkh/skill-olympus --skill memory-distillgit clone --depth 1 https://github.com/Dannykkh/skill-olympusWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/dannykkh/skill-olympus/memory-distill)<a href="https://agentmods.dev/skills/dannykkh/skill-olympus/memory-distill"><img src="https://agentmods.dev/badge/skills/dannykkh/skill-olympus/memory-distill/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/dannykkh/skill-olympus/memory-distill"><img src="https://agentmods.dev/badge/skills/dannykkh/skill-olympus/memory-distill.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00131 | $0.03360 |
| Opus 5 | $0.00066 | $0.01680 |
| Sonnet 5 | $0.00026 | $0.00672 |
| Haiku 4.5 | $0.00013 | $0.00336 |
Grade A, and why
memory-distill 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 6d 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.
How it starts
The opening of the file, as written. The whole thing — 256 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Memory Distill — observations.jsonl → 정제 .md
핸드오프가 충분히 자주 발동되지 않을 때, 사용자 의지로 raw 관찰을 정제 .md로 굳힙니다. append-only 누적의 부풀음을 막기 위해 rebuild 모드로 기존 정제 .md를 통합합니다.
Antigravity /learn 경계
Antigravity 네이티브 /learn은 현재 대화의 교정·선호를 Rules 또는 Skill로 정리하는 빠른 학습 경로입니다.
최근 세션의 한두 교정을 런타임 규칙으로 남기는 요청은 /learn이 우선입니다. 이 모듈은 여러 세션에 걸쳐
프로젝트 루트에 쌓인 observations.jsonl을 클러스터링하고, 중복·모순을 제거하며, 기존 정제 파일까지
재구성하는 저장소 수준 유지보수를 소유합니다. /learn을 프로그램적으로 호출하거나 그 결과를 이 모듈의
rebuild 증거로 간주하지 않습니다.
사용법
# 스캔 (기본) — 후보만 출력, 파일 미생성
/memory-distill
# 적용 — 새 정제 .md 생성
/memory-distill --apply
# 통째 재구성 — 기존 정제 .md + 새 관찰 통합 + 중복/모순 제거
/memory-distill --rebuild
# 대상 선택
/memory-distill --type gotchas
/memory-distill --type learned
# 시점 필터
/memory-distill --since 2026-04-01
인자
| 인자 | 기본값 | 설명 |
|---|---|---|
--apply |
off | 후보를 실제 .md 파일로 생성 |
--rebuild |
off | 기존 정제 .md까지 함께 재구성 |
--type |
both |
gotchas, learned, both |
--since |
(전체) | 해당 ISO 날짜 이후 관찰만 |
--min-cluster |
2 | 그룹핑 최소 관찰 수 |
--rebuild는 --apply를 암시합니다.
워크플로우
Phase 1: 입력 수집
1. raw 관찰 로드
├─ memory/gotchas/observations.jsonl (event: tool_error | turn_error)
└─ memory/learned/observations.jsonl (event: tool_success | turn_success)
2. 기존 정제 로드 (있을 때만)
├─ memory/gotchas.md (단일 카테고리 파일, 22개 정제 항목)
├─ memory/gotchas/*.md (개별 정제 파일, 0~N개)
├─ memory/learned.md (있으면)
└─ memory/learned/*.md
Phase 2: 그룹핑 (CLI가 직접 수행)
같은 패턴의 관찰을 묶어 클러스터로 만듭니다. 노이즈 줄이기 위해 다음 기준을 활용:
| 신호 | 사용 |
|---|---|
같은 tool + 유사 output 에러 메시지 |
함정 클러스터 |
| 같은 도구 시퀀스 (예: Grep→Read→Edit) | 패턴 클러스터 |
같은 file_path 영역 반복 실패 |
영역별 함정 |
| 같은 키워드(에러 코드, 함수명) 반복 | 키워드 클러스터 |
--min-cluster 미만인 단발 관찰은 무시 (노이즈).
입력이 커서 격리 분석이 유리할 때만 읽기 전용 클러스터 후보 추출을 네이티브 역할에 위임합니다: Claude Explore, Codex explorer, Antigravity research, Grok explore. 작업자는 스크럽된 관찰만 읽고 후보를 반환하며 파일을 쓰지 않습니다. 별도 gotcha-analyzer 이름은 필요하지 않습니다. 모드 판정, archive, 재번호, 파일 쓰기, index/MEMORY 동기화는 이 스킬을 실행한 메인 하네스가 소유합니다. 위임이 없거나 병렬 이득이 없으면 메인 컨텍스트에서 같은 클러스터링을 순차 실행합니다.
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.
- 6d ago First seen · 256 lines · 131 tokens per session scan A 0db9c0adf2d3
memory-distill is a skill published in the GitHub repository Dannykkh/skill-olympus (5 stars, last pushed today), licensed MIT. It adds 131 tokens to every session and 3,360 once invoked, about $0.0007 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-09-03.
Other skills, from other repositories
handoff
Structured session handoff — preserves context for seamless continuation across sessions.
lesson-learned
Extract learnings and save as memory files (file-based memory system). Use when: "lesson learned", "what did we learn", "learning", "remember".
context-budget
Analyzes where context tokens are being spent and identifies optimization opportunities. Use when sessions feel slow or context is running out.
pattern-extractor
Analyzes captured patterns from continuous learning to extract reusable workflows and anti-patterns. Use when you want to review what's been learned across sessions.
throughline
Use when the user asks to use Throughline from Codex, continue or restore Throughline memory, export read-only handoff context for a local launcher, prepare a new Codex thread handoff, summarize a captured Codex session, or check whether the Throughline Codex Stop hook captured the current session. Hide long…
domain-extract
Extract domain knowledge from existing project sources and generate domain rules. Also handles vault sync and domain listing.