By ratacat
Lock linguistic decisions in your codebase. Living architecture, anchored requirements, locked terminology.
"Language is the liquid we're all dissolved in."
— Modest Mouse
The work of language in programming is rapidly changing.
It used to be that language only mattered for humans reading your code. Today, with the rise of semi-intelligent AI systems, the linguistic layer of software is suddenly much more involved.
The tooling hasn't caught up yet.
Rivet aims to be a seamless, low-maintenance tool that strengthens the connection between your linguistic layer and your implementation layer.
It operates by scanning and extracting decisions, requirements, and terminology from your transcripts with your coding agent. There's a huge amount of valuable material in those conversations—architecture decisions, naming conventions, requirements you've articulated—that consistently gets wasted. Every time you have to repeat yourself to an AI, every time you re-explain a decision or clarify a term, that's an opportunity for better tooling.
A rivet is a permanent fastener. It holds two layers together without needing attention. It either holds or it doesn't. That's what this does. Once something is riveted, it doesn't drift. It means what you said it means.
# .rivet/systems.yaml
project:
name: MyApp
purpose: "E-commerce platform for handmade goods"
glossary:
vibe_coding:
definition: "AI handles implementation while human guides direction"
premature_reification:
definition: "When casual language gets formalized before agreement"
systems:
Router:
description: "Handles URL routing and navigation"
requirements:
- "Must support nested routes"
- "Must handle auth redirects"
decisions:
- "Async-first for high-concurrency workloads"
terms:
createRouter: "factory function - use instead of new Router()"
useRouter: "React hook for router context"
depends_on:
- Config
rivet system add|show|list|edit|link|deprecate
rivet term define|rename|delete|list
rivet context · rivet sync · rivet check · rivet harvest
MIT License
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Deep web research with relevance scoring and knowledge graph storage. Use when researching topics, companies, people, or concepts. Performs Graph-of-Thoughts style exploration w...
Context and working knowledge for Calci’s prediction-market domain, which is powered by Kalshi. Use this skill whenever the user asks about Calci prediction markets, Kalshi mark...
Use when needing to look up book content, find a book by title/author, download an ebook, or reference material from a published book. Triggers on book lookups, ebook downloads,...
Run a chained clarity review across a target repo, plan, or work items. Use when the user asks to clarify, defuzz, audit, review, harden, distill, de-duplicate, inspect naming, ...
Use when the user or router explicitly names pm-situation-framing to create or update a PMKNB situation frame. This skill is direct-invocation-only and must never be automatical...
npx claudepluginhub ratacat/rivet --plugin rivetMake your AI agent code with your project's architecture, rules, and decisions.
(Alpha) Persistent memory, architectural decisions, and safety guardrails for Claude Code. Your agent starts every session with full project context — stack, decisions, patterns, safety rules, and a handoff from the previous session.
Post-processing utilities for manifest workflows. ADR synthesis from session transcripts.
CodeDNA protocol — in-source AI context and inter-agent communication for any codebase. Adds /codedna:init and /codedna:check (implemented) plus automatic annotation enforcement. /codedna:manifest and /codedna:impact are planned.
Standardize AI-generated projects with Ralph autonomous loop, persistent memory, and quality gates. Supports 28 languages, 17 frameworks, 13 MCP modules, and 20 services.
AI Development Environment - Multi-agent orchestration for Claude Code