icon for mcp server

代理控制框架

HTTP-SSESTDIO

全面自主代理框架,具备64+专业工具

🤖 Agentic Control Framework (ACF)

A comprehensive toolkit for autonomous agent development with 64+ specialized tools

Test Status Test Status Test Status

🌟 Overview

The Agentic Control Framework (ACF) is a production-ready platform that transforms your existing projects into powerful autonomous agents. With 64+ specialized tools spanning task management, filesystem operations, browser automation, terminal control, and more, ACF provides everything needed to build sophisticated AI agents.

Key Features:

  • 🔧 64+ Specialized Tools: Task management, filesystem, terminal, browser automation, AppleScript integration
  • 🎯 3 Usage Modes: CLI, Local MCP, Cloud MCP for maximum flexibility
  • 🔗 Universal Compatibility: Works with Cursor, Claude Desktop, VS Code, and any MCP-compatible client
  • ☁️ Cloud-Ready: Deploy to GCP, Railway, Fly.io with auto-scaling
  • 🚀 Production-Tested: 100% test coverage with comprehensive testing suite

📁 Project Structure

agentic-control-framework/
├── 📁 bin/                                    # CLI executables and entry points
│   ├── 🔧 task-manager                       # Main CLI entry point for task management
│   ├── 🔧 task-manager-mcp                   # Legacy MCP server wrapper (deprecated)
│   ├── 🔧 agentic-control-framework-mcp      # Primary MCP server for Cursor/Claude integration
│   └── 🔧 task-cli.js                        # Alternative CLI interface with enhanced features
│
├── 📁 src/                                    # Core source code
│   ├── 🔧 core.js                           # Core task management logic and data structures
│   ├── 🔧 cli.js                            # CLI command definitions and argument parsing
│   ├── 🔧 mcp_server.js                     # MCP server with 64+ tools (main server file)
│   ├── 🔧 filesystem_tools.js               # Filesystem operations for MCP integration
│   ├── 🔧 prd_parser.js                     # AI-powered PRD parsing and task generation
│   ├── 🔧 tableRenderer.js                  # Task table rendering and formatting utilities
│   ├── 🔧 logger.js                         # Standardized logging across all components
│   │
│   └── 📁 tools/                             # Additional test utilities and helpers
│       ├── 🔧 browser_tools.js              # Browser automation with Playwright
│       ├── 🔧 terminal_tools.js             # Command execution, process management
│       ├── 🔧 search_tools.js               # Advanced code search with ripgrep
│       ├── 🔧 edit_tools.js                 # Surgical text editing and replacement
│       ├── 🔧 applescript_tools.js          # macOS automation and system integration
│       └── 🔧 enhanced_filesystem_tools.js  # Extended filesystem operations
│
├── 📁 test/                                   # Testing infrastructure
│   ├── 🔧 comprehensive_mcp_test.js          # Consolidated test suite for all MCP tools
│   ├── 🔧 test_env_guardrails.js           # Security and environment validation tests
│   ├── 🔧 test_filesystem.js               # Filesystem operations testing
│   └── 📁 scripts/                          # Additional test utilities and helpers
│
├── 📁 docs/                                   # Documentation and guides
│   ├── 📘 tutorial.md                       # Step-by-step getting started guide
│   ├── 📘 MCP_INTEGRATION_GUIDE.md          # Detailed MCP setup and configuration
│   ├── 📘 enhanced-mcp-tools.md             # Complete tool reference documentation
│   ├── 📘 COMPLETE_TUTORIAL.md              # Comprehensive usage documentation
│   ├── 📁 tutorials/                        # Step-by-step implementation guides
│   └── 📁 mcp-integration/                  # MCP protocol documentation and examples
│
├── 📁 tasks/                                  # Generated task files and project data
│   ├── 📄 Individual task Markdown files (auto-generated)
│   └── 📄 Task status and progress tracking files
│
├── 📁 templates/                              # Project templates and scaffolding
│   ├── 📄 PRD templates for different project types
│   ├── 📄 Project initialization templates
│   └── 📄 Task structure templates
│
├── 📁 scripts/                                # Automation and utility scripts
│   ├── 🔧 sync-upstream.sh                  # Sync with upstream MCP repositories
│   ├── 🔧 compare-upstream-tools.js         # Compare tool versions with upstream
│   └── 📄 Various maintenance and setup scripts
│
├── 📁 .github/                                # GitHub Actions and repository configuration
│   ├── 📁 workflows/                         # CI/CD pipelines and automation
│   └── 📄 Issue and PR templates
│
├── 📁 client-configurations/                  # MCP client setup examples
│   ├── 📄 Cursor configuration examples
│   ├── 📄 Claude Desktop setup files
│   └── 📄 Various IDE integration examples
│
├── 📁 deployment/                             # Cloud deployment configurations
│   ├── 📄 GCP deployment configurations
│   ├── 📄 Railway deployment files
│   └── 📄 Docker configurations
│
├── 📁 public/                                 # Static assets and public files
│   └── 📄 Web interface assets (for cloud deployment)
│
├── 📁 .tasks/                                 # Internal task management data
│   └── 📄 Task storage and metadata (auto-managed)
│
├── 📁 .tmp/                                   # Temporary files and cache
│   └── 📄 Temporary workspace data and cache files
│
├── 📁 MCP documents/                          # MCP protocol documentation and examples
│   ├── 📄 Protocol specifications
│   ├── 📄 Integration examples and best practices
│   └── 📄 Client setup instructions
│
├── 📄 Core Configuration Files
├── 📄 package.json                           # Node.js dependencies and project metadata
├── 📄 config.json                           # ACF configuration and settings
├── 📄 tasks.json                            # Main task data storage
├── 📄 mcp-connection.json                   # MCP connection configuration
├── 📄 settings.json                         # User preferences and customizations
├── 📄 env.example                           # Environment variables template
├── 📄 setup.sh                              # Automated setup and installation script
├── 📄 quick-deploy.sh                       # One-command deployment script
│
├── 📄 Testing & Validation Files
├── 📄 test-simple-tools.js                  # Lightweight test suite for all tools
├── 📄 test-all-tools-comprehensive.sh       # Comprehensive bash-based test suite
├── 📄 test-mcp-proxy.sh                     # mcp-proxy integration testing
├── 📄 test-mcp-clients.sh                   # Client configuration testing
├── 📄 test-deployment-complete.sh           # End-to-end deployment validation
│
├── 📄 Deployment Files
├── 📄 Dockerfile.proxy                      # Docker configuration for mcp-proxy
├── 📄 docker-compose.yml                    # Multi-container deployment
├── 📄 mcp-proxy-config.yaml                 # mcp-proxy configuration
├── 📄 auth-proxy.js                         # Authentication proxy for cloud deployment
│
├── 📄 Documentation Files
├── 📄 README.md                             # This comprehensive guide
├── 📄 CHANGES.md                            # Version history and changelog
├── 📄 ACF-TESTING-SUMMARY.md               # Latest test analysis and status
├── 📄 SIMPLE-TEST-REPORT.md                 # Automated test execution results
├── 📄 COMPREHENSIVE-TEST-REPORT.md          # Detailed testing documentation
├── 📄 DEPLOYMENT-STATUS.md                  # Current deployment status and guides
├── 📄 GCP-DEPLOYMENT-GUIDE.md               # Google Cloud Platform deployment
├── 📄 MCP-PROXY-DEPLOYMENT.md               # mcp-proxy setup and configuration
├── 📄 CURSOR-SETUP-GUIDE.md                 # Cursor IDE integration guide
├── 📄 SETUP-INSTRUCTIONS.md                 # Quick setup instructions
├── 📄 WORKING-EXAMPLE.md                    # Live examples and demonstrations
├── 📄 MANUS_LIKE_ENHANCEMENT_PLAN.md        # Roadmap for autonomous agent features
├── 📄 CONSOLIDATED_TEST_REPORTS.md          # Consolidated testing analysis
│
└── 📄 tasks-table.md                        # Human-readable task status table

