Add X integration skill (#52)

This commit is contained in:
BaiJunjie
2026-02-04 07:27:04 +09:00
committed by GitHub
parent 3084fab45d
commit c9ca34a518
11 changed files with 1450 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
/**
* X Integration - Configuration
*
* All environment-specific settings in one place.
* Override via environment variables or modify defaults here.
*/
import path from 'path';
// Project root - can be overridden for different deployments
const PROJECT_ROOT = process.env.NANOCLAW_ROOT || process.cwd();
/**
* Configuration object with all settings
*/
export const config = {
// Chrome executable path
// Default: standard macOS Chrome location
// Override: CHROME_PATH environment variable
chromePath: process.env.CHROME_PATH || '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome',
// Browser profile directory for persistent login sessions
browserDataDir: path.join(PROJECT_ROOT, 'data', 'x-browser-profile'),
// Auth state marker file
authPath: path.join(PROJECT_ROOT, 'data', 'x-auth.json'),
// Browser viewport settings
viewport: {
width: 1280,
height: 800,
},
// Timeouts (in milliseconds)
timeouts: {
navigation: 30000,
elementWait: 5000,
afterClick: 1000,
afterFill: 1000,
afterSubmit: 3000,
pageLoad: 3000,
},
// X character limits
limits: {
tweetMaxLength: 280,
},
// Chrome launch arguments
chromeArgs: [
'--disable-blink-features=AutomationControlled',
'--no-sandbox',
'--disable-setuid-sandbox',
'--no-first-run',
'--no-default-browser-check',
'--disable-sync',
],
// Args to ignore when launching Chrome
chromeIgnoreDefaultArgs: ['--enable-automation'],
};