AI Slop Code RIsk Monitor

open-gsd/gsd-core

Git. Ship. Done - Core

4.4 Low pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for open-gsd/gsd-core, a JavaScript project with 10,392 GitHub stars. SynthScan examined 295,314 lines of code across 1925 source files, recording 933 pattern matches distributed across 11 syntactic categories. The legacy adjusted pattern signal is 4.4 (Low 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.

4.4
Adjusted Signal
4.4
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
10.4K
Stars
JavaScript
Language
295.3K
Lines of Code
1.9K
Files
933
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 16.0/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 0.4/100 · LOW

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

Agent Over-Engineering Ratio 5.1/100 · LOW

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

PR Review Velocity Impact 18.6/100 · LOW

Which changes need focused human review? 933 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 2MEDIUM 137LOW 794

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 933 distinct pattern matches across 11 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.

Structural Annotation Overuse263 hits · 480 pts
SeverityFileLineSnippetContext
LOW⚡agents/gsd-project-researcher.md480## Step 1: Receive Research ScopeCOMMENT
LOW⚡agents/gsd-project-researcher.md484## Step 2: Identify Research DomainsCOMMENT
LOW⚡agents/gsd-project-researcher.md491## Step 3: Execute ResearchCOMMENT
LOW⚡agents/gsd-project-researcher.md495## Step 4: Quality CheckCOMMENT
LOW⚡agents/gsd-project-researcher.md499## Step 5: Write Output FilesCOMMENT
LOWagents/gsd-project-researcher.md525## Step 6: Return Structured ResultCOMMENT
LOWagents/gsd-debug-session-manager.compact.md39## Step 1: Read Debug FileCOMMENT
LOWagents/gsd-debug-session-manager.compact.md51## Step 2: Spawn gsd-debugger AgentCOMMENT
LOWagents/gsd-debug-session-manager.compact.md120## Step 3: Handle Agent ReturnCOMMENT
LOWagents/gsd-debug-session-manager.compact.md286## Step 4: Return Compact SummaryCOMMENT
LOW⚡agents/gsd-pattern-mapper.md78## Step 1: Receive Scope and Load ContextCOMMENT
LOW⚡agents/gsd-pattern-mapper.md86## Step 2: Classify FilesCOMMENT
LOW⚡agents/gsd-pattern-mapper.md95## Step 3: Find Closest AnalogsCOMMENT
LOWagents/gsd-pattern-mapper.md130## Step 4: Extract Patterns from AnalogsCOMMENT
LOW⚡agents/gsd-pattern-mapper.md151## Step 5: Identify Shared PatternsCOMMENT
LOW⚡agents/gsd-pattern-mapper.md160## Step 6: Write PATTERNS.mdCOMMENT
LOW⚡agents/gsd-pattern-mapper.md166## Step 7: Return Structured ResultCOMMENT
LOWagents/gsd-research-synthesizer.md55## Step 1: Read Research FilesCOMMENT
LOWagents/gsd-research-synthesizer.md74## Step 2: Synthesize Executive SummaryCOMMENT
LOWagents/gsd-research-synthesizer.md83## Step 3: Extract Key FindingsCOMMENT
LOWagents/gsd-research-synthesizer.md103## Step 4: Derive Roadmap ImplicationsCOMMENT
LOWagents/gsd-research-synthesizer.md122## Step 5: Assess ConfidenceCOMMENT
LOWagents/gsd-research-synthesizer.md133## Step 6: Write SUMMARY.mdCOMMENT
LOWagents/gsd-research-synthesizer.md153## Step 7: Commit All ResearchCOMMENT
LOWagents/gsd-research-synthesizer.md162## Step 8: Return SummaryCOMMENT
LOW⚡agents/gsd-code-fixer.md410# Step 2: drop the worktree. If this succeeds and the process is thenCOMMENT
LOW⚡agents/gsd-code-fixer.md419# Step 3: delete the temp branch ONLY if the fast-forward succeeded. IfCOMMENT
LOW⚡agents/gsd-code-fixer.md425# Step 4: drop the recovery sentinel ONLY after `git worktree remove`COMMENT
LOW⚡agents/gsd-pattern-mapper.compact.md69## Step 1: Receive Scope and Load ContextCOMMENT
LOW⚡agents/gsd-pattern-mapper.compact.md75## Step 2: Classify FilesCOMMENT
LOW⚡agents/gsd-pattern-mapper.compact.md84## Step 3: Find Closest AnalogsCOMMENT
LOWagents/gsd-pattern-mapper.compact.md103## Step 4: Extract Patterns from AnalogsCOMMENT
LOW⚡agents/gsd-pattern-mapper.compact.md120## Step 5: Identify Shared PatternsCOMMENT
LOW⚡agents/gsd-pattern-mapper.compact.md124## Step 6: Write PATTERNS.mdCOMMENT
LOW⚡agents/gsd-pattern-mapper.compact.md128## Step 7: Return Structured ResultCOMMENT
LOWagents/gsd-ui-researcher.md269## Step 1: Load ContextCOMMENT
LOWagents/gsd-ui-researcher.md276## Step 2: Scout Existing UICOMMENT
LOW⚡agents/gsd-ui-researcher.md294## Step 3: shadcn GateCOMMENT
LOW⚡agents/gsd-ui-researcher.md299## Step 4: Design Contract QuestionsCOMMENT
LOW⚡agents/gsd-ui-researcher.md308## Step 5: Compile UI-SPEC.mdCOMMENT
LOWagents/gsd-ui-researcher.md327## Step 6: Commit (optional)COMMENT
LOWagents/gsd-ui-researcher.md334## Step 7: Return Structured ResultCOMMENT
LOW⚡agents/gsd-intel-updater.md204### Step 1: OrientationCOMMENT
LOW⚡agents/gsd-intel-updater.md211### Step 2: Stack DetectionCOMMENT
LOW⚡agents/gsd-intel-updater.md219### Step 3: File GraphCOMMENT
LOW⚡agents/gsd-intel-updater.md230### Step 4: API SurfaceCOMMENT
LOW⚡agents/gsd-intel-updater.md239### Step 5: DependenciesCOMMENT
LOW⚡agents/gsd-intel-updater.md248### Step 6: ArchitectureCOMMENT
LOWagents/gsd-intel-updater.md268### Step 7: SnapshotCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md141### Step 1: OrientationCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md144### Step 2: Stack DetectionCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md152### Step 3: File GraphCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md156### Step 4: API SurfaceCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md159### Step 5: DependenciesCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md162### Step 6: ArchitectureCOMMENT
LOW⚡agents/gsd-intel-updater.compact.md168### Step 7: SnapshotCOMMENT
LOW⚡agents/gsd-ui-researcher.compact.md149## Step 1: Load ContextCOMMENT
LOW⚡agents/gsd-ui-researcher.compact.md152## Step 2: Scout Existing UICOMMENT
LOW⚡agents/gsd-ui-researcher.compact.md161## Step 3: shadcn GateCOMMENT
LOW⚡agents/gsd-ui-researcher.compact.md164## Step 4: Design Contract QuestionsCOMMENT
203 more matches not shown…
Over-Commented Block413 hits · 351 pts
SeverityFileLineSnippetContext
LOW.coderabbit.yaml1# CodeRabbit configuration — open-gsd/gsd-coreCOMMENT
LOW.coderabbit.yaml21 # checks, line-level findings) which we want to keep.COMMENT
LOWbin/install.js41// consentRequired, hostPrecedenceRank) instead of the id being re-derivedCOMMENT
LOWbin/install.js61const { composeWorkflow } = require('../gsd-core/bin/lib/workflow-fragments.cjs');COMMENT
LOWbin/install.js141 'max_threads',COMMENT
LOWbin/install.js181const CODEX_HOOKS_FEATURE_ALL_KEYS = [CODEX_HOOKS_FEATURE_KEY, ...CODEX_HOOKS_FEATURE_LEGACY_KEYS];COMMENT
LOWbin/install.js201const GSD_CLAUDE_ALLOW_PERMISSIONS = Object.freeze([COMMENT
LOWbin/install.js221 'Read(.env)',COMMENT
LOWbin/install.js301 }COMMENT
LOWbin/install.js341// sessionStart → gsd-cursor-session-start.js (context injection)COMMENT
LOWbin/install.js381// (local) or ~/.codeium/windsurf/hooks.json (global) with the shapeCOMMENT
LOWbin/install.js401const GSD_WINDSURF_HOOK_SCRIPTS = hooksSurface.GSD_WINDSURF_HOOK_SCRIPTS;COMMENT
LOWbin/install.js501 return name;COMMENT
LOWbin/install.js561 isAnthropicFlavoredModel: gsdIsAnthropicFlavoredModel,COMMENT
LOWbin/install.js601} = require(path.join(_gsdLibDir, 'install-profiles.cjs'));COMMENT
LOWbin/install.js881const hasPortableHooks = args.includes('--portable-hooks') || process.env.GSD_PORTABLE_HOOKS === '1';COMMENT
LOWbin/install.js901const hasRelativeIncludes = args.includes('--relative-includes') || process.env.GSD_RELATIVE_INCLUDES === '1';COMMENT
LOWbin/install.js1041// selectRuntimesFromArgs above no longer recognizes it, so it never lands inCOMMENT
LOWbin/install.js1121 // entry. (The prior inner `if (!isGlobal) return "'.agents'"` was unreachable:COMMENT
LOWbin/install.js1241// OpenCode always uses the absolute path (#2376 Windows, #2831 macOS/Linux).COMMENT
LOWbin/install.js1261// writeKimiHooksToml / removeKimiHooksToml: kimi's native config.toml [[hooks]]COMMENT
LOWbin/install.js1281const computePathPrefix = runtimeArtifactConversion._computePathPrefix;COMMENT
LOWbin/install.js1501// readGsdEffectiveModelOverrides / readGsdRuntimeProfileResolver, plus theCOMMENT
LOWbin/install.js2621// #2931 (ADR-1508): single-sourced in runtimeArtifactConversion, bound nearCOMMENT
LOWbin/install.js2661 // consumes only the instruction-filename tail, leaving that prefix staleCOMMENT
LOWbin/install.js2681 // trace above): `copyWithPathReplacement` runs a GENERIC dot-claude-slashCOMMENT
LOWbin/install.js2941// ── End Cline converters ─────────────────────────────────────────────────────COMMENT
LOWbin/install.js2961//COMMENT
LOWbin/install.js3701COMMENT
LOWbin/install.js3761COMMENT
LOWbin/install.js3801 converted = converted.replace(/\/clear\s*,?\s*then:?\s*\n?/gi, '');COMMENT
LOWbin/install.js4081 */COMMENT
LOWbin/install.js4101 // parsing of its own (no third copy of that extraction) — it takes theCOMMENT
LOWbin/install.js4121 const lines = [COMMENT
LOWbin/install.js4161 }COMMENT
LOWbin/install.js4181 _warnCodexResolverModelOmitted();COMMENT
LOWbin/install.js5281 // ≥0.124 — purging is the only path to a loadable config.COMMENT
LOWbin/install.js5481 );COMMENT
LOWbin/install.js5841 // regex uses (?:_?\d)* rather than [\d_]* so `1__0`, `1_.0`, and `1._0`COMMENT
LOWbin/install.js5881 */COMMENT
LOWbin/install.js6461 const normalizedGsdBlock = mergedGsdBlock.replace(/\r?\n/g, eol);COMMENT
LOWbin/install.js6481 // post-marker region is passed through stripLeakedGsdCodexSections: GSD's own previously-COMMENT
LOWbin/install.js6801// ── Cline directory-form rules + hooks + AGENTS.md (issue #787) ────────────────COMMENT
LOWbin/install.js6861// Location:COMMENT
LOWbin/install.js7041 ) {COMMENT
LOWbin/install.js7061 //COMMENT
LOWbin/install.js7081 // Compute the Codex GSD install path (absolute, so subagents with empty $HOME work — #820)COMMENT
LOWbin/install.js7101 // $ARGUMENTS → {{GSD_ARGS}}, /clear removal, anchored and bare .claude/COMMENT
LOWbin/install.js7121COMMENT
LOWbin/install.js7521COMMENT
LOWbin/install.js7861 // BEFORE any per-runtime rewrite so a `.claude/` -> `.windsurf/` regexCOMMENT
LOWbin/install.js7881 // #3072: the scoping predicate itself now lives in ONE place —COMMENT
LOWbin/install.js7901 // (`${CLAUDE_CONFIG_DIR:-$HOME/.claude}/gsd-core/bin/...`, one perCOMMENT
LOWbin/install.js7921 // is satisfied by ANY non-word character, including '-' — so for aCOMMENT
LOWbin/install.js8281COMMENT
LOWbin/install.js8321 // runtimeLabel is now the single-source getRuntimeLabel lookup (ADR-1239COMMENT
LOWbin/install.js8661 // Remove legacy commands/gsd/ subdirectory if it still exists (pre-#1367 layout).COMMENT
LOWbin/install.js8701 }COMMENT
LOWbin/install.js8721 // recoverOrphanedUserArtifacts on the next run.COMMENT
LOWbin/install.js8741 // symlinked user artifact is recreated AS a symlink in the stagingCOMMENT
353 more matches not shown…
Decorative Section Separators79 hits · 252 pts
SeverityFileLineSnippetContext
MEDIUM⚡bin/install.js2941// ── End Cline converters ─────────────────────────────────────────────────────COMMENT
MEDIUM⚡bin/install.js2943// ── Hermes converters (#2284) ────────────────────────────────────────────────COMMENT
MEDIUM⚡bin/install.js2943// ── Hermes converters (#2284) ────────────────────────────────────────────────COMMENT
MEDIUM⚡bin/install.js13876// ─── Update banner (#2795) ──────────────────────────────────────────────────COMMENT
MEDIUM⚡bin/install.js13876// ─── Update banner (#2795) ──────────────────────────────────────────────────COMMENT
MEDIUMbin/install.js2867// ── Cline converters ────────────────────────────────────────────────────────COMMENT
MEDIUMbin/install.js3760// ── End Hermes converters ────────────────────────────────────────────────────COMMENT
MEDIUMbin/install.js6801// ── Cline directory-form rules + hooks + AGENTS.md (issue #787) ────────────────COMMENT
MEDIUMbin/install.js6801// ── Cline directory-form rules + hooks + AGENTS.md (issue #787) ────────────────COMMENT
MEDIUMbin/install.js6851// ── Cursor hooks.json reconciler (issue #777) ────────────────────────────────COMMENT
MEDIUMbin/install.js6851// ── Cursor hooks.json reconciler (issue #777) ────────────────────────────────COMMENT
MEDIUMbin/install.js9764// ──────────────────────────────────────────────────────COMMENT
MEDIUMbin/install.js9766// ──────────────────────────────────────────────────────COMMENT
MEDIUMbin/install.js12835 // ── Codex extended hook events (#772, #2088) — REMOVED by #2586 ──────COMMENT
MEDIUMbin/install.js12835 // ── Codex extended hook events (#772, #2088) — REMOVED by #2586 ──────COMMENT
MEDIUMbin/install.js12870 // ── end Codex extended hook events ────────────────────────────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js17 * ── Two distribution shapes, one adapter (issue #1914) ─────────────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js538 // ── Config: register commands / agents / skills paths ──────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js587 // ── shell.env ───────────────────────────────────────────────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js593 // ── tool.execute.before — PreToolUse hooks ─────────────────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js672 // ── tool.execute.after — PostToolUse hooks ─────────────────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js731 // ── experimental.session.compacting — PreCompact ───────────────────COMMENT
MEDIUM.opencode/plugins/gsd-core.js749 // ── General event subscriptions ─────────────────────────────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js17 * ── Two distribution shapes, one adapter (issue #1914) ─────────────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js538 // ── Config: register commands / agents / skills paths ──────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js587 // ── shell.env ───────────────────────────────────────────────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js593 // ── tool.execute.before — PreToolUse hooks ─────────────────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js672 // ── tool.execute.after — PostToolUse hooks ─────────────────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js731 // ── experimental.session.compacting — PreCompact ───────────────────COMMENT
MEDIUM.kilo/plugins/gsd-core.js749 // ── General event subscriptions ─────────────────────────────────────COMMENT
MEDIUMdocs/TESTING-SUITES.md67// ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocs/TESTING-SUITES.md69// ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ers/plans/2026-03-18-materialize-new-project-config.md82// ─── config-new-project ──────────────────────────────────────────────────────COMMENT
MEDIUM…ers/plans/2026-03-18-materialize-new-project-config.md82// ─── config-new-project ──────────────────────────────────────────────────────COMMENT
MEDIUMhooks/gsd-cursor-subagent-start.js354// ─── #3897 rung 2: per-install runtime marker, single canonical owner ────────COMMENT
MEDIUMhooks/gsd-cursor-subagent-start.js354// ─── #3897 rung 2: per-install runtime marker, single canonical owner ────────COMMENT
MEDIUMhooks/gsd-agent-isolation-guard.js123// ─── #3897 rung 2: per-install runtime marker, single canonical owner ────────COMMENT
MEDIUMhooks/gsd-agent-isolation-guard.js123// ─── #3897 rung 2: per-install runtime marker, single canonical owner ────────COMMENT
MEDIUMscripts/secret-scan-lint.sh37# ─── Argument Parsing ─────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan-lint.sh78# ─── Date Helpers ─────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan-lint.sh94# ─── Annotation Parser ────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan-lint.sh120# ─── Main Lint Logic ──────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan-lint.sh149 # ── Case 1: No preceding comment at all ────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan-lint.sh216# ─── Summary ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh20# ─── Exit-code registry (ADR-3889, #3908) ────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh35# ── Locale hardening (#116) ───────────────────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh103# ─── Injection Patterns (decoded content) ────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh127# ─── Ignorelist ──────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh156# ─── Skip Rules ──────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh191# ─── File Collection ─────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh271# ─── Scanner ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/base64-scan.sh365# ─── Main ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/prompt-injection-scan.sh17# ─── Exit-code registry (ADR-3889, #3908) ────────────────────────────────────COMMENT
MEDIUMscripts/prompt-injection-scan.sh32# ─── Patterns ────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/prompt-injection-scan.sh113# ─── Allowlist ───────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/prompt-injection-scan.sh212# ─── File Collection ─────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/prompt-injection-scan.sh292# ─── Scanner ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/prompt-injection-scan.sh321# ─── Main ────────────────────────────────────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan.sh44# ─── Exit-code registry (ADR-3889, #3908) ────────────────────────────────────COMMENT
MEDIUMscripts/secret-scan.sh59# ─── Global mode flag ─────────────────────────────────────────────────────────COMMENT
19 more matches not shown…
Modern AI Meta-Vocabulary54 hits · 120 pts
SeverityFileLineSnippetContext
MEDIUMCONTEXT.md30Module owning phase-effort estimation and its calibration against measured reality (ADR-2629, epic #1952). Pure — no I/OCODE
MEDIUMCONTEXT.md97Generic, dependency-free greedy first-fit file-overlap partitioner (#3674), extracted from `claude-orchestration.cts`'s CODE
MEDIUMCONTEXT.md421Generated description of what the five-step loop (Discuss → Plan → Execute → Verify → Ship) exposes as extension points:CODE
MEDIUMCONTEXT.md439Human-facing discoverability catalog (`docs/registries/eos-registry.md`, generated from `docs/registries/eos.json`; issuCODE
MEDIUMCONTEXT.md468Default-off, BETA, claude-only Capability (`capabilities/claude-orchestration/`, `role: feature`, `runtimeCompat.supportCODE
MEDIUMCONTEXT.md1012`SESSION.2026-05-16=[multi-PR triage wave (#3577/3581/3640/3641/3642/3648/3649/3637/3639). Established global PreToolUseCODE
MEDIUMCHANGELOG.md1199- **A default-off, BETA, claude-only "Claude orchestration" capability** — adopts Claude Code's Workflow tool (`/effort CODE
MEDIUMCHANGELOG.md1343- **`phase.add` no longer silently mistakes a goal-shaped description for a phase title** — a long or multi-sentence desCODE
MEDIUMCHANGELOG.md1474- **A default-off, BETA, claude-only "Claude orchestration" capability** — adopts Claude Code's Workflow tool (`/effort CODE
MEDIUMcapabilities/claude-orchestration/capability.json6 "description": "Default-off, BETA, claude-only capability that adopts Claude Code's Workflow tool (the engine behind /CODE
MEDIUM…pabilities/claude-orchestration/fragments/plan-post.md1# Claude orchestration — ultraplan plan-offload ownership (BETA)COMMENT
MEDIUM…claude-orchestration/docs/workflow-backend-dispatch.md1# Claude orchestration — Workflow execution backend (BETA)COMMENT
MEDIUM…geset/archived/3806-cjs-bundle-drift-w005-w006-i001.md5**`validate health` no longer emits W005/W006/I001 false positives for multi-digit phase prefixes, milestone-archive phaCODE
MEDIUM.changeset/archived/help-passthrough.md5**`gsd-sdk query <subcommand> --help` now reaches the handler instead of returning top-level usage.** The query argv parCODE
MEDIUMdocs/CONTEXT-INDEX.json1432 "value": "[multi-PR triage wave (#3577/3581/3640/3641/3642/3648/3649/3637/3639). Established global PreToolUse hooCODE
MEDIUMdocs/contributor-standards.md126**1. In-place dated section (the default; use this first).** For an addition that stays within the ADR's existing decisiCODE
MEDIUMdocs/INVENTORY.md580| `file-overlap-partitioner.cjs` | Generic greedy first-fit file-overlap partitioner (#3674) — `partitionByFileOverlap(iCODE
MEDIUMdocs/CONFIGURATION.md511| `workflow.smart_zone_tokens` | number | `100000` | Smart-zone token budget for phase-effort estimation (#2630, [ADR-26CODE
MEDIUMdocs/CONFIGURATION.md519| `workflow.compact_content` | boolean | `false` | Compact content mode (#4139, [ADR-4139](adr/4139-compact-content-seamCODE
MEDIUMdocs/whats-new-1.7.0.md57- A default-off, BETA, Claude-only **Claude orchestration capability** that adopts Claude Code's Workflow tool (#1143) —CODE
MEDIUMdocs/FEATURES.md43 - [Multi-Agent Orchestration](#25-multi-agent-orchestration)CODE
MEDIUMdocs/FEATURES.md43 - [Multi-Agent Orchestration](#25-multi-agent-orchestration)CODE
MEDIUMdocs/FEATURES.md162 - [Issue-Driven Orchestration Guide](#129-issue-driven-orchestration-guide)CODE
MEDIUMdocs/FEATURES.md184 - [Embeddable Orchestration System (Host-Integration Interface)](#149-embeddable-orchestration-system-host-integrationCODE
MEDIUMdocs/FEATURES.md189 - [Claude Orchestration Capability (BETA)](#154-claude-orchestration-capability-beta)CODE
MEDIUMdocs/AGENTS.md811- **Extraction discipline (#1578):** few-shot input→output exemplars plus a terminal schema restatement; marks a field aCODE
MEDIUMdocs/AGENTS.md831- **Extraction discipline (#1578):** few-shot exemplars plus a terminal schema restatement and a mark-absent (no-fabricaCODE
MEDIUMdocs/adr/1671-dynamic-context-management-platform.md51 *The grounds are this ADR's own, not a borrowed citation.* MCP is runtime-partial (see **External practice** above, oCOMMENT
MEDIUMdocs/adr/550-spec-phase-probe-contract.md112> **PR-review flag — PROPOSED, renamable conventions (zero live consumers).** Both **`GSD_PROHIB_SUBJECT`** and **`CheckCODE
MEDIUMdocs/adr/1239-gsd-embeddable-orchestration-engine.md388- **Phase 2 — the shared file-overlap wave partitioner.** [#3674](https://github.com/open-gsd/gsd-core/issues/3674). BehCODE
MEDIUMdocs/adr/1143-claude-orchestration-capability.md1# ADR-1143: Claude orchestration capability — Workflow tool (ultracode) as a runtime-gated loop execution backend [PropoCOMMENT
MEDIUMdocs/adr/1143-claude-orchestration-capability.md12Confirmed shipped, on-tree: the capability is real and registered, not vaporware. `capabilities/claude-orchestration/capCODE
MEDIUMdocs/adr/1143-claude-orchestration-capability.md134## Amendment (2026-09-14): the `execute:wave:*` contribution is removed — orchestration is not an agent contributionCOMMENT
MEDIUM…adr/443-opus48-unified-effort-and-fast-mode-routing.md17**The maintainer call above has been made: path (a).** Raised by #2475 — reviewer CLIs invoked as subprocesses by the reCODE
MEDIUM…adr/443-opus48-unified-effort-and-fast-mode-routing.md46**Why the original (b) wording does not fit, and what replaces it.** The unblock condition offered (b) as *"if the ADR'sCODE
MEDIUM…adr/443-opus48-unified-effort-and-fast-mode-routing.md50**Why no consumer was invented to satisfy the gate.** The unblock condition is a proxy for design maturity; wiring a calCODE
MEDIUMdocs/explanation/multi-agent-orchestration.md1# Multi-agent orchestration in GSD CoreCOMMENT
MEDIUMdocs/explanation/claude-orchestration-capability.md1# Claude orchestration capability (BETA)COMMENT
MEDIUM…how-to/enable-claude-orchestration-workflow-backend.md1# How to enable and use the Claude orchestration backend (BETA)COMMENT
MEDIUMdocs/ja-JP/FEATURES.md154 - [issue-driven-orchestration ガイド](#129-issue-driven-orchestration-ガイド)CODE
MEDIUMdocs/ja-JP/FEATURES.md2757### 129. issue-driven-orchestration ガイドCOMMENT
MEDIUMdocs/zh-CN/FEATURES.md37 - [多智能体编排](#25-multi-agent-orchestration)CODE
MEDIUMdocs/zh-CN/FEATURES.md37 - [多智能体编排](#25-multi-agent-orchestration)CODE
MEDIUMdocs/zh-CN/FEATURES.md154 - [Issue 驱动编排指南](#129-issue-driven-orchestration-guide)CODE
MEDIUMdocs/ko-KR/FEATURES.md37 - [멀티 에이전트 오케스트레이션](#25-multi-agent-orchestration)CODE
MEDIUMdocs/ko-KR/FEATURES.md37 - [멀티 에이전트 오케스트레이션](#25-multi-agent-orchestration)CODE
MEDIUMexamples/dynamic-context-management/CONTEXT-INDEX.json1712 "value": "[multi-PR triage wave (#3577/3581/3640/3641/3642/3648/3649/3637/3639). Established global PreToolUse hooCODE
MEDIUM.github/workflows/dismiss-unauthorized-pr-approvals.yml9 # approves them — so the event-driven path never fires for the veryCOMMENT
MEDIUMgsd-core/references/worktree-path-safety.md201# scaffold — is normalized lexically and must still PASS when it sits under the worktree. NeverCOMMENT
MEDIUMgsd-core/references/planning-config.md287| `workflow.smart_zone_tokens` | number | `100000` | Any positive integer | Smart-zone token budget for phase-effort estCODE
MEDIUMgsd-core/workflows/plan-phase.md102**#2401 — `prior_verify_commands` is NOT part of that enrichment and is never gated on `CONTEXT_WINDOW`.** It is a handfCODE
MEDIUMgsd-core/workflows/plan-phase.md104Parse JSON for: `researcher_model`, `planner_model`, `checker_model`, `research_enabled`, `plan_checker_enabled`, `nyquiCODE
MEDIUMgsd-core/workflows/fast.md61# fast writes no planning artifacts (its own guardrails forbid PLAN.md/SUMMARY.md); .planning/COMMENT
MEDIUMgsd-core/workflows/ingest-docs.md269**Routing gate (#3827): approval to classify documents is not approval to write the planning scaffold.** Before delegatiCODE
Hyper-Verbose Identifiers96 hits · 56 pts
SeverityFileLineSnippetContext
LOW⚡bin/install.js13883function buildUpdateBannerPromptText() {CODE
LOWbin/install.js105function shouldNormalizeHyphenNamespaceInAgentBody(runtime) {CODE
LOWbin/install.js116function normalizeAgentBodyForRuntime(content, runtime, cmdNames) {CODE
LOWbin/install.js480function resolveSharedHooksDirName(runtime) {CODE
LOWbin/install.js1303function rewriteLegacyManagedNodeHookCommands(settings, absoluteRunner, opts) {CODE
LOWbin/install.js1343function ensureCodexHooksJsonSessionStart(targetDir, opts = {}) {CODE
LOWbin/install.js1359function removeCodexHooksJsonEvent(targetDir, eventName) {CODE
LOWbin/install.js1363function removeCodexHooksJsonSessionStart(targetDir) {CODE
LOWbin/install.js1387function resolveOpencodeConfigPath(configDir) {CODE
LOWbin/install.js1672function convertAntigravityToolName(claudeTool) {CODE
LOWbin/install.js1727function mapClaudeToolsToKimiTools(claudeTools, options = {}) {CODE
LOWbin/install.js1799function convertClaudeToKiloPermissionTool(claudeTool) {CODE
LOWbin/install.js1807function buildKiloAgentPermissionBlock(claudeTools) {CODE
LOWbin/install.js1829function replaceRelativePathReference(content, fromPath, toPath) {CODE
LOWbin/install.js1867function convertClaudeToCopilotContent(content, isGlobal = false) {CODE
LOWbin/install.js1897function convertClaudeCommandToCopilotSkill(content, skillName, _runtime = null, _cmdNames = null, isGlobal = false) {CODE
LOWbin/install.js1990function convertClaudeCommandToClaudeSkill(content, skillName, runtime = null, cmdNames = null) {CODE
LOWbin/install.js2071function convertGsdCommandReferencesToKimiSkillInvocations(content, cmdNames) {CODE
LOWbin/install.js2091function convertClaudeCommandToKimiSkill(content, skillName, _runtime = null, cmdNames = null) {CODE
LOWbin/install.js2173function mapKimiAgentContractTools(toolNames, diagnostics, sourceName) {CODE
LOWbin/install.js2179function neutralizeKimiAgentPrompt(content) {CODE
LOWbin/install.js2361function convertClaudeAgentToCopilotAgent(content, isGlobal = false) {CODE
LOWbin/install.js2399function convertClaudeToAntigravityContent(content, isGlobal = false) {CODE
LOWbin/install.js2442function convertClaudeCommandToAntigravitySkill(content, skillName, _runtime = null, _cmdNames = null, isGlobal = false)CODE
LOWbin/install.js2460function convertClaudeAgentToAntigravityAgent(content, isGlobal = false) {CODE
LOWbin/install.js2505function extractFrontmatterAndBody(content) {CODE
LOWbin/install.js2524function convertSlashCommandsToCursorSkillMentions(content) {CODE
LOWbin/install.js2530function convertClaudeToCursorMarkdown(content) {CODE
LOWbin/install.js2554function getCursorSkillAdapterHeader(skillName) {CODE
LOWbin/install.js2580function convertClaudeCommandToCursorSkill(content, skillName) {CODE
LOWbin/install.js2606function convertClaudeAgentToCursorAgent(content) {CODE
LOWbin/install.js2645function convertSlashCommandsToTraeSkillMentions(content) {CODE
LOWbin/install.js2651function convertClaudeToTraeMarkdown(content) {CODE
LOWbin/install.js2731function convertClaudeCommandToTraeSkill(content, skillName) {CODE
LOWbin/install.js2757function convertClaudeAgentToTraeAgent(content) {CODE
LOWbin/install.js2771function convertSlashCommandsToCodebuddySkillMentions(content) {CODE
LOWbin/install.js2777function convertClaudeToCodebuddyMarkdown(content) {CODE
LOWbin/install.js2796function convertClaudeCommandToCodebuddySkill(content, skillName) {CODE
LOWbin/install.js2832function convertClaudeCommandToCodebuddyCommand(content, commandName) {CODE
LOWbin/install.js2853function convertClaudeAgentToCodebuddyAgent(content) {CODE
LOWbin/install.js2869function convertClaudeToCliineMarkdown(content) {CODE
LOWbin/install.js2892function convertClaudeAgentToClineAgent(content) {CODE
LOWbin/install.js2912function convertClaudeCommandToClineSkill(content, skillName, runtime = null, cmdNames = null) {CODE
LOWbin/install.js3589function projectNamedDispatchToStructuralDelegate(content, dispatch, toolConfig) {CODE
LOWbin/install.js3742function convertClaudeToHermesMarkdown(content, ctx) {CODE
LOWbin/install.js3762function convertSlashCommandsToCodexSkillMentions(content) {CODE
LOWbin/install.js3786function rewriteBareGsdToolsCommandsForCodex(content) {CODE
LOWbin/install.js3794function convertClaudeToCodexMarkdown(content) {CODE
LOWbin/install.js3828function getCodexSkillAdapterHeader(skillName) {CODE
LOWbin/install.js3958function convertClaudeCommandToCodexSkill(content, skillName) {CODE
LOWbin/install.js3980function convertClaudeAgentToCodexAgent(content) {CODE
LOWbin/install.js4264function cleanupCodexSkillMetadataSidecars(skillsDir) {CODE
LOWbin/install.js4310function cleanupWindsurfLegacyDevinSkills(workspaceDir) {CODE
LOWbin/install.js4365function cleanupMovedSkillsOldLocation(oldSkillsDir, prefix) {CODE
LOWbin/install.js4475function extractCodexUserAgentsScalars(content) {CODE
LOWbin/install.js4523function stripCodexGsdAgentSections(content) {CODE
LOWbin/install.js4738function findMultilineBasicStringClose(line, startIndex) {CODE
LOWbin/install.js4755function advanceTomlMultilineStringState(line, multilineState) {CODE
LOWbin/install.js5129function stripCodexHooksFeatureAssignments(content, ownership = null) {CODE
LOWbin/install.js5207function getManagedCodexHooksOwnership(content) {CODE
36 more matches not shown…
Fake / Example Data13 hits · 13 pts
SeverityFileLineSnippetContext
LOWagents/gsd-plan-checker.md432 - `"future enhancement"`, `"placeholder"`, `"basic version"`, `"minimal"`CODE
LOWagents/gsd-executor.md713- Placeholder text: "not available", "coming soon", "placeholder", "TODO", "FIXME"CODE
LOWagents/gsd-planner.md83- "future enhancement", "placeholder", "basic version", "minimal implementation"CODE
LOWdocs/FEATURES.md3037- REQ-SKETCH-04: Sketches MUST use real-ish content, not lorem ipsumCODE
LOWdocs/features/sketch-command.md15- REQ-SKETCH-04: Sketches MUST use real-ish content, not lorem ipsumCODE
LOWdocs/ja-JP/FEATURES.md2536- REQ-SKETCH-04: スケッチはリアルに近いコンテンツを使用しなければならない( lorem ipsum ではない)CODE
LOWdocs/zh-CN/FEATURES.md2552- REQ-SKETCH-04:Sketch 必须使用真实感内容,而非 lorem ipsumCODE
LOWdocs/zh-CN/references/verification-patterns.md34grep -E "placeholder|lorem ipsum|coming soon|under construction" "$file" -iCODE
LOWdocs/zh-CN/references/verification-patterns.md70grep -E "return.*<" "$component_path" | grep -v "return.*null" | grep -v "placeholder" -iCODE
LOWgsd-core/references/verification-patterns.md34grep -E "placeholder|lorem ipsum|coming soon|under construction" "$file" -iCODE
LOWgsd-core/references/verification-patterns.md70grep -E "return.*<" "$component_path" | grep -v "return.*null" | grep -v "placeholder" -iCODE
LOWgsd-core/references/planner-antipatterns.md92- "future enhancement", "placeholder", "basic version", "minimal implementation"CODE
LOWgsd-core/workflows/sketch.md238- Real-ish content, not lorem ipsum (use real field names from spike context if available)CODE
AI Slop Vocabulary4 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMhooks/gsd-agent-isolation-guard.js348 // #4734: a harness worktree can never be created in a directory that is notCOMMENT
MEDIUM.github/workflows/release.yml650 # and a nested reusable workflow can only downgrade, never elevate.COMMENT
MEDIUM.github/workflows/test.yml248 # see tests/run-tests-harness.test.cjs's "selectShard reserved-weightCOMMENT
MEDIUM.github/workflows/test.yml324 # #4070 (see tests/run-tests-harness.test.cjs's "selectShardCOMMENT
Magic Placeholder Names2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHdocs/zh-CN/references/verification-patterns.md330DATABASE_URL=your-database-url-hereCODE
HIGHgsd-core/references/verification-patterns.md343DATABASE_URL=your-database-url-hereCODE
Example Usage Blocks6 hits · 9 pts
SeverityFileLineSnippetContext
LOWhooks/lib/gsd-graphify-rebuild.sh4# Usage:COMMENT
LOWscripts/secret-scan-lint.sh4# Usage:COMMENT
LOWscripts/base64-scan.sh7# Usage:COMMENT
LOWscripts/setup-branch-protection.sh9# Usage:COMMENT
LOWscripts/prompt-injection-scan.sh4# Usage:COMMENT
LOWscripts/secret-scan.sh4# Usage:COMMENT
TODO Padding2 hits · 2 pts
SeverityFileLineSnippetContext
LOWgsd-core/references/few-shot-examples/verifier.md109**Why this is bad:** The verifier stopped at Level 1. The file has 142 lines but could contain `// TODO: implement all cCODE
LOWgsd-core/templates/verification-report.md86| src/app/api/chat/route.ts | 12 | `// TODO: implement` | ⚠️ Warning | Indicates incomplete |CODE
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/base64-scan.sh331 # Check if decoded content is mostly printable text (not random binary)COMMENT