Key Components Explained

🔧 Core Executables

  • task-manager: Main CLI entry point for task management
  • agentic-control-framework-mcp: Primary MCP server for Cursor/Claude integration
  • task-cli.js: Alternative CLI interface with enhanced features

📊 Core Source Files

  • core.js: Core task management logic and data structures
  • mcp_server.js: MCP server with 64+ tools (main server file)
  • filesystem_tools.js: Filesystem operations for MCP integration

🛠️ Tool Categories

  • Browser Tools: Playwright-based browser automation
  • Terminal Tools: Command execution and process management
  • Search Tools: Advanced code search with ripgrep
  • Edit Tools: Surgical text editing and replacement
  • AppleScript Tools: macOS automation and system integration
  • Filesystem Tools: Enhanced file and directory operations

🧪 Testing Infrastructure

  • Comprehensive test suites for all configurations
  • Security validation tests and environment guardrails
  • Integration tests for MCP clients and cloud deployment

📚 Documentation System

  • Step-by-step tutorials for all usage modes
  • Complete tool reference documentation
  • Integration guides for various IDEs and clients
  • Deployment guides for cloud platforms

📊 Current Status

ComponentStatusDetails
CLI Mode✅ 100% WorkingAll task management and core tools functional
Local MCP✅ 100% WorkingAll tools functional - terminal, search, filesystem fixed
Cloud MCP✅ Readymcp-proxy integration working, startup timing optimized
Browser Tools✅ 100% ReadyPlaywright integration complete
AppleScript✅ 100% ReadymacOS automation ready

