Files
Maestro/package.json
Pedram Amini 42fbf067ad feat: Add CLI tool and Process Monitor improvements
CLI Tool (maestro-playbook):
- New standalone binary for running playbooks from command line
- Supports list groups, list agents, list playbooks, run playbook
- JSONL output format for easy parsing and piping
- Dry-run mode and no-history options
- Documentation added to README.md

Process Monitor Enhancements:
- Show only running processes (hide idle/inactive)
- Display human-readable runtime (e.g., "2m 30s", "1h 5m")
- Show Claude session ID with click-to-navigate
- Improved column layout with less spacing
- Default to expanded view
- Visual feedback on refresh (500ms spinner)
- Kill process functionality with confirmation

Process Tracking:
- Added startTime to ManagedProcess interface
- Expose startTime via getActiveProcesses IPC

Claude ID: c7e537b9-c2a7-4cc7-b49b-e7ea0ca1d4cb
Maestro ID: b9bc0d08-5be2-4fdf-93cd-5618a8d53b35
2025-12-06 02:50:02 -06:00

186 lines
5.2 KiB
JSON

{
"name": "maestro",
"version": "0.1.0",
"description": "Multi-Instance AI Coding Console - Unified IDE for managing multiple AI coding assistants",
"main": "dist/main/index.js",
"author": {
"name": "Maestro Team",
"email": "maestro@example.com"
},
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/yourusername/maestro.git"
},
"bin": {
"maestro-playbook": "./dist/cli/cli/index.js"
},
"pkg": {
"scripts": "dist/cli/**/*.js",
"targets": [
"node20-macos-arm64",
"node20-macos-x64",
"node20-win-x64",
"node20-linux-x64"
],
"outputPath": "dist/cli/bin"
},
"scripts": {
"dev": "concurrently \"npm run dev:main\" \"npm run dev:renderer\"",
"dev:main": "tsc -p tsconfig.main.json && NODE_ENV=development electron .",
"dev:renderer": "vite",
"dev:web": "vite --config vite.config.web.mts",
"generate:pwa-icons": "node scripts/generate-pwa-icons.mjs",
"build": "npm run build:main && npm run build:renderer && npm run build:web && npm run build:cli",
"build:main": "tsc -p tsconfig.main.json",
"build:cli": "tsc -p tsconfig.cli.json",
"build:cli:bin": "npm run build:cli && pkg dist/cli/cli/index.js --config package.json",
"build:renderer": "vite build",
"build:web": "vite build --config vite.config.web.mts",
"package": "node scripts/set-version.mjs npm run build && npm run build:cli:bin && node scripts/set-version.mjs electron-builder --mac --win --linux",
"package:mac": "node scripts/set-version.mjs npm run build && npm run build:cli:bin && node scripts/set-version.mjs electron-builder --mac",
"package:win": "node scripts/set-version.mjs npm run build && npm run build:cli:bin && node scripts/set-version.mjs electron-builder --win",
"package:linux": "node scripts/set-version.mjs npm run build && npm run build:cli:bin && node scripts/set-version.mjs electron-builder --linux",
"start": "electron .",
"clean": "rm -rf dist release node_modules/.vite",
"postinstall": "electron-rebuild -f -w node-pty"
},
"build": {
"appId": "com.maestro.app",
"productName": "Maestro",
"directories": {
"output": "release",
"buildResources": "build"
},
"files": [
"dist/**/*",
"package.json"
],
"mac": {
"category": "public.app-category.developer-tools",
"identity": null,
"target": [
{
"target": "dmg",
"arch": [
"x64",
"arm64"
]
},
{
"target": "zip",
"arch": [
"x64",
"arm64"
]
}
],
"icon": "build/icon.icns",
"extraResources": [
{
"from": "dist/cli/bin/maestro-macos-${arch}",
"to": "maestro-playbook"
}
]
},
"win": {
"target": [
{
"target": "nsis",
"arch": [
"x64"
]
},
{
"target": "portable",
"arch": [
"x64"
]
}
],
"icon": "build/icon.ico",
"extraResources": [
{
"from": "dist/cli/bin/maestro-win-x64.exe",
"to": "maestro-playbook.exe"
}
]
},
"linux": {
"target": [
"AppImage",
"deb",
"rpm"
],
"category": "Development",
"icon": "build/icon.png",
"extraResources": [
{
"from": "dist/cli/bin/maestro-linux-x64",
"to": "maestro-playbook"
}
]
},
"nsis": {
"oneClick": false,
"allowToChangeInstallationDirectory": true
}
},
"dependencies": {
"@emoji-mart/data": "^1.2.1",
"@emoji-mart/react": "^1.1.1",
"@fastify/cors": "^8.5.0",
"@fastify/rate-limit": "^9.1.0",
"@fastify/static": "^7.0.4",
"@fastify/websocket": "^9.0.0",
"@types/dompurify": "^3.0.5",
"adm-zip": "^0.5.16",
"ansi-to-html": "^0.7.2",
"archiver": "^7.0.1",
"canvas-confetti": "^1.9.4",
"commander": "^14.0.2",
"diff": "^8.0.2",
"dompurify": "^3.3.0",
"electron-store": "^8.1.0",
"fastify": "^4.25.2",
"js-tiktoken": "^1.0.21",
"mermaid": "^11.12.1",
"node-pty": "^1.0.0",
"qrcode": "^1.5.4",
"qrcode.react": "^4.2.0",
"react-diff-view": "^3.3.2",
"react-markdown": "^10.1.0",
"react-syntax-highlighter": "^16.1.0",
"react-virtuoso": "^4.15.0",
"remark-gfm": "^4.0.1",
"ws": "^8.16.0"
},
"devDependencies": {
"@types/adm-zip": "^0.5.7",
"@types/archiver": "^7.0.0",
"@types/canvas-confetti": "^1.9.0",
"@types/node": "^20.10.6",
"@types/qrcode": "^1.5.6",
"@types/react": "^18.2.47",
"@types/react-dom": "^18.2.18",
"@types/react-syntax-highlighter": "^15.5.13",
"@types/ws": "^8.5.10",
"@vitejs/plugin-react": "^4.2.1",
"@yao-pkg/pkg": "^6.10.1",
"autoprefixer": "^10.4.16",
"canvas": "^3.2.0",
"concurrently": "^8.2.2",
"electron": "^28.1.0",
"electron-builder": "^24.9.1",
"electron-rebuild": "^3.2.9",
"lucide-react": "^0.303.0",
"postcss": "^8.4.33",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"tailwindcss": "^3.4.1",
"typescript": "^5.3.3",
"vite": "^5.0.11",
"vite-plugin-electron": "^0.28.2"
}
}