Token导航 LogoToken导航TokenDH.com
开发external-servicegithub未标认证来源可访问许可证需确认审计通过

complexity-mitigator复杂性缓解器

Agent Skill

complexity-mitigator 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,304

周安装

56

GitHub Stars

53

下载量

457
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:complexity-mitigator(复杂性缓解器)
来源仓库:https://github.com/tkersey/dotfiles
仓库路径:skills/complexity-mitigator
安装命令:
npx skills add https://github.com/tkersey/dotfiles --skill complexity-mitigator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/tkersey/dotfiles --skill complexity-mitigator

简介

complexity-mitigator 降低偶然复杂度同时保留领域本质复杂性。

  • 优化读者理解成本,减少分支数量和状态模拟负担。
  • 偏好局部清晰而非全局巧妙,最小切口最大化精度。
  • 需识别主要认知负荷来源再针对性实施重构。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Complexity Mitigator

Intent

Reduce incidental complexity (understanding cost) while preserving essential domain meaning.

Core Mindset

  • Keep essential complexity, vaporize the incidental.
  • There is no silver bullet refactor; identify the dominant source of understanding cost before prescribing moves.
  • Optimize for reader comprehension first, then for extraction.
  • Minimal incision, maximal precision: change only what reduces cognitive load.
  • Prefer boring, local clarity over cleverness.
  • Reduce "understanding cost": fewer branches to hold in mind, fewer places to jump, fewer states to simulate.

Epistemic Status (Heuristics, Not Laws)

  • The playbook below is a set of defaults, not guarantees.
  • There is no general proof that any single move always reduces complexity; validate locally.
  • When you break a default (e.g., extract before flatten), state the reason (what it unlocks).

Definitions (Essential vs Incidental)

  • Essential complexity: domain rules, invariants, boundaries, required state transitions, and irreducible external conformity/change pressure (simplifying it changes correct behavior or meaning).
  • Incidental (accidental) complexity: complexity introduced by implementation choices (simplifying it preserves behavior and clarifies intent).
  • Quick test (imperfect): if a reader must mentally execute the code to infer intent or allowed states, incidental complexity may be hiding the essential. Exception: some algorithms/concurrency require real simulation.

Brooks Lens (No Silver Bullet)

  • Do not assume one move (extract, rename, state machine, types) will dissolve the whole problem.
  • Ask four questions before recommending a cut:

- Complexity: is the code hard because the real state space is large and interlocked? - Conformity: is the code hard because it must match awkward external APIs, schemas, laws, or legacy behavior? - Changeability: is the code hard because the surrounding requirements or extension pressure are genuinely moving? - Invisibility: is the code hard because intent is split across overlapping views (control flow, data flow, ownership, lifecycle, dependency)?

  • Prefer recommendations that expose these constraints over recommendations that merely rearrange syntax.

Engage When

  • A review stalls because readers can't follow the flow.
  • You need an explanation of what the code is doing (analysis-first) before changing anything.
  • You see deep nesting (>3 levels is a good heuristic), long if/else chains, or duplicated branching.
  • Progress requires cross-file hops or simulating shared/mutable state.
  • The real question may be whether the complexity is in the code or in the requirements/boundaries the code must conform to.

Guardrails

  • No file edits, no commits.
  • No running commands unless explicitly requested.
  • If expected behavior is unclear/product-sensitive, stop and ask.
  • If you suspect crash/corruption risk, recommend $fix.

Quick Scan (Cognitive Heat Read)

  • Measure (rough, not academic):

- Max nesting depth - Branch count (if/else/switch/ternary) - Boolean soup count (booleans/flags that gate behavior, especially combined) - Cross-file hops (distinct definitions you must open to understand) - State to simulate (mutable vars, implicit globals, order dependencies) - External conformity burden (legacy behavior, API/schema/policy obligations) - Change pressure (how much of the branching exists to preserve extension points or evolving cases) - Views to reconcile (control/data/lifecycle/ownership spread across multiple representations)

  • Call out hotspots in one line each: path:line - [metrics] - why it is hard.
  • Tag each hotspot: essential (domain) vs incidental (implementation) vs mixed (domain hidden by noise).
  • Separate essential domain logic from incidental implementation noise before proposing changes.
  • Treat metrics as proxies; do not optimize for the number if it harms locality or domain clarity.

Workflow

  1. Choose the slice: entrypoint, inputs, outputs, state.
  2. Heat read: name hotspots and what makes them hard.
  3. Trace behavior (if meaning is unclear): happy path + key failure paths; call out mutations/IO.
  4. Verdict: separate essential domain logic, external conformity/change burden, and incidental implementation noise.
  5. Simplify in order (default): flatten -> rename -> extract (do not extract until flatten/rename reveals stable shapes).
  6. Options: rank by effort vs impact and state the smallest viable cut.
  7. Sketch: show the improved structure (types + flow), not the full implementation.
  8. TRACE: cite which letters are satisfied and which are currently violated.