All tests passing! See ACF-TESTING-SUMMARY.md for detailed test results

🚀 Quick Start

Prerequisites

# Install Node.js 18+ node --version # Install dependencies npm install # Make CLI tools executable chmod +x bin/*

Test All Configurations

# Run comprehensive test suite node test-simple-tools.js

📋 Usage Modes

1. 🖥️ CLI Mode (100% Working)

Perfect for: Automated scripts, local development, CI/CD integration

Basic Task Management

# Initialize project cd your-project ./path/to/acf/bin/task-manager init -n "My Project" -d "Project description" # Add tasks ./path/to/acf/bin/task-manager add -t "Implement feature" -d "Add new functionality" -p high # List tasks ./path/to/acf/bin/task-manager list # Update task status ./path/to/acf/bin/task-manager status 1 inprogress -m "Started working" # Add subtasks ./path/to/acf/bin/task-manager add-subtask 1 -t "Write tests" # Get next actionable task ./path/to/acf/bin/task-manager next # Generate task files ./path/to/acf/bin/task-manager generate

Advanced CLI Usage

# Update task details ./path/to/acf/bin/task-manager update 1 -p medium --related-files "src/main.js,test/main.test.js" # Get task context ./path/to/acf/bin/task-manager get-context 1 # Remove completed tasks ./path/to/acf/bin/task-manager remove 1 # Generate markdown table ./path/to/acf/bin/task-manager table

Automation Examples

# Daily standup automation #!/bin/bash echo "📊 Daily Standup Report" echo "=======================" ./bin/task-manager list --status inprogress echo "" echo "Next Priority Tasks:" ./bin/task-manager next # CI/CD Integration #!/bin/bash # In your CI pipeline ./bin/task-manager add -t "Deploy v$VERSION" -d "Deploy to production" -p high ./bin/task-manager status $TASK_ID done -m "Deployed successfully"

2. 🔗 Local MCP Mode (60% Working)

Perfect for: IDE integration (Cursor, Claude Desktop), local development

Cursor Configuration

Option 1: Via Cursor Settings UI (Recommended)

  1. Open Cursor → Settings → MCP
  2. Add new server:
    • Name: acf-local
    • Command: node
    • Args: ["/path/to/agentic-control-framework/bin/agentic-control-framework-mcp", "--workspaceRoot", "/path/to/your/project"]
    • Environment:
      { "WORKSPACE_ROOT": "/path/to/your/project", "ALLOWED_DIRS": "/path/to/your/project:/tmp", "READONLY_MODE": "false" }

Option 2: Via settings.json

{ "mcp.servers": { "acf-local": { "command": "node", "args": [ "/path/to/agentic-control-framework/bin/agentic-control-framework-mcp", "--workspaceRoot", "/path/to/your/project" ], "env": { "WORKSPACE_ROOT": "/path/to/your/project", "ALLOWED_DIRS": "/path/to/your/project:/tmp", "READONLY_MODE": "false" } } } }

Claude Desktop Configuration

{ "mcpServers": { "acf-local": { "command": "node", "args": [ "/path/to/agentic-control-framework/bin/agentic-control-framework-mcp", "--workspaceRoot", "/path/to/your/project" ], "env": { "WORKSPACE_ROOT": "/path/to/your/project", "ALLOWED_DIRS": "/path/to/your/project:/tmp" } } } }

Usage Examples in IDE

Once configured, you can use natural language with your AI assistant:

"Add a new high-priority task for implementing user authentication"

"List all tasks that are currently in progress"

