跳到正文
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(原文)

安装前可以查看交给 AI 代理的指令内容。

<!-- 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 / 1000 字

此表单受 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-matrx42026年10月23日 更新

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-matrx42026年10月23日 更新

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-matrx42026年10月23日 更新

The method for getting a cheaper model to match an agent's big-model answers by fixing instructions, inputs and setup. Use when asked to move an agent to a smaller or cheaper model, prove one model beats another, or compare models on an agent's test cases.

中文简介正在准备中。当前显示原文说明。

armanisadeghi/ai-matrx42026年10月23日 更新

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-matrx42026年10月23日 更新

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-matrx42026年10月23日 更新

查看 armanisadeghi 的全部技能

报告此技能的问题