personalization-memory
Personalization Memory
Turn repeated interaction traces into durable preferences without making the main agent stop and ask the user for every memory update. This skill is the writeback layer for "the system gets more personal over time."
Skill Directory Layout
<installed-skill-dir>/
├── SKILL.md
├── references/
│ ├── trajectory-scanner.md
│ └── writeback-policy.md
└── templates/
└── preference-ledger.md
Core Contract
- Do not ask the user just to decide whether a routine preference should be remembered.
- Prefer low-cost sidecar scanning for synthesis from logs, trajectories, diffs, sidecar outputs, review bundles, and project memory.
- Never copy raw private conversations, raw logs, credentials, local-only paths, or collaborator messages into public repo memory.
- Store the smallest reusable lesson, not the whole episode.
- Treat personalization as a promotion ladder: observation -> candidate -> preference -> project contract -> reusable skill-rule candidate.
- Public skill changes require the same normal repo validation, commit, push, and reinstall flow as other skill changes.
When to Use
Use this skill when:
- the user says a workflow should become personalized, automatic, remembered, or learned from trajectories
- the agent notices repeated preferences such as "do not ask me", "commit/push first", "use Overleaf compile", "prefer screenshots/page bundles", "use sidecar for low-risk scans"
- another skill finishes meaningful work and there are reusable workflow, writing, figure, LaTeX, Git, review, or compute lessons
- Codex or Claude Code trajectory logs should be scanned into candidate preferences
- project memory needs to separate private user facts from shared project contracts and public skill rules
Pair with sidecar-task-runner for the low-cost scan and with research-project-memory when accepted project-level conclusions must update memory/.
Progressive Loading
- Read
references/writeback-policy.mdbefore deciding where a preference belongs. - Read
references/trajectory-scanner.mdbefore launching a sidecar scan over logs, trajectories, sidecar artifacts, or repo history. - Use
templates/preference-ledger.mdwhen a project lacks a preference ledger.
Workflow
- Collect artifact inputs. Prefer sanitized artifacts:
memory/, recentgit diff,.agent/sidecars/*/decision.md,.agent/code-reviews/*/fix-log.md,.agent/layout-issues/*/manifest.md, paper/code.agent/state, and explicit user-stated preferences in the current task summary. - Run a low-cost scan when useful. Use
sidecar-task-runnerwith thepersonalization-scannerpreset for nontrivial history or trajectory scans. The scanner outputs candidates; it must not directly edit memory. - Classify each candidate. Assign scope:
private-user,project,public-skill-candidate, ordiscard. Assign type:workflow,writing,layout,figure-style,code-review,git,compute,toolchain, orcollaboration. - Apply confidence gates. One observed episode can become a lesson. Repeated episodes or explicit user wording can become a preference. Project contracts need project-specific evidence. Public skill rules need maintainer intent or repeated cross-project evidence.
- Write to the right layer. Use
references/writeback-policy.mdrouting. Write short entries with date, source artifact, confidence, and target scope. - Report only the useful summary. Tell the user what was remembered or which candidates were deferred. Do not ask for confirmation unless the next step would publish private or public-facing policy.
Default Targets
- Private user preferences: the current agent's private memory area, such as
~/.codex/memories/, especially for workstation facts, tool aliases, local paths, preferred interaction style, and personal workflow defaults. - Project preferences:
memory/,paper/.agent/,code/.agent/, orslides/.agent/, especially for contracts shared by all agents in the project. - Local scan artifacts:
.agent/sidecars/<task-id>/or.agent/personalization/<run-id>/; keep them untracked unless sanitized and intentionally committed. - Public reusable skill rules:
skills/<skill-name>/SKILL.mdorskills/<skill-name>/references/only during an explicit skill-maintenance task.
Candidate Record
Use concise records:
- Preference: <one reusable behavior>
- Scope: private-user | project | public-skill-candidate | discard
- Type: workflow | writing | layout | figure-style | code-review | git | compute | toolchain | collaboration
- Evidence: <artifact path or summarized user statement>
- Confidence: observed | repeated | user-stated | inferred
- Target: <memory file or skill file>
- Action: write | defer | promote | reject
Safety Rules
- Do not store private raw trajectory text when a derived rule is enough.
- Do not promote collaborator-specific comments, voice transcriptions, screenshots, or local file paths into public skills.
- Do not let a sidecar write final public memory without main-agent review.
- If a candidate conflicts with existing memory, mark it as
candidateand leave a short note rather than overwriting the older rule. - If a preference would change external behavior such as pushing, tagging, releasing, submitting jobs, or publishing issues, record the preference but keep the existing human gate.
More from a-green-hand-jack/ml-research-skills
project-init
Initialize an ML research project control root. Use for paper/code/slides repos, shared memory, GitHub Project alignment, agent guidance, worktree policy, and lifecycle handoffs.
37project-sync
Sync verified code-side experiment results into paper memory. Use when logs, reports, run docs, or user-confirmed metrics should become paper-facing evidence.
36add-git-tag
Create annotated Git milestone tags. Use when completing a phase, releasing a version, or marking a research checkpoint.
36update-docs
Refresh project documentation after code changes. Use after implementing features, changing behavior, or preparing a milestone commit.
36new-workspace
Create Git branches or worktrees for research code and paper versions. Use for experiments, baselines, rebuttal fixes, arXiv/camera-ready branches, and worktree memory.
36init-latex-project
Initialize a LaTeX academic paper project. Use for new conference or journal papers needing templates, macros, venue preambles, and writing guidance.
36