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 agentmods add commands/ramsbaby/jarvis/oopsgit clone --depth 1 https://github.com/Ramsbaby/jarvisWhat 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 | $0.00087 | $0.01774 |
| Opus 5 | $0.00044 | $0.00887 |
| Sonnet 5 | $0.00017 | $0.00355 |
| Haiku 4.5 | $0.00009 | $0.00177 |
Grade A, and why
oops 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 2d 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 — 130 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/oops — 실시간 오답노트 즉시 기재
일 1회 배치(
mistake-extractor.mjs03:15 KST) 또는 세션 종료 훅(stop-mistake-extract.sh)을 기다리지 않고, 이 순간 실수를 4필드로 등재합니다. Compound Engineering 루프의 즉시 진입점.
언제 사용합니까
- 주인님이 "이건 오답노트로", "오답노트 추가", "/oops" 라고 지시하실 때
- AI가 자기 정정("정정합니다", "오해했습니다")한 뒤 재발 방지를 남겨야 할 때
- 배치/훅이 놓쳤거나, 동일 세션 내 즉시 등재가 필요할 때
입력
/oops [선택적 한 줄 요약]
- 인자 없음: 현재 대화 맥락에서 4필드 초안 자동 구성
- 인자 있음: 그 한 줄을 제목 힌트로 4필드 확장
실행 단계
1. 4필드 초안 구성 (창작 금지)
대화 맥락 + 실제 파일/커밋/로그 근거만 사용. 추측·보강·창작 금지.
- 패턴: "~하는 경향" (한 문장, 재발 가능한 행동)
- 실제: 구체적으로 무슨 일이 있었는가 (사실 나열)
- 증거: 주인님 원문 지적, 커밋 해시, 파일 경로, 로그 라인 (검증 가능한 것만)
- 대응: 재발 방지 구조 — 훅·스크립트·체크리스트·탐색 경로 고정 등. "조심하겠습니다" 같은 의지 표명은 대응 아님
2. 기존 중복 체크
~/jarvis/runtime/wiki/meta/learned-mistakes.md의 기존 - **패턴**: 라인 전체를 읽어, 65% 이상 유사한 항목이 있으면 주인님께 여쭙는다.
"주인님, 기존 [YYYY-MM-DD 제목] 항목과 패턴이 유사합니다. (1) 새 항목으로 별도 등재 / (2) 기존 항목에 오늘자 케이스 추가, 어느 쪽이 좋으시겠습니까?"
3. 미리보기 + 주인님 결재 (Iron Law 3 감사 트레일)
4필드 초안을 주인님께 보여드리고 "등재할까요?" 확인. 승인 전 파일 변경 금지.
승인 플래그 규칙:
- 주인님이 미리보기 후 명시 승인 (
네,등재해,진행해) →approved: true로 ledger 기록 - 주인님이 "미리보기 없이 바로" 지시한 경우에만 미리보기 생략 가능 →
approved: "preview-skipped"로 ledger 기록 (경고 플래그) - 어떤 경우에도 승인 없이 임의 삽입 금지 — 위반 시 그 자체가 Iron Law 3 위반 오답 사례
4. 삽입
위치: ~/jarvis/runtime/wiki/meta/learned-mistakes.md 최상단 (frontmatter + # Jarvis 오답노트 + 안내 블록 다음, 첫 기존 ## YYYY-MM-DD 항목 바로 위)
포맷 (mistake-extractor.mjs가 생성하는 스키마와 100% 동일):
## YYYY-MM-DD — <한 줄 제목>
- **패턴**: ...
- **실제**: ...
- **증거**: ...
- **대응**: ...
---
날짜는 KST 기준 YYYY-MM-DD. frontmatter의 last_updated 필드도 현재 KST ISO(2026-04-21T13:45:00.000+09:00 형식)로 갱신.
5. Ledger 원장 append (감사 트레일)
~/jarvis/runtime/state/mistake-ledger.jsonl에 한 줄 append (배치/Stop훅과 공용 SSoT):
jq -cn \
--arg ts "$(TZ=Asia/Seoul date '+%Y-%m-%dT%H:%M:%S%z' | sed 's/\(..\)$/:\1/')" \
--arg source "manual-oops" \
--arg title "<제목>" \
--arg approved "true" \
'{ts:$ts, source:$source, count:1, titles:[$title], session_file:null, duration_s:0, approved:$approved}' \
>> ~/jarvis/runtime/state/mistake-ledger.jsonl
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.
- 2d ago First seen · 130 lines · 87 tokens per session scan A 1382dae9016a
oops is a command published in the GitHub repository Ramsbaby/jarvis (15 stars, last pushed 9d ago), licensed MIT. It adds 87 tokens to every session and 1,774 once invoked, about $0.0004 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.
Other commands, from other repositories
learn
Force claude-smart to extract learnings from this session now.
component
Scaffold a new React component grounded in the paper-mono primitives. Requires explicit kind or a nearest-existing-component match. No empty divs, no speculative scaffolding.
memory-store
Store an insight, decision, or pattern to memory.
review
Cold re-quiz on code that already shipped — your own session commits, not the change in front of you.
no-vibe
Enter no-vibe mode in OpenCode (tutor mode, no direct project file writes).
harness-onboarding
Generate a human-readable onboarding document from HARNESS.md, AGENTS.md, and REFLECTIONLOG.md — a friendly guide for new team members.