"Read the contents of src/main.js and create a task for adding error handling"

"Execute the test suite and create a task if there are failures"

"Search for all TODO comments in the codebase and create tasks for them"

"Take a screenshot of the application login page"

"Write a new file called docs/api.md with API documentation"

Available Tools in MCP Mode

CategoryToolsStatus
Task ManagementlistTasks, addTask, updateStatus, getNextTask, etc.✅ Working
Filesystemread_file, write_file, list_directory, search_files✅ Working
Terminalexecute_command, list_processes, kill_process⚠️ Partial
Browsernavigate, click, type, screenshot, pdf_save✅ Working
Search/Editsearch_code, edit_block⚠️ Partial
AppleScriptapplescript_execute (macOS only)✅ Working

3. ☁️ Cloud MCP Mode (33% Working)

Perfect for: Remote access, web clients, multi-client support

Setup Cloud Deployment

Local Development with mcp-proxy

# Install mcp-proxy npm install -g mcp-proxy # Start ACF with mcp-proxy export WORKSPACE_ROOT="/path/to/your/project" export ALLOWED_DIRS="/path/to/your/project:/tmp" mcp-proxy --port 8080 \ node bin/agentic-control-framework-mcp \ --workspaceRoot "$WORKSPACE_ROOT"

Test HTTP/SSE Endpoints

# Health check curl http://localhost:8080/health # MCP initialization curl -X POST http://localhost:8080/stream \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}' # List available tools curl -X POST http://localhost:8080/stream \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' # Call a tool curl -X POST http://localhost:8080/stream \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"listTasks","arguments":{}}}'

Cursor Configuration for Cloud Mode

{ "mcp.servers": { "acf-cloud": { "transport": "sse", "endpoint": "http://localhost:8080/sse" } } }

Deploy to Google Cloud Platform

# Authenticate gcloud auth login # Create project gcloud projects create acf-your-name-$(date +%s) export GCP_PROJECT_ID="your-project-id" # Deploy ./quick-deploy.sh gcp --proxy-only

🔧 All Available Tools

Core ACF Tools (15 tools) ✅

Task Management:
- listTasks: List all tasks with filtering
- addTask: Create new tasks with priority/dependencies
- addSubtask: Add subtasks to existing tasks
- updateStatus: Change task status (todo/inprogress/done/blocked/error)
- updateTask: Modify task details
- removeTask: Delete tasks or subtasks
- getNextTask: Get next actionable task based on priority/dependencies
- getContext: Get detailed task information
- generateTaskFiles: Create individual markdown files for tasks
- generateTaskTable: Create readable task status table
- parsePrd: Parse Product Requirements Documents
- expandTask: AI-powered task breakdown
- reviseTasks: AI-powered task revision
- setWorkspace: Configure workspace directory
- initProject: Initialize new ACF project

Filesystem Tools (13 tools) ⚠️

File Operations:
- read_file: Read file contents with type detection
- read_multiple_files: Read multiple files at once
- write_file: Write/create files
- copy_file: Copy files and directories
- move_file: Move/rename files
- delete_file: Delete files/directories
- get_file_info: File metadata and statistics

Directory Operations:
- list_directory: Detailed directory listing
- create_directory: Create directories
- tree: Hierarchical directory structure
- search_files: Find files by pattern
- list_allowed_directories: Show accessible paths
- get_filesystem_status: Show security status

Terminal Tools (8 tools) ⚠️

Command Execution:
- execute_command: Run shell commands with timeout
- read_output: Read from running processes
- force_terminate: Kill processes
- list_sessions: Show active terminal sessions
- list_processes: Show running processes
- kill_process: Terminate processes

Browser Automation Tools (22 tools) ✅

Navigation:
- browser_navigate: Navigate to URLs
- browser_navigate_back: Go back
- browser_navigate_forward: Go forward
- browser_close: Close browser

Interaction:
- browser_click: Click elements
- browser_type: Type text
- browser_hover: Hover over elements
- browser_drag: Drag and drop
- browser_select_option: Select dropdown options
- browser_press_key: Keyboard input

Capture:
- browser_take_screenshot: Screenshots
- browser_snapshot: Accessibility snapshots
- browser_pdf_save: Save as PDF

