gitextract_f9k7ojz2/ ├── .coderabbit.yaml ├── .design-system/ │ ├── .gitignore │ ├── REFACTORING_SUMMARY.md │ ├── index.html │ ├── package.json │ ├── postcss.config.js │ ├── src/ │ │ ├── App.tsx │ │ ├── App.tsx.backup │ │ ├── App.tsx.original │ │ ├── animations/ │ │ │ ├── constants.ts │ │ │ └── index.ts │ │ ├── components/ │ │ │ ├── Avatar.tsx │ │ │ ├── Badge.tsx │ │ │ ├── Button.tsx │ │ │ ├── Card.tsx │ │ │ ├── Input.tsx │ │ │ ├── ProgressCircle.tsx │ │ │ ├── Toggle.tsx │ │ │ └── index.ts │ │ ├── demo-cards/ │ │ │ ├── CalendarCard.tsx │ │ │ ├── IntegrationsCard.tsx │ │ │ ├── MilestoneCard.tsx │ │ │ ├── NotificationsCard.tsx │ │ │ ├── ProfileCard.tsx │ │ │ ├── ProjectStatusCard.tsx │ │ │ ├── TeamMembersCard.tsx │ │ │ └── index.ts │ │ ├── lib/ │ │ │ ├── icons.ts │ │ │ └── utils.ts │ │ ├── main.tsx │ │ ├── styles.css │ │ └── theme/ │ │ ├── ThemeSelector.tsx │ │ ├── constants.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── useTheme.ts │ ├── tsconfig.json │ └── vite.config.ts ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ ├── config.yml │ │ ├── docs.yml │ │ └── question.yml │ ├── PULL_REQUEST_TEMPLATE.md │ ├── actions/ │ │ ├── finalize-macos-notarization/ │ │ │ └── action.yml │ │ ├── merge-macos-manifests/ │ │ │ └── action.yml │ │ ├── setup-node-frontend/ │ │ │ └── action.yml │ │ └── submit-macos-notarization/ │ │ └── action.yml │ ├── dependabot.yml │ ├── release-drafter.yml │ └── workflows/ │ ├── beta-release.yml │ ├── build-prebuilds.yml │ ├── ci.yml │ ├── discord-release.yml │ ├── e2e.yml │ ├── issue-auto-label.yml │ ├── lint.yml │ ├── pr-labeler.yml │ ├── prepare-release.yml │ ├── quality-security.yml │ ├── release.yml │ ├── stale.yml │ ├── test-azure-auth.yml │ ├── virustotal-scan.yml │ └── welcome.yml ├── .gitignore ├── .husky/ │ ├── commit-msg │ └── pre-commit ├── .pre-commit-config.yaml ├── .secretsignore.example ├── CHANGELOG.md ├── CLA.md ├── CLAUDE.md ├── CODEX_RATE_LIMITS_RESEARCH.md ├── CONTRIBUTING.md ├── LICENSE ├── Memory.md ├── README.md ├── RELEASE.md ├── apps/ │ └── desktop/ │ ├── .env.example │ ├── .gitignore │ ├── COMPLETION_SUMMARY.md │ ├── CONTRIBUTING.md │ ├── README.md │ ├── VERIFICATION_SUMMARY.md │ ├── XSTATE_MIGRATION_SUMMARY.md │ ├── biome.jsonc │ ├── design.json │ ├── e2e/ │ │ ├── claude-accounts.e2e.ts │ │ ├── electron-helper.ts │ │ ├── flows.e2e.ts │ │ ├── playwright.config.ts │ │ ├── task-workflow.spec.ts │ │ └── terminal-copy-paste.e2e.ts │ ├── electron.vite.config.ts │ ├── package.json │ ├── postcss.config.cjs │ ├── prompts/ │ │ ├── coder.md │ │ ├── coder_recovery.md │ │ ├── competitor_analysis.md │ │ ├── complexity_assessor.md │ │ ├── followup_planner.md │ │ ├── github/ │ │ │ ├── QA_REVIEW_SYSTEM_PROMPT.md │ │ │ ├── duplicate_detector.md │ │ │ ├── issue_analyzer.md │ │ │ ├── issue_triager.md │ │ │ ├── partials/ │ │ │ │ └── full_context_analysis.md │ │ │ ├── pr_ai_triage.md │ │ │ ├── pr_codebase_fit_agent.md │ │ │ ├── pr_finding_validator.md │ │ │ ├── pr_fixer.md │ │ │ ├── pr_followup.md │ │ │ ├── pr_followup_comment_agent.md │ │ │ ├── pr_followup_newcode_agent.md │ │ │ ├── pr_followup_orchestrator.md │ │ │ ├── pr_followup_resolution_agent.md │ │ │ ├── pr_logic_agent.md │ │ │ ├── pr_orchestrator.md │ │ │ ├── pr_parallel_orchestrator.md │ │ │ ├── pr_quality_agent.md │ │ │ ├── pr_reviewer.md │ │ │ ├── pr_security_agent.md │ │ │ ├── pr_structural.md │ │ │ ├── pr_template_filler.md │ │ │ └── spam_detector.md │ │ ├── ideation_code_improvements.md │ │ ├── ideation_code_quality.md │ │ ├── ideation_documentation.md │ │ ├── ideation_performance.md │ │ ├── ideation_security.md │ │ ├── ideation_ui_ux.md │ │ ├── insight_extractor.md │ │ ├── mcp_tools/ │ │ │ ├── api_validation.md │ │ │ ├── database_validation.md │ │ │ ├── electron_validation.md │ │ │ └── puppeteer_browser.md │ │ ├── planner.md │ │ ├── qa_fixer.md │ │ ├── qa_orchestrator_agentic.md │ │ ├── qa_reviewer.md │ │ ├── roadmap_discovery.md │ │ ├── roadmap_features.md │ │ ├── spec_critic.md │ │ ├── spec_gatherer.md │ │ ├── spec_orchestrator_agentic.md │ │ ├── spec_quick.md │ │ ├── spec_researcher.md │ │ ├── spec_writer.md │ │ └── validation_fixer.md │ ├── resources/ │ │ ├── entitlements.mac.plist │ │ └── icon.icns │ ├── scripts/ │ │ ├── download-prebuilds.cjs │ │ ├── postinstall.cjs │ │ └── verify-linux-packages.cjs │ ├── src/ │ │ ├── __mocks__/ │ │ │ ├── electron.ts │ │ │ ├── sentry-electron-main.ts │ │ │ ├── sentry-electron-renderer.ts │ │ │ └── sentry-electron-shared.ts │ │ ├── __tests__/ │ │ │ ├── e2e/ │ │ │ │ └── smoke.test.ts │ │ │ ├── integration/ │ │ │ │ ├── claude-profile-ipc.test.ts │ │ │ │ ├── file-watcher.test.ts │ │ │ │ ├── ipc-bridge.test.ts │ │ │ │ ├── rate-limit-subtask-recovery.test.ts │ │ │ │ ├── subprocess-spawn.test.ts │ │ │ │ ├── task-lifecycle.test.ts │ │ │ │ └── terminal-copy-paste.test.ts │ │ │ └── setup.ts │ │ ├── main/ │ │ │ ├── __tests__/ │ │ │ │ ├── agent-events.test.ts │ │ │ │ ├── app-logger.test.ts │ │ │ │ ├── claude-cli-utils.test.ts │ │ │ │ ├── claude-code-handlers.test.ts │ │ │ │ ├── cli-tool-manager.test.ts │ │ │ │ ├── config-path-validator.test.ts │ │ │ │ ├── ensure-onboarding-complete.test.ts │ │ │ │ ├── env-utils.test.ts │ │ │ │ ├── file-watcher.test.ts │ │ │ │ ├── insights-config.test.ts │ │ │ │ ├── ipc-handlers.test.ts │ │ │ │ ├── long-lived-auth.test.ts │ │ │ │ ├── ndjson-parser.test.ts │ │ │ │ ├── parsers.test.ts │ │ │ │ ├── phase-event-parser.test.ts │ │ │ │ ├── phase-event-schema.test.ts │ │ │ │ ├── pr-review-state-manager.test.ts │ │ │ │ ├── project-store.test.ts │ │ │ │ ├── rate-limit-auto-recovery.test.ts │ │ │ │ ├── rate-limit-detector.test.ts │ │ │ │ ├── settings-onboarding.test.ts │ │ │ │ ├── task-state-manager.test.ts │ │ │ │ ├── terminal-session-store.test.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── version-manager.test.ts │ │ │ ├── agent/ │ │ │ │ ├── agent-events.ts │ │ │ │ ├── agent-manager.ts │ │ │ │ ├── agent-process.test.ts │ │ │ │ ├── agent-process.ts │ │ │ │ ├── agent-queue.ts │ │ │ │ ├── agent-state.test.ts │ │ │ │ ├── agent-state.ts │ │ │ │ ├── env-utils.test.ts │ │ │ │ ├── env-utils.ts │ │ │ │ ├── index.ts │ │ │ │ ├── parsers/ │ │ │ │ │ ├── base-phase-parser.ts │ │ │ │ │ ├── execution-phase-parser.ts │ │ │ │ │ ├── ideation-phase-parser.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── roadmap-phase-parser.ts │ │ │ │ ├── phase-event-parser.ts │ │ │ │ ├── phase-event-schema.ts │ │ │ │ ├── task-event-parser.ts │ │ │ │ ├── task-event-schema.ts │ │ │ │ └── types.ts │ │ │ ├── agent-manager.ts │ │ │ ├── ai/ │ │ │ │ ├── agent/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── executor.test.ts │ │ │ │ │ │ └── worker-bridge.test.ts │ │ │ │ │ ├── executor.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── worker-bridge.ts │ │ │ │ │ └── worker.ts │ │ │ │ ├── auth/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── resolver.test.ts │ │ │ │ │ │ └── types.test.ts │ │ │ │ │ ├── codex-oauth.ts │ │ │ │ │ ├── resolver.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── client/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── factory.test.ts │ │ │ │ │ ├── factory.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── config/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── agent-configs.test.ts │ │ │ │ │ │ ├── phase-config.test.ts │ │ │ │ │ │ └── types.test.ts │ │ │ │ │ ├── agent-configs.ts │ │ │ │ │ ├── phase-config.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── context/ │ │ │ │ │ ├── builder.ts │ │ │ │ │ ├── categorizer.ts │ │ │ │ │ ├── graphiti-integration.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── keyword-extractor.ts │ │ │ │ │ ├── pattern-discovery.ts │ │ │ │ │ ├── search.ts │ │ │ │ │ ├── service-matcher.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── logging/ │ │ │ │ │ └── task-log-writer.ts │ │ │ │ ├── mcp/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── client.test.ts │ │ │ │ │ │ └── registry.test.ts │ │ │ │ │ ├── client.ts │ │ │ │ │ ├── registry.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── memory/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── db.test.ts │ │ │ │ │ │ ├── embedding-service.test.ts │ │ │ │ │ │ ├── graph/ │ │ │ │ │ │ │ ├── ast-chunker.test.ts │ │ │ │ │ │ │ ├── ast-extractor.test.ts │ │ │ │ │ │ │ └── graph-database.test.ts │ │ │ │ │ │ ├── injection/ │ │ │ │ │ │ │ ├── memory-stop-condition.test.ts │ │ │ │ │ │ │ ├── planner-memory-context.test.ts │ │ │ │ │ │ │ ├── qa-context.test.ts │ │ │ │ │ │ │ ├── step-injection-decider.test.ts │ │ │ │ │ │ │ └── step-memory-state.test.ts │ │ │ │ │ │ ├── ipc/ │ │ │ │ │ │ │ └── worker-observer-proxy.test.ts │ │ │ │ │ │ ├── memory-service.test.ts │ │ │ │ │ │ ├── observer/ │ │ │ │ │ │ │ ├── memory-observer.test.ts │ │ │ │ │ │ │ ├── promotion.test.ts │ │ │ │ │ │ │ ├── scratchpad.test.ts │ │ │ │ │ │ │ └── trust-gate.test.ts │ │ │ │ │ │ ├── retrieval/ │ │ │ │ │ │ │ ├── bm25-search.test.ts │ │ │ │ │ │ │ ├── context-packer.test.ts │ │ │ │ │ │ │ ├── pipeline.test.ts │ │ │ │ │ │ │ ├── query-classifier.test.ts │ │ │ │ │ │ │ └── rrf-fusion.test.ts │ │ │ │ │ │ ├── schema.test.ts │ │ │ │ │ │ └── types.test.ts │ │ │ │ │ ├── db.ts │ │ │ │ │ ├── embedding-service.ts │ │ │ │ │ ├── graph/ │ │ │ │ │ │ ├── ast-chunker.ts │ │ │ │ │ │ ├── ast-extractor.ts │ │ │ │ │ │ ├── graph-database.ts │ │ │ │ │ │ ├── impact-analyzer.ts │ │ │ │ │ │ ├── incremental-indexer.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tree-sitter-loader.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── injection/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── memory-stop-condition.ts │ │ │ │ │ │ ├── planner-memory-context.ts │ │ │ │ │ │ ├── prefetch-builder.ts │ │ │ │ │ │ ├── qa-context.ts │ │ │ │ │ │ ├── step-injection-decider.ts │ │ │ │ │ │ └── step-memory-state.ts │ │ │ │ │ ├── ipc/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── worker-observer-proxy.ts │ │ │ │ │ ├── memory-service.ts │ │ │ │ │ ├── observer/ │ │ │ │ │ │ ├── dead-end-detector.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── memory-observer.ts │ │ │ │ │ │ ├── promotion.ts │ │ │ │ │ │ ├── scratchpad-merger.ts │ │ │ │ │ │ ├── scratchpad.ts │ │ │ │ │ │ ├── signals.ts │ │ │ │ │ │ └── trust-gate.ts │ │ │ │ │ ├── retrieval/ │ │ │ │ │ │ ├── bm25-search.ts │ │ │ │ │ │ ├── context-packer.ts │ │ │ │ │ │ ├── dense-search.ts │ │ │ │ │ │ ├── graph-boost.ts │ │ │ │ │ │ ├── graph-search.ts │ │ │ │ │ │ ├── hyde.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── pipeline.ts │ │ │ │ │ │ ├── query-classifier.ts │ │ │ │ │ │ ├── reranker.ts │ │ │ │ │ │ └── rrf-fusion.ts │ │ │ │ │ ├── schema.ts │ │ │ │ │ ├── tools/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── record-memory.ts │ │ │ │ │ │ └── search-memory.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── merge/ │ │ │ │ │ ├── auto-merger.ts │ │ │ │ │ ├── conflict-detector.ts │ │ │ │ │ ├── file-evolution.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── orchestrator.ts │ │ │ │ │ ├── semantic-analyzer.ts │ │ │ │ │ ├── timeline-tracker.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── orchestration/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── parallel-executor.test.ts │ │ │ │ │ │ ├── qa-loop.test.ts │ │ │ │ │ │ ├── qa-reports.test.ts │ │ │ │ │ │ ├── recovery-manager.test.ts │ │ │ │ │ │ ├── subagent-executor.test.ts │ │ │ │ │ │ └── subtask-iterator-restamp.test.ts │ │ │ │ │ ├── build-orchestrator.ts │ │ │ │ │ ├── parallel-executor.ts │ │ │ │ │ ├── pause-handler.ts │ │ │ │ │ ├── qa-loop.ts │ │ │ │ │ ├── qa-reports.ts │ │ │ │ │ ├── recovery-manager.ts │ │ │ │ │ ├── spec-orchestrator.ts │ │ │ │ │ ├── subagent-executor.ts │ │ │ │ │ └── subtask-iterator.ts │ │ │ │ ├── project/ │ │ │ │ │ ├── analyzer.ts │ │ │ │ │ ├── command-registry.ts │ │ │ │ │ ├── framework-detector.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── project-indexer.ts │ │ │ │ │ ├── stack-detector.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── prompts/ │ │ │ │ │ ├── prompt-loader.ts │ │ │ │ │ ├── subtask-prompt-generator.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── providers/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── factory.test.ts │ │ │ │ │ │ └── registry.test.ts │ │ │ │ │ ├── factory.ts │ │ │ │ │ ├── oauth-fetch.ts │ │ │ │ │ ├── registry.ts │ │ │ │ │ ├── transforms.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── runners/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── changelog.test.ts │ │ │ │ │ │ ├── commit-message.test.ts │ │ │ │ │ │ ├── ideation.test.ts │ │ │ │ │ │ ├── insight-extractor.test.ts │ │ │ │ │ │ ├── insights.test.ts │ │ │ │ │ │ ├── merge-resolver.test.ts │ │ │ │ │ │ └── roadmap.test.ts │ │ │ │ │ ├── changelog.ts │ │ │ │ │ ├── commit-message.ts │ │ │ │ │ ├── github/ │ │ │ │ │ │ ├── batch-processor.ts │ │ │ │ │ │ ├── bot-detector.ts │ │ │ │ │ │ ├── duplicate-detector.ts │ │ │ │ │ │ ├── parallel-followup.ts │ │ │ │ │ │ ├── parallel-orchestrator.ts │ │ │ │ │ │ ├── pr-creator.ts │ │ │ │ │ │ ├── pr-review-engine.ts │ │ │ │ │ │ ├── rate-limiter.ts │ │ │ │ │ │ └── triage-engine.ts │ │ │ │ │ ├── gitlab/ │ │ │ │ │ │ └── mr-review-engine.ts │ │ │ │ │ ├── ideation.ts │ │ │ │ │ ├── insight-extractor.ts │ │ │ │ │ ├── insights.ts │ │ │ │ │ ├── merge-resolver.ts │ │ │ │ │ └── roadmap.ts │ │ │ │ ├── schema/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── implementation-plan.test.ts │ │ │ │ │ │ └── structured-output.test.ts │ │ │ │ │ ├── complexity-assessment.ts │ │ │ │ │ ├── implementation-plan.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── insight-extractor.ts │ │ │ │ │ ├── output/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── output-schemas.test.ts │ │ │ │ │ │ ├── complexity-assessment.output.ts │ │ │ │ │ │ ├── implementation-plan.output.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── insight-extractor.output.ts │ │ │ │ │ │ ├── pr-review.output.ts │ │ │ │ │ │ ├── qa-signoff.output.ts │ │ │ │ │ │ └── triage.output.ts │ │ │ │ │ ├── pr-review.ts │ │ │ │ │ ├── qa-signoff.ts │ │ │ │ │ ├── structured-output.ts │ │ │ │ │ └── triage.ts │ │ │ │ ├── security/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── bash-validator.test.ts │ │ │ │ │ │ ├── command-parser.test.ts │ │ │ │ │ │ └── path-containment.test.ts │ │ │ │ │ ├── bash-validator.ts │ │ │ │ │ ├── command-parser.ts │ │ │ │ │ ├── denylist.ts │ │ │ │ │ ├── path-containment.ts │ │ │ │ │ ├── secret-scanner.ts │ │ │ │ │ ├── security-profile.ts │ │ │ │ │ ├── tool-input-validator.ts │ │ │ │ │ └── validators/ │ │ │ │ │ ├── database-validators.ts │ │ │ │ │ ├── filesystem-validators.ts │ │ │ │ │ ├── git-validators.ts │ │ │ │ │ ├── process-validators.ts │ │ │ │ │ └── shell-validators.ts │ │ │ │ ├── session/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── error-classifier.test.ts │ │ │ │ │ │ ├── progress-tracker.test.ts │ │ │ │ │ │ ├── runner.test.ts │ │ │ │ │ │ └── stream-handler.test.ts │ │ │ │ │ ├── continuation.ts │ │ │ │ │ ├── error-classifier.ts │ │ │ │ │ ├── progress-tracker.ts │ │ │ │ │ ├── runner.ts │ │ │ │ │ ├── stream-handler.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── spec/ │ │ │ │ │ ├── conversation-compactor.ts │ │ │ │ │ └── spec-validator.ts │ │ │ │ ├── tools/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── define.test.ts │ │ │ │ │ │ └── registry.test.ts │ │ │ │ │ ├── auto-claude/ │ │ │ │ │ │ ├── get-build-progress.ts │ │ │ │ │ │ ├── get-session-context.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── record-discovery.ts │ │ │ │ │ │ ├── record-gotcha.ts │ │ │ │ │ │ ├── update-qa-status.ts │ │ │ │ │ │ └── update-subtask-status.ts │ │ │ │ │ ├── build-registry.ts │ │ │ │ │ ├── builtin/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── bash.test.ts │ │ │ │ │ │ │ ├── edit.test.ts │ │ │ │ │ │ │ ├── glob.test.ts │ │ │ │ │ │ │ ├── grep.test.ts │ │ │ │ │ │ │ ├── read.test.ts │ │ │ │ │ │ │ ├── spawn-subagent.test.ts │ │ │ │ │ │ │ ├── web-fetch.test.ts │ │ │ │ │ │ │ ├── web-search.test.ts │ │ │ │ │ │ │ └── write.test.ts │ │ │ │ │ │ ├── bash.ts │ │ │ │ │ │ ├── edit.ts │ │ │ │ │ │ ├── glob.ts │ │ │ │ │ │ ├── grep.ts │ │ │ │ │ │ ├── read.ts │ │ │ │ │ │ ├── spawn-subagent.ts │ │ │ │ │ │ ├── web-fetch.ts │ │ │ │ │ │ ├── web-search.ts │ │ │ │ │ │ └── write.ts │ │ │ │ │ ├── define.ts │ │ │ │ │ ├── providers/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── jina-browse.test.ts │ │ │ │ │ │ │ ├── serper-search.test.ts │ │ │ │ │ │ │ └── tavily-search.test.ts │ │ │ │ │ │ ├── fetch-browse.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── jina-browse.ts │ │ │ │ │ │ ├── serper-search.ts │ │ │ │ │ │ ├── tavily-search.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── registry.ts │ │ │ │ │ ├── truncation.ts │ │ │ │ │ └── types.ts │ │ │ │ └── worktree/ │ │ │ │ ├── index.ts │ │ │ │ └── worktree-manager.ts │ │ │ ├── api-validation-service.ts │ │ │ ├── app-language.ts │ │ │ ├── app-logger.ts │ │ │ ├── app-updater.ts │ │ │ ├── changelog/ │ │ │ │ ├── README.md │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── changelog-service.integration.test.ts │ │ │ │ │ └── generator.timeout.test.ts │ │ │ │ ├── changelog-service.ts │ │ │ │ ├── formatter.ts │ │ │ │ ├── generator.ts │ │ │ │ ├── git-integration.ts │ │ │ │ ├── index.ts │ │ │ │ ├── parser.ts │ │ │ │ ├── types.ts │ │ │ │ └── version-suggester.ts │ │ │ ├── changelog-service.ts │ │ │ ├── claude-code-settings/ │ │ │ │ ├── SECURITY.md │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── env-sanitizer.test.ts │ │ │ │ │ ├── index.test.ts │ │ │ │ │ ├── merger.test.ts │ │ │ │ │ └── reader.test.ts │ │ │ │ ├── env-sanitizer.ts │ │ │ │ ├── index.ts │ │ │ │ ├── merger.ts │ │ │ │ ├── reader.ts │ │ │ │ └── types.ts │ │ │ ├── claude-profile/ │ │ │ │ ├── README.md │ │ │ │ ├── __tests__/ │ │ │ │ │ └── operation-registry.test.ts │ │ │ │ ├── codex-usage-fetcher.ts │ │ │ │ ├── credential-utils.test.ts │ │ │ │ ├── credential-utils.ts │ │ │ │ ├── index.ts │ │ │ │ ├── operation-registry.ts │ │ │ │ ├── profile-scorer.ts │ │ │ │ ├── profile-storage.ts │ │ │ │ ├── profile-utils.test.ts │ │ │ │ ├── profile-utils.ts │ │ │ │ ├── rate-limit-manager.ts │ │ │ │ ├── session-utils.ts │ │ │ │ ├── token-encryption.ts │ │ │ │ ├── token-refresh.test.ts │ │ │ │ ├── token-refresh.ts │ │ │ │ ├── types.ts │ │ │ │ ├── usage-monitor.test.ts │ │ │ │ ├── usage-monitor.ts │ │ │ │ └── usage-parser.ts │ │ │ ├── claude-profile-manager.ts │ │ │ ├── cli-tool-manager.ts │ │ │ ├── cli-utils.ts │ │ │ ├── config-paths.ts │ │ │ ├── env-utils.ts │ │ │ ├── file-watcher.ts │ │ │ ├── fs-utils.ts │ │ │ ├── index.ts │ │ │ ├── insights/ │ │ │ │ ├── README.md │ │ │ │ ├── REFACTORING_NOTES.md │ │ │ │ ├── config.ts │ │ │ │ ├── index.ts │ │ │ │ ├── insights-executor.ts │ │ │ │ ├── paths.ts │ │ │ │ ├── session-manager.ts │ │ │ │ └── session-storage.ts │ │ │ ├── insights-service.ts │ │ │ ├── integrations/ │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ ├── ipc-handlers/ │ │ │ │ ├── README.md │ │ │ │ ├── __tests__/ │ │ │ │ │ └── settled-state-guard.test.ts │ │ │ │ ├── agent-events-handlers.ts │ │ │ │ ├── app-update-handlers.ts │ │ │ │ ├── changelog-handlers.ts │ │ │ │ ├── changelog-handlers.ts.bk │ │ │ │ ├── claude-code-handlers.ts │ │ │ │ ├── codex-auth-handlers.ts │ │ │ │ ├── context/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── memory-data-handlers.ts │ │ │ │ │ ├── memory-service-factory.ts │ │ │ │ │ ├── memory-status-handlers.ts │ │ │ │ │ ├── project-context-handlers.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── context-handlers.ts │ │ │ │ ├── debug-handlers.ts │ │ │ │ ├── env-handlers.ts │ │ │ │ ├── feature-settings-helper.ts │ │ │ │ ├── file-handlers.ts │ │ │ │ ├── github/ │ │ │ │ │ ├── ARCHITECTURE.md │ │ │ │ │ ├── README.md │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── oauth-handlers.spec.ts │ │ │ │ │ │ └── runner-env-handlers.test.ts │ │ │ │ │ ├── autofix-handlers.ts │ │ │ │ │ ├── import-handlers.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── investigation-handlers.ts │ │ │ │ │ ├── issue-handlers.ts │ │ │ │ │ ├── oauth-handlers.ts │ │ │ │ │ ├── pr-handlers.ts │ │ │ │ │ ├── release-handlers.ts │ │ │ │ │ ├── repository-handlers.ts │ │ │ │ │ ├── spec-utils.ts │ │ │ │ │ ├── triage-handlers.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── ipc-communicator.ts │ │ │ │ │ │ ├── logger.ts │ │ │ │ │ │ └── project-middleware.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── github-handlers.ts │ │ │ │ ├── gitlab/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── autofix-handlers.test.ts │ │ │ │ │ │ ├── issue-handlers.test.ts │ │ │ │ │ │ ├── merge-request-handlers.test.ts │ │ │ │ │ │ ├── mr-review-handlers.test.ts │ │ │ │ │ │ ├── oauth-handlers.test.ts │ │ │ │ │ │ └── spec-utils.test.ts │ │ │ │ │ ├── autofix-handlers.ts │ │ │ │ │ ├── import-handlers.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── investigation-handlers.ts │ │ │ │ │ ├── issue-handlers.ts │ │ │ │ │ ├── merge-request-handlers.ts │ │ │ │ │ ├── mr-review-handlers.ts │ │ │ │ │ ├── oauth-handlers.ts │ │ │ │ │ ├── release-handlers.ts │ │ │ │ │ ├── repository-handlers.ts │ │ │ │ │ ├── spec-utils.ts │ │ │ │ │ ├── triage-handlers.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── gitlab-handlers.ts │ │ │ │ ├── ideation/ │ │ │ │ │ ├── file-utils.ts │ │ │ │ │ ├── generation-handlers.ts │ │ │ │ │ ├── idea-manager.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── session-manager.ts │ │ │ │ │ ├── task-converter.ts │ │ │ │ │ ├── transformers.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── ideation-handlers.ts │ │ │ │ ├── index.ts │ │ │ │ ├── insights-handlers.ts │ │ │ │ ├── linear-handlers.ts │ │ │ │ ├── mcp-handlers.ts │ │ │ │ ├── memory-handlers.ts │ │ │ │ ├── profile-handlers.test.ts │ │ │ │ ├── profile-handlers.ts │ │ │ │ ├── project-handlers.ts │ │ │ │ ├── queue-routing-handlers.test.ts │ │ │ │ ├── queue-routing-handlers.ts │ │ │ │ ├── roadmap/ │ │ │ │ │ └── transformers.ts │ │ │ │ ├── roadmap-handlers.ts │ │ │ │ ├── screenshot-handlers.ts │ │ │ │ ├── sections/ │ │ │ │ │ ├── context-roadmap-section.txt │ │ │ │ │ ├── context_extracted.txt │ │ │ │ │ ├── ideation-insights-section.txt │ │ │ │ │ ├── integration-section.txt │ │ │ │ │ ├── roadmap_extracted.txt │ │ │ │ │ ├── task-section.txt │ │ │ │ │ ├── task_extracted.txt │ │ │ │ │ ├── terminal-section.txt │ │ │ │ │ └── terminal_extracted.txt │ │ │ │ ├── settings-handlers.ts │ │ │ │ ├── shared/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── sanitize.test.ts │ │ │ │ │ ├── label-utils.ts │ │ │ │ │ └── sanitize.ts │ │ │ │ ├── task/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── REFACTORING_SUMMARY.md │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ ├── find-task-and-project.test.ts │ │ │ │ │ │ ├── logs-integration.test.ts │ │ │ │ │ │ └── worktree-branch-validation.test.ts │ │ │ │ │ ├── archive-handlers.ts │ │ │ │ │ ├── crud-handlers.ts │ │ │ │ │ ├── execution-handlers.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── logs-handlers.ts │ │ │ │ │ ├── plan-file-utils.ts │ │ │ │ │ ├── shared.ts │ │ │ │ │ └── worktree-handlers.ts │ │ │ │ ├── task-handlers.ts │ │ │ │ ├── terminal/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── worktree-handlers.ts │ │ │ │ ├── terminal-handlers.ts │ │ │ │ └── utils.ts │ │ │ ├── ipc-setup.ts │ │ │ ├── log-service.ts │ │ │ ├── notification-service.ts │ │ │ ├── platform/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── platform.test.ts │ │ │ │ │ └── process-kill.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── paths.ts │ │ │ │ └── types.ts │ │ │ ├── pr-review-state-manager.ts │ │ │ ├── project-initializer.ts │ │ │ ├── project-store.ts │ │ │ ├── rate-limit-detector.ts │ │ │ ├── release-service.ts │ │ │ ├── sentry.ts │ │ │ ├── services/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── pr-status-poller.integration.test.ts │ │ │ │ │ └── pr-status-poller.test.ts │ │ │ │ ├── pr-status-poller.ts │ │ │ │ ├── profile/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── profile-manager.test.ts │ │ │ │ │ ├── profile-manager.ts │ │ │ │ │ ├── profile-service.test.ts │ │ │ │ │ └── profile-service.ts │ │ │ │ ├── profile-service.test.ts │ │ │ │ ├── profile-service.ts │ │ │ │ ├── sdk-session-recovery-coordinator.test.ts │ │ │ │ └── sdk-session-recovery-coordinator.ts │ │ │ ├── settings-utils.ts │ │ │ ├── task-log-service.ts │ │ │ ├── task-state-manager.ts │ │ │ ├── terminal/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── cli-integration-handler.test.ts │ │ │ │ │ └── output-parser.test.ts │ │ │ │ ├── cli-integration-handler.ts │ │ │ │ ├── index.ts │ │ │ │ ├── output-parser.ts │ │ │ │ ├── pty-daemon-client.ts │ │ │ │ ├── pty-daemon.ts │ │ │ │ ├── pty-manager.ts │ │ │ │ ├── session-handler.ts │ │ │ │ ├── session-persistence.ts │ │ │ │ ├── terminal-event-handler.ts │ │ │ │ ├── terminal-lifecycle.ts │ │ │ │ ├── terminal-manager.ts │ │ │ │ └── types.ts │ │ │ ├── terminal-manager.ts │ │ │ ├── terminal-name-generator.ts │ │ │ ├── terminal-session-store.ts │ │ │ ├── title-generator.ts │ │ │ ├── updater/ │ │ │ │ ├── path-resolver.ts │ │ │ │ └── version-manager.ts │ │ │ ├── utils/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── atomic-file-retry.test.ts │ │ │ │ │ ├── atomic-file.test.ts │ │ │ │ │ ├── debounce.test.ts │ │ │ │ │ ├── git-isolation.test.ts │ │ │ │ │ ├── json-repair.test.ts │ │ │ │ │ └── windows-paths.test.ts │ │ │ │ ├── atomic-file.ts │ │ │ │ ├── config-path-validator.ts │ │ │ │ ├── debounce.ts │ │ │ │ ├── file-lock.ts │ │ │ │ ├── git-isolation.ts │ │ │ │ ├── homebrew-python.ts │ │ │ │ ├── json-repair.ts │ │ │ │ ├── path-helpers.ts │ │ │ │ ├── profile-manager.test.ts │ │ │ │ ├── profile-manager.ts │ │ │ │ ├── roadmap-utils.ts │ │ │ │ ├── spec-number-lock.ts │ │ │ │ ├── spec-path-helpers.ts │ │ │ │ ├── type-guards.ts │ │ │ │ ├── windows-paths.ts │ │ │ │ └── worktree-cleanup.ts │ │ │ └── worktree-paths.ts │ │ ├── preload/ │ │ │ ├── api/ │ │ │ │ ├── agent-api.ts │ │ │ │ ├── app-update-api.ts │ │ │ │ ├── file-api.ts │ │ │ │ ├── index.ts │ │ │ │ ├── modules/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── changelog-api.ts │ │ │ │ │ ├── claude-code-api.ts │ │ │ │ │ ├── debug-api.ts │ │ │ │ │ ├── github-api.ts │ │ │ │ │ ├── gitlab-api.ts │ │ │ │ │ ├── ideation-api.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── insights-api.ts │ │ │ │ │ ├── ipc-utils.ts │ │ │ │ │ ├── linear-api.ts │ │ │ │ │ ├── mcp-api.ts │ │ │ │ │ ├── roadmap-api.ts │ │ │ │ │ └── shell-api.ts │ │ │ │ ├── profile-api.ts │ │ │ │ ├── project-api.ts │ │ │ │ ├── queue-api.ts │ │ │ │ ├── screenshot-api.ts │ │ │ │ ├── settings-api.ts │ │ │ │ ├── task-api.ts │ │ │ │ └── terminal-api.ts │ │ │ └── index.ts │ │ ├── renderer/ │ │ │ ├── App.tsx │ │ │ ├── __tests__/ │ │ │ │ ├── OAuthStep.test.tsx │ │ │ │ ├── TaskEditDialog.test.ts │ │ │ │ ├── project-store-tabs.test.ts │ │ │ │ ├── roadmap-store.test.ts │ │ │ │ ├── task-order.test.ts │ │ │ │ └── task-store.test.ts │ │ │ ├── components/ │ │ │ │ ├── AddCompetitorDialog.tsx │ │ │ │ ├── AddFeatureDialog.tsx │ │ │ │ ├── AddProjectModal.tsx │ │ │ │ ├── AgentProfileSelector.tsx │ │ │ │ ├── AgentProfiles.tsx │ │ │ │ ├── AgentTools.tsx │ │ │ │ ├── AppSettings.tsx │ │ │ │ ├── AppUpdateNotification.tsx │ │ │ │ ├── AuthFailureModal.tsx │ │ │ │ ├── AuthStatusIndicator.test.tsx │ │ │ │ ├── AuthStatusIndicator.tsx │ │ │ │ ├── BulkPRDialog.tsx │ │ │ │ ├── Changelog.tsx │ │ │ │ ├── ChatHistorySidebar.tsx │ │ │ │ ├── ClaudeCodeStatusBadge.tsx │ │ │ │ ├── CompetitorAnalysisDialog.tsx │ │ │ │ ├── CompetitorAnalysisViewer.tsx │ │ │ │ ├── Context.tsx │ │ │ │ ├── CustomMcpDialog.tsx │ │ │ │ ├── CustomModelModal.tsx │ │ │ │ ├── ExistingCompetitorAnalysisDialog.tsx │ │ │ │ ├── FileAutocomplete.tsx │ │ │ │ ├── FileExplorerPanel.tsx │ │ │ │ ├── FileTree.tsx │ │ │ │ ├── FileTreeItem.tsx │ │ │ │ ├── GitHubIssues.tsx │ │ │ │ ├── GitHubSetupModal.tsx │ │ │ │ ├── GitLabIssues.tsx │ │ │ │ ├── GitSetupModal.tsx │ │ │ │ ├── GlobalDownloadIndicator.tsx │ │ │ │ ├── Ideation.tsx │ │ │ │ ├── ImageUpload.tsx │ │ │ │ ├── Insights.tsx │ │ │ │ ├── InsightsModelSelector.tsx │ │ │ │ ├── KanbanBoard.tsx │ │ │ │ ├── LinearTaskImportModal.tsx │ │ │ │ ├── PhaseProgressIndicator.tsx │ │ │ │ ├── ProactiveSwapListener.tsx │ │ │ │ ├── ProfileBadge.test.tsx │ │ │ │ ├── ProfileBadge.tsx │ │ │ │ ├── ProjectTabBar.tsx │ │ │ │ ├── QueueSettingsModal.tsx │ │ │ │ ├── RateLimitIndicator.tsx │ │ │ │ ├── RateLimitModal.tsx │ │ │ │ ├── ReferencedFilesSection.tsx │ │ │ │ ├── Roadmap.tsx │ │ │ │ ├── RoadmapGenerationProgress.tsx │ │ │ │ ├── RoadmapKanbanView.tsx │ │ │ │ ├── SDKRateLimitModal.tsx │ │ │ │ ├── ScreenshotCapture.tsx │ │ │ │ ├── Sidebar.tsx │ │ │ │ ├── SortableFeatureCard.tsx │ │ │ │ ├── SortableProjectTab.tsx │ │ │ │ ├── SortableTaskCard.tsx │ │ │ │ ├── SortableTerminalWrapper.tsx │ │ │ │ ├── TaskCard.tsx │ │ │ │ ├── TaskCreationWizard.tsx │ │ │ │ ├── TaskEditDialog.tsx │ │ │ │ ├── TaskFileExplorerDrawer.tsx │ │ │ │ ├── Terminal.tsx │ │ │ │ ├── TerminalGrid.tsx │ │ │ │ ├── UpdateBanner.tsx │ │ │ │ ├── UsageIndicator.test.tsx │ │ │ │ ├── UsageIndicator.tsx │ │ │ │ ├── VersionWarningModal.tsx │ │ │ │ ├── WelcomeScreen.tsx │ │ │ │ ├── WorktreeCleanupDialog.tsx │ │ │ │ ├── Worktrees.tsx │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── AgentTools.test.tsx │ │ │ │ │ ├── OllamaModelSelector.progress.test.ts │ │ │ │ │ ├── ProjectTabBar.test.tsx │ │ │ │ │ ├── RoadmapGenerationProgress.test.tsx │ │ │ │ │ ├── SortableProjectTab.test.tsx │ │ │ │ │ └── Terminal.drop.test.tsx │ │ │ │ ├── changelog/ │ │ │ │ │ ├── ArchiveTasksCard.tsx │ │ │ │ │ ├── Changelog.tsx │ │ │ │ │ ├── ChangelogDetails.tsx │ │ │ │ │ ├── ChangelogEntry.tsx │ │ │ │ │ ├── ChangelogFilters.tsx │ │ │ │ │ ├── ChangelogHeader.tsx │ │ │ │ │ ├── ChangelogList.tsx │ │ │ │ │ ├── ConfigurationPanel.tsx │ │ │ │ │ ├── GitHubReleaseCard.tsx │ │ │ │ │ ├── PreviewPanel.tsx │ │ │ │ │ ├── REFACTORING_SUMMARY.md │ │ │ │ │ ├── Step3SuccessScreen.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── useChangelog.ts │ │ │ │ │ │ └── useImageUpload.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── context/ │ │ │ │ │ ├── Context.tsx │ │ │ │ │ ├── InfoItem.tsx │ │ │ │ │ ├── MemoriesTab.tsx │ │ │ │ │ ├── MemoryCard.tsx │ │ │ │ │ ├── PRReviewCard.tsx │ │ │ │ │ ├── ProjectIndexTab.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── ServiceCard.tsx │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── service-sections/ │ │ │ │ │ │ ├── APIRoutesSection.tsx │ │ │ │ │ │ ├── DatabaseSection.tsx │ │ │ │ │ │ ├── DependenciesSection.tsx │ │ │ │ │ │ ├── EnvironmentSection.tsx │ │ │ │ │ │ ├── ExternalServicesSection.tsx │ │ │ │ │ │ ├── MonitoringSection.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── github-issues/ │ │ │ │ │ ├── ARCHITECTURE.md │ │ │ │ │ ├── README.md │ │ │ │ │ ├── REFACTORING_SUMMARY.md │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── AutoFixButton.tsx │ │ │ │ │ │ ├── BatchReviewWizard.tsx │ │ │ │ │ │ ├── EmptyStates.tsx │ │ │ │ │ │ ├── GitHubErrorDisplay.tsx │ │ │ │ │ │ ├── InvestigationDialog.tsx │ │ │ │ │ │ ├── IssueDetail.tsx │ │ │ │ │ │ ├── IssueList.tsx │ │ │ │ │ │ ├── IssueListHeader.tsx │ │ │ │ │ │ ├── IssueListItem.tsx │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── GitHubErrorDisplay.test.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── useAnalyzePreview.ts │ │ │ │ │ │ ├── useAutoFix.ts │ │ │ │ │ │ ├── useGitHubInvestigation.ts │ │ │ │ │ │ ├── useGitHubIssues.ts │ │ │ │ │ │ └── useIssueFiltering.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── github-error-parser.test.ts │ │ │ │ │ ├── github-error-parser.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── github-prs/ │ │ │ │ │ ├── GitHubPRs.tsx │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── CollapsibleCard.tsx │ │ │ │ │ │ ├── FindingItem.tsx │ │ │ │ │ │ ├── FindingsSummary.tsx │ │ │ │ │ │ ├── PRDetail.tsx │ │ │ │ │ │ ├── PRFilterBar.tsx │ │ │ │ │ │ ├── PRHeader.tsx │ │ │ │ │ │ ├── PRList.tsx │ │ │ │ │ │ ├── PRLogs.tsx │ │ │ │ │ │ ├── ReviewFindings.tsx │ │ │ │ │ │ ├── ReviewStatusTree.tsx │ │ │ │ │ │ ├── SeverityGroupHeader.tsx │ │ │ │ │ │ ├── StatusIndicator.tsx │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── PRDetail.cleanReview.test.ts │ │ │ │ │ │ │ ├── PRDetail.integration.test.tsx │ │ │ │ │ │ │ ├── PRDetail.test.tsx │ │ │ │ │ │ │ └── ReviewStatusTree.test.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── constants/ │ │ │ │ │ │ └── severity-config.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ └── useGitHubPRs.test.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── useFindingSelection.ts │ │ │ │ │ │ ├── useGitHubPRs.ts │ │ │ │ │ │ └── usePRFiltering.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── utils/ │ │ │ │ │ └── formatDate.ts │ │ │ │ ├── gitlab-issues/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── EmptyStates.tsx │ │ │ │ │ │ ├── InvestigationDialog.tsx │ │ │ │ │ │ ├── IssueDetail.tsx │ │ │ │ │ │ ├── IssueList.tsx │ │ │ │ │ │ ├── IssueListHeader.tsx │ │ │ │ │ │ ├── IssueListItem.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── useGitLabInvestigation.ts │ │ │ │ │ │ ├── useGitLabIssues.ts │ │ │ │ │ │ └── useIssueFiltering.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── utils/ │ │ │ │ │ └── index.ts │ │ │ │ ├── gitlab-merge-requests/ │ │ │ │ │ ├── GitLabMergeRequests.tsx │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── CreateMergeRequestDialog.tsx │ │ │ │ │ │ ├── FindingItem.tsx │ │ │ │ │ │ ├── FindingsSummary.tsx │ │ │ │ │ │ ├── MRDetail.tsx │ │ │ │ │ │ ├── MergeRequestItem.tsx │ │ │ │ │ │ ├── MergeRequestList.tsx │ │ │ │ │ │ ├── ReviewFindings.tsx │ │ │ │ │ │ ├── SeverityGroupHeader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── constants/ │ │ │ │ │ │ └── severity-config.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── useFindingSelection.ts │ │ │ │ │ │ └── useGitLabMRs.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── ideation/ │ │ │ │ │ ├── GenerationProgressScreen.tsx │ │ │ │ │ ├── IdeaCard.tsx │ │ │ │ │ ├── IdeaDetailPanel.tsx │ │ │ │ │ ├── IdeaSkeletonCard.tsx │ │ │ │ │ ├── Ideation.tsx │ │ │ │ │ ├── IdeationDialogs.tsx │ │ │ │ │ ├── IdeationEmptyState.tsx │ │ │ │ │ ├── IdeationFilters.tsx │ │ │ │ │ ├── IdeationHeader.tsx │ │ │ │ │ ├── TypeIcon.tsx │ │ │ │ │ ├── TypeStateIcon.tsx │ │ │ │ │ ├── constants.ts │ │ │ │ │ ├── details/ │ │ │ │ │ │ ├── CodeImprovementDetails.tsx │ │ │ │ │ │ ├── CodeQualityDetails.tsx │ │ │ │ │ │ ├── DocumentationGapDetails.tsx │ │ │ │ │ │ ├── PerformanceOptimizationDetails.tsx │ │ │ │ │ │ ├── SecurityHardeningDetails.tsx │ │ │ │ │ │ └── UIUXDetails.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── useIdeation.test.ts │ │ │ │ │ │ │ └── useIdeationAuth.test.ts │ │ │ │ │ │ ├── useIdeation.ts │ │ │ │ │ │ └── useIdeationAuth.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── type-guards.ts │ │ │ │ ├── index.ts │ │ │ │ ├── linear-import/ │ │ │ │ │ ├── LinearTaskImportModalRefactored.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── REFACTORING_SUMMARY.md │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── ErrorBanner.tsx │ │ │ │ │ │ ├── ImportSuccessBanner.tsx │ │ │ │ │ │ ├── IssueCard.tsx │ │ │ │ │ │ ├── IssueList.tsx │ │ │ │ │ │ ├── SearchAndFilterBar.tsx │ │ │ │ │ │ ├── SelectionControls.tsx │ │ │ │ │ │ ├── TeamProjectSelector.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── useIssueFiltering.ts │ │ │ │ │ │ ├── useIssueSelection.ts │ │ │ │ │ │ ├── useLinearImport.ts │ │ │ │ │ │ ├── useLinearImportModal.ts │ │ │ │ │ │ ├── useLinearIssues.ts │ │ │ │ │ │ ├── useLinearProjects.ts │ │ │ │ │ │ └── useLinearTeams.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── onboarding/ │ │ │ │ │ ├── AccountsStep.tsx │ │ │ │ │ ├── AuthChoiceStep.test.tsx │ │ │ │ │ ├── AuthChoiceStep.tsx │ │ │ │ │ ├── ClaudeCodeStep.tsx │ │ │ │ │ ├── CompletionStep.tsx │ │ │ │ │ ├── DevToolsStep.tsx │ │ │ │ │ ├── FirstSpecStep.tsx │ │ │ │ │ ├── GraphitiStep.tsx │ │ │ │ │ ├── MemoryStep.tsx │ │ │ │ │ ├── OAuthStep.tsx │ │ │ │ │ ├── OllamaModelSelector.tsx │ │ │ │ │ ├── OnboardingWizard.test.tsx │ │ │ │ │ ├── OnboardingWizard.tsx │ │ │ │ │ ├── PrivacyStep.tsx │ │ │ │ │ ├── WelcomeStep.tsx │ │ │ │ │ ├── WizardProgress.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── project-settings/ │ │ │ │ │ ├── AgentConfigSection.tsx │ │ │ │ │ ├── AutoBuildIntegration.tsx │ │ │ │ │ ├── ClaudeOAuthFlow.tsx │ │ │ │ │ ├── CollapsibleSection.tsx │ │ │ │ │ ├── ConnectionStatus.tsx │ │ │ │ │ ├── GeneralSettings.tsx │ │ │ │ │ ├── GitHubIntegrationSection.tsx │ │ │ │ │ ├── GitHubOAuthFlow.tsx │ │ │ │ │ ├── IntegrationSettings.tsx │ │ │ │ │ ├── LinearIntegrationSection.tsx │ │ │ │ │ ├── MemoryBackendSection.tsx │ │ │ │ │ ├── NotificationsSection.tsx │ │ │ │ │ ├── PasswordInput.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── SecuritySettings.tsx │ │ │ │ │ ├── StatusBadge.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── useProjectSettings.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── roadmap/ │ │ │ │ │ ├── FeatureCard.tsx │ │ │ │ │ ├── FeatureDetailPanel.tsx │ │ │ │ │ ├── PhaseCard.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── RoadmapEmptyState.tsx │ │ │ │ │ ├── RoadmapHeader.tsx │ │ │ │ │ ├── RoadmapTabs.tsx │ │ │ │ │ ├── TaskOutcomeBadge.tsx │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── settings/ │ │ │ │ │ ├── AccountPriorityList.tsx │ │ │ │ │ ├── AccountSettings.tsx │ │ │ │ │ ├── AddAccountDialog.tsx │ │ │ │ │ ├── AdvancedSettings.tsx │ │ │ │ │ ├── AgentProfileSettings.tsx │ │ │ │ │ ├── AppSettings.tsx │ │ │ │ │ ├── AuthTerminal.tsx │ │ │ │ │ ├── CrossProviderTabContent.tsx │ │ │ │ │ ├── DebugSettings.tsx │ │ │ │ │ ├── DevToolsSettings.tsx │ │ │ │ │ ├── DisplaySettings.tsx │ │ │ │ │ ├── FeatureModelSettings.tsx │ │ │ │ │ ├── GeneralSettings.tsx │ │ │ │ │ ├── LanguageSettings.tsx │ │ │ │ │ ├── MixedFeatureEditor.tsx │ │ │ │ │ ├── MixedPhaseEditor.tsx │ │ │ │ │ ├── ModelSearchableSelect.test.tsx │ │ │ │ │ ├── ModelSearchableSelect.tsx │ │ │ │ │ ├── MultiProviderModelSelect.tsx │ │ │ │ │ ├── OllamaConnectionPanel.tsx │ │ │ │ │ ├── OllamaModelManager.tsx │ │ │ │ │ ├── ProfileEditDialog.test.tsx │ │ │ │ │ ├── ProfileEditDialog.tsx │ │ │ │ │ ├── ProfileList.test.tsx │ │ │ │ │ ├── ProfileList.tsx │ │ │ │ │ ├── ProjectSelector.tsx │ │ │ │ │ ├── ProjectSettingsContent.tsx │ │ │ │ │ ├── ProviderAccountCard.tsx │ │ │ │ │ ├── ProviderAccountsList.tsx │ │ │ │ │ ├── ProviderAgentTabs.tsx │ │ │ │ │ ├── ProviderModelOverrides.tsx │ │ │ │ │ ├── ProviderSection.tsx │ │ │ │ │ ├── ProviderSettings.tsx │ │ │ │ │ ├── ProviderTabBar.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── REFACTORING_SUMMARY.md │ │ │ │ │ ├── SettingsSection.tsx │ │ │ │ │ ├── ThemeSelector.tsx │ │ │ │ │ ├── ThemeSettings.tsx │ │ │ │ │ ├── ThinkingLevelSelect.tsx │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── DisplaySettings.test.tsx │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── EmptyProjectState.tsx │ │ │ │ │ │ ├── ErrorDisplay.tsx │ │ │ │ │ │ ├── InitializationGuard.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── useSettings.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── integrations/ │ │ │ │ │ │ ├── GitHubIntegration.tsx │ │ │ │ │ │ ├── GitLabIntegration.tsx │ │ │ │ │ │ ├── LinearIntegration.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── sections/ │ │ │ │ │ │ ├── SectionRouter.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── terminal-font-settings/ │ │ │ │ │ │ ├── CursorConfigPanel.tsx │ │ │ │ │ │ ├── FontConfigPanel.tsx │ │ │ │ │ │ ├── LivePreviewTerminal.tsx │ │ │ │ │ │ ├── PerformanceConfigPanel.tsx │ │ │ │ │ │ ├── PresetsPanel.tsx │ │ │ │ │ │ ├── TerminalFontSettings.tsx │ │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ │ ├── FontConfigPanel.test.tsx │ │ │ │ │ │ │ ├── PresetsPanel.test.tsx │ │ │ │ │ │ │ └── TerminalFontSettings.test.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── utils/ │ │ │ │ │ ├── hookProxyFactory.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── shared/ │ │ │ │ │ └── MemoryConfigPanel.tsx │ │ │ │ ├── task-detail/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── TaskActions.tsx │ │ │ │ │ ├── TaskDetailModal.tsx │ │ │ │ │ ├── TaskFiles.tsx │ │ │ │ │ ├── TaskHeader.tsx │ │ │ │ │ ├── TaskLogs.tsx │ │ │ │ │ ├── TaskMetadata.tsx │ │ │ │ │ ├── TaskProgress.tsx │ │ │ │ │ ├── TaskReview.tsx │ │ │ │ │ ├── TaskSubtasks.tsx │ │ │ │ │ ├── TaskWarnings.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── useTaskDetail.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── task-review/ │ │ │ │ │ ├── ConflictDetailsDialog.tsx │ │ │ │ │ ├── CreatePRDialog.test.tsx │ │ │ │ │ ├── CreatePRDialog.tsx │ │ │ │ │ ├── DiffViewDialog.tsx │ │ │ │ │ ├── DiscardDialog.tsx │ │ │ │ │ ├── MergePreviewSummary.tsx │ │ │ │ │ ├── MergeProgressOverlay.tsx │ │ │ │ │ ├── QAFeedbackSection.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── StagedSuccessMessage.tsx │ │ │ │ │ ├── TerminalDropdown.tsx │ │ │ │ │ ├── WorkspaceMessages.tsx │ │ │ │ │ ├── WorkspaceStatus.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── utils.tsx │ │ │ │ ├── task-form/ │ │ │ │ │ ├── ClassificationFields.tsx │ │ │ │ │ ├── ImagePreviewModal.tsx │ │ │ │ │ ├── TaskFormFields.tsx │ │ │ │ │ ├── TaskModalLayout.tsx │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── useImageUpload.fileref.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── useImageUpload.ts │ │ │ │ ├── terminal/ │ │ │ │ │ ├── CreateWorktreeDialog.tsx │ │ │ │ │ ├── README.md │ │ │ │ │ ├── REFACTORING_SUMMARY.md │ │ │ │ │ ├── TaskSelector.tsx │ │ │ │ │ ├── TerminalHeader.tsx │ │ │ │ │ ├── TerminalTitle.tsx │ │ │ │ │ ├── WorktreeSelector.tsx │ │ │ │ │ ├── __tests__/ │ │ │ │ │ │ └── useXterm.test.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── useAutoNaming.ts │ │ │ │ │ ├── usePtyProcess.ts │ │ │ │ │ ├── useTerminalEvents.ts │ │ │ │ │ ├── useTerminalFileDrop.ts │ │ │ │ │ └── useXterm.ts │ │ │ │ ├── ui/ │ │ │ │ │ ├── alert-dialog.tsx │ │ │ │ │ ├── badge.tsx │ │ │ │ │ ├── button.tsx │ │ │ │ │ ├── card.tsx │ │ │ │ │ ├── checkbox.tsx │ │ │ │ │ ├── collapsible.tsx │ │ │ │ │ ├── combobox.tsx │ │ │ │ │ ├── dialog.tsx │ │ │ │ │ ├── dropdown-menu.tsx │ │ │ │ │ ├── error-boundary.tsx │ │ │ │ │ ├── full-screen-dialog.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── input.tsx │ │ │ │ │ ├── label.tsx │ │ │ │ │ ├── popover.tsx │ │ │ │ │ ├── progress.tsx │ │ │ │ │ ├── radio-group.tsx │ │ │ │ │ ├── resizable-panels.tsx │ │ │ │ │ ├── scroll-area.tsx │ │ │ │ │ ├── select.tsx │ │ │ │ │ ├── separator.tsx │ │ │ │ │ ├── switch.tsx │ │ │ │ │ ├── tabs.tsx │ │ │ │ │ ├── textarea.tsx │ │ │ │ │ ├── toast.tsx │ │ │ │ │ ├── toaster.tsx │ │ │ │ │ └── tooltip.tsx │ │ │ │ └── workspace/ │ │ │ │ └── AddWorkspaceModal.tsx │ │ │ ├── contexts/ │ │ │ │ ├── ViewStateContext.tsx │ │ │ │ └── __tests__/ │ │ │ │ └── ViewStateContext.test.tsx │ │ │ ├── hooks/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── useGlobalTerminalListeners.test.ts │ │ │ │ │ └── useVirtualizedTree.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── use-profile-swap-notifications.test.ts │ │ │ │ ├── use-profile-swap-notifications.ts │ │ │ │ ├── use-toast.ts │ │ │ │ ├── useActiveProvider.ts │ │ │ │ ├── useGlobalTerminalListeners.ts │ │ │ │ ├── useIpc.ts │ │ │ │ ├── useResolvedAgentSettings.ts │ │ │ │ ├── useTerminalProfileChange.ts │ │ │ │ └── useVirtualizedTree.ts │ │ │ ├── index.html │ │ │ ├── lib/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── os-detection.test.ts │ │ │ │ ├── branch-utils.tsx │ │ │ │ ├── browser-mock.ts │ │ │ │ ├── buffer-persistence.ts │ │ │ │ ├── debounce.ts │ │ │ │ ├── flow-controller.ts │ │ │ │ ├── font-discovery.ts │ │ │ │ ├── icons.ts │ │ │ │ ├── mocks/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── changelog-mock.ts │ │ │ │ │ ├── claude-profile-mock.ts │ │ │ │ │ ├── context-mock.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── infrastructure-mock.ts │ │ │ │ │ ├── insights-mock.ts │ │ │ │ │ ├── integration-mock.ts │ │ │ │ │ ├── mock-data.ts │ │ │ │ │ ├── project-mock.ts │ │ │ │ │ ├── roadmap-mock.ts │ │ │ │ │ ├── settings-mock.ts │ │ │ │ │ ├── task-mock.ts │ │ │ │ │ ├── terminal-mock.ts │ │ │ │ │ └── workspace-mock.ts │ │ │ │ ├── os-detection.ts │ │ │ │ ├── profile-utils.ts │ │ │ │ ├── scroll-controller.ts │ │ │ │ ├── sentry.ts │ │ │ │ ├── terminal-buffer-manager.ts │ │ │ │ ├── terminal-font-constants.ts │ │ │ │ ├── terminal-font-settings-verification.ts │ │ │ │ ├── terminal-theme.ts │ │ │ │ ├── utils.ts │ │ │ │ ├── webgl-context-manager.ts │ │ │ │ └── webgl-utils.ts │ │ │ ├── main.tsx │ │ │ ├── stores/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── task-store-persistence.test.ts │ │ │ │ │ ├── terminal-font-settings-store.test.ts │ │ │ │ │ └── terminal-store.callbacks.test.ts │ │ │ │ ├── auth-failure-store.ts │ │ │ │ ├── changelog-store.ts │ │ │ │ ├── claude-profile-store.ts │ │ │ │ ├── context-store.ts │ │ │ │ ├── download-store.ts │ │ │ │ ├── file-explorer-store.ts │ │ │ │ ├── github/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── investigation-store.ts │ │ │ │ │ ├── issues-store.ts │ │ │ │ │ ├── pr-review-store.ts │ │ │ │ │ └── sync-status-store.ts │ │ │ │ ├── gitlab/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── mr-review-store.ts │ │ │ │ ├── gitlab-store.ts │ │ │ │ ├── ideation-store.ts │ │ │ │ ├── insights-store.ts │ │ │ │ ├── kanban-settings-store.ts │ │ │ │ ├── project-env-store.ts │ │ │ │ ├── project-store.ts │ │ │ │ ├── rate-limit-store.ts │ │ │ │ ├── release-store.ts │ │ │ │ ├── roadmap-store.ts │ │ │ │ ├── settings-store.ts │ │ │ │ ├── task-store.ts │ │ │ │ ├── terminal-font-settings-store.ts │ │ │ │ └── terminal-store.ts │ │ │ └── styles/ │ │ │ └── globals.css │ │ ├── shared/ │ │ │ ├── __tests__/ │ │ │ │ └── progress.test.ts │ │ │ ├── constants/ │ │ │ │ ├── __tests__/ │ │ │ │ │ └── models.test.ts │ │ │ │ ├── api-profiles.ts │ │ │ │ ├── changelog.ts │ │ │ │ ├── config.ts │ │ │ │ ├── github.ts │ │ │ │ ├── i18n.ts │ │ │ │ ├── ideation.ts │ │ │ │ ├── index.ts │ │ │ │ ├── ipc.ts │ │ │ │ ├── models.ts │ │ │ │ ├── phase-protocol.ts │ │ │ │ ├── providers.ts │ │ │ │ ├── roadmap.ts │ │ │ │ ├── spellcheck.ts │ │ │ │ ├── task.ts │ │ │ │ └── themes.ts │ │ │ ├── constants.ts │ │ │ ├── i18n/ │ │ │ │ ├── index.ts │ │ │ │ └── locales/ │ │ │ │ ├── en/ │ │ │ │ │ ├── common.json │ │ │ │ │ ├── dialogs.json │ │ │ │ │ ├── errors.json │ │ │ │ │ ├── gitlab.json │ │ │ │ │ ├── navigation.json │ │ │ │ │ ├── onboarding.json │ │ │ │ │ ├── settings.json │ │ │ │ │ ├── taskReview.json │ │ │ │ │ ├── tasks.json │ │ │ │ │ ├── terminal.json │ │ │ │ │ └── welcome.json │ │ │ │ └── fr/ │ │ │ │ ├── common.json │ │ │ │ ├── dialogs.json │ │ │ │ ├── errors.json │ │ │ │ ├── gitlab.json │ │ │ │ ├── navigation.json │ │ │ │ ├── onboarding.json │ │ │ │ ├── settings.json │ │ │ │ ├── taskReview.json │ │ │ │ ├── tasks.json │ │ │ │ ├── terminal.json │ │ │ │ └── welcome.json │ │ │ ├── platform.cjs │ │ │ ├── platform.ts │ │ │ ├── progress.ts │ │ │ ├── state-machines/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── pr-review-machine.test.ts │ │ │ │ │ ├── pr-review-state-utils.test.ts │ │ │ │ │ ├── roadmap-feature-machine.test.ts │ │ │ │ │ ├── roadmap-generation-machine.test.ts │ │ │ │ │ ├── roadmap-state-utils.test.ts │ │ │ │ │ ├── task-machine.test.ts │ │ │ │ │ └── terminal-machine.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── pr-review-machine.ts │ │ │ │ ├── pr-review-state-utils.ts │ │ │ │ ├── roadmap-feature-machine.ts │ │ │ │ ├── roadmap-generation-machine.ts │ │ │ │ ├── roadmap-state-utils.ts │ │ │ │ ├── task-machine.ts │ │ │ │ ├── task-state-utils.ts │ │ │ │ └── terminal-machine.ts │ │ │ ├── types/ │ │ │ │ ├── agent.ts │ │ │ │ ├── app-update.ts │ │ │ │ ├── changelog.ts │ │ │ │ ├── cli.ts │ │ │ │ ├── common.ts │ │ │ │ ├── index.ts │ │ │ │ ├── insights.ts │ │ │ │ ├── integrations.ts │ │ │ │ ├── ipc.ts │ │ │ │ ├── kanban.ts │ │ │ │ ├── pr-status.ts │ │ │ │ ├── profile.ts │ │ │ │ ├── project.ts │ │ │ │ ├── provider-account.ts │ │ │ │ ├── roadmap.ts │ │ │ │ ├── screenshot.ts │ │ │ │ ├── settings.ts │ │ │ │ ├── task.ts │ │ │ │ ├── terminal-session.ts │ │ │ │ ├── terminal.ts │ │ │ │ └── unified-account.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ ├── __tests__/ │ │ │ │ ├── ansi-sanitizer.test.ts │ │ │ │ └── task-status.test.ts │ │ │ ├── ansi-sanitizer.ts │ │ │ ├── debug-logger.ts │ │ │ ├── format-time.ts │ │ │ ├── model-display.ts │ │ │ ├── provider-detection.test.ts │ │ │ ├── provider-detection.ts │ │ │ ├── sentry-privacy.ts │ │ │ ├── shell-escape.ts │ │ │ ├── task-status.ts │ │ │ └── unified-account.ts │ │ └── types/ │ │ └── sentry-electron.d.ts │ ├── tsconfig.json │ └── vitest.config.ts ├── card_data.txt ├── guides/ │ ├── CLI-USAGE.md │ ├── README.md │ ├── cross-project-projectid-tracking.md │ ├── linux.md │ ├── pr-1575-fixes.md │ └── windows-development.md ├── package.json ├── ruff.toml ├── run.py/ │ └── agent.py └── scripts/ ├── ai-pr-reviewer.md ├── bump-version.js ├── cleanup-version-branches.sh ├── update-readme.mjs ├── update-readme.test.mjs └── validate-release.js