본문으로 건너뛰기
cccskills
무료GitHub에 공개

one-canonical

Collapsing every copy of one kind of thing (tables, UIs, hooks, APIs, renderers) into a single canonical one. Use when asked to unify, merge, converge, or 'make one X used everywhere', before migrating callers onto a new canonical piece, or removing a duplicate component. NOT for docs (use docs).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(2)

  • SKILL.md4.7 KB
  • component-removal.md4.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

<!-- SYNCED COPY — do not edit here. Canonical: common-docs/skills/one-canonical/SKILL.md This file is distributed to every consuming repo by common-docs/meta/scripts/sync_skills.py. Edit the canonical, run the sync, and commit each repo. Edits made here are overwritten and lost. -->

one-canonical

The rich-content census took three rounds and each one still found surfaces the last missed. Every step below ends on a check; skipping one is the failure.

1. Start THE LIST before you search

Create one list file the first minute (<project>/LIST.md or the project's register). Every instance you find, in any round, by anyone, goes on it immediately: what · where (file / table / route / repo) · how found · status. Never rebuild it from memory or from a summary. A find that is not on the list was not found.

Done when: the list exists and every later step writes to it.

2. Research until the finds stop

Keyword grep is round one, never the last round. Each round uses a DIFFERENT method:

  • enumerate, don't search: every route, every table, every package, every repo (not only this one);
  • walk the import graph, the database (live columns, triggers, row counts, never estimates), overlays, windows, registries loaded by string key;
  • read how each copy actually behaves, not just where it is.

Where copies do the same job differently, list every way on the list and pick a winner per capability. Build the canonical one CLEAN from the winners: never promote the best existing copy and patch it. Research every copy completely first (every column, every behavior, what is actually used), eliminate what is wrong, bad or unused, and build ONE system with 100% of the winning capabilities from day one; the incumbent is one input, never the base, and the strongest incumbent migrates in like every other. The order for a storage or design unification: research, capability-by-implementation winner matrix, clean design, independent attack, build, migrate all. "Follow X's concepts" means follow its method, not store content in X.

Done when: a round using a new method adds nothing to the list.

3. Migrate one by one from the list

One duplicate component going away in favor of a kept one: follow component-removal.md (audit, usages, preserve, update consumers, delete, prove).

Work the list top to bottom. Each item: move it, verify it on its real surface, mark it done with the proof. No bulk "all migrated" claims. Before moving each item, screenshot it in place and apply canonicalize without destroying: an ordinary copy is replaced; a copy that is visibly better in its spot is adopted into the canonical piece (feature, option or new primitive) after one simple question to Arman with before/after links. Only then is the old copy deleted, not left beside the new one.

Done when: every row is done-with-proof or explicitly out of scope with a reason.

4. Tear it apart before you believe it

When you think you are done, dispatch agents that did NOT build it and do NOT get your list: they search every codebase from scratch for anything still doing the job the old way. Every find goes on the list and back through step 3.

Done when: an independent sweep returns nothing new.

5. Look for what nobody called this before

Charge at least one agent to think outside the box: what does this same job under another name? (The assistant answer is a note. A flashcard front is rich content. A system prompt is a document.) Anything that fits joins the list.

Done when: that agent's finds are on the list and migrated or ruled out with a reason.

6. Lock the door

Add a guard that fails on any NEW use of an old copy, with a baseline that only shrinks, proven failing-then-passing (forcing-function-tests).

Done when: the guard is in the release gates and its self-test goes red then green.

Relocated

Old trigger (skill component-consolidation, matrx-frontend)Now
remove a component in favor of another; eliminate duplicates; reduce two versions to one; clean up redundant UI componentsthis skill + component-removal.md

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Admin debug system wiring for the floating AdminIndicator's live debug data and Copy Full Context. Use when adding debug visibility to a route or feature, wiring useDebugContext or the debug panel, capturing console errors, or enabling the copy-context workflow for a page.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

armanisadeghi/ai-matrx32026년 10월 22일 업데이트

Compact two-icon Copy / Copy-for-AI controls (components/agent-copy). Use when adding copy buttons to a row, card, list, or record; merging duplicate Copy/JSON/AI controls; continuing the copy rollout; or writing a Copy-for-AI payload. NOT for markdown content actions (use rich-document-actions).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

armanisadeghi/ai-matrx32026년 10월 22일 업데이트

Disclosing a surface's existing fixed AI jobs in the shell's top Agents menu. Use when a page, panel, overlay, or window already runs a mandate behind a button, assist, automatic action, or mode; when the agent-disclosure guard names a file; or during a surface check.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

armanisadeghi/ai-matrx32026년 10월 22일 업데이트

The watch-fix-rerun method for making an existing platform agent or automated process efficient and correct: baseline its ledger, run one unit yourself, fix the class behind every wasted call, rerun, record. Use when asked to improve, optimize, watch, or 'make efficient' an agent, a sandbox session, a sync job, or any recurring automated process.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

armanisadeghi/ai-matrx32026년 10월 22일 업데이트

Redux state for agent execution and firing agent shortcuts. Use when editing features/agents/redux/, building agent UI, creating a conversation, touching assembleRequest or NDJSON stream state, wiring agent-state selectors, adding a per-conversation capability, or triggering a shortcut from a button, menu, or code (useShortcutTrigger, launchAgentExecution).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

armanisadeghi/ai-matrx32026년 10월 22일 업데이트

The provision for a call site: the exhaustive menu of values that place in the code can realistically produce. Use before creating or fixing a mandate or agent that reasons about more than its own input, when deciding whether an agent can answer at all with what it is sent, or when its output 'looks right' but nobody checked it could be. NOT for building the agent (use create-agent).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

armanisadeghi/ai-matrx32026년 10월 22일 업데이트

armanisadeghi의 스킬 모두 보기

이 스킬의 문제 신고