codex-linux 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +10 -0
- package/.eslintrc.json +27 -0
- package/.github/workflows/ci.yml +156 -0
- package/.huskyrc +7 -0
- package/.lintstagedrc +13 -0
- package/.prettierrc +12 -0
- package/CLAUDE.md +163 -0
- package/DESIGN_SUPERIOR.md +73 -0
- package/Dockerfile +64 -0
- package/INSTALLATION.md +152 -0
- package/LICENSE +21 -0
- package/README.md +245 -0
- package/assets/skills/code-review/instructions.md +102 -0
- package/assets/skills/code-review/skill.yaml +15 -0
- package/assets/skills/refactoring/instructions.md +149 -0
- package/assets/skills/refactoring/skill.yaml +15 -0
- package/assets/skills/testing/skill.yaml +15 -0
- package/commitlint.config.js +23 -0
- package/dist/main/DatabaseManager.js +763 -0
- package/dist/main/DatabaseManager.js.map +1 -0
- package/dist/main/SettingsManager.js +61 -0
- package/dist/main/SettingsManager.js.map +1 -0
- package/dist/main/agents/AgentOrchestrator.js +787 -0
- package/dist/main/agents/AgentOrchestrator.js.map +1 -0
- package/dist/main/agents/AgentSDK.js +219 -0
- package/dist/main/agents/AgentSDK.js.map +1 -0
- package/dist/main/agents/AgentTools.js +348 -0
- package/dist/main/agents/AgentTools.js.map +1 -0
- package/dist/main/agents/CodeIndex.js +233 -0
- package/dist/main/agents/CodeIndex.js.map +1 -0
- package/dist/main/agents/EmbeddingService.js +80 -0
- package/dist/main/agents/EmbeddingService.js.map +1 -0
- package/dist/main/agents/NativeToolCalling.js +206 -0
- package/dist/main/agents/NativeToolCalling.js.map +1 -0
- package/dist/main/api/APIServer.js +278 -0
- package/dist/main/api/APIServer.js.map +1 -0
- package/dist/main/api/RateLimiter.js +138 -0
- package/dist/main/api/RateLimiter.js.map +1 -0
- package/dist/main/api/WebSocketManager.js +300 -0
- package/dist/main/api/WebSocketManager.js.map +1 -0
- package/dist/main/assistant/ContextOptimizer.js +192 -0
- package/dist/main/assistant/ContextOptimizer.js.map +1 -0
- package/dist/main/assistant/PredictedOutputManager.js +172 -0
- package/dist/main/assistant/PredictedOutputManager.js.map +1 -0
- package/dist/main/assistant/PromptCacheManager.js +193 -0
- package/dist/main/assistant/PromptCacheManager.js.map +1 -0
- package/dist/main/assistant/PromptOptimizer.js +626 -0
- package/dist/main/assistant/PromptOptimizer.js.map +1 -0
- package/dist/main/assistant/SmartCodeAssistant.js +224 -0
- package/dist/main/assistant/SmartCodeAssistant.js.map +1 -0
- package/dist/main/auth/SessionManager.js +300 -0
- package/dist/main/auth/SessionManager.js.map +1 -0
- package/dist/main/automations/AdvancedWebhookSystem.js +212 -0
- package/dist/main/automations/AdvancedWebhookSystem.js.map +1 -0
- package/dist/main/automations/AutomationScheduler.js +269 -0
- package/dist/main/automations/AutomationScheduler.js.map +1 -0
- package/dist/main/automations/BatchProcessingSystem.js +159 -0
- package/dist/main/automations/BatchProcessingSystem.js.map +1 -0
- package/dist/main/automations/BrowserAutomationManager.js +195 -0
- package/dist/main/automations/BrowserAutomationManager.js.map +1 -0
- package/dist/main/automations/GitHubActionsManager.js +129 -0
- package/dist/main/automations/GitHubActionsManager.js.map +1 -0
- package/dist/main/automations/GitLabCIManager.js +122 -0
- package/dist/main/automations/GitLabCIManager.js.map +1 -0
- package/dist/main/automations/PriorityQueueManager.js +240 -0
- package/dist/main/automations/PriorityQueueManager.js.map +1 -0
- package/dist/main/background/BackgroundModeManager.js +117 -0
- package/dist/main/background/BackgroundModeManager.js.map +1 -0
- package/dist/main/backup/BackupManager.js +254 -0
- package/dist/main/backup/BackupManager.js.map +1 -0
- package/dist/main/backup/MigrationManager.js +114 -0
- package/dist/main/backup/MigrationManager.js.map +1 -0
- package/dist/main/commands/SlashCommandManager.js +399 -0
- package/dist/main/commands/SlashCommandManager.js.map +1 -0
- package/dist/main/config/ClaudeMdParser.js +519 -0
- package/dist/main/config/ClaudeMdParser.js.map +1 -0
- package/dist/main/config/CustomizationManager.js +381 -0
- package/dist/main/config/CustomizationManager.js.map +1 -0
- package/dist/main/config/LaunchConfigManager.js +211 -0
- package/dist/main/config/LaunchConfigManager.js.map +1 -0
- package/dist/main/config/SettingsManager.js +166 -0
- package/dist/main/config/SettingsManager.js.map +1 -0
- package/dist/main/connectors/ConnectorManager.js +151 -0
- package/dist/main/connectors/ConnectorManager.js.map +1 -0
- package/dist/main/connectors/DatabaseConnector.js +222 -0
- package/dist/main/connectors/DatabaseConnector.js.map +1 -0
- package/dist/main/cowork/CoworkManager.js +324 -0
- package/dist/main/cowork/CoworkManager.js.map +1 -0
- package/dist/main/evals/AgentEvalFramework.js +538 -0
- package/dist/main/evals/AgentEvalFramework.js.map +1 -0
- package/dist/main/evals/GraderManager.js +285 -0
- package/dist/main/evals/GraderManager.js.map +1 -0
- package/dist/main/git/GitWorktreeManager.js +214 -0
- package/dist/main/git/GitWorktreeManager.js.map +1 -0
- package/dist/main/github/GitHubPRMonitor.js +244 -0
- package/dist/main/github/GitHubPRMonitor.js.map +1 -0
- package/dist/main/ide/ContinueInManager.js +181 -0
- package/dist/main/ide/ContinueInManager.js.map +1 -0
- package/dist/main/ide/IDEIntegration.js +277 -0
- package/dist/main/ide/IDEIntegration.js.map +1 -0
- package/dist/main/integrations/LinearManager.js +252 -0
- package/dist/main/integrations/LinearManager.js.map +1 -0
- package/dist/main/integrations/SlackBotManager.js +247 -0
- package/dist/main/integrations/SlackBotManager.js.map +1 -0
- package/dist/main/lsp/LSPManager.js +394 -0
- package/dist/main/lsp/LSPManager.js.map +1 -0
- package/dist/main/main.js +1087 -0
- package/dist/main/main.js.map +1 -0
- package/dist/main/mcp/MCPConfigurationManager.js +281 -0
- package/dist/main/mcp/MCPConfigurationManager.js.map +1 -0
- package/dist/main/mcp/MCPManager.js +710 -0
- package/dist/main/mcp/MCPManager.js.map +1 -0
- package/dist/main/mcp/MCPRegistry.js +272 -0
- package/dist/main/mcp/MCPRegistry.js.map +1 -0
- package/dist/main/monitoring/ErrorRecoveryManager.js +268 -0
- package/dist/main/monitoring/ErrorRecoveryManager.js.map +1 -0
- package/dist/main/monitoring/ErrorTracker.js +57 -0
- package/dist/main/monitoring/ErrorTracker.js.map +1 -0
- package/dist/main/monitoring/MetricsCollector.js +155 -0
- package/dist/main/monitoring/MetricsCollector.js.map +1 -0
- package/dist/main/monitoring/TraceGradingSystem.js +148 -0
- package/dist/main/monitoring/TraceGradingSystem.js.map +1 -0
- package/dist/main/notifications/NotificationManager.js +67 -0
- package/dist/main/notifications/NotificationManager.js.map +1 -0
- package/dist/main/pair/AIPairProgramming.js +200 -0
- package/dist/main/pair/AIPairProgramming.js.map +1 -0
- package/dist/main/plugins/PluginManager.js +222 -0
- package/dist/main/plugins/PluginManager.js.map +1 -0
- package/dist/main/plugins/PluginMarketplace.js +237 -0
- package/dist/main/plugins/PluginMarketplace.js.map +1 -0
- package/dist/main/preload.js +189 -0
- package/dist/main/preload.js.map +1 -0
- package/dist/main/preview/PreviewSessionManager.js +170 -0
- package/dist/main/preview/PreviewSessionManager.js.map +1 -0
- package/dist/main/providers/AIProviderManager.js +327 -0
- package/dist/main/providers/AIProviderManager.js.map +1 -0
- package/dist/main/providers/FineTuningManager.js +276 -0
- package/dist/main/providers/FineTuningManager.js.map +1 -0
- package/dist/main/providers/FreeModelsProvider.js +1104 -0
- package/dist/main/providers/FreeModelsProvider.js.map +1 -0
- package/dist/main/realtime/RealtimeManager.js +116 -0
- package/dist/main/realtime/RealtimeManager.js.map +1 -0
- package/dist/main/remote/CloudEnvironmentManager.js +232 -0
- package/dist/main/remote/CloudEnvironmentManager.js.map +1 -0
- package/dist/main/remote/RemoteSessionManager.js +255 -0
- package/dist/main/remote/RemoteSessionManager.js.map +1 -0
- package/dist/main/search/DeepResearchManager.js +335 -0
- package/dist/main/search/DeepResearchManager.js.map +1 -0
- package/dist/main/search/WebSearchIntegration.js +147 -0
- package/dist/main/search/WebSearchIntegration.js.map +1 -0
- package/dist/main/security/AdminConsoleManager.js +223 -0
- package/dist/main/security/AdminConsoleManager.js.map +1 -0
- package/dist/main/security/AuditLogger.js +136 -0
- package/dist/main/security/AuditLogger.js.map +1 -0
- package/dist/main/security/PermissionManager.js +144 -0
- package/dist/main/security/PermissionManager.js.map +1 -0
- package/dist/main/security/SSOManager.js +173 -0
- package/dist/main/security/SSOManager.js.map +1 -0
- package/dist/main/security/SecurityManager.js +152 -0
- package/dist/main/security/SecurityManager.js.map +1 -0
- package/dist/main/skills/SkillsManager.js +223 -0
- package/dist/main/skills/SkillsManager.js.map +1 -0
- package/dist/main/ssh/SSHManager.js +65 -0
- package/dist/main/ssh/SSHManager.js.map +1 -0
- package/dist/main/streaming/StreamingManager.js +225 -0
- package/dist/main/streaming/StreamingManager.js.map +1 -0
- package/dist/main/sync/CloudSyncManager.js +422 -0
- package/dist/main/sync/CloudSyncManager.js.map +1 -0
- package/dist/main/types.js +28 -0
- package/dist/main/types.js.map +1 -0
- package/dist/main/verification/AutoVerifyManager.js +235 -0
- package/dist/main/verification/AutoVerifyManager.js.map +1 -0
- package/dist/main/vision/ComputerUseManager.js +376 -0
- package/dist/main/vision/ComputerUseManager.js.map +1 -0
- package/dist/main/vision/ImageVideoGenerationManager.js +401 -0
- package/dist/main/vision/ImageVideoGenerationManager.js.map +1 -0
- package/dist/main/vision/VisionManager.js +172 -0
- package/dist/main/vision/VisionManager.js.map +1 -0
- package/dist/renderer/assets/main-DJlZQBCA.js +304 -0
- package/dist/renderer/assets/main-N33ZXEr8.css +1 -0
- package/dist/renderer/index.html +21 -0
- package/dist/renderer/manifest.json +42 -0
- package/dist/renderer/sw.ts +109 -0
- package/dist/shared/types.js +35 -0
- package/dist/shared/types.js.map +1 -0
- package/docker-compose.yml +65 -0
- package/docs/API.md +307 -0
- package/docs/USER_GUIDE.md +476 -0
- package/examples/plugins/sample-plugin/package.json +41 -0
- package/examples/plugins/sample-plugin/src/index.ts +75 -0
- package/index.html +20 -0
- package/jest.config.js +39 -0
- package/package.json +180 -0
- package/packages/cli/package.json +29 -0
- package/packages/cli/src/commands/agents.ts +199 -0
- package/packages/cli/src/commands/tasks.ts +61 -0
- package/packages/cli/src/index.ts +91 -0
- package/packages/cli/src/utils/api.ts +45 -0
- package/packages/cli/src/utils/config.ts +61 -0
- package/packages/npm-installer/bin/codex-linux +126 -0
- package/packages/npm-installer/lib/download.js +273 -0
- package/packages/npm-installer/package.json +42 -0
- package/packages/vscode-extension/package.json +167 -0
- package/packages/vscode-extension/src/api.ts +68 -0
- package/packages/vscode-extension/src/extension.ts +161 -0
- package/packages/vscode-extension/src/panels/chatPanel.ts +265 -0
- package/packages/vscode-extension/src/panels/createAgentPanel.ts +227 -0
- package/packages/vscode-extension/src/providers/agentsProvider.ts +80 -0
- package/postcss.config.js +6 -0
- package/public/manifest.json +42 -0
- package/public/sw.ts +109 -0
- package/scripts/install-dev.sh +103 -0
- package/scripts/install.sh +275 -0
- package/src/main/DatabaseManager.ts +950 -0
- package/src/main/SettingsManager.ts +63 -0
- package/src/main/agents/AgentOrchestrator.ts +930 -0
- package/src/main/agents/AgentSDK.ts +269 -0
- package/src/main/agents/AgentTools.ts +380 -0
- package/src/main/agents/CodeIndex.ts +240 -0
- package/src/main/agents/EmbeddingService.ts +88 -0
- package/src/main/agents/NativeToolCalling.ts +245 -0
- package/src/main/api/APIServer.ts +316 -0
- package/src/main/api/RateLimiter.ts +165 -0
- package/src/main/api/WebSocketManager.ts +398 -0
- package/src/main/assistant/ContextOptimizer.ts +214 -0
- package/src/main/assistant/PredictedOutputManager.ts +265 -0
- package/src/main/assistant/PromptCacheManager.ts +280 -0
- package/src/main/assistant/PromptOptimizer.ts +746 -0
- package/src/main/assistant/SmartCodeAssistant.ts +234 -0
- package/src/main/auth/SessionManager.ts +415 -0
- package/src/main/automations/AdvancedWebhookSystem.ts +281 -0
- package/src/main/automations/AutomationScheduler.ts +272 -0
- package/src/main/automations/BatchProcessingSystem.ts +207 -0
- package/src/main/automations/BrowserAutomationManager.ts +203 -0
- package/src/main/automations/GitHubActionsManager.ts +151 -0
- package/src/main/automations/GitLabCIManager.ts +206 -0
- package/src/main/automations/PriorityQueueManager.ts +328 -0
- package/src/main/background/BackgroundModeManager.ts +130 -0
- package/src/main/backup/BackupManager.ts +287 -0
- package/src/main/backup/MigrationManager.ts +132 -0
- package/src/main/commands/SlashCommandManager.ts +407 -0
- package/src/main/config/ClaudeMdParser.ts +539 -0
- package/src/main/config/CustomizationManager.ts +493 -0
- package/src/main/config/LaunchConfigManager.ts +212 -0
- package/src/main/config/SettingsManager.ts +163 -0
- package/src/main/connectors/ConnectorManager.ts +175 -0
- package/src/main/connectors/DatabaseConnector.ts +212 -0
- package/src/main/cowork/CoworkManager.ts +431 -0
- package/src/main/evals/AgentEvalFramework.ts +665 -0
- package/src/main/evals/GraderManager.ts +417 -0
- package/src/main/git/GitWorktreeManager.ts +211 -0
- package/src/main/github/GitHubPRMonitor.ts +317 -0
- package/src/main/ide/ContinueInManager.ts +180 -0
- package/src/main/ide/IDEIntegration.ts +288 -0
- package/src/main/integrations/LinearManager.ts +327 -0
- package/src/main/integrations/SlackBotManager.ts +312 -0
- package/src/main/lsp/LSPManager.ts +445 -0
- package/src/main/main.ts +1221 -0
- package/src/main/mcp/MCPConfigurationManager.ts +281 -0
- package/src/main/mcp/MCPManager.ts +799 -0
- package/src/main/mcp/MCPRegistry.ts +273 -0
- package/src/main/monitoring/ErrorRecoveryManager.ts +359 -0
- package/src/main/monitoring/ErrorTracker.ts +60 -0
- package/src/main/monitoring/MetricsCollector.ts +196 -0
- package/src/main/monitoring/TraceGradingSystem.ts +196 -0
- package/src/main/notifications/NotificationManager.ts +96 -0
- package/src/main/pair/AIPairProgramming.ts +290 -0
- package/src/main/plugins/PluginManager.ts +266 -0
- package/src/main/plugins/PluginMarketplace.ts +318 -0
- package/src/main/preload.ts +215 -0
- package/src/main/preview/PreviewSessionManager.ts +186 -0
- package/src/main/providers/AIProviderManager.ts +394 -0
- package/src/main/providers/FineTuningManager.ts +390 -0
- package/src/main/providers/FreeModelsProvider.ts +1156 -0
- package/src/main/realtime/RealtimeManager.ts +147 -0
- package/src/main/remote/CloudEnvironmentManager.ts +253 -0
- package/src/main/remote/RemoteSessionManager.ts +323 -0
- package/src/main/search/DeepResearchManager.ts +458 -0
- package/src/main/search/WebSearchIntegration.ts +203 -0
- package/src/main/security/AdminConsoleManager.ts +244 -0
- package/src/main/security/AuditLogger.ts +143 -0
- package/src/main/security/PermissionManager.ts +184 -0
- package/src/main/security/SSOManager.ts +241 -0
- package/src/main/security/SecurityManager.ts +139 -0
- package/src/main/skills/SkillsManager.ts +218 -0
- package/src/main/ssh/SSHManager.ts +86 -0
- package/src/main/streaming/StreamingManager.ts +306 -0
- package/src/main/sync/CloudSyncManager.ts +532 -0
- package/src/main/verification/AutoVerifyManager.ts +285 -0
- package/src/main/vision/ComputerUseManager.ts +475 -0
- package/src/main/vision/ImageVideoGenerationManager.ts +526 -0
- package/src/main/vision/VisionManager.ts +186 -0
- package/src/renderer/App.tsx +314 -0
- package/src/renderer/components/AdvancedSettingsPanel.tsx +225 -0
- package/src/renderer/components/AgentPanel.tsx +760 -0
- package/src/renderer/components/AppPreview.tsx +220 -0
- package/src/renderer/components/AuditTrailPanel.tsx +148 -0
- package/src/renderer/components/AutomationPanel.tsx +220 -0
- package/src/renderer/components/ChatInterface.tsx +595 -0
- package/src/renderer/components/ChatTab.tsx +296 -0
- package/src/renderer/components/CodeEditor.tsx +257 -0
- package/src/renderer/components/CodeReviewPanel.tsx +256 -0
- package/src/renderer/components/CodeWorkspace.tsx +192 -0
- package/src/renderer/components/CodebaseDashboard.tsx +295 -0
- package/src/renderer/components/ComputerUsePanel.tsx +262 -0
- package/src/renderer/components/ConnectorsPanel.tsx +471 -0
- package/src/renderer/components/ContextMenu.tsx +155 -0
- package/src/renderer/components/ContextUsageDisplay.tsx +248 -0
- package/src/renderer/components/CoworkPanel.tsx +415 -0
- package/src/renderer/components/DiffViewer.tsx +452 -0
- package/src/renderer/components/ErrorBoundary.tsx +273 -0
- package/src/renderer/components/ExtendedThinkingToggle.tsx +244 -0
- package/src/renderer/components/FileAttachments.tsx +247 -0
- package/src/renderer/components/FileExplorer.tsx +242 -0
- package/src/renderer/components/FileExplorerPanel.tsx +302 -0
- package/src/renderer/components/GitPanel.tsx +154 -0
- package/src/renderer/components/Header.tsx +113 -0
- package/src/renderer/components/MCPPanel.tsx +326 -0
- package/src/renderer/components/MentionAutocomplete.tsx +239 -0
- package/src/renderer/components/PermissionPanel.tsx +159 -0
- package/src/renderer/components/PermissionSelector.tsx +203 -0
- package/src/renderer/components/PluginMarketplace.tsx +325 -0
- package/src/renderer/components/PromptOptimizerPanel.tsx +399 -0
- package/src/renderer/components/SearchPanel.tsx +173 -0
- package/src/renderer/components/SearchReplace.tsx +284 -0
- package/src/renderer/components/SessionSidebar.tsx +367 -0
- package/src/renderer/components/SettingsPanel.tsx +426 -0
- package/src/renderer/components/Sidebar.tsx +100 -0
- package/src/renderer/components/SkillsPanel.tsx +245 -0
- package/src/renderer/components/SplitPane.tsx +173 -0
- package/src/renderer/components/Terminal.tsx +190 -0
- package/src/renderer/components/VoiceCommand.tsx +129 -0
- package/src/renderer/components/WorktreePanel.tsx +163 -0
- package/src/renderer/components/ui/AriaComponents.tsx +193 -0
- package/src/renderer/components/ui/Button.tsx +68 -0
- package/src/renderer/components/ui/Card.tsx +102 -0
- package/src/renderer/components/ui/Input.tsx +44 -0
- package/src/renderer/components/ui/Skeleton.tsx +55 -0
- package/src/renderer/components/ui/VirtualList.tsx +196 -0
- package/src/renderer/i18n/I18nProvider.tsx +101 -0
- package/src/renderer/i18n/de.ts +161 -0
- package/src/renderer/i18n/en.ts +163 -0
- package/src/renderer/i18n/es.ts +161 -0
- package/src/renderer/i18n/fr.ts +161 -0
- package/src/renderer/i18n/index.ts +44 -0
- package/src/renderer/index.css +129 -0
- package/src/renderer/lib/accessibility.tsx +287 -0
- package/src/renderer/lib/hooks.ts +304 -0
- package/src/renderer/lib/utils.ts +6 -0
- package/src/renderer/main.tsx +25 -0
- package/src/renderer/styles/minimalist.css +539 -0
- package/src/renderer/sw.ts +180 -0
- package/src/renderer/types.d.ts +138 -0
- package/src/shared/types.ts +813 -0
- package/supabase/schema.sql +234 -0
- package/tailwind.config.js +78 -0
- package/tests/e2e/package.json +15 -0
- package/tests/e2e/playwright.config.ts +31 -0
- package/tests/e2e/specs/app.spec.ts +194 -0
- package/tests/setup.ts +99 -0
- package/tests/unit/AgentOrchestrator.test.ts +274 -0
- package/tests/unit/DatabaseManager.test.ts +262 -0
- package/tests/unit/GitWorktreeManager.test.ts +150 -0
- package/tests/unit/SecurityManager.test.ts +110 -0
- package/tsconfig.main.json +22 -0
- package/tsconfig.renderer.json +27 -0
- package/vite.config.ts +28 -0
package/README.md
ADDED
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
# Codex Linux
|
|
2
|
+
|
|
3
|
+
A Linux port of OpenAI Codex - A powerful command center for managing multiple AI coding agents in parallel.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Multi-Agent Orchestration**: Manage multiple AI agents working in parallel on different tasks
|
|
8
|
+
- **Git Worktrees**: Isolate agent changes in separate worktrees for safe experimentation
|
|
9
|
+
- **Skills System**: Create and apply reusable skills to customize agent behavior
|
|
10
|
+
- **Automation**: Schedule recurring tasks and create automated workflows
|
|
11
|
+
- **Multi-Provider Support**: Works with OpenAI (GPT-4, GPT-5, Codex) and Anthropic (Claude) models
|
|
12
|
+
- **Change Review**: Review, approve, or reject agent code changes before applying
|
|
13
|
+
- **Linux Native**: Built specifically for Linux with AppImage, deb, and rpm packages
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
### Quick Install (Recommended)
|
|
18
|
+
|
|
19
|
+
Choose one of these two universal methods:
|
|
20
|
+
|
|
21
|
+
#### Option 1: Curl (Universal - All Linux Distributions)
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
curl -fsSL https://codex-linux.dev/install.sh | bash
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
This installs the AppImage to `~/.local/bin/` and creates a desktop entry.
|
|
28
|
+
|
|
29
|
+
**With sudo (system-wide install):**
|
|
30
|
+
```bash
|
|
31
|
+
curl -fsSL https://codex-linux.dev/install.sh | bash -s -- --system
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Uninstall:**
|
|
35
|
+
```bash
|
|
36
|
+
curl -fsSL https://codex-linux.dev/install.sh | bash -s -- --uninstall
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
#### Option 2: NPM (For Node.js developers)
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Install globally
|
|
43
|
+
npm install -g codex-linux
|
|
44
|
+
|
|
45
|
+
# Or run without installing
|
|
46
|
+
npx codex-linux
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**Update:**
|
|
50
|
+
```bash
|
|
51
|
+
npm update -g codex-linux
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Prerequisites
|
|
55
|
+
|
|
56
|
+
- Node.js 18+ (for NPM install)
|
|
57
|
+
- Git (for source install)
|
|
58
|
+
- Linux (Ubuntu 20.04+, Fedora 35+, Arch Linux, etc.)
|
|
59
|
+
|
|
60
|
+
### From Source
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# Clone the repository
|
|
64
|
+
git clone https://github.com/yourusername/codex-linux.git
|
|
65
|
+
cd codex-linux
|
|
66
|
+
|
|
67
|
+
# Install dependencies
|
|
68
|
+
npm install
|
|
69
|
+
|
|
70
|
+
# Build the application
|
|
71
|
+
npm run build
|
|
72
|
+
|
|
73
|
+
# Run in development mode
|
|
74
|
+
npm run dev
|
|
75
|
+
|
|
76
|
+
# Package for Linux
|
|
77
|
+
npm run package:linux
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Pre-built Packages
|
|
81
|
+
|
|
82
|
+
Download the latest release from [GitHub Releases](https://github.com/ranker-org/codex-linux-app/releases):
|
|
83
|
+
|
|
84
|
+
- **AppImage** (Universal): `Codex-Linux-x.x.x.AppImage` - Works on all distributions
|
|
85
|
+
- **Debian/Ubuntu**: `codex-linux_x.x.x_amd64.deb`
|
|
86
|
+
- **Fedora/RHEL**: `codex-linux-x.x.x.x86_64.rpm`
|
|
87
|
+
|
|
88
|
+
## Quick Start
|
|
89
|
+
|
|
90
|
+
1. **Launch Codex Linux** - Run the application from your applications menu or terminal
|
|
91
|
+
|
|
92
|
+
2. **Configure AI Provider**:
|
|
93
|
+
- Go to Settings → AI Providers
|
|
94
|
+
- Add your OpenAI or Anthropic API key
|
|
95
|
+
- Test the connection
|
|
96
|
+
|
|
97
|
+
3. **Create Your First Agent**:
|
|
98
|
+
- Click "+ New Agent"
|
|
99
|
+
- Select a project folder
|
|
100
|
+
- Choose a provider and model
|
|
101
|
+
- Optionally apply skills
|
|
102
|
+
|
|
103
|
+
4. **Start Coding**:
|
|
104
|
+
- Send messages to your agent
|
|
105
|
+
- Assign tasks for parallel execution
|
|
106
|
+
- Review changes in worktrees
|
|
107
|
+
|
|
108
|
+
## Configuration
|
|
109
|
+
|
|
110
|
+
### Environment Variables
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Optional: Set default API keys
|
|
114
|
+
export OPENAI_API_KEY="your-key-here"
|
|
115
|
+
export ANTHROPIC_API_KEY="your-key-here"
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Settings File
|
|
119
|
+
|
|
120
|
+
Settings are stored in `~/.config/codex/config.json`:
|
|
121
|
+
|
|
122
|
+
```json
|
|
123
|
+
{
|
|
124
|
+
"theme": "dark",
|
|
125
|
+
"defaultProvider": "openai",
|
|
126
|
+
"defaultModel": "gpt-4o",
|
|
127
|
+
"maxParallelAgents": 5,
|
|
128
|
+
"shortcuts": {
|
|
129
|
+
"agent:new": "Ctrl+Shift+N",
|
|
130
|
+
"agent:send": "Ctrl+Enter"
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Skills
|
|
136
|
+
|
|
137
|
+
Skills are reusable instructions that customize agent behavior:
|
|
138
|
+
|
|
139
|
+
1. Create skills in the Skills panel
|
|
140
|
+
2. Write instructions in markdown
|
|
141
|
+
3. Apply skills to agents when creating or editing
|
|
142
|
+
|
|
143
|
+
### Example Skill Structure
|
|
144
|
+
|
|
145
|
+
```
|
|
146
|
+
~/.config/codex/skills/my-skill/
|
|
147
|
+
├── skill.yaml # Skill metadata
|
|
148
|
+
├── instructions.md # Core instructions
|
|
149
|
+
└── templates/
|
|
150
|
+
└── code-review.md # Review template
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## Automations
|
|
154
|
+
|
|
155
|
+
Create automated workflows:
|
|
156
|
+
|
|
157
|
+
- **Schedule**: Run on cron schedule (e.g., daily code review)
|
|
158
|
+
- **Event**: Trigger on git events or file changes
|
|
159
|
+
- **Webhook**: Trigger via HTTP requests
|
|
160
|
+
- **Manual**: Run on demand
|
|
161
|
+
|
|
162
|
+
## Worktrees
|
|
163
|
+
|
|
164
|
+
Git worktrees provide isolated environments for each agent:
|
|
165
|
+
|
|
166
|
+
- Changes are isolated from main branch
|
|
167
|
+
- Easy to review and merge
|
|
168
|
+
- Automatic cleanup on agent deletion
|
|
169
|
+
- Visual diff and merge tools
|
|
170
|
+
|
|
171
|
+
## Keyboard Shortcuts
|
|
172
|
+
|
|
173
|
+
| Action | Shortcut |
|
|
174
|
+
|--------|----------|
|
|
175
|
+
| New Agent | `Ctrl+Shift+N` |
|
|
176
|
+
| Send Message | `Ctrl+Enter` |
|
|
177
|
+
| New Worktree | `Ctrl+Shift+W` |
|
|
178
|
+
| Open Skills | `Ctrl+Shift+S` |
|
|
179
|
+
| Open Automations | `Ctrl+Shift+A` |
|
|
180
|
+
| Open Settings | `Ctrl+,` |
|
|
181
|
+
| Command Palette | `Ctrl+Shift+P` |
|
|
182
|
+
|
|
183
|
+
## Architecture
|
|
184
|
+
|
|
185
|
+
```
|
|
186
|
+
codex-linux/
|
|
187
|
+
├── src/
|
|
188
|
+
│ ├── main/ # Electron main process
|
|
189
|
+
│ │ ├── agents/ # Agent orchestration
|
|
190
|
+
│ │ ├── git/ # Git worktree management
|
|
191
|
+
│ │ ├── skills/ # Skills system
|
|
192
|
+
│ │ ├── automations/ # Automation scheduler
|
|
193
|
+
│ │ └── providers/ # AI provider integrations
|
|
194
|
+
│ ├── renderer/ # React frontend
|
|
195
|
+
│ │ └── components/ # UI components
|
|
196
|
+
│ └── shared/ # Shared types
|
|
197
|
+
├── assets/ # Icons and images
|
|
198
|
+
└── tests/ # Test suites
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
## Development
|
|
202
|
+
|
|
203
|
+
### Running Tests
|
|
204
|
+
|
|
205
|
+
```bash
|
|
206
|
+
npm test
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
### Linting
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
npm run lint
|
|
213
|
+
npm run lint:fix
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
### Type Checking
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
npm run typecheck
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Contributing
|
|
223
|
+
|
|
224
|
+
1. Fork the repository
|
|
225
|
+
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
|
|
226
|
+
3. Commit your changes (`git commit -m 'Add amazing feature'`)
|
|
227
|
+
4. Push to the branch (`git push origin feature/amazing-feature`)
|
|
228
|
+
5. Open a Pull Request
|
|
229
|
+
|
|
230
|
+
## License
|
|
231
|
+
|
|
232
|
+
MIT License - see [LICENSE](LICENSE) file for details.
|
|
233
|
+
|
|
234
|
+
## Acknowledgments
|
|
235
|
+
|
|
236
|
+
- Inspired by OpenAI Codex
|
|
237
|
+
- Built with Electron, React, and TypeScript
|
|
238
|
+
- Uses Simple Git for git operations
|
|
239
|
+
- Icons by Lucide
|
|
240
|
+
|
|
241
|
+
## Support
|
|
242
|
+
|
|
243
|
+
- GitHub Issues: [Report bugs or request features](https://github.com/yourusername/codex-linux/issues)
|
|
244
|
+
- Documentation: [Full documentation](https://codex-linux.readthedocs.io)
|
|
245
|
+
- Discord: [Join our community](https://discord.gg/codex-linux)
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# Code Review Guidelines
|
|
2
|
+
|
|
3
|
+
When reviewing code, please follow these comprehensive guidelines:
|
|
4
|
+
|
|
5
|
+
## 1. Code Quality
|
|
6
|
+
|
|
7
|
+
### Readability
|
|
8
|
+
- Is the code easy to understand?
|
|
9
|
+
- Are variable and function names descriptive?
|
|
10
|
+
- Is the code properly formatted and indented?
|
|
11
|
+
- Are complex sections commented?
|
|
12
|
+
|
|
13
|
+
### Maintainability
|
|
14
|
+
- Is the code modular and reusable?
|
|
15
|
+
- Are functions small and focused?
|
|
16
|
+
- Is there appropriate separation of concerns?
|
|
17
|
+
- Are there any code smells or anti-patterns?
|
|
18
|
+
|
|
19
|
+
## 2. Functionality
|
|
20
|
+
|
|
21
|
+
### Correctness
|
|
22
|
+
- Does the code work as intended?
|
|
23
|
+
- Are edge cases handled properly?
|
|
24
|
+
- Are errors handled gracefully?
|
|
25
|
+
- Is input validated?
|
|
26
|
+
|
|
27
|
+
### Testing
|
|
28
|
+
- Are there adequate unit tests?
|
|
29
|
+
- Are integration tests included where needed?
|
|
30
|
+
- Is test coverage sufficient?
|
|
31
|
+
- Are edge cases tested?
|
|
32
|
+
|
|
33
|
+
## 3. Performance
|
|
34
|
+
|
|
35
|
+
### Efficiency
|
|
36
|
+
- Are there any obvious performance bottlenecks?
|
|
37
|
+
- Are expensive operations optimized?
|
|
38
|
+
- Is memory usage reasonable?
|
|
39
|
+
- Are loops and iterations efficient?
|
|
40
|
+
|
|
41
|
+
### Scalability
|
|
42
|
+
- Will the code scale with increased load?
|
|
43
|
+
- Are there any hard limits that could cause issues?
|
|
44
|
+
- Is caching used appropriately?
|
|
45
|
+
|
|
46
|
+
## 4. Security
|
|
47
|
+
|
|
48
|
+
### Best Practices
|
|
49
|
+
- Is user input sanitized?
|
|
50
|
+
- Are secrets and credentials properly handled?
|
|
51
|
+
- Are there SQL injection vulnerabilities?
|
|
52
|
+
- Is XSS prevention in place?
|
|
53
|
+
|
|
54
|
+
### Authentication & Authorization
|
|
55
|
+
- Are access controls properly implemented?
|
|
56
|
+
- Is authentication handled securely?
|
|
57
|
+
- Are sensitive operations properly protected?
|
|
58
|
+
|
|
59
|
+
## 5. Documentation
|
|
60
|
+
|
|
61
|
+
### Code Documentation
|
|
62
|
+
- Are public APIs documented?
|
|
63
|
+
- Are complex algorithms explained?
|
|
64
|
+
- Are there README files where needed?
|
|
65
|
+
- Is the documentation up to date?
|
|
66
|
+
|
|
67
|
+
### Comments
|
|
68
|
+
- Are comments clear and helpful?
|
|
69
|
+
- Do comments explain "why" not just "what"?
|
|
70
|
+
- Is there dead code or commented-out code?
|
|
71
|
+
|
|
72
|
+
## Review Checklist
|
|
73
|
+
|
|
74
|
+
Before approving, ensure:
|
|
75
|
+
|
|
76
|
+
- [ ] Code compiles/builds without errors
|
|
77
|
+
- [ ] Tests pass
|
|
78
|
+
- [ ] No console.log or debug statements left in production code
|
|
79
|
+
- [ ] No sensitive data exposed
|
|
80
|
+
- [ ] Documentation updated if needed
|
|
81
|
+
- [ ] Breaking changes documented
|
|
82
|
+
- [ ] Backward compatibility considered
|
|
83
|
+
|
|
84
|
+
## Communication
|
|
85
|
+
|
|
86
|
+
When providing feedback:
|
|
87
|
+
|
|
88
|
+
1. **Be Constructive**: Focus on the code, not the person
|
|
89
|
+
2. **Explain Why**: Provide reasoning for suggestions
|
|
90
|
+
3. **Suggest Solutions**: Don't just point out problems
|
|
91
|
+
4. **Acknowledge Good Work**: Highlight what was done well
|
|
92
|
+
5. **Be Specific**: Reference specific lines and provide examples
|
|
93
|
+
|
|
94
|
+
## Priority Levels
|
|
95
|
+
|
|
96
|
+
- **Critical**: Security vulnerabilities, data loss risks
|
|
97
|
+
- **High**: Major functionality issues, performance problems
|
|
98
|
+
- **Medium**: Code quality issues, missing tests
|
|
99
|
+
- **Low**: Style preferences, minor optimizations
|
|
100
|
+
- **Suggestion**: Alternative approaches, future improvements
|
|
101
|
+
|
|
102
|
+
Remember: The goal is to improve code quality while maintaining a positive, collaborative environment.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
id: code-review-skill
|
|
2
|
+
name: Code Review
|
|
3
|
+
version: "1.0.0"
|
|
4
|
+
author: Codex Linux Team
|
|
5
|
+
description: Comprehensive code review guidelines for maintaining code quality
|
|
6
|
+
entryPoint: instructions.md
|
|
7
|
+
tags:
|
|
8
|
+
- review
|
|
9
|
+
- quality
|
|
10
|
+
- best-practices
|
|
11
|
+
parameters: []
|
|
12
|
+
dependencies: []
|
|
13
|
+
permissions:
|
|
14
|
+
- read-code
|
|
15
|
+
- write-comments
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# Refactoring Assistant
|
|
2
|
+
|
|
3
|
+
You are an expert code refactoring assistant. Your goal is to improve code quality while maintaining functionality.
|
|
4
|
+
|
|
5
|
+
## Core Principles
|
|
6
|
+
|
|
7
|
+
### 1. Preserve Behavior
|
|
8
|
+
- Never change the external behavior of the code
|
|
9
|
+
- Ensure all tests pass after refactoring
|
|
10
|
+
- Maintain backward compatibility
|
|
11
|
+
|
|
12
|
+
### 2. Improve Readability
|
|
13
|
+
- Use descriptive names for variables, functions, and classes
|
|
14
|
+
- Break down complex functions into smaller, focused ones
|
|
15
|
+
- Remove dead code and comments
|
|
16
|
+
- Follow consistent formatting
|
|
17
|
+
|
|
18
|
+
### 3. Reduce Complexity
|
|
19
|
+
- Extract methods to reduce function length
|
|
20
|
+
- Simplify conditional expressions
|
|
21
|
+
- Remove nested conditionals when possible
|
|
22
|
+
- Apply the Single Responsibility Principle
|
|
23
|
+
|
|
24
|
+
## Refactoring Patterns
|
|
25
|
+
|
|
26
|
+
### Extract Method
|
|
27
|
+
When you see duplicated code or a long function:
|
|
28
|
+
```javascript
|
|
29
|
+
// Before
|
|
30
|
+
function calculateTotal(items) {
|
|
31
|
+
let total = 0;
|
|
32
|
+
for (const item of items) {
|
|
33
|
+
total += item.price * item.quantity;
|
|
34
|
+
}
|
|
35
|
+
return total;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// After
|
|
39
|
+
function calculateItemTotal(item) {
|
|
40
|
+
return item.price * item.quantity;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
function calculateTotal(items) {
|
|
44
|
+
return items.reduce((sum, item) => sum + calculateItemTotal(item), 0);
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Rename for Clarity
|
|
49
|
+
Use descriptive names that reveal intent:
|
|
50
|
+
```javascript
|
|
51
|
+
// Before
|
|
52
|
+
const d = new Date();
|
|
53
|
+
|
|
54
|
+
// After
|
|
55
|
+
const currentDate = new Date();
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Remove Magic Numbers
|
|
59
|
+
```javascript
|
|
60
|
+
// Before
|
|
61
|
+
if (status === 404) { ... }
|
|
62
|
+
|
|
63
|
+
// After
|
|
64
|
+
const HTTP_NOT_FOUND = 404;
|
|
65
|
+
if (status === HTTP_NOT_FOUND) { ... }
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Code Smells to Watch For
|
|
69
|
+
|
|
70
|
+
1. **Long Method** - Functions longer than 20-30 lines
|
|
71
|
+
2. **Large Class** - Classes with too many responsibilities
|
|
72
|
+
3. **Primitive Obsession** - Using primitives instead of objects
|
|
73
|
+
4. **Long Parameter List** - Functions with 4+ parameters
|
|
74
|
+
5. **Duplicated Code** - Copy-pasted code blocks
|
|
75
|
+
6. **Feature Envy** - Method that uses more features of another class
|
|
76
|
+
7. **Data Clumps** - Groups of data that belong together
|
|
77
|
+
|
|
78
|
+
## Refactoring Checklist
|
|
79
|
+
|
|
80
|
+
Before submitting changes:
|
|
81
|
+
- [ ] All existing tests pass
|
|
82
|
+
- [ ] New tests added for changed behavior
|
|
83
|
+
- [ ] Code compiles without warnings
|
|
84
|
+
- [ ] No regression in performance
|
|
85
|
+
- [ ] Documentation updated if needed
|
|
86
|
+
- [ ] No magic numbers or strings
|
|
87
|
+
- [ ] Functions are under 30 lines
|
|
88
|
+
- [ ] Meaningful variable names
|
|
89
|
+
- [ ] Comments explain "why", not "what"
|
|
90
|
+
|
|
91
|
+
## Common Refactorings
|
|
92
|
+
|
|
93
|
+
### Simplify Conditionals
|
|
94
|
+
```javascript
|
|
95
|
+
// Before
|
|
96
|
+
if (user !== null && user !== undefined && user.isActive) { ... }
|
|
97
|
+
|
|
98
|
+
// After
|
|
99
|
+
if (user?.isActive) { ... }
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Replace Loop with Pipeline
|
|
103
|
+
```javascript
|
|
104
|
+
// Before
|
|
105
|
+
const activeUsers = [];
|
|
106
|
+
for (const user of users) {
|
|
107
|
+
if (user.isActive) {
|
|
108
|
+
activeUsers.push(user);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// After
|
|
113
|
+
const activeUsers = users.filter(u => u.isActive);
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Introduce Parameter Object
|
|
117
|
+
```javascript
|
|
118
|
+
// Before
|
|
119
|
+
function createUser(name, email, phone, address, city, zip) { ... }
|
|
120
|
+
|
|
121
|
+
// After
|
|
122
|
+
function createUser(contactInfo) { ... }
|
|
123
|
+
// where contactInfo = { name, email, phone, address, city, zip }
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Language-Specific Tips
|
|
127
|
+
|
|
128
|
+
### JavaScript/TypeScript
|
|
129
|
+
- Use destructuring for cleaner code
|
|
130
|
+
- Prefer const/let over var
|
|
131
|
+
- Use arrow functions for callbacks
|
|
132
|
+
- Leverage modern array methods
|
|
133
|
+
- Use optional chaining and nullish coalescing
|
|
134
|
+
|
|
135
|
+
### Python
|
|
136
|
+
- Follow PEP 8 style guide
|
|
137
|
+
- Use list/dict comprehensions
|
|
138
|
+
- Leverage context managers
|
|
139
|
+
- Use type hints
|
|
140
|
+
- Prefer f-strings for formatting
|
|
141
|
+
|
|
142
|
+
### Go
|
|
143
|
+
- Keep functions small and focused
|
|
144
|
+
- Handle errors explicitly
|
|
145
|
+
- Use meaningful variable names
|
|
146
|
+
- Leverage interfaces for abstraction
|
|
147
|
+
- Follow gofmt formatting
|
|
148
|
+
|
|
149
|
+
Remember: Refactoring should make the code easier to understand and maintain, not just different.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
id: refactoring-skill
|
|
2
|
+
name: Refactoring Assistant
|
|
3
|
+
version: "1.0.0"
|
|
4
|
+
author: Codex Linux Team
|
|
5
|
+
description: Expert guidance for code refactoring and improving code quality
|
|
6
|
+
entryPoint: instructions.md
|
|
7
|
+
tags:
|
|
8
|
+
- refactoring
|
|
9
|
+
- optimization
|
|
10
|
+
- clean-code
|
|
11
|
+
parameters: []
|
|
12
|
+
dependencies: []
|
|
13
|
+
permissions:
|
|
14
|
+
- read-code
|
|
15
|
+
- write-code
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
id: testing-skill
|
|
2
|
+
name: Testing Expert
|
|
3
|
+
version: "1.0.0"
|
|
4
|
+
author: Codex Linux Team
|
|
5
|
+
description: Comprehensive testing strategies and best practices
|
|
6
|
+
entryPoint: instructions.md
|
|
7
|
+
tags:
|
|
8
|
+
- testing
|
|
9
|
+
- tdd
|
|
10
|
+
- quality-assurance
|
|
11
|
+
parameters: []
|
|
12
|
+
dependencies: []
|
|
13
|
+
permissions:
|
|
14
|
+
- read-code
|
|
15
|
+
- write-tests
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
extends: ['@commitlint/config-conventional'],
|
|
3
|
+
rules: {
|
|
4
|
+
'type-enum': [
|
|
5
|
+
2,
|
|
6
|
+
'always',
|
|
7
|
+
[
|
|
8
|
+
'feat', // New feature
|
|
9
|
+
'fix', // Bug fix
|
|
10
|
+
'docs', // Documentation
|
|
11
|
+
'style', // Formatting
|
|
12
|
+
'refactor', // Code refactoring
|
|
13
|
+
'perf', // Performance
|
|
14
|
+
'test', // Tests
|
|
15
|
+
'chore', // Build/dependencies
|
|
16
|
+
'ci', // CI/CD
|
|
17
|
+
'revert', // Revert
|
|
18
|
+
],
|
|
19
|
+
],
|
|
20
|
+
'subject-case': [0],
|
|
21
|
+
'body-max-line-length': [2, 'always', 100],
|
|
22
|
+
},
|
|
23
|
+
};
|