overengineering-check
Review an RLM specification, design, or change for complexity without a clear justification, including speculative abstraction and premature extensibility.
Skill by williamntlam
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/williamntlam-overengineering-check
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/overengineering-check
What's inside
- Skill name
overengineering-check- Description
- Review an RLM specification, design, or change for complexity without a clear justification, including speculative abstraction and premature extensibility.
- License
- MIT
- Instructions
- 54 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Overengineering check Use this skill when asked to review a proposed specification, design, diff, or implementation for unnecessary complexity. It is a review aid: report evidence-backed concerns and alternatives; do not block a change or simplify it without authorization. The test is justification, not size or sophistication: a mechanism is overengineering when its added cost has no clear, current reason. Do not label complexity as overengineering when a stated requirement, demonstrated risk, or established boundary justifies it. For a specification, first separate explicit requirements, constraints, and success criteria from proposed solution details. Challenge only the latter when they are not justified by the former. Ask what concrete present scenario, failure mode, scale, integration, or project boundary requires each proposed mechanism. A possible future need alone is not a justification. For a design or implementation, read the stated requirements, the changed code, and the focused tests or nearby call sites needed to understand the change. Do not infer requirements from a preferred architecture. For each meaningful added layer or mechanism—such as an interface, generic framework, configuration surface, dependency, cache, queue, retry policy, or asynchronous boundary—ask: 1. Which current requirement or established project boundary does it serve? 2. Would a simpler implementation meet the known requirements? 3. What maintenance, debugging, operational, or cognitive cost does it add? Report only concerns for which the simpler alternative plausibly preserves the known requirements. For each finding, cite the relevant file and line, identify the missing or weak justification, describe the simpler alternative, explain what would be lost by simplifying, and assign `high`, `medium`, or `low` confidence. When reviewing a standalone specification without file locations, quote or name the relevant requirement or section instead. Pay particular attention in specifications to optional subsystems presented as requirements: multiple interchangeable backends, plugin or extension systems, generalized configuration, distributed or asynchronous processing, caching, versioning or migration machinery, and broad compatibility guarantees. Keep one if the specification supplies a concrete current need; otherwise recommend deferring it while preserving a straightforward path to add it later. Do not treat brevity as a goal. Complexity is normally justified when it protects correctness, security, isolation, source-groundedness, bounded prompts, diagnostics, or tests; when it implements a stated requirement; or when it maintains an established boundary. In this project, preserve the read-only runtime, host-container credential boundary, and prompt/history contracts. If no concern meets that threshold, say so plainly and note any complexity that appears justified. Separate speculative observations from actionable findings.
From williamntlam/recursive-language-model, MIT.
More from williamntlam/recursive-language-model
- 0.526score
evaluation
williamntlam
Add or modify RLM evaluations, including Harbor agent tasks, LLM-as-judge utilities, rubrics, cases, or long-context benchmarks while keeping model cost…
SkillBFreshness: BClaude Code +9 - 0.526score
cli-and-config
williamntlam
Change CLI commands, flags, TOML/YAML configuration, precedence, or startup errors while keeping authentication out of config files.
SkillBFreshness: BClaude Code +9 - 0.526score
docker-repl
williamntlam
Change the Docker REPL image, in-container namespace, RPC boundary, or isolation settings without exposing source writes, credentials, or network access.
SkillBFreshness: BClaude Code +9 - 0.526score
runtime-development
williamntlam
Change RLM runtime behavior, repository or corpus domains, backends, or the Python API while preserving data isolation and budget behavior.
SkillBFreshness: BClaude Code +9 - 0.521score
observability
williamntlam
Change trajectory logging, report generation, or runtime error reporting while preserving useful diagnostics and safe HTML output.
SkillBFreshness: BClaude Code +9 - 0.521score
prompt-safety
williamntlam
Change root or leaf prompts, exposed-method catalogs, history handling, or prompt-budget enforcement without weakening anti-context-rot guarantees.
SkillBFreshness: BClaude Code +9 - 0.496score
testing
williamntlam
Add, update, or diagnose pytest coverage for RLM behavior using focused fake environments and optional Docker integration tests.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 25, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from williamntlam
- 0.526score
evaluation
williamntlam
Add or modify RLM evaluations, including Harbor agent tasks, LLM-as-judge utilities, rubrics, cases, or long-context benchmarks while keeping model cost…
SkillBFreshness: BClaude Code +9 - 0.526score
cli-and-config
williamntlam
Change CLI commands, flags, TOML/YAML configuration, precedence, or startup errors while keeping authentication out of config files.
SkillBFreshness: BClaude Code +9 - 0.526score
docker-repl
williamntlam
Change the Docker REPL image, in-container namespace, RPC boundary, or isolation settings without exposing source writes, credentials, or network access.
SkillBFreshness: BClaude Code +9 - 0.526score
runtime-development
williamntlam
Change RLM runtime behavior, repository or corpus domains, backends, or the Python API while preserving data isolation and budget behavior.
SkillBFreshness: BClaude Code +9 - 0.521score
observability
williamntlam
Change trajectory logging, report generation, or runtime error reporting while preserving useful diagnostics and safe HTML output.
SkillBFreshness: BClaude Code +9 - 0.521score
prompt-safety
williamntlam
Change root or leaf prompts, exposed-method catalogs, history handling, or prompt-budget enforcement without weakening anti-context-rot guarantees.
SkillBFreshness: BClaude Code +9
Cite this page
overengineering-check skill. Agent Mart. https://agentmart.dev/skills/williamntlam-overengineering-check (last updated 2026-10-24)