Skip to main content

Utilities

Cross-cutting tools that work across all agents: the /remember skill for saving preferences, and the automatic preference detection system.

/remember

Saves a lasting preference to the appropriate preferences file.

/remember [dev|tutor|student|shared] <preference>

Scoping

The first word after /remember determines where the preference is stored:

ScopeTarget fileWhen to use
sharedagent/shared/preferences.mdConventions all agents should follow
devagent/dev/preferences.mdDev-specific behavior
tutoragent/tutor/preferences.mdTutor-specific behavior
studentagent/student/preferences.mdStudent-specific behavior

If no scope is given, it defaults to shared.

How It Works

  1. Parses the input to extract scope and preference text.
  2. Reads the target file to see existing category headings.
  3. Appends the preference as a markdown bullet under the best-fit ## Category heading.
  4. If no heading fits, creates a new category at the end of the file.
  5. Confirms what was saved and where.

Preferences are append-only — existing entries are never reorganized, rewritten, or removed by the skill.

Examples

/remember shared use ESM modules for all JS
/remember dev always run tests before committing
/remember tutor prefer diagrams over text for architecture topics

Shared Preferences

Shared preferences (agent/shared/preferences.md) define conventions that apply to every agent. Current conventions cover:

  • Code style — ESM modules, markdown for docs and logs, lowercase commit messages.
  • Logs — daily log format (log/YYYY/MM/DD.md), entry structure.
  • Tools — CLI preferences (e.g., glab for GitLab operations).
  • Scripts — bash, idempotent setup scripts.
  • Branches — workspace branch rules, merge restrictions for branch-specific data.

Each agent reads shared preferences during its setup phase, before executing any task.

Automatic Preference Detection

When you correct an agent's behavior during a conversation, the agent automatically determines if the correction is a lasting preference. If it is, the agent:

  1. Determines the scope — shared (applies to all agents) or agent-specific.
  2. Appends the preference as a bullet under the appropriate ## Category heading in the right file.
  3. Confirms what was saved and where.

This means you don't need to explicitly run /remember for every correction — the system learns from your feedback. However, /remember is available when you want to proactively add a convention without first encountering the behavior.

Where Preferences Live

agent/
shared/preferences.md # all agents read this
dev/preferences.md # dev agent only
tutor/preferences.md # tutor agent only
student/preferences.md # student agent only

Each file uses the same format: markdown bullets organized under ## Category headings. The category structure grows organically as preferences are added.