Skip to content
Agent Memory
Skill

/jumbo-add-invariant

Use liberally when you discover or are told a non-negotiable constraint — something that must always be true regardless of context. Registers the invariant so future sessions never violate it.

BOOST
From plugin
jumbocontext-cli
27218 skills
Install
$ npx -y skills add jumbocontext/cli --skill jumbo-add-invariant --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/jumbo-add-invariant

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use liberally when you discover or are told a non-negotiable constraint — something that must always be true regardless of context. Registers the invariant so future sessions never violate it.

SKILL.md

jumbo-add-invariant.SKILL.md
name: jumbo-add-invariant
description: Use liberally when you discover or are told a non-negotiable constraint — something that must always be true regardless of context. Registers the invariant so future sessions never violate it.

Add Invariant

Register an invariant with Jumbo when you discover a non-negotiable constraint — a rule that must hold true across the entire project at all times, regardless of which goal is being implemented.

**Important:** Invariants must be **generally applicable** to the project. Do not word them for a specific use case, goal, or task. An invariant that only applies during one piece of work belongs in a goal's criteria, not in the invariant registry. If you find yourself writing "when working on X" or "for the Y feature", it is not an invariant.

Before Adding

Check for an existing invariant to avoid duplication. Consider reversing, updating, or superseding a previously registered invariant before registering a new one.

Use the search subcommand to locate previously registered invariants:

jumbo invariants search -q <query>

Command Syntax

jumbo invariant add \
  --title "<Invariant title>" \
  --description "<What must always be true>" \
  --rationale "<Why this is non-negotiable>"

Bad Example

jumbo invariant add \
  --title "Session endpoint must validate tokens" \
  --description "The /api/session endpoint must check JWT expiry" \
  --rationale "Security requirement for session management"

Too narrow — applies to one endpoint. This is a requirement for a specific feature, not a project-wide invariant.

Good Example

jumbo invariant add \
  --title "All API endpoints must validate authentication tokens" \
  --description "Every endpoint that accepts authenticated requests must verify token validity, expiry, and scope before processing the request" \
  --rationale "Security compliance requirement — unauthenticated access to protected resources is a critical vulnerability"

Applies to every endpoint, not just one. States the full constraint. Rationale explains why violation is unacceptable.

Read more
Ships withjumbocontext-cli

Memory and Context Orchestration for Coding Agents

Get the whole plugin

Other skills on jumbocontext-cli.