Standard Playbook (Flatten -> Rename -> Extract)

  • Flatten:

- Lead with guard clauses and early returns; keep the happy path linear. - Split nested conditionals into separate paths (small helpers or separate functions per path); keep helpers close to avoid extra cross-file hops. - Make temporal coupling explicit (state machine / explicit step enum) when ordering materially affects correctness. - Do not flatten away required protocol steps, compatibility branches, or lifecycle edges; if they are essential, make them explicit instead.

  • Rename:

- Replace vague verbs (process, handle, do) with domain actions; align nouns with domain entities. - Fix boolean naming (prefer positive, avoid double negatives); eliminate boolean-flag arguments when possible. - Move meaning into data: enums / tagged unions / option objects over multiple booleans (when it reduces branching or invalid states).

  • Extract (Rule of Three):

- Split mixed responsibilities (parse vs validate vs decide vs effect). - Convert repeated branching into data-driven dispatch (tables, handler maps, pattern matching). - Extract only stable, repeatable concepts; Rule of Three is a heuristic (exceptions exist).

Option Ranking Rubric

  • Effort: tiny (rename/guard), small (split function), medium (introduce enum/table), large (module boundary / state machine).
  • Impact: reduces branching, reduces cross-file hops, reduces state to simulate, clarifies invariants.

What Counts as Evidence (Local, Not Global)

  • Prefer local, checkable evidence over universal claims.
  • Use before/after indicators where possible:

- Nesting/branching/flags/hops/state-to-simulate (from the heat read) - Which external constraints remain essential versus which ones became localized - Which invariant becomes explicit (type/constructor/assertion/test) - What tradeoff you accepted (e.g., more functions in exchange for linear flow)

Output Format

0) Slice

  • Entrypoint:...
  • Inputs/outputs/state:...

1) Heat Read (hotspots)

  • path:line -...

1.5) Behavior Trace (optional)

  • Happy path:...
  • Failure paths:...
  • Mutations/IO:...

2) Essential vs Incidental

  • Essential:...
  • Conformity/change pressure:...
  • Incidental:...

3) Options (ranked by effort vs impact)

  1. Smallest viable cut:...
  2. ...
  3. ...

4) Sketch

// minimal illustrative snippet

5) TRACE

  • Satisfied:... (letters your recommended structure improves)
  • Violated:... (letters the current code is failing)

Why TRACE Is Part of Complexity Mitigation

  • In this skill, treat "complexity" primarily as understanding cost (not performance or operational complexity).
  • TRACE is the lens that prevents fake simplifications and makes tradeoffs explicit:

- T (Type): can remove invalid states from consideration; over-modeling can also add noise. - R (Readability): reduces naming/structure friction that feels like complexity. - A (Atomic): separates decide vs do; mixed responsibilities often create incidental complexity. - C (Cognitive): directly targets nesting/branching/state simulation. - E (Essential): checks that you are deleting implementation noise, not deleting domain meaning.

  • Using TRACE makes the mitigation outcome checkable: "which understanding costs went down, and what got traded off?"

TRACE Quick Reference

  • T (Type): invalid states are unrepresentable; constraints live in types/constructors (keep the type model minimal).
  • R (Readability): intent is obvious from names and locality.
  • A (Atomic): one responsibility per unit; decisions separate from effects (avoid scattering logic across too many tiny units).
  • C (Cognitive): low nesting/branching; minimal state simulation.
  • E (Essential): code expresses only the domain-required complexity.

Invariant Guidance

Use when missing invariants block simplification.

  • Ask for or infer: state transitions, allowed/forbidden states, ownership/immutability, error handling boundaries.
  • Identify the smallest invariant that unlocks flattening (e.g., "state X implies Y").
  • If invariants are unknown, recommend adding assertions or making them explicit in types.

Footgun Checklist

Use when confusing APIs or naming cause misuse.

  • Hidden side effects or stateful globals
  • Non-obvious preconditions or order dependencies
  • Boolean parameters with inverted meaning
  • Silent defaults or magic values
  • Similar names for different concepts
  • Error handling that is inconsistent or implicit

Escalation

  • If repeated algebraic shapes or composable pipelines appear, consider switching to the Universalist skill and framing a minimal algebra + laws.
  • If the user wants implementation, escalate to $fix.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

32.73%
按下载量换算150

Claude

29.31%
按下载量换算134

Cursor

20.2%
按下载量换算92

Gemini CLI

9.26%
按下载量换算42

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills