CC GUI Client (VibeCoding Platform Designed for Developers)
This report presents the forensic synthetic code analysis of zhukunpenglinyutong/desktop-cc-gui, a TypeScript project with 3,599 GitHub stars. SynthScan v2.0 examined 1,370,076 lines of code across 7424 source files, recording 3603 pattern matches distributed across 19 syntactic categories. The overall adjusted score of 3.5 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 3603 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 40 | def _load_sanitized_upstream_source(script_path: Path) -> str: | CODE |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 51 | def _sanitized_upstream_config_open(): | CODE |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 80 | def _load_sanitized_helper_module(module_name: str, script_path: Path) -> None: | CODE |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 40 | def _load_sanitized_upstream_source(script_path: Path) -> str: | CODE |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 51 | def _sanitized_upstream_config_open(): | CODE |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 80 | def _load_sanitized_helper_module(module_name: str, script_path: Path) -> None: | CODE |
| LOW | docs/research/04-project-memory-consumption-research.md | 183 | async function injectProjectMemoryContext(params: { | CODE |
| LOW | docs/plans/2026-06-01-browser-dock-phase3.md | 346 | export function reconcileBrowserObservation( | CODE |
| LOW | docs/plans/2026-06-20-claude-provider-fetch-models.md | 67 | export async function fetchClaudeProviderModels( | CODE |
| LOW | …6-06-07-refine-project-map-api-contract-detail-view.md | 111 | function normalizeProjectMapApiDescriptionSources(value: unknown): ProjectMapApiDescriptionSource[] { | CODE |
| LOW | …6-06-07-refine-project-map-api-contract-detail-view.md | 115 | function normalizeProjectMapApiStructuredSchemaFields(value: unknown): ProjectMapApiStructuredSchemaField[] { | CODE |
| LOW | …6-06-07-refine-project-map-api-contract-detail-view.md | 143 | export function buildProjectMapApiEndpointRow(endpoint: ProjectMapApiEndpoint): ProjectMapApiEndpointRow { | CODE |
| LOW | …ed/2026-02-11-phase2.1-memory-context-injection-mvp.md | 48 | function readContextInjectionEnabled(): boolean | CODE |
| LOW⚡ | docs/perf/a4-live-text-externalization-plan.md | 67 | export function renameLiveAssistantTextThread(oldThreadId: string, newThreadId: string): void; | CODE |
| LOW⚡ | docs/perf/a4-live-text-externalization-plan.md | 68 | export function clearLiveAssistantTextForThread(threadId: string): void; | CODE |
| LOW⚡ | docs/perf/a4-live-text-externalization-plan.md | 69 | export function getLiveAssistantTextSnapshot(threadId: string): LiveAssistantTextEntry | null; | CODE |
| LOW⚡ | docs/perf/a4-live-text-externalization-plan.md | 70 | export function subscribeLiveAssistantText(threadId: string, cb: () => void): () => void; | CODE |
| LOW | docs/perf/parallel-conversation-jank-handbook.md | 372 | function findProgressiveRevealBoundary( | CODE |
| LOW | docs/perf/parallel-conversation-jank-handbook.md | 660 | function getCachedBackgroundActivity(threadId: string) { | CODE |
| LOW | scripts/realtime-perf-report.ts | 120 | function createBaselineReportMarkdown(reports: DurationReport[], generatedAt: string) { | CODE |
| LOW | scripts/realtime-perf-report.ts | 150 | function createAcceptanceReportMarkdown(reports: DurationReport[], generatedAt: string) { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 187 | function toFiniteNonNegativeNumber(value: unknown) { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 232 | function measuredMetricFromDiagnostic(entry: Record<string, unknown>, sourcePath: string): RuntimeEvidenceMetric | null | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 317 | function measuredMetricsFromTurnTrace(entry: Record<string, unknown>, sourcePath: string) { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 422 | function measuredMetricsFromWorkspaceFileListing(entry: Record<string, unknown>, sourcePath: string) { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 447 | async function buildMeasuredMetricsFromDiagnostics(path: string | null) { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 580 | function buildRealtimeInputRenderMetrics() { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 638 | function measureAppServerRouteDurations() { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 652 | function buildAppServerBatchMetrics() { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 723 | function buildFileChangeDebounceMetrics() { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 793 | async function buildBackendFileIoMetrics() { | CODE |
| LOW | scripts/perf-v0511-runtime-evidence.ts | 831 | function buildFrontendPropChainMetrics() { | CODE |
| LOW⚡ | .trellis/spec/frontend/computer-use-bridge.md | 25 | export async function getComputerUseBridgeStatus(): Promise<ComputerUseBridgeStatus> | CODE |
| LOW⚡ | .trellis/spec/frontend/computer-use-bridge.md | 26 | export async function runComputerUseActivationProbe(): Promise<ComputerUseActivationResult> | CODE |
| LOW⚡ | .trellis/spec/frontend/computer-use-bridge.md | 27 | export async function runComputerUseHostContractDiagnostics(): Promise<ComputerUseHostContractDiagnosticsResult> | CODE |
| LOW⚡ | .trellis/spec/frontend/computer-use-bridge.md | 28 | export async function runComputerUseCodexBroker(request: ComputerUseBrokerRequest): Promise<ComputerUseBrokerResult> | CODE |
| LOW | .trellis/scripts/create_bootstrap.py | 74 | def write_prd_backend_section(spec_base: str) -> str: | STRING |
| LOW | .trellis/scripts/create_bootstrap.py | 90 | def write_prd_frontend_section(spec_base: str) -> str: | STRING |
| LOW⚡ | .trellis/scripts/multi_agent/create_pr.py | 54 | def _get_submodule_default_branch(submodule_abs: Path) -> str: | CODE |
| LOW | .trellis/scripts/multi_agent/create_pr.py | 75 | def _process_submodule_changes( | CODE |
| LOW | .trellis/scripts/multi_agent/create_pr.py | 271 | def _ensure_submodule_warning_on_existing_pr( | CODE |
| LOW⚡ | .trellis/scripts/multi_agent/start.py | 76 | def _init_submodules_for_task( | CODE |
| LOW⚡ | .trellis/scripts/common/session_context.py | 43 | def _collect_package_git_info(repo_root: Path) -> list[dict]: | CODE |
| LOW | .trellis/scripts/common/session_context.py | 91 | def _append_package_git_context(lines: list[str], package_git_info: list[dict]) -> None: | CODE |
| LOW | .trellis/scripts/common/config.py | 49 | def get_session_commit_message(repo_root: Path | None = None) -> str: | CODE |
| LOW | .trellis/scripts/common/packages_context.py | 157 | def get_context_packages_text(repo_root: Path | None = None) -> str: | CODE |
| LOW | .trellis/scripts/common/packages_context.py | 213 | def get_context_packages_json(repo_root: Path | None = None) -> dict: | CODE |
| LOW⚡ | .trellis/scripts/common/paths.py | 378 | def generate_task_date_prefix() -> str: | CODE |
| LOW | .trellis/scripts/common/registry.py | 129 | def registry_get_agent_by_worktree( | CODE |
| LOW | .trellis/scripts/common/registry.py | 230 | def registry_remove_by_worktree( | CODE |
| LOW | .trellis/scripts/common/worktree.py | 257 | def get_worktree_post_create_hooks(repo_root: Path | None = None) -> list[str]: | CODE |
| LOW⚡ | .trellis/scripts/common/cli_adapter.py | 517 | def requires_agent_definition_file(self) -> bool: | CODE |
| LOW⚡ | .trellis/scripts/common/cli_adapter.py | 530 | def supports_session_id_on_create(self) -> bool: | CODE |
| LOW⚡ | .trellis/scripts/common/cli_adapter.py | 539 | def extract_session_id_from_log(self, log_content: str) -> str | None: | CODE |
| LOW | .trellis/scripts/common/developer.py | 108 | def ensure_developer_initialized(repo_root: Path | None = None) -> str | None: | CODE |
| LOW | .trellis/scripts/common/session_start_context.py | 141 | def build_project_entry_context(project_dir: Path) -> str: | CODE |
| LOW | .trellis/scripts/common/session_start_context.py | 158 | def build_current_state_summary(project_dir: Path) -> str: | CODE |
| LOW | .trellis/scripts/common/session_start_context.py | 253 | def build_guideline_pointer_context(project_dir: Path) -> str: | CODE |
| LOW | .trellis/scripts/hooks/linear_sync.py | 203 | def _resolve_parent_linear_issue(task: dict) -> str | None: | CODE |
| LOW | …sidebar-list-timeout-fallback-across-engines/design.md | 61 | export function seedLastGoodEngineIntoMerged( | CODE |
| 2736 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …/skills/huashu-design/references/animation-pitfalls.md | 222 | // ━━━━━━ state ━━━━━━ | COMMENT |
| MEDIUM | …/skills/huashu-design/references/animation-pitfalls.md | 228 | // ━━━━━━ tick ━━━━━━ | COMMENT |
| MEDIUM | …/skills/huashu-design/references/animation-pitfalls.md | 252 | // ━━━━━━ boot ━━━━━━ | COMMENT |
| MEDIUM | …/skills/huashu-design/references/animation-pitfalls.md | 260 | // ━━━━━━ seek 接口(供 render-video 防御性矫正用)━━━━━━ | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/render-video.js | 100 | // ── Phase 1: WARMUP (no recording, caches fonts/assets) ───────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/render-video.js | 113 | // ── Phase 2: RECORD (fresh context, animation from t=0) ───────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/mix-voiceover.sh | 94 | # ── ffmpeg filter graph ───────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/scripts/render-narration.sh | 105 | # ── Step 1: 录无声 MP4 ────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/scripts/render-narration.sh | 118 | # ── Step 2: 混入人声 ────────────────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/add-music.sh | 38 | # ── Parse args ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/add-music.sh | 65 | # ── Resolve music source: --music wins, else --mood ───────────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/add-music.sh | 80 | # ── Resolve output path ───────────────────────────────────────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/scripts/add-music.sh | 85 | # ── Measure video duration, compute fade-out start ────────────────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/w1-brand-protocol.html | 546 | // ── Auto-scale stage to viewport ───────────────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/w1-brand-protocol.html | 557 | // ── Easing functions ───────────────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/w1-brand-protocol.html | 575 | // ── Timeline (total 12s) ───────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 814 | // ── Scale to viewport (1920×1080 canvas) ───────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 823 | // ── Easing ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 836 | // ── Elements ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 899 | // ── SFX via WebAudio ───────────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 947 | // ── Timeline ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 975 | // ── Beat 1: 0-2s ───────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 1016 | // ── Beat 2: 2-8s ───────────────────────────────────────── | COMMENT |
| MEDIUM | …ts/skills/huashu-design/demos/c1-ios-prototype-en.html | 1050 | // ── Beat 3: 8-10s ──────────────────────────────────────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/c5-infographic-en.html | 631 | // ── Beat 1: 0-2s · JSON data appears, types in ───────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/c5-infographic-en.html | 648 | // ── Pipe arrow (1.8 → 2.2) ───────────────────────────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/c5-infographic-en.html | 654 | // ── Beat 2a: 2.0-3.2s · Infographic canvas arrives ───── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/c5-infographic-en.html | 667 | // ── Beat 2b: 3.0-4.2s · Display headline appears ────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/c5-infographic-en.html | 688 | // ── Beat 2d: 5.2-6.4s · Comparison bars grow ───────── | COMMENT |
| MEDIUM | …ents/skills/huashu-design/demos/c5-infographic-en.html | 732 | // ── Beat 3: 8.2-10s · Brand reveal ─────────────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/demos/c5-infographic.html | 628 | // ── Beat 1: 0-2s · JSON data appears, types in ───────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/demos/c5-infographic.html | 645 | // ── Pipe arrow (1.8 → 2.2) ───────────────────────────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/demos/c5-infographic.html | 651 | // ── Beat 2a: 2.0-3.2s · Infographic canvas arrives ───── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/demos/c5-infographic.html | 664 | // ── Beat 2b: 3.0-4.2s · Display headline appears ────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/demos/c5-infographic.html | 685 | // ── Beat 2d: 5.2-6.4s · Comparison bars grow ───────── | COMMENT |
| MEDIUM | .agents/skills/huashu-design/demos/c5-infographic.html | 729 | // ── Beat 3: 8.2-10s · Brand reveal ─────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 811 | // ── Scale to viewport (1920×1080 canvas) ───────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 820 | // ── Easing ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 833 | // ── Elements ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 896 | // ── SFX via WebAudio ───────────────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 944 | // ── Timeline ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 972 | // ── Beat 1: 0-2s ───────────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 1013 | // ── Beat 2: 2-8s ───────────────────────────────────────── | COMMENT |
| MEDIUM | …gents/skills/huashu-design/demos/c1-ios-prototype.html | 1047 | // ── Beat 3: 8-10s ──────────────────────────────────────── | COMMENT |
| MEDIUM | …s/skills/huashu-design/demos/w1-brand-protocol-en.html | 534 | // ── Auto-scale stage to viewport ───────────────── | COMMENT |
| MEDIUM | …s/skills/huashu-design/demos/w1-brand-protocol-en.html | 545 | // ── Easing functions ───────────────── | COMMENT |
| MEDIUM | …s/skills/huashu-design/demos/w1-brand-protocol-en.html | 563 | // ── Timeline (total 12s) ───────────────── | COMMENT |
| MEDIUM | …/skills/huashu-design/demos/w2-junior-designer-en.html | 741 | // ──────────────────────────────────── | COMMENT |
| MEDIUM | …/skills/huashu-design/demos/w2-junior-designer-en.html | 762 | // ──────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …/skills/huashu-design/demos/w2-junior-designer-en.html | 826 | // ────── Title | COMMENT |
| MEDIUM⚡ | …/skills/huashu-design/demos/w2-junior-designer-en.html | 831 | // ────── Splitter (fade out earlier so Beat 3 is clean) | COMMENT |
| MEDIUM⚡ | …/skills/huashu-design/demos/w2-junior-designer-en.html | 839 | // ────── Halves fade in / out (fade out earlier to clear for Beat 3 chart) | COMMENT |
| MEDIUM⚡ | …/skills/huashu-design/demos/w2-junior-designer-en.html | 848 | // ────── TOP track: terminal line + progress bar | COMMENT |
| MEDIUM | …/skills/huashu-design/demos/w2-junior-designer-en.html | 905 | // ────── BOTTOM track: 3 iter panels | COMMENT |
| MEDIUM | …/skills/huashu-design/demos/w2-junior-designer-en.html | 930 | // ────── Beat 3 · final chart crossfade (chart appears as halves fade) | COMMENT |
| MEDIUM | …/skills/huashu-design/demos/w2-junior-designer-en.html | 963 | // ────── Brand reveal 10.0-12.0 | COMMENT |
| MEDIUM | …nts/skills/huashu-design/demos/w2-junior-designer.html | 747 | // ──────────────────────────────────── | COMMENT |
| MEDIUM | …nts/skills/huashu-design/demos/w2-junior-designer.html | 768 | // ──────────────────────────────────── | COMMENT |
| MEDIUM⚡ | …nts/skills/huashu-design/demos/w2-junior-designer.html | 832 | // ────── Title | COMMENT |
| MEDIUM⚡ | …nts/skills/huashu-design/demos/w2-junior-designer.html | 837 | // ────── Splitter (fade out earlier so Beat 3 is clean) | COMMENT |
| 275 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | README.md | 95 | ### Step 1: Prepare your environment | COMMENT |
| LOW | README.md | 111 | ### Step 2: Install dependencies | COMMENT |
| LOW | README.md | 121 | ### Step 3: Start it | COMMENT |
| LOW | .agents/skills/deploy-to-vercel/SKILL.md | 15 | ## Step 1: Gather Project State | COMMENT |
| LOW | .agents/skills/deploy-to-vercel/SKILL.md | 53 | ## Step 2: Choose a Deploy Method | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 54 | ## Step 0: Ensure Task Exists (ALWAYS) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 114 | ## Step 1: Auto-Context (DO THIS BEFORE ASKING QUESTIONS) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 137 | ## Step 2: Classify Complexity (still useful, not gating task creation) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 150 | ## Step 3: Question Gate (Ask ONLY high-value questions) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 184 | ## Step 4: Research-first Mode (Mandatory for technical choices) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 240 | ## Step 5: Expansion Sweep (DIVERGE) — Required after initial understanding | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 287 | ## Step 6: Q&A Loop (CONVERGE) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 320 | ## Step 7: Propose Approaches + Record Decisions (Complex tasks) | COMMENT |
| LOW | .agents/skills/brainstorm/SKILL.md | 354 | ## Step 8: Final Confirmation + Implementation Plan | COMMENT |
| LOW | .agents/skills/update-spec/SKILL.md | 90 | ### Step 1: Identify What You Learned | COMMENT |
| LOW | .agents/skills/update-spec/SKILL.md | 98 | ### Step 2: Classify the Update Type | COMMENT |
| LOW | .agents/skills/update-spec/SKILL.md | 110 | ### Step 3: Read the Target Code-Spec | COMMENT |
| LOW | .agents/skills/update-spec/SKILL.md | 121 | ### Step 4: Make the Update | COMMENT |
| LOW | .agents/skills/update-spec/SKILL.md | 131 | ### Step 5: Update the Index (if needed) | COMMENT |
| LOW | .agents/skills/start/SKILL.md | 23 | ### Step 1: Read Project Entry | COMMENT |
| LOW⚡ | .agents/skills/start/SKILL.md | 37 | ### Step 2: Understand Development Workflow | COMMENT |
| LOW⚡ | .agents/skills/start/SKILL.md | 45 | ### Step 3: Get Current Context | COMMENT |
| LOW⚡ | .agents/skills/start/SKILL.md | 53 | ### Step 4: Read Guidelines Index | COMMENT |
| LOW | .agents/skills/start/SKILL.md | 77 | ### Step 5: Report and Ask | COMMENT |
| LOW | .agents/skills/vercel-cli-with-tokens/SKILL.md | 13 | ## Step 1: Locate the Vercel Token | COMMENT |
| LOW | .agents/skills/vercel-cli-with-tokens/SKILL.md | 68 | ## Step 2: Locate the Project and Team | COMMENT |
| LOW | .agents/skills/onboard/SKILL.md | 274 | ## Step 1: Check Current Guidelines Status | COMMENT |
| LOW | .agents/skills/onboard/SKILL.md | 284 | ## Step 2: Determine Situation | COMMENT |
| LOW | .agents/skills/onboard/SKILL.md | 319 | ## Step 3: Help Fill Guidelines (If Empty) | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 329 | ## Step 1: Audit the App | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 354 | ## Step 2: Add CSS Recipes | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 358 | ## Step 3: Isolate Persistent Elements | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 373 | ## Step 4: Add Directional Page Transitions | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 412 | ## Step 5: Add Suspense Reveals | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 422 | ## Step 6: Add Shared Element Transitions | COMMENT |
| LOW | .agents/skills/vercel-react-view-transitions/AGENTS.md | 454 | ## Step 7: Verify Each Navigation Path | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 5 | ## Step 1: Audit the App | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 30 | ## Step 2: Add CSS Recipes | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 36 | ## Step 3: Isolate Persistent Elements | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 48 | ## Step 4: Add Directional Page Transitions | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 105 | ## Step 5: Add Suspense Reveals | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 129 | ## Step 6: Add Shared Element Transitions | COMMENT |
| LOW | …el-react-view-transitions/references/implementation.md | 153 | ## Step 7: Verify Each Navigation Path | COMMENT |
| LOW | .agents/skills/record-session/SKILL.md | 16 | ### Step 1: Get Context & Check Tasks | COMMENT |
| LOW | .agents/skills/record-session/SKILL.md | 38 | ### Step 2: One-Click Add Session | COMMENT |
| LOW⚡ | .claude/agents/debug.md | 29 | ### Step 1: Understand Issues | COMMENT |
| LOW⚡ | .claude/agents/debug.md | 37 | ### Step 2: Research if Needed | COMMENT |
| LOW⚡ | .claude/agents/debug.md | 46 | ### Step 3: Fix One by One | COMMENT |
| LOW⚡ | .claude/agents/debug.md | 54 | ### Step 4: Verify | COMMENT |
| LOW⚡ | .claude/agents/check.md | 35 | ### Step 1: Get Changes | COMMENT |
| LOW⚡ | .claude/agents/check.md | 42 | ### Step 2: Check Against Specs | COMMENT |
| LOW⚡ | .claude/agents/check.md | 52 | ### Step 3: Self-Fix | COMMENT |
| LOW⚡ | .claude/agents/check.md | 60 | ### Step 4: Run Verification | COMMENT |
| LOW⚡ | .claude/agents/research.md | 57 | ### Step 1: Understand Search Request | COMMENT |
| LOW⚡ | .claude/agents/research.md | 65 | ### Step 2: Execute Search | COMMENT |
| LOW⚡ | .claude/agents/research.md | 69 | ### Step 3: Organize Results | COMMENT |
| LOW | .claude/agents/plan.md | 18 | ## Step 0: Evaluate Requirement (CRITICAL) | COMMENT |
| LOW | .claude/agents/plan.md | 152 | ### Step 1: Initialize Context Files | COMMENT |
| LOW | .claude/agents/plan.md | 160 | ### Step 2: Analyze Codebase with Research Agent | COMMENT |
| LOW | .claude/agents/plan.md | 198 | ### Step 3: Add Context Entries | COMMENT |
| 84 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .agents/skills/vercel-optimize/references/doctrine.md | 48 | ## Rule 4: Doc-grounded, version-aware recommendations — no hallucinations | COMMENT |
| MEDIUM⚡ | .trellis/worktree.yaml | 2 | # Used for worktree initialization in multi-agent workflows | COMMENT |
| MEDIUM | …ellis/tasks/04-22-split-app-shell-orchestration/prd.md | 1 | # Split app shell orchestration into submodule hooks | COMMENT |
| MEDIUM⚡ | .trellis/scripts/task.py | 240 | # Command: create-pr (delegates to multi-agent script) | COMMENT |
| MEDIUM | openspec/specs/agent-task-center/spec.md | 113 | #### Scenario: run created from orchestration task stores linkage | COMMENT |
| MEDIUM | openspec/specs/shell-orchestration-hardening/spec.md | 1 | # shell-orchestration-hardening Specification | COMMENT |
| MEDIUM | openspec/specs/spec-hub-workbench-ui/spec.md | 307 | #### Scenario: Shared engine selector is shown once in actions orchestration area | COMMENT |
| MEDIUM | openspec/specs/agent-task-orchestration-center/spec.md | 1 | # agent-task-orchestration-center Specification | COMMENT |
| MEDIUM | openspec/specs/agent-task-orchestration-center/spec.md | 34 | #### Scenario: orchestration dispatch includes browser context explicitly | COMMENT |
| MEDIUM | openspec/specs/agent-task-orchestration-center/spec.md | 65 | #### Scenario: plain workspace opens orchestration center | COMMENT |
| MEDIUM | openspec/specs/git-branch-management/spec.md | 214 | #### Scenario: Current branch guardrails | COMMENT |
| MEDIUM | openspec/specs/client-workflow-runtime-model/spec.md | 166 | #### Scenario: orchestration source refs are linked | COMMENT |
| MEDIUM | openspec/specs/agent-task-run-history/spec.md | 78 | #### Scenario: dispatched run records orchestration task id | COMMENT |
| MEDIUM | openspec/specs/agent-task-run-history/spec.md | 90 | #### Scenario: run history remains independent from orchestration projection | COMMENT |
| MEDIUM | openspec/specs/agent-task-run-history/spec.md | 107 | #### Scenario: orchestration run uses orchestration source | COMMENT |
| MEDIUM | openspec/specs/engine-plugin-onboarding-kit/spec.md | 10 | #### Scenario: current harness pass excludes engine scaffolding | COMMENT |
| MEDIUM⚡ | openspec/specs/client-startup-orchestration/spec.md | 1 | # client-startup-orchestration Specification | COMMENT |
| MEDIUM⚡ | openspec/specs/client-startup-orchestration/spec.md | 7 | ### Requirement: Client startup SHALL use phase-based orchestration | COMMENT |
| MEDIUM⚡ | openspec/specs/client-startup-orchestration/spec.md | 15 | #### Scenario: task declares orchestration metadata | COMMENT |
| MEDIUM⚡ | openspec/specs/client-startup-orchestration/spec.md | 25 | ### Requirement: Startup orchestration SHALL separate critical loading from opportunistic prewarm | COMMENT |
| MEDIUM | openspec/specs/client-startup-orchestration/spec.md | 61 | ### Requirement: Startup orchestration SHALL enforce startup budgets and concurrency caps | COMMENT |
| MEDIUM | openspec/specs/client-startup-orchestration/spec.md | 103 | ### Requirement: Focus and visibility refresh SHALL be coalesced through startup orchestration | COMMENT |
| MEDIUM | openspec/specs/client-startup-orchestration/spec.md | 223 | ### Requirement: Startup orchestration implementation SHALL remain cross-platform and CI-gate clean | COMMENT |
| MEDIUM | openspec/specs/claude-context-usage-display/spec.md | 38 | #### Scenario: runtime context window updates live usage | COMMENT |
| MEDIUM | openspec/specs/claude-context-usage-display/spec.md | 57 | #### Scenario: hook lifecycle events are enabled for context window telemetry | COMMENT |
| MEDIUM | openspec/specs/claude-context-usage-display/spec.md | 66 | #### Scenario: nested hook payloads carry context window state | COMMENT |
| MEDIUM | openspec/specs/claude-context-usage-display/spec.md | 130 | #### Scenario: fallback context window is labeled as estimated | COMMENT |
| MEDIUM | …spec/changes/fix-tooltip-startup-update-loop/design.md | 13 | ### Decision 1: TooltipIconButton 退出 Radix Tooltip orchestration | COMMENT |
| MEDIUM | …-add-prompt-enhancer-manual-provider-timeout/design.md | 29 | ### Decision 1: Keep state orchestration in `usePromptEnhancer` | COMMENT |
| MEDIUM | …oarding-kit/specs/engine-plugin-onboarding-kit/spec.md | 7 | #### Scenario: current harness pass excludes engine scaffolding | COMMENT |
| MEDIUM | …26-06-03-add-agent-task-orchestration-center/design.md | 180 | ### 5. TaskRun 需要从 Kanban-only 扩展到 orchestration linkage | COMMENT |
| MEDIUM | …k-orchestration-center/specs/agent-task-center/spec.md | 7 | #### Scenario: run created from orchestration task stores linkage | COMMENT |
| MEDIUM | …n-center/specs/agent-task-orchestration-center/spec.md | 7 | #### Scenario: plain workspace opens orchestration center | COMMENT |
| MEDIUM | …hestration-center/specs/agent-task-run-history/spec.md | 7 | #### Scenario: dispatched run records orchestration task id | COMMENT |
| MEDIUM | …hestration-center/specs/agent-task-run-history/spec.md | 19 | #### Scenario: run history remains independent from orchestration projection | COMMENT |
| MEDIUM | …hestration-center/specs/agent-task-run-history/spec.md | 36 | #### Scenario: orchestration run uses orchestration source | COMMENT |
| MEDIUM | …rchive/2026-06-07-split-large-file-hard-debt/design.md | 23 | ### Batch 2: Layout hook orchestration | COMMENT |
| MEDIUM | …ive/2026-04-22-split-app-shell-orchestration/design.md | 27 | ### Decision 1: 继续使用 `app-shell-parts` 目录承载 orchestration hook | COMMENT |
| MEDIUM | …e-without-checkout/specs/git-branch-management/spec.md | 74 | #### Scenario: Current branch guardrails | COMMENT |
| MEDIUM | …er-agent/specs/agent-task-orchestration-center/spec.md | 12 | #### Scenario: orchestration dispatch includes browser context explicitly | COMMENT |
| MEDIUM | …pressure/specs/agent-task-orchestration-center/spec.md | 1 | # agent-task-orchestration-center Delta Spec | COMMENT |
| MEDIUM | …tabilize-core-runtime-and-realtime-contracts/design.md | 192 | ### Decision 5: P1 bridge guardrails are included, bridge rewrite is not | COMMENT |
| MEDIUM | …-02-reduce-core-complexity-preserve-behavior/design.md | 57 | ### Decision 3: Extract pure functions before moving hook orchestration | COMMENT |
| MEDIUM⚡ | …rchestrator/specs/client-startup-orchestration/spec.md | 3 | ### Requirement: Client startup SHALL use phase-based orchestration | COMMENT |
| MEDIUM⚡ | …rchestrator/specs/client-startup-orchestration/spec.md | 11 | #### Scenario: task declares orchestration metadata | COMMENT |
| MEDIUM⚡ | …rchestrator/specs/client-startup-orchestration/spec.md | 21 | ### Requirement: Startup orchestration SHALL separate critical loading from opportunistic prewarm | COMMENT |
| MEDIUM | …rchestrator/specs/client-startup-orchestration/spec.md | 57 | ### Requirement: Startup orchestration SHALL enforce startup budgets and concurrency caps | COMMENT |
| MEDIUM | …rchestrator/specs/client-startup-orchestration/spec.md | 99 | ### Requirement: Focus and visibility refresh SHALL be coalesced through startup orchestration | COMMENT |
| MEDIUM | …rchestrator/specs/client-startup-orchestration/spec.md | 172 | ### Requirement: Startup orchestration implementation SHALL remain cross-platform and CI-gate clean | COMMENT |
| MEDIUM | …03-22-add-kanban-scheduled-and-chained-tasks/design.md | 36 | ### Decision 1: 执行入口统一收口到同一 orchestration 函数 | COMMENT |
| MEDIUM | …time-model/specs/client-workflow-runtime-model/spec.md | 163 | #### Scenario: orchestration source refs are linked | COMMENT |
| MEDIUM | …ges/archive/2026-05-28-add-project-xray-panel/tasks.md | 32 | ## 4. AI generation orchestration | COMMENT |
| MEDIUM | …eedback-2026-02-25/specs/spec-hub-workbench-ui/spec.md | 39 | #### Scenario: Shared engine selector is shown once in actions orchestration area | COMMENT |
| MEDIUM | …-list-context-menu/specs/git-branch-management/spec.md | 98 | #### Scenario: Current branch guardrails | COMMENT |
| MEDIUM | …26-05-28-dynamic-project-governance-evidence/design.md | 60 | ### Decision 2: EvidenceAdapter 负责 applicability,collector 负责 orchestration | COMMENT |
| MEDIUM | …den-client-renderer-stability-under-pressure/design.md | 93 | ### Decision 6: Runtime helper/process guardrails stay regression sentinels | COMMENT |
| MEDIUM | …age-display/specs/claude-context-usage-display/spec.md | 32 | #### Scenario: runtime context window updates live usage | COMMENT |
| MEDIUM | …age-display/specs/claude-context-usage-display/spec.md | 51 | #### Scenario: hook lifecycle events are enabled for context window telemetry | COMMENT |
| MEDIUM | …age-display/specs/claude-context-usage-display/spec.md | 59 | #### Scenario: nested hook payloads carry context window state | COMMENT |
| MEDIUM | …age-display/specs/claude-context-usage-display/spec.md | 106 | #### Scenario: fallback context window is labeled as estimated | COMMENT |
| 3 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/huashu-design/scripts/verify.py | 19 | CODE | |
| LOW | .agents/skills/huashu-design/scripts/verify.py | 20 | CODE | |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 9 | CODE | |
| LOW | .claude/hooks/session-start.py | 7 | CODE | |
| LOW | .claude/hooks/statusline.py | 12 | CODE | |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 9 | CODE | |
| LOW | .codex/hooks/session-start.py | 10 | CODE | |
| LOW | .trellis/scripts/create_bootstrap.py | 23 | CODE | |
| LOW | .trellis/scripts/task.py | 25 | CODE | |
| LOW | .trellis/scripts/get_developer.py | 8 | CODE | |
| LOW | .trellis/scripts/get_context.py | 10 | CODE | |
| LOW | .trellis/scripts/init_developer.py | 13 | CODE | |
| LOW | .trellis/scripts/add_session.py | 22 | CODE | |
| LOW | .trellis/scripts/multi_agent/plan.py | 19 | CODE | |
| LOW | .trellis/scripts/multi_agent/plan.py | 25 | CODE | |
| LOW | .trellis/scripts/multi_agent/plan.py | 27 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_monitor.py | 13 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_display.py | 16 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_display.py | 28 | CODE | |
| LOW | .trellis/scripts/multi_agent/create_pr.py | 19 | CODE | |
| LOW | .trellis/scripts/multi_agent/create_pr.py | 26 | CODE | |
| LOW | .trellis/scripts/multi_agent/cleanup.py | 22 | CODE | |
| LOW | .trellis/scripts/multi_agent/cleanup.py | 31 | CODE | |
| LOW | .trellis/scripts/multi_agent/start.py | 22 | CODE | |
| LOW | .trellis/scripts/multi_agent/start.py | 31 | CODE | |
| LOW | .trellis/scripts/multi_agent/status.py | 17 | CODE | |
| LOW | .trellis/scripts/multi_agent/status.py | 22 | CODE | |
| LOW | .trellis/scripts/multi_agent/status.py | 26 | CODE | |
| LOW | .trellis/scripts/common/phase.py | 20 | CODE | |
| LOW | .trellis/scripts/common/session_context.py | 14 | CODE | |
| LOW | .trellis/scripts/common/session_context.py | 24 | CODE | |
| LOW | .trellis/scripts/common/git.py | 7 | CODE | |
| LOW | .trellis/scripts/common/git_context.py | 13 | CODE | |
| LOW | .trellis/scripts/common/git_context.py | 18 | CODE | |
| LOW | .trellis/scripts/common/git_context.py | 18 | CODE | |
| LOW | .trellis/scripts/common/task_queue.py | 13 | CODE | |
| LOW | .trellis/scripts/common/tasks.py | 13 | CODE | |
| LOW | .trellis/scripts/common/config.py | 8 | CODE | |
| LOW | .trellis/scripts/common/task_store.py | 16 | CODE | |
| LOW | .trellis/scripts/common/packages_context.py | 12 | CODE | |
| LOW | .trellis/scripts/common/paths.py | 13 | CODE | |
| LOW | .trellis/scripts/common/log.py | 8 | CODE | |
| LOW | .trellis/scripts/common/registry.py | 17 | CODE | |
| LOW | .trellis/scripts/common/io.py | 8 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| LOW | .trellis/scripts/common/__init__.py | 58 | CODE | |
| 18 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 93 | except Exception: | CODE |
| LOW | .claude/hooks/ralph-loop.py | 83 | except Exception: | CODE |
| LOW | .claude/hooks/ralph-loop.py | 138 | except Exception: | CODE |
| LOW | .claude/hooks/ralph-loop.py | 167 | except Exception as e: | CODE |
| LOW | .claude/hooks/ralph-loop.py | 203 | except Exception: | CODE |
| LOW | .claude/hooks/ralph-loop.py | 222 | except Exception: | CODE |
| LOW | .claude/hooks/ralph-loop.py | 234 | except Exception: | CODE |
| LOW | .claude/hooks/inject-subagent-context.py | 110 | except Exception: | CODE |
| LOW | .claude/hooks/inject-subagent-context.py | 166 | except Exception: | CODE |
| LOW | .claude/hooks/inject-subagent-context.py | 178 | except Exception: | CODE |
| LOW | .claude/hooks/inject-subagent-context.py | 219 | except Exception: | CODE |
| LOW | .claude/hooks/inject-subagent-context.py | 221 | except Exception: | CODE |
| LOW | .claude/hooks/inject-subagent-context.py | 268 | except Exception: | CODE |
| LOW | …ills/osp-openspec-sync/scripts/validate-consistency.py | 93 | except Exception: | CODE |
| MEDIUM | .trellis/scripts/create_bootstrap.py | 264 | print("Error: Developer not initialized") | CODE |
| MEDIUM | .trellis/scripts/add_session.py | 227 | print("Error: Markers not found in index.md. Please ensure markers exist.", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/add_session.py | 364 | print("Error: Developer not initialized", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/add_session.py | 369 | print("Error: Workspace directory not found", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/add_session.py | 493 | print(f"Error: unknown package '{package}'. Available: {available}", file=sys.stderr) | CODE |
| LOW | .trellis/scripts/multi_agent/status_monitor.py | 75 | except Exception: | CODE |
| LOW⚡ | .trellis/scripts/multi_agent/status_monitor.py | 117 | except Exception: | CODE |
| LOW⚡ | .trellis/scripts/multi_agent/status_display.py | 140 | except Exception: | CODE |
| LOW | .trellis/scripts/multi_agent/cleanup.py | 237 | except Exception as e: | CODE |
| LOW⚡ | .trellis/scripts/multi_agent/start.py | 491 | except Exception: | CODE |
| LOW | .trellis/scripts/common/git.py | 30 | except Exception as e: | CODE |
| MEDIUM⚡ | .trellis/scripts/common/task_utils.py | 44 | print("Error: empty or null task path", file=sys.stderr) | CODE |
| MEDIUM⚡ | .trellis/scripts/common/task_utils.py | 49 | print(f"Error: absolute path not allowed: {task_path}", file=sys.stderr) | CODE |
| MEDIUM⚡ | .trellis/scripts/common/task_utils.py | 54 | print(f"Error: path traversal not allowed: {task_path}", file=sys.stderr) | CODE |
| MEDIUM⚡ | .trellis/scripts/common/task_utils.py | 64 | print(f"Error: path resolves to repo root: {task_path}", file=sys.stderr) | CODE |
| MEDIUM⚡ | .trellis/scripts/common/task_utils.py | 160 | print(f"Error: task directory not found: {task_dir_abs}", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/common/task_utils.py | 117 | print(f"Error: task directory not found: {task_dir_abs}", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/common/task_utils.py | 130 | print(f"Error: Failed to create archive directory: {e}", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/common/task_utils.py | 140 | print(f"Error: Failed to move task to archive: {e}", file=sys.stderr) | CODE |
| LOW⚡ | .trellis/scripts/common/task_utils.py | 257 | except Exception as e: | CODE |
| MEDIUM | .trellis/scripts/common/developer.py | 142 | print("Error: developer name is required", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/common/developer.py | 159 | print(f"Error: Failed to create .developer file: {e}", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/common/developer.py | 166 | print(f"Error: Failed to create workspace directory: {e}", file=sys.stderr) | CODE |
| MEDIUM | .trellis/scripts/common/developer.py | 184 | print(f"Error: Failed to create journal file: {e}", file=sys.stderr) | STRING |
| MEDIUM | .trellis/scripts/common/developer.py | 234 | print(f"Error: Failed to create index.md: {e}", file=sys.stderr) | STRING |
| MEDIUM | .trellis/scripts/common/developer.py | 254 | print("Error: Developer not initialized.", file=sys.stderr) | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/huashu-design/scripts/mix-voiceover.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | .agents/skills/huashu-design/scripts/convert-formats.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …gents/skills/huashu-design/scripts/render-narration.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | .agents/skills/huashu-design/scripts/add-music.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | .agents/skills/huashu-design/scripts/add-music.sh | 21 | # | COMMENT |
| LOW | …ts/skills/huashu-design/demos/c6-expert-review-en.html | 721 | pointsG.appendChild(circle); | COMMENT |
| LOW | …s/skills/huashu-design/demos/w1-brand-protocol-en.html | 561 | } | COMMENT |
| LOW | …/skills/huashu-design/demos/w2-junior-designer-en.html | 741 | // ──────────────────────────────────── | COMMENT |
| LOW | …nts/skills/huashu-design/demos/w2-junior-designer.html | 741 | function seg(time, start, end) { | COMMENT |
| LOW | .agents/skills/update-spec/SKILL.md | 141 | ```markdown | COMMENT |
| LOW | .claude/rules/introduction.md | 1 | ## 项目介绍 | COMMENT |
| LOW | scripts/perf-reproduce-jank.sh | 1 | #!/bin/bash | COMMENT |
| LOW | src-tauri/src/curated_skills.rs | 41 | /// "View on GitHub" link rather than rendering a broken anchor. | COMMENT |
| LOW | src-tauri/src/curated_skills.rs | 481 | } | COMMENT |
| LOW | src-tauri/src/utils.rs | 1 | use std::env; | COMMENT |
| LOW | src-tauri/src/bin/cc_gui_daemon.rs | 1 | #[allow(dead_code)] | COMMENT |
| LOW | src-tauri/src/bin/cc_gui_daemon.rs | 121 | #[path = "../rules.rs"] | COMMENT |
| LOW | src-tauri/src/shared/workspaces_core.rs | 21 | samples.push(sample); | COMMENT |
| LOW | src-tauri/src/engine/events.rs | 161 | /// Model context window size (from Claude statusline/hooks) | COMMENT |
| LOW | src-tauri/src/engine/claude.rs | 341 | user_input_notify_by_turn: StdMutex<HashMap<String, Arc<Notify>>>, | COMMENT |
| LOW | src-tauri/src/engine/claude.rs | 941 | _ => { | COMMENT |
| LOW | src-tauri/src/engine/claude.rs | 2541 | #[cfg(test)] | COMMENT |
| LOW | src-tauri/src/engine/mod.rs | 161 | } | COMMENT |
| LOW | src-tauri/src/engine/claude/tests_stream.rs | 1001 | COMMENT | |
| LOW | src-tauri/src/engine/claude/tests_stream.rs | 1061 | COMMENT | |
| LOW | src-tauri/src/engine/claude/askuser_mcp.rs | 1 | //! In-process HTTP MCP server exposing a single `AskUserQuestion` tool. | COMMENT |
| LOW | src-tauri/src/engine/claude/user_input.rs | 861 | /// until the user answers, returning the formatted tool_result text. | COMMENT |
| LOW | .trellis/worktree.yaml | 1 | # Worktree Configuration for Multi-Agent Pipeline | COMMENT |
| LOW | .trellis/worktree.yaml | 21 | # - .env | COMMENT |
| LOW | .trellis/worktree.yaml | 41 | COMMENT | |
| LOW | .trellis/config.yaml | 1 | # Trellis Configuration | COMMENT |
| LOW | .trellis/config.yaml | 21 | COMMENT | |
| LOW | .trellis/config.yaml | 41 | # Trellis auto-detects workspaces during `trellis init`, but you can also | COMMENT |
| LOW | src/features/curated-skills/i18n/categoryLabels.ts | 41 | // always-on semantics: enabling a curated skill in Settings means it | COMMENT |
| LOW | src/features/messages/components/Messages.tsx | 2401 | // 正文甩在半空,用户每轮都得手动滚到底。虚拟化行的迟到测量、content-visibility 屏外 | COMMENT |
| LOW | …s/app/hooks/useAppServerEvents.batch-consumer.test.tsx | 1 | // @vitest-environment jsdom | COMMENT |
| LOW | src/features/search/hooks/searchQueryToken.ts | 1 | import { useRef } from "react"; | COMMENT |
| LOW | src/features/search/hooks/searchQueryToken.ts | 41 | // useSearchQueryToken wires a `useRef<SearchQueryTokenState>` to the | COMMENT |
| LOW | src/features/search/indexing/indexItem.ts | 1 | import type { SearchResultKind } from "../types"; | COMMENT |
| LOW | …eatures/search/indexing/equivalence.regression.test.ts | 1 | // @vitest-environment jsdom | COMMENT |
| LOW | src/features/threads/utils/codexPendingPrewarm.ts | 1 | // Codex 乐观创建会话的预热登记表。 | COMMENT |
| LOW | src/features/threads/utils/liveAssistantTextChannel.ts | 1 | // 流式正文 live-text 外部化通道(perf flag: liveTextExternalization)。 | COMMENT |
| LOW | src/services/perfBaseline/hotspotTracker.ts | 1 | // 主线程热路径计时器(纯内存环形缓冲,零依赖、零写盘)。 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .codex/agents/plan.toml | 14 | ## Step 0: Evaluate Requirement (CRITICAL) | COMMENT |
| LOW⚡ | .codex/agents/plan.toml | 148 | ### Step 1: Initialize Context Files | COMMENT |
| LOW⚡ | .codex/agents/plan.toml | 156 | ### Step 2: Analyze Codebase with Research Agent | COMMENT |
| LOW | .codex/agents/plan.toml | 194 | ### Step 3: Add Context Entries | COMMENT |
| LOW | .codex/agents/plan.toml | 209 | ### Step 4: Write prd.md | COMMENT |
| LOW | .codex/agents/plan.toml | 244 | ### Step 5: Configure Task Metadata | COMMENT |
| LOW⚡ | .codex/agents/plan.toml | 259 | ### Step 6: Validate Configuration | COMMENT |
| LOW⚡ | .codex/agents/plan.toml | 267 | ### Step 7: Output Summary | COMMENT |
| LOW⚡ | .codex/agents/debug.toml | 25 | ### Step 1: Understand Issues | COMMENT |
| LOW⚡ | .codex/agents/debug.toml | 33 | ### Step 2: Research if Needed | COMMENT |
| LOW⚡ | .codex/agents/debug.toml | 42 | ### Step 3: Fix One by One | COMMENT |
| LOW⚡ | .codex/agents/debug.toml | 50 | ### Step 4: Verify | COMMENT |
| LOW⚡ | .codex/agents/dispatch.toml | 34 | ### Step 1: Determine Current Task Directory | COMMENT |
| LOW⚡ | .codex/agents/dispatch.toml | 43 | ### Step 2: Read Task Configuration | COMMENT |
| LOW⚡ | .codex/agents/dispatch.toml | 51 | ### Step 3: Execute in Phase Order | COMMENT |
| LOW⚡ | .trellis/scripts/multi_agent/plan.py | 89 | # Step 1: Create Task Directory | COMMENT |
| LOW⚡ | .trellis/scripts/multi_agent/plan.py | 131 | # Step 2: Prepare and Start Plan Agent | COMMENT |
| LOW⚡ | .trellis/scripts/multi_agent/start.py | 287 | # Step 1: Create Worktree (if not exists) | COMMENT |
| LOW⚡ | .trellis/scripts/multi_agent/start.py | 393 | # Step 2: Set .current-task in Worktree | COMMENT |
| LOW⚡ | .trellis/scripts/multi_agent/start.py | 405 | # Step 3: Prepare and Start Claude Agent | COMMENT |
| LOW⚡ | .trellis/scripts/multi_agent/start.py | 498 | # Step 4: Register to Registry (in main repo, not worktree) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/huashu-design/scripts/verify.py | 29 | CODE | |
| LOW | .claude/hooks/ralph-loop.py | 87 | CODE | |
| LOW | .claude/hooks/ralph-loop.py | 142 | CODE | |
| LOW | .claude/hooks/ralph-loop.py | 173 | CODE | |
| LOW | .claude/hooks/ralph-loop.py | 253 | CODE | |
| LOW | .claude/hooks/inject-subagent-context.py | 183 | CODE | |
| LOW | .claude/hooks/inject-subagent-context.py | 227 | CODE | |
| LOW | .claude/hooks/inject-subagent-context.py | 717 | CODE | |
| LOW | .trellis/scripts/task.py | 209 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_monitor.py | 42 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_monitor.py | 80 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_monitor.py | 151 | CODE | |
| LOW | .trellis/scripts/multi_agent/status_display.py | 212 | CODE | |
| LOW | .trellis/scripts/multi_agent/cleanup.py | 179 | CODE | |
| LOW | .trellis/scripts/multi_agent/cleanup.py | 302 | CODE | |
| LOW | .trellis/scripts/multi_agent/cleanup.py | 358 | CODE | |
| LOW | .trellis/scripts/multi_agent/start.py | 76 | CODE | |
| LOW | .trellis/scripts/multi_agent/start.py | 182 | CODE | |
| LOW | .trellis/scripts/multi_agent/status.py | 40 | CODE | |
| LOW | .trellis/scripts/common/session_context.py | 43 | CODE | |
| LOW | .trellis/scripts/common/session_context.py | 116 | CODE | |
| LOW | .trellis/scripts/common/task_store.py | 85 | CODE | |
| LOW | .trellis/scripts/common/task_store.py | 226 | CODE | |
| LOW | .trellis/scripts/common/task_utils.py | 218 | CODE | |
| LOW | .trellis/scripts/common/worktree.py | 74 | CODE | |
| LOW | .trellis/scripts/common/cli_adapter.py | 94 | CODE | |
| LOW | .trellis/scripts/common/cli_adapter.py | 214 | CODE | |
| LOW | .trellis/scripts/common/cli_adapter.py | 257 | CODE | |
| LOW | .trellis/scripts/common/cli_adapter.py | 292 | CODE | |
| LOW | .trellis/scripts/common/cli_adapter.py | 389 | CODE | |
| LOW | .trellis/scripts/common/cli_adapter.py | 477 | CODE | |
| LOW | .trellis/scripts/common/task_context.py | 97 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/deploy-to-vercel/resources/deploy.sh | 182 | # Check if input is a .tgz file or a directory | COMMENT |
| LOW | .agents/skills/deploy-to-vercel/resources/deploy.sh | 208 | # Check if this is a static HTML project (no package.json) | COMMENT |
| LOW | …ents/skills/deploy-to-vercel/resources/deploy-codex.sh | 182 | # Check if input is a .tgz file or a directory | COMMENT |
| LOW | …ents/skills/deploy-to-vercel/resources/deploy-codex.sh | 208 | # Check if this is a static HTML project (no package.json) | COMMENT |
| LOW | .claude/hooks/ralph-loop.py | 314 | # Increment iteration | COMMENT |
| LOW | .claude/hooks/ralph-loop.py | 333 | # Check if verify commands are configured | COMMENT |
| LOW | .claude/hooks/inject-subagent-context.py | 749 | # Check if task directory exists | COMMENT |
| LOW | .trellis/scripts/create_bootstrap.py | 276 | # Check if already exists | COMMENT |
| LOW | .trellis/scripts/create_bootstrap.py | 284 | # Write files | COMMENT |
| LOW | .trellis/scripts/init_developer.py | 36 | # Check if already initialized | COMMENT |
| LOW | .trellis/scripts/add_session.py | 329 | # Check if there are staged changes | COMMENT |
| LOW | .trellis/scripts/multi_agent/create_pr.py | 443 | # Check if there are staged changes | COMMENT |
| LOW | .trellis/scripts/multi_agent/create_pr.py | 509 | # Check if PR already exists | COMMENT |
| LOW | .trellis/scripts/multi_agent/start.py | 119 | # Check if this package is a submodule | COMMENT |
| LOW | .trellis/scripts/multi_agent/start.py | 254 | # Check if task was rejected | COMMENT |
| LOW | .trellis/scripts/multi_agent/start.py | 268 | # Check if prd.md exists (plan completed successfully) | COMMENT |
| LOW | .trellis/scripts/common/task_store.py | 323 | # Check if there are staged changes | COMMENT |
| LOW | .trellis/scripts/common/task_store.py | 368 | # Check if child already has a parent | COMMENT |
| LOW | .trellis/scripts/common/task_context.py | 263 | # Check if already exists | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | openspec/specs/project-xray-panel/spec.md | 332 | #### Scenario: AI-generated dynamic labels remain readable | COMMENT |
| HIGH | …dd-project-xray-panel/specs/project-xray-panel/spec.md | 431 | #### Scenario: AI-generated dynamic labels remain readable | COMMENT |
| HIGH | src/features/spec/components/SpecHub.test-support.tsx | 185 | "When enabled, missing verification artifact will be generated by AI before strict verify.", | CODE |
| HIGH | src/i18n/locales/en.part2.ts | 749 | hint: "When enabled, missing verification artifact will be generated by AI before strict verify.", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | .agents/skills/huashu-design/scripts/verify.py | 34 | print("运行: pip install playwright && playwright install chromium") | CODE |
| HIGH | .trellis/scripts/add_session.py | 327 | print("[WARN] Please commit workspace changes manually: git add .trellis/workspace && git commit", file=sys.stde | CODE |
| HIGH⚡ | .trellis/scripts/multi_agent/start.py | 279 | " jq '.branch = \"task/my-task\"' task.json > tmp && mv tmp task.json" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/huashu-design/SKILL.md | 435 | - 使用**用户真实内容/主题**(不是 Lorem ipsum) | CODE |
| LOW | .agents/skills/huashu-design/scripts/html2pptx.js | 16 | * - Extracts placeholder elements (class="placeholder") with positions | COMMENT |
| LOW | .agents/skills/huashu-design/scripts/html2pptx.js | 558 | if (el.className && el.className.includes('placeholder')) { | CODE |
| LOW | src-tauri/src/diagnostics_bundle.rs | 859 | settings.email_sender.username = "user@example.com".to_string(); | CODE |
| LOW | src-tauri/src/diagnostics_bundle.rs | 870 | assert!(!serialized.contains("user@example.com")); | CODE |
| LOW | src-tauri/src/browser_agent/toolbar.rs | 489 | element.getAttribute("placeholder"), | CODE |
| LOW | src-tauri/src/browser_agent/toolbar.rs | 541 | element.getAttribute("placeholder") || | CODE |
| LOW | src-tauri/src/email/session_continuation.rs | 2038 | allowed_senders: vec!["user@example.com".to_string()], | CODE |
| LOW | src-tauri/src/email/session_continuation.rs | 2086 | "user@example.com" | CODE |
| LOW | src/features/settings/hooks/useAppSettings.test.ts | 231 | username: "user@example.com", | CODE |
| LOW | …er-agent/capture/readOnlyCaptureScript.fixture.test.ts | 75 | <label>Email <input name="email" value="user@example.com" /></label> | CODE |
| LOW | src/features/threads/utils/generatedImagePlaceholder.ts | 12 | "placeholder", | CODE |
| LOW | …c/features/threads/hooks/useThreadAccountInfo.test.tsx | 15 | account: { type: "chatgpt", email: "user@example.com", planType: "pro" }, | CODE |
| LOW | …c/features/threads/hooks/useThreadAccountInfo.test.tsx | 39 | email: "user@example.com", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | .trellis/scripts/common/task_queue.py | 121 | List tasks assigned to current developer. Args: filter_status: Optional status filter. repo_root: R | STRING |
| HIGH | .trellis/scripts/common/cli_adapter.py | 565 | Get CLI adapter for the specified platform. Args: platform: Platform name ('claude', 'opencode', 'cursor', | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | …atures/project-map/hooks/useProjectMapDataset.test.tsx | 984 | expect(result.current.dataset.manifest.lensStats.every((stats) => stats.nodeCount === 0)).toBe(true); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .agents/skills/huashu-design/scripts/mix-voiceover.sh | 4 | # Usage: | COMMENT |
| LOW | .agents/skills/huashu-design/scripts/convert-formats.sh | 4 | # Usage: | COMMENT |
| LOW | …gents/skills/huashu-design/scripts/render-narration.sh | 9 | # Usage: | COMMENT |
| LOW | .agents/skills/huashu-design/scripts/add-music.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/create-dmg.sh | 4 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | scripts/create-dmg.sh | 2 | # Create a DMG with drag-to-install panel for ccgui | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/hooks/inject-subagent-context.py | 114 | def update_current_phase(repo_root: str, task_dir: str, subagent_type: str) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .trellis/scripts/common/task_store.py | 63 | CODE |