Claude Code plugin · v0.3.0

Your Claude setup.
Self-configuring.

Every conversation is a knowledge source — facts become KB entries, patterns become reusable skills, and new commands surface on their own. Your Claude setup learns and grows, session by session. No /save. No babysitting.

# Starting Claude Code session...
─────────────────────────────────────
niblet · 12 KB entries · 8 feedback notes
─────────────────────────────────────
architecture.md — system design decisions
feedback — don't mock the database in tests
deploy — staging pipeline, S3+CloudFront
─────────────────────────────────────
1 proposal pending · git-workflow-skill.md
run niblet-promote to review
niblet auto·learns git-workflow ⚡ skill +12 this month skill deck feedback.md KB entry git-workflow ⚡ skill Session started. niblet KB injected 12 topics · 8 notes fix the auth bug in middleware

Sessions start cold. You re-explain everything.

Your AI assistant observes, learns, catches your patterns — then forgets it all. The next session starts from zero. Every time.

Without niblet
"Remember, we don't mock the database in tests — we got burned before."
"Our deploy goes to S3, not Vercel."
"The config is in .env.local, not .env."
  • Conventions re-explained every session
  • Architectural decisions repeated from scratch
  • Same mistakes happen again (and again)
  • AI acts like a first-day hire, forever
With niblet
NIBLET KB index for /project — 12 topic(s) saved from previous sessions.
Read the file directly when a topic looks relevant.

1 proposal pending: git-workflow-skill.md
  • Knowledge builds automatically, session by session
  • Feedback and corrections persist across context resets
  • New skills and agents proposed as patterns emerge
  • Your Claude setup evolves with your project
Session start: what actually happens
Without niblet
Glob("**/*.ts") Read("CLAUDE.md") Grep("convention") Read("src/config.ts")
Tool calls spent re-exploring the codebase every session
With niblet
NIBLET KB index for /project — 12 topic(s) saved from previous sessions.
Read the file directly when a topic looks relevant.
niblet injects the KB index at session start — Claude sees relevant KB topics before re-exploring the codebase

Four checkpoints. Zero commands.

niblet hooks into Claude Code's event system and fires at four points in the session lifecycle. Each checkpoint has a clear, bounded job — from instant KB writes to skill proposals.

FAST
After each turn
Extracts KB entries and feedback notes inline from the conversation as it happens. Auto-writes factual knowledge directly to .claude/kb/ — no review needed.
fires: after every turn
DEEP
Session end
Spawns a sub-agent to extract reusable patterns. Proposes new skills, agents, commands, and CLAUDE.md additions based on what you actually did this session. All proposals go to .niblet/proposals/ for your review.
fires: on session close
DISTILL
KB consolidation
When the KB exceeds a size threshold, deduplicates and prunes stale entries. Keeps the index lean so it stays useful — not a growing pile of notes.
fires: when KB > threshold
AUDIT
Quality check
Periodically reviews the KB for staleness, contradictions, and quality issues. Flags entries that no longer match the codebase. Generates a scored report.
fires: every N sessions
FAST
DEEP
DISTILL
AUDIT

What writes automatically vs what needs your review

niblet doesn't auto-write everything. Anything that could introduce executable code or modify Claude's behavior goes to .niblet/proposals/ for your review first.

Output type Auto-written Goes to proposals/
.claude/kb/*.md entries ✓ auto Knowledge and facts
memory/*.md files ✓ auto User prefs & feedback
Skills / agents ⚠ review Executable code
CLAUDE.md changes ⚠ review Claude instructions
Custom commands ⚠ review Shell execution
Global scope outputs ⚠ review Cross-project impact
Why this split? KB entries and feedback are factual knowledge — the worst case if they're wrong is a bad suggestion. Skills, agents, and CLAUDE.md are executable instructions that can change how Claude behaves in all future sessions. A compromised dependency or a crafted tool response could inject malicious instructions into your global Claude config. niblet prevents this by routing anything executable to .niblet/proposals/ first, where you can inspect it before it takes effect.

Two commands in Claude Code

Install via the Claude Code plugin marketplace. Hooks, KB structure, and proposal routing — all wired automatically.

1
Add the madlexa marketplace (once per machine)
/plugin marketplace add madlexa/skills
2
Install niblet
/plugin install niblet@madlexa-skills
registers FAST, DEEP, DISTILL, AUDIT hooks via hooks/hooks.json (not .claude/settings.json)
installs niblet-apply, niblet-promote, niblet-status scripts
sessions end with skill + agent proposals waiting in .niblet/proposals/
promotes proposals you approve into .claude/skills/, .claude/agents/, etc.