with one click
remember
// Persist guidelines, conventions, and architectural decisions into the repository's knowledge base. Use when told to remember something for future sessions.
// Persist guidelines, conventions, and architectural decisions into the repository's knowledge base. Use when told to remember something for future sessions.
Set up the restore-context hook so skills can resume workflows after /clear and /compact. Use when setting up a new project or after cloning a repo that uses restore-context skills.
Manage restore context files so skills can survive /clear and /compact. Use to write, delete, check, or list .agent-restore-context-* files.
Fetch Jira ticket, create branch, implement changes, commit, push, open PR.
Generate AI-assisted navigation aids to help humans start reviewing a pull request more efficiently. Use when starting a PR review to get oriented on large or unfamiliar changes.
Perform migrations for Renovate dependency upgrades based on breaking changes identified in a review. Use after running /renovate-review.
Review Renovate dependency upgrade PRs to assess safety and effort. Use when reviewing PRs from Renovate bot that update NPM dependencies.
| name | remember |
| description | Persist guidelines, conventions, and architectural decisions into the repository's knowledge base. Use when told to remember something for future sessions. |
| disable-model-invocation | false |
| argument-hint | <guideline, convention, or architectural decision to persist> |
| allowed-tools | Bash, Grep, Glob, Read, Edit, Write |
| scope | ["knowledge"] |
Persist new guidelines, best practices, or architectural decisions into the repository's knowledge base so they are available in future AI sessions.
thing to remember (required): A guideline, convention, or decision to
persist. Natural language input describing what should be remembered./remember always use the --frozen-lockfile flag in CI/remember the auth module was refactored to use middleware in PR #342/remember integration tests must hit a real database, never use mocksDetermine which file should contain this knowledge. Repositories follow a layered structure, preferring tool-agnostic paths when they exist:
| Intent type | Preferred target | Fallback |
|---|---|---|
| Project-wide convention or standard | AGENTS.md | CLAUDE.md |
| Domain-specific best practice (testing, components, API design, etc.) | rules/ or docs/conventions/ | See resolution rules |
| Change to an automated workflow or skill | .agents/skills/ | .claude/skills/ |
| Agent behavior guideline | .agents/agents/ | .claude/agents/ |
| Claude-specific configuration (MCP, hooks, permissions) | CLAUDE.md | — |
Resolution rules:
rules/ or docs/conventions/ existsrules/docs/conventions/ exists, ask the user whether they want to
create a symlink from rules/ to docs/conventions/ so both paths
resolve to the same location. If they confirm, create the symlink before
writing.rules/ and write there.agents/skills/ or .agents/agents/: Use the .claude/ equivalent
if the .agents/ directory does not existAGENTS.md: Use CLAUDE.md if AGENTS.md does not existCLAUDE.md or .claude/ directly when the information is
Claude-specific or no tool-agnostic target existsAGENTS.md, also scan CLAUDE.md and vice versa). If the other layer
contains conflicting or duplicated content, resolve it by replacing that
content in CLAUDE.md with a reference to AGENTS.md (e.g.,
"See AGENTS.md for project conventions.")If a conflict is found:
If no conflicts are found:
When writing the update:
After successfully updating documentation, discover which skills may need
updates by scanning skill files in .agents/skills/*/SKILL.md and
.claude/skills/*/SKILL.md (whichever exist). When reading skill files, resolve
symlinks to access the actual content rather than treating symlinks as empty or
opaque files.
Discovery criteria — a skill is affected if it contains:
If no skills are affected, skip this step.
For each affected skill, determine whether it is local or shared:
A skill is shared if it is a symlink pointing outside the current repo or
was installed by a package manager and has not been modified locally. A skill is
local if it was authored or edited in this repo. Symlinks between
.claude/skills/ and .agents/skills/ within the same repo are internal
bridges and do not affect this determination.
Local skills — edit directly:
Shared skills — report and offer to update:
Report the affected shared skill and the specific inconsistency to the user
Ask: "Shared skill <skill-name> is affected. Add repo-specific additions?"
If the user confirms:
Resolve the original shared skill path (the symlink target or CLI cache location where the shared skill was installed)
Determine which layer to use:
If .agents/skills/ directory exists:
Create or update .agents/skills/<skill-name>/SKILL.md with repo-specific
additions listed before the shared skill reference, so local rules take
priority:
---
name: <skill-name>
description: <same description as the shared skill>
allowed-tools: <same allowed-tools as the shared skill>
---
## Repo-specific additions
- <the new convention or guideline>
## Shared skill
Read and follow the shared skill at `<original-shared-skill-path>`.
Then ensure .claude/skills/<skill-name>/SKILL.md is a symlink to
.agents/skills/<skill-name>/SKILL.md:
If .agents/skills/ directory does not exist:
Create or update .claude/skills/<skill-name>/SKILL.md directly with the
same structure (repo-specific additions before the shared skill reference).
If the user declines, log the inconsistency in the final confirmation but take no action
Report all changes made:
<skill-name>/ subdirectory if needed
but do NOT create .agents/ or .agents/skills/ directories — only use them
if they already exist