Management:
- browser_tab_list: List browser tabs
- browser_tab_new: Open new tabs
- browser_tab_select: Switch tabs
- browser_tab_close: Close tabs
- browser_file_upload: Upload files
- browser_wait: Wait for time/conditions
- browser_resize: Resize window
- browser_handle_dialog: Handle alerts/dialogs
- browser_console_messages: Get console logs
- browser_network_requests: Monitor network

Search & Edit Tools (2 tools) ⚠️

Code Operations:
- search_code: Advanced text/code search with ripgrep
- edit_block: Surgical text replacements

AppleScript Tools (1 tool) ✅

macOS Automation:
- applescript_execute: Run AppleScript for system integration

Configuration Tools (2 tools) ✅

Server Management:
- get_config: Get server configuration
- set_config_value: Update configuration values

📚 Example Use Cases

1. Automated Project Setup

# CLI approach ./bin/task-manager init -n "E-commerce App" -d "Build online store" ./bin/task-manager add -t "Setup project structure" -p high ./bin/task-manager add -t "Configure database" -p high ./bin/task-manager add -t "Implement user auth" -p medium ./bin/task-manager add -t "Add payment integration" -p medium ./bin/task-manager add -t "Deploy to production" -p low

2. Code Review Automation

// MCP approach - ask your AI assistant: "Search the codebase for any TODO comments and create tasks for each one" "Read all JavaScript files in src/ and create tasks for any functions missing error handling" "Take a screenshot of the app and create a task for any UI issues you notice"

3. CI/CD Integration

#!/bin/bash # In your GitHub Actions workflow - name: Update project tasks run: | ./bin/task-manager add -t "Test release v${{ github.event.release.tag_name }}" -p high ./bin/task-manager status $TASK_ID inprogress -m "Running tests for ${{ github.sha }}" # Run tests npm test if [ $? -eq 0 ]; then ./bin/task-manager status $TASK_ID done -m "Tests passed" else ./bin/task-manager status $TASK_ID error -m "Tests failed" fi

4. Browser Testing Automation

// Via MCP in your IDE "Navigate to our staging site and take screenshots of the login, dashboard, and profile pages" "Fill out the contact form with test data and take a screenshot of the success page" "Test the mobile responsiveness by resizing to phone dimensions and taking screenshots"

🔧 Development & Testing

Run Tests

# Comprehensive test suite node test-simple-tools.js # Individual component tests ./test-all-tools-comprehensive.sh

Development Setup

# Clone repository git clone https://github.com/your-org/agentic-control-framework.git cd agentic-control-framework # Install dependencies npm install # Setup development environment chmod +x bin/* export WORKSPACE_ROOT="$(pwd)" export ALLOWED_DIRS="$(pwd):/tmp" # Test CLI mode ./bin/task-manager list # Test MCP mode node bin/agentic-control-framework-mcp

🐛 Troubleshooting

CLI Mode Issues

# Check if tasks.json exists ls -la tasks.json # Verify permissions chmod +x bin/task-manager # Check Node.js version node --version # Should be 18+

MCP Mode Issues

# Check environment variables echo $WORKSPACE_ROOT echo $ALLOWED_DIRS # Test MCP server directly node bin/agentic-control-framework-mcp --help # Check file permissions ls -la bin/agentic-control-framework-mcp

Cloud Mode Issues

# Check mcp-proxy installation npm list -g mcp-proxy # Test proxy health curl http://localhost:8080/health # Check proxy logs mcp-proxy --port 8080 --debug node bin/agentic-control-framework-mcp

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Test your changes: node test-simple-tools.js
  4. Commit your changes: git commit -m 'Add amazing feature'
  5. Push to the branch: git push origin feature/amazing-feature
  6. Open a Pull Request

Testing Guidelines

  • All new tools must have CLI, MCP, and Cloud tests
  • Maintain or improve the current test coverage (68%+)
  • Add examples to this README for new functionality

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • MCP Protocol: For standardized AI-tool communication
  • Playwright: For browser automation capabilities
  • Commander.js: For excellent CLI interface
  • mcp-proxy: For HTTP/SSE bridge functionality

🚀 Ready to build your autonomous agent? Choose your mode and get started!

ModeUse CaseSetup TimeStatus
CLIScripts, automation2 minutes✅ Production Ready
Local MCPIDE integration5 minutes✅ Production Ready
Cloud MCPRemote access15 minutes✅ Production Ready

For detailed test results and improvement roadmap, see ACF-TESTING-SUMMARY.md.

MCP Now 重磅来袭,抢先一步体验