AI Slop Code RIsk Monitor

obra/superpowers

An agentic skills framework & software development methodology that works.

5.9 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for obra/superpowers, a Shell project with 297,155 GitHub stars. SynthScan examined 47,089 lines of code across 219 source files, recording 155 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 5.9 (Moderate pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

5.9
Adjusted Signal
5.9
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
297.2K
Stars
Shell
Language
47.1K
Lines of Code
219
Files
155
Pattern Hits
2026-10-12
Scan Date
0.00
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 19.7/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 129 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.3/100 · LOW

Are imports declared and package/API names verified? 3 finding(s).

Agent Over-Engineering Ratio 11.3/100 · LOW

Are wrappers, guards, and repeated structures necessary? 62 finding(s).

PR Review Velocity Impact 22.7/100 · LOW

Which changes need focused human review? 155 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 1MEDIUM 41LOW 113

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 155 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Decorative Section Separators20 hits · 60 pts
SeverityFileLineSnippetContext
MEDIUM…cs/plans/2025-11-22-opencode-support-implementation.md565# ============================================COMMENT
MEDIUMdocs/plans/2025-11-22-opencode-support-design.md92# ============================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh31# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh33# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh89# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh91# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh140# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh142# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh169# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh171# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh212# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh214# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh322# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh324# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh361# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh363# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh386# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh388# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh422# =============================================================================COMMENT
MEDIUMscripts/sync-to-codex-plugin.sh424# =============================================================================COMMENT
Structural Annotation Overuse35 hits · 54 pts
SeverityFileLineSnippetContext
LOW⚡…s/2025-11-28-skills-improvements-from-user-feedback.md452// Step 1: Open interface definition (PlatformAdapter)COMMENT
LOW⚡…s/2025-11-28-skills-improvements-from-user-feedback.md453// Step 2: List methods defined there (close, initialize, etc.)COMMENT
LOW⚡…s/2025-11-28-skills-improvements-from-user-feedback.md454// Step 3: Mock EXACTLY those methodsCOMMENT
LOW…uperpowers/plans/2026-03-23-codex-app-compatibility.md41## Step 0: Check if Already in an Isolated WorkspaceCOMMENT
LOW…uperpowers/plans/2026-03-23-codex-app-compatibility.md130Read `skills/finishing-a-development-branch/SKILL.md` in full. Identify the insertion point: after "**If tests pass:** CCODE
LOW…uperpowers/plans/2026-03-23-codex-app-compatibility.md209Find the "### Step 5: Cleanup Worktree" section in `skills/finishing-a-development-branch/SKILL.md` (line numbers will hCODE
LOW…uperpowers/plans/2026-03-23-codex-app-compatibility.md212### Step 5: Cleanup WorktreeCOMMENT
LOW…uperpowers/plans/2026-03-23-codex-app-compatibility.md234### Step 5: Cleanup WorktreeCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md157## Step 1: Create Isolated WorkspaceCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md229## Step 0: Detect Existing IsolationCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md260## Step 1: Create Isolated WorkspaceCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md326## Step 3: Project SetupCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md345## Step 4: Verify Clean BaselineCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md490### Step 1: Verify TestsCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md512### Step 2: Detect EnvironmentCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md529### Step 3: Determine Base BranchCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md538### Step 4: Present OptionsCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md567### Step 5: Execute ChoiceCOMMENT
LOWdocs/superpowers/plans/2026-04-06-worktree-rototill.md641### Step 6: Cleanup WorkspaceCOMMENT
LOW…perpowers/specs/2026-04-06-worktree-rototill-design.md57#### Step 0: Detect Existing IsolationCOMMENT
LOW…perpowers/specs/2026-04-06-worktree-rototill-design.md159#### Step 1: Verify Tests (unchanged)COMMENT
LOW…perpowers/specs/2026-04-06-worktree-rototill-design.md180#### Step 2: Determine Base Branch (unchanged)COMMENT
LOW…perpowers/specs/2026-04-06-worktree-rototill-design.md182#### Step 3: Present OptionsCOMMENT
LOW…perpowers/specs/2026-04-06-worktree-rototill-design.md197#### Step 4: Execute ChoiceCOMMENT
LOW…perpowers/specs/2026-04-06-worktree-rototill-design.md227#### Step 5: Cleanup (updated)COMMENT
LOWskills/using-git-worktrees/SKILL.md16## Step 0: Detect Existing IsolationCOMMENT
LOWskills/using-git-worktrees/SKILL.md47## Step 1: Create Isolated WorkspaceCOMMENT
LOWskills/using-git-worktrees/SKILL.md102## Step 2: Project SetupCOMMENT
LOWskills/using-git-worktrees/SKILL.md121## Step 3: Verify Clean BaselineCOMMENT
LOWskills/finishing-a-development-branch/SKILL.md14## Step 1: Verify TestsCOMMENT
LOWskills/finishing-a-development-branch/SKILL.md28## Step 2: Detect EnvironmentCOMMENT
LOWskills/finishing-a-development-branch/SKILL.md46## Step 3: Determine Base BranchCOMMENT
LOWskills/finishing-a-development-branch/SKILL.md53## Step 4: Present OptionsCOMMENT
LOWskills/finishing-a-development-branch/SKILL.md84## Step 5: Execute ChoiceCOMMENT
LOWskills/finishing-a-development-branch/SKILL.md159## Step 6: Cleanup WorkspaceCOMMENT
Hyper-Verbose Identifiers39 hits · 44 pts
SeverityFileLineSnippetContext
LOWtests/brainstorm-server/branding.test.js77function createPackagedServerFixture(version) {CODE
LOWtests/brainstorm-server/branding.test.js157function assertBrandedFallbackText(html, version = PACKAGE_VERSION) {CODE
LOWtests/brainstorm-server/branding.test.js173function assertLogoKeepsTransparentBackground(html) {CODE
LOWtests/brainstorm-server/branding.test.js208function assertFramedLogoSupportsDarkTheme(html) {CODE
LOWtests/brainstorm-server/branding.test.js215function assertFramedScreenUsesBrandHeader(html) {CODE
LOWtests/brainstorm-server/branding.test.js227function assertHeaderAvoidsNarrowOverlap(html) {CODE
LOWtests/brainstorm-server/server.test.js93function assertStartedOnExpectedPort(out) {CODE
LOWtests/brainstorm-server/auth.test.js116function assertStartedOnExpectedPort(out) {CODE
LOWtests/hermes/test_plugin.py42 def test_register_attaches_only_pre_llm_call_hook(self, mock_ctx):CODE
LOWtests/hermes/test_plugin.py47 def test_register_registers_every_stock_skill_as_path(self, mock_ctx):CODE
LOWtests/hermes/test_plugin.py61 def test_registered_skills_match_skill_directories(self, mock_ctx):CODE
LOW⚡tests/hermes/test_plugin.py74 def test_first_turn_returns_bootstrap_context(self, mock_ctx):CODE
LOW⚡tests/hermes/test_plugin.py84 def test_later_turns_return_none(self, mock_ctx):CODE
LOW⚡tests/hermes/test_plugin.py90 def test_hook_tolerates_future_kwargs(self, mock_ctx):CODE
LOW⚡tests/hermes/test_plugin.py123 def test_clone_layout_resolves_sibling_skills(self, tmp_path, mock_ctx):CODE
LOW⚡tests/hermes/test_plugin.py130 def test_flat_layout_resolves_nested_skills(self, tmp_path, mock_ctx):CODE
LOW⚡tests/hermes/test_plugin.py137 def test_missing_skills_raises_loudly(self, tmp_path, mock_ctx):CODE
LOWtests/hermes/test_plugin.py151 def test_every_stock_skill_registers_a_description(self, mock_ctx):CODE
LOWtests/hermes/test_plugin.py158 def test_descriptions_match_the_skill_frontmatter(self, mock_ctx):CODE
LOWtests/hermes/test_plugin.py176 def test_frontmatter_value_parsing(self, block, expected):CODE
LOW⚡tests/hermes/test_bootstrap.py35 def test_no_frontmatter_returns_trimmed_content(self):CODE
LOW⚡tests/hermes/test_bootstrap.py40 def test_strips_surrounding_whitespace_from_body(self):CODE
LOW⚡tests/hermes/test_bootstrap.py47 def test_repo_layout_resolves(self):CODE
LOW⚡tests/hermes/test_bootstrap.py64 def test_contains_using_superpowers_body(self):CODE
LOW⚡tests/hermes/test_bootstrap.py71 def test_frontmatter_stripped(self):CODE
LOW⚡tests/hermes/test_bootstrap.py75 def test_tool_mapping_sourced_from_reference_file(self):CODE
LOWtests/hermes/test_bootstrap.py88 def test_skill_view_guidance_present(self):CODE
LOWtests/hermes/test_bootstrap.py92 def test_under_hermes_context_spill_limit(self):CODE
LOW…rs/plans/2026-06-09-sdd-task-scoped-review-dispatch.md555def scaffold_sdd_quality_defect_plan(workdir: Path) -> None:STRING
LOW…/superpowers/plans/2026-05-06-lift-drill-into-evals.md306def test_set_superpowers_root_default_when_unset(monkeypatch, tmp_path):CODE
LOW…/superpowers/plans/2026-05-06-lift-drill-into-evals.md317def test_set_superpowers_root_default_respects_existing(monkeypatch):CODE
LOW…/superpowers/plans/2026-05-06-lift-drill-into-evals.md358def _set_superpowers_root_default() -> None:CODE
LOW…/superpowers/plans/2026-05-06-lift-drill-into-evals.md511def test_codex_requires_superpowers_root():CODE
LOW…/superpowers/plans/2026-05-06-lift-drill-into-evals.md516def test_codex_does_not_require_superpowers_root():CODE
LOW…s/2026-06-11-visual-companion-final-hardening-fixup.md128function assertStartedOnExpectedPort(out) {CODE
LOW…s/2026-06-11-visual-companion-final-hardening-fixup.md795function assertStartedOnExpectedPort(out) {CODE
LOW…/superpowers/plans/2026-07-15-sdd-fix-loop-redesign.md1143export function scaffoldSddMidloopStructural(ctx: HelperContext): void {CODE
LOW…rs/plans/2026-06-10-visual-companion-auth-hardening.md465function isRegularFileInsideContentDir(filePath) {CODE
LOW.pi/extensions/superpowers.ts115function firstNonCompactionSummaryIndex(messages: unknown[]): number {CODE
Self-Referential Comments8 hits · 24 pts
SeverityFileLineSnippetContext
MEDIUMtests/claude-code/test-helpers.sh131# Create a temporary test project directoryCOMMENT
MEDIUMtests/claude-code/test-helpers.sh147# Create a simple plan file for testingCOMMENT
MEDIUM…e-code/test-subagent-driven-development-integration.sh58# Create a simple implementation planCOMMENT
MEDIUMtests/explicit-skill-requests/run-test.sh44# Create a minimal project directory for the testCOMMENT
MEDIUMtests/explicit-skill-requests/run-test.sh48# Create a dummy plan file for mid-conversation testsCOMMENT
MEDIUMtests/explicit-skill-requests/run-haiku-test.sh33# Create a dummy plan fileCOMMENT
MEDIUMtests/explicit-skill-requests/run-multiturn-test.sh29# Create a dummy plan fileCOMMENT
MEDIUMtests/opencode/setup.sh54# Create a project directory for project-level skill testsCOMMENT
AI Slop Vocabulary6 hits · 22 pts
SeverityFileLineSnippetContext
MEDIUM…e-code/test-subagent-driven-development-integration.sh216# Test 2: Subagents were used (Agent / Task tool — name varies by harness version)COMMENT
MEDIUMtests/diagnosing-superpowers/test-skill-structure.sh109# --- removed harness recipes stay removed --------------------------------COMMENT
MEDIUMtests/antigravity/test-antigravity-tools.sh8# harness-specific mappings" check. CI-safe: does not require `agy` installed.COMMENT
MEDIUM⚡skills/brainstorming/scripts/start-server.sh153# Resolve the harness PID (grandparent of this script).COMMENT
MEDIUM⚡skills/brainstorming/scripts/start-server.sh154# $PPID is the ephemeral shell the harness spawned to run us — it diesCOMMENT
MEDIUM⚡skills/brainstorming/scripts/start-server.sh155# when this script exits. The harness itself is $PPID's parent.COMMENT
Redundant / Tautological Comments14 hits · 21 pts
SeverityFileLineSnippetContext
LOWtests/claude-code/test-helpers.sh31# Check if output contains a patternCOMMENT
LOWtests/claude-code/test-helpers.sh52# Check if output does NOT contain a patternCOMMENT
LOWtests/claude-code/test-helpers.sh71# Check if output matches a countCOMMENT
LOWtests/claude-code/test-helpers.sh94# Check if pattern A appears before pattern BCOMMENT
LOWtests/claude-code/run-skill-tests.sh18# Check if Claude Code is availableCOMMENT
LOWtests/explicit-skill-requests/run-test.sh81# Check if skill was triggered (look for Skill tool invocation)COMMENT
LOWtests/explicit-skill-requests/run-test.sh97# Check if Claude took action BEFORE invoking the skill (the failure mode)COMMENT
LOWtests/explicit-skill-requests/run-test.sh105 # Check if any non-Skill, non-system tools were invoked before the first Skill invocationCOMMENT
LOWtests/explicit-skill-requests/run-multiturn-test.sh89# Check if skill was triggered in Turn 3COMMENT
LOWtests/opencode/test-priority.sh92# Check if opencode is available for integration testsCOMMENT
LOWtests/opencode/test-tools.sh19# Check if opencode is availableCOMMENT
LOWscripts/bump-version.sh138 # Check if all versions matchCOMMENT
LOWscripts/bump-version.sh201 # Check if this file is in the declared listCOMMENT
LOWskills/systematic-debugging/find-polluter.sh53 # Check if pollution appearedCOMMENT
Modern AI Meta-Vocabulary6 hits · 18 pts
SeverityFileLineSnippetContext
MEDIUMtests/devin/test-devin-plugin.sh8# or tool-mapping scaffold to test. What IS Devin-specific is the manifest.COMMENT
MEDIUM…superpowers/plans/2026-07-30-codex-efficiency-fixes.md94### Task 2: T3 — codex-tools.md version-honest multi-agent rewriteCOMMENT
MEDIUM…superpowers/plans/2026-07-30-codex-efficiency-fixes.md157### Task 3: T2 — codex-tools.md event-driven waiting sectionCOMMENT
MEDIUM…uperpowers/plans/2026-10-06-antigravity-marketplace.md529# runs the SessionStart hook for bootstrap, so there is no agy-specific scaffoldCOMMENT
MEDIUM…ills/using-superpowers/references/claude-code-tools.md9## Cheaper orchestration for subagent-driven developmentCOMMENT
MEDIUMskills/using-superpowers/references/codex-tools.md1## Subagent dispatch requires multi-agent supportCOMMENT
Over-Commented Block15 hits · 14 pts
SeverityFileLineSnippetContext
LOWindex.js1// Root entrypoint for OpenCode v2 directory-form plugin registration.COMMENT
LOW.opencode/plugins/superpowers.js141};COMMENT
LOWtests/devin/test-devin-plugin.sh1#!/usr/bin/env bashCOMMENT
LOWtests/claude-code/test-worktree-native-preference.sh1#!/usr/bin/env bashCOMMENT
LOW…e-code/test-subagent-driven-development-integration.sh1#!/usr/bin/env bashCOMMENT
LOWtests/brainstorm-server/windows-lifecycle.test.sh1#!/usr/bin/env bashCOMMENT
LOW…uperpowers/plans/2026-10-06-antigravity-marketplace.md121```bashCOMMENT
LOW…erpowers/plans/2026-07-06-sdd-plan-scoped-workspace.md301# and the progress ledger. Print the plan directory's absolute path.COMMENT
LOW…erpowers/plans/2026-07-06-sdd-plan-scoped-workspace.md681# plan B (widget export). v3: every ledger claim survives contentCOMMENT
LOW…s/2026-07-06-sdd-plan-scoped-workspace-eval-results.md241COMMENT
LOWscripts/render-antigravity-logo.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/sync-to-codex-plugin.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/sync-to-codex-plugin.sh21# ./scripts/sync-to-codex-plugin.sh --bootstrap # create plugin dir if missingCOMMENT
LOW…ystematic-debugging/condition-based-waiting-example.ts141// ---------------COMMENT
LOWskills/brainstorming/scripts/start-server.sh1#!/usr/bin/env bashCOMMENT
Example Usage Blocks5 hits · 8 pts
SeverityFileLineSnippetContext
LOWtests/brainstorm-server/windows-lifecycle.test.sh15# Usage:COMMENT
LOWscripts/bump-version.sh6# Usage:COMMENT
LOWscripts/render-antigravity-logo.sh5# Usage:COMMENT
LOWscripts/sync-to-codex-plugin.sh15# Usage:COMMENT
LOWscripts/lint-shell.sh5# Usage:COMMENT
Empty Error Handlers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHtests/claude-code/analyze-token-usage.py67except Exception:CODE
Excessive Try-Catch Wrapping2 hits · 3 pts
SeverityFileLineSnippetContext
LOWtests/claude-code/analyze-token-usage.py67 except Exception:CODE
MEDIUMtests/claude-code/analyze-token-usage.py91 print(f"Error: Session file not found: {main_session_file}")CODE
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOW…e-code/test-subagent-driven-development-integration.sh120git config user.email "test@test.com"CODE
LOWskills/brainstorming/visual-companion.md247<div class="placeholder">Placeholder area</div>CODE
Deep Nesting1 hit · 1 pts
SeverityFileLineSnippetContext
LOWtests/claude-code/analyze-token-usage.py12CODE
Unused Imports1 hit · 1 pts
SeverityFileLineSnippetContext
LOWtests/hermes/test_bootstrap.py5CODE