Add Claude Code automations for developer workflow - #3192
Conversation
Add project-level Claude Code configuration to improve developer workflow with automated formatting, safety hooks, reusable skills, specialized agents, and shared MCP server config.
WalkthroughThe PR introduces Claude automation infrastructure with agent validators and development skills, adds development hooks for file validation and auto-formatting, configures an MCP server, upgrades dependencies with Bugsnag patches, enhances error reporting with integration tests, and implements an insecure Outlook connections feature across the state management and HTTP client layers. Changes
Sequence DiagramsequenceDiagram
participant UI as UI/Handler
participant Store as Redux Store
participant Reducer as Reducer
participant Sync as syncEventsWithRocketChatServer
participant Agent as createInsecureHttpsAgent
participant HTTP as Axios/HTTPS Client
UI->>Store: Dispatch APP_SETTINGS_LOADED<br/>(allowInsecureOutlookConnections)
Store->>Reducer: Action + Payload
Reducer->>Store: Update state.allowInsecureOutlookConnections
UI->>Sync: Call with allowInsecure flag
Sync->>Agent: allowInsecure = true?
alt Insecure Mode
Agent->>Agent: Create Agent<br/>(rejectUnauthorized: false)
Agent->>HTTP: Return httpsAgent
else Secure Mode
HTTP->>HTTP: Use default HTTPS
end
Sync->>HTTP: listEventsFromRocketChatServer<br/>(httpsAgent)
Sync->>HTTP: createEventOnRocketChatServer<br/>(httpsAgent)
HTTP-->>UI: Response
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Adds project-level Claude Code configuration with hooks, skills, agents, and shared MCP server config. These automations improve developer workflow when using Claude Code on this repository.
What's Added
Hooks (
.claude/hooks/)Hooks run automatically during Claude Code sessions:
yarn.lock,package-lock.json, and.envfiles, preventing accidental modifications to lock files and secretstsc --noEmitasynchronously after TypeScript file edits, catching type errors immediately instead of at lint timeSkills (
.claude/skills/)Skills are reusable workflows invoked with
/skill-name:/electron-build— Builds and tests the Electron app using git worktrees for isolation. Encapsulates the full workflow: worktree creation,yarn install, lint, test, build, platform packaging, and cleanup. Includes workspace build withdist/distcleanup/release-notes— Generates categorized release notes from git commit history between tags. Parses conventional commit prefixes (feat:,fix:, etc.) into categories and detects alpha/beta/stable version context/i18n-audit— Audits translation completeness across all 22 language files against the English reference. Reports missing keys, extra keys, and coverage percentage per language/new-ipc-channel— Scaffolds a new IPC channel acrosschannels.ts, the correct domainmain.ts, andrenderer.tswith proper TypeScript types. References the existing 71-channel patternAgents (
.claude/agents/)Agents are specialized reviewers that Claude can use during development:
process.getuid?.() ?? 1000), hardcoded path separators, platform-specific Electron APIs, and native module dependenciesMCP Config (
.mcp.json)Project Settings (
.claude/settings.json)settings.local.jsonremains personal/unsharedTest plan
.tsfile and confirm Prettier auto-formats ityarn.lockand confirm it's blocked/i18n-auditand verify it produces a coverage report/release-notesand verify it generates categorized notesSummary by CodeRabbit
New Features
Improvements
Chores