♫ ROCKY IQ

What's your Rocky IQ?

A live 0–100 score of how well you actually understand the code your AI is shipping. Decays when you stop engaging. Climbs when you can answer for it.

Free, local, open source. Plugs into Claude Code, your browser, and your git history.

0
/ 100
KNOWN

Rocky is an open-source personal knowledge management platform that helps developers fight AI skill atrophy.

Why it exists

Every senior engineer knows the feeling: you stop writing something by hand, and six months later you can’t remember how it works without looking it up. That’s normal. That’s how memory works.

What’s new is the speed. AI tools don’t just accelerate your output — they remove the need to think through problems entirely. You describe what you want, the AI writes it, you ship it. Fast. But the understanding that used to come from doing the work yourself? That doesn’t happen anymore.

This is AI skill atrophy — and it compounds silently. You don’t notice it until the day the AI gives you the wrong answer and you can’t tell.

Rocky exists for one reason: to shine a light on blind spots in systems developers are responsible for — systems co-created with AI agents.

Rocky IQ dashboard

See it in action: watch the demo →


What makes it different

Most learning tools quiz you on definitions. Rocky doesn’t care if you can define JWT. It cares whether you’d catch the bug.

Instead of asking “what is a refresh token?”, Rocky asks:

You’re issuing JWTs with a 15-minute expiry. A user is halfway through a checkout flow when their token expires. What happens — and how do you make the experience seamless without storing session state on the server, question?

That’s the kind of question that separates someone who read the docs from someone who’s actually built with it. Rocky asks the second kind — every time.


How it works

Rocky’s primary mode is alongside your AI agent. When Claude Code is doing the work, Rocky watches what got built, extracts the topics that live in the changes, and turns each one into a question you’ll need to be able to answer for the system you now own.

With your AI agent (Claude Code)

This is the canonical Rocky workflow. After rocky install claude, the agent picks up five skills it can invoke at the right moments — no separate Ollama call, no per-prompt logging in the critical path:

  • /rocky-review — the default — umbrella skill that runs /rocky-checkpoint and /rocky-promptiq back-to-back at the end of a session, then prints a single fused summary. Use this unless you need one of the underlying skills on its own.
  • /rocky-checkpoint — extract topics from recent commits + the conversation. Called by /rocky-review, but invoke directly from CI / automation so a failure stays isolated to one queue.
  • /rocky-quiz — runs a Socratic review session inside the agent session, using the canonical questions Rocky stored.
  • /rocky-backfill — seeds the PKG from a project’s existing git history when you’re new to a repo or first installing Rocky.
  • /rocky-promptiq — re-evaluates your recent prompts and produces a PromptIQ score with feedback. Also called by /rocky-review; suitable for a slower CI cadence (weekly, etc.).
bash
rocky install claude     # one-time: drops the skills into ~/.claude/skills/
# ... work normally with the agent ...
# inside Claude: /rocky-review  (at end of session — runs checkpoint + promptiq)
#                /rocky-quiz    (any time — drill weakest topics)

The alternative workflows below exist for the moments you’re not in an agent session — useful supplements, not the main story.

Alternative workflows

Before a task

Tell Rocky what you’re about to build. Rocky extracts the key topics, checks what you already know, and asks a focused question on anything new or fading — before you’ve touched a single line of code.

bash
rocky "add rate limiting to the API using Redis"

Rocky finds: Redis sorted sets, token bucket algorithm, atomic Lua scripting. You know the first two. It asks you about Lua scripting in Redis — specifically, why you’d need it and what breaks without it.

After a commit

Every git commit triggers rocky diff. Rocky reads your actual code changes — not the commit message — and surfaces the topics that live in what you just shipped.

bash
git commit -m "add Redis rate limiter"
# Rocky runs automatically:
# ~ Redis Lua scripting  (recall fading to 71%)
#   Reminder: Lua scripts in Redis run atomically — the whole script or nothing.
#   This is why you use them for rate limiting: checking and incrementing the
#   counter must be a single operation, or two requests can both pass the check
#   before either increments.

On demand

Run a review session any time. Rocky works through what’s most overdue, what you’ve recently skipped, and new topics from your recent AI sessions.

bash
rocky quiz               # general review
rocky quiz "redis"       # targeted — search and pick topics to drill

Pre-commit review

Check your staged changes before you commit. Useful when you’ve been working with an AI and want to make sure you actually understand what’s about to land.

bash
rocky diff --staged

The knowledge model

Rocky tracks a Personal Knowledge Graph (PKG) — a local database of every topic you’ve encountered. Each topic has a recall score: a number between 0 and 1 that combines two things:

  • Retrievability (R) — freshness from spaced-repetition decay. High right after a review, lower as time passes.
  • Mastery (M) — the mean of your last three review scores (default 0.5 if you’ve never been quizzed). Captures how well you actually answered, not just how recently.

recall = R × M. Freshness alone doesn’t count as knowing — if you got the wrong idea last time, retrieving it quickly today doesn’t help you. Both factors have to be high before Rocky considers a topic known.

BucketrecallWhat Rocky does
Known≥ 0.6Stays quiet
Fading0.3 – 0.6Surfaces it for review
Gap< 0.3Asks a question

Knowledge decays. A topic you understood deeply three months ago might be at 25% today — Rocky surfaces it before you trip over it.

Knowledge Explorer

Want to see the whole loop end-to-end? Watch the demo →


Rocky the alien

Rocky has a personality based on Rocky the alien from Andy Weir’s Project Hail Mary — enthusiastic, direct, and genuinely rooting for you.

  • Fist my bump, friend! Is correct!
  • Excite excite excite! Friend get it!
  • Is okay! Rocky also not know at first!
  • We are crew. We solve together.

Questions end with ”, question?” — Rocky’s way of asking. Set personality = false in [ui] config for plain output.


Key concepts

TermWhat it means
PKGPersonal Knowledge Graph — your local database of topics
KnownRecall ≥ 0.6 — Rocky stays quiet
FadingRecall 0.3 – 0.6 — Rocky surfaces it as a review candidate (called “stale” internally)
GapRecall < 0.3 — Rocky asks a question
Retrievability (R)Spaced-repetition freshness — decays with time since the last review
Mastery (M)Mean of your last three review scores (default 0.5 if never quizzed)
RecallR × M — the combined score Rocky classifies on
StabilityHow deeply embedded the topic is — higher stability means slower decay
Initial stabilitySet by topic kind when first created: Concept = 4.0, Pattern = 2.5, Implementation = 1.5
DomainOne of 13 taxonomy categories (Language, Auth, Database, DevOps, etc.)
EdgeA relationship between two topics in the PKG — generated automatically by Rocky after new topics are added
Edge kindThe type of relationship: implies, depends_on, conflicts_with, or part_of
Cross-concept questionA question that bridges two related topics — asked when Rocky detects a relevant edge and both topics have strong recall
ReposThe git projects a topic has been encountered in. Topics merge by canonical name across projects, so repos[] accumulates as the same idea reappears in different repos
Question bankUp to ~4 implication-grounded questions stored per topic at extraction time. Surfaced in the web UI, picked from at quiz time
Canonical clueA short hint stored alongside the question bank — shown when you type c during a quiz