{ "$schema": "https://a2a-protocol.org/schema/agent-card/v0.3", "name": "Harness Engineering Agent", "description": "A multi-agent harness for long-running AI coding projects. Accepts feature implementation tasks, entropy scans, architecture reviews, and orchestration requests. Operates across multiple providers (Claude Code, Copilot, Gemini CLI, Cursor, Roo, Cline, Windsurf, and others).", "url": "https://github.com/ArtemisAI/Harness_Engineering", "version": "1.0.0", "provider": { "organization": "ArtemisAI", "contact": "daniel@artemis-ai.ca", "url": "https://github.com/ArtemisAI/Harness_Engineering" }, "capabilities": { "streaming": false, "pushNotifications": false, "multiTurn": true, "extendedAgentCard": false }, "skills": [ { "id": "implement-feature", "name": "Implement Feature", "description": "Implement a spec-driven feature from docs/features// and mark it passing in features.json.", "inputModes": ["text/plain"], "outputModes": ["text/plain"], "inputSchema": { "type": "object", "properties": { "feature_id": { "type": "string", "pattern": "^feat-[0-9]{3,}$" }, "tier": { "type": "string", "enum": ["standard", "heavy"] } }, "required": ["feature_id"] }, "outputSchema": { "type": "object", "properties": { "status": { "type": "string", "enum": ["passing", "failing"] }, "verification_path": { "type": "string" } } } }, { "id": "entropy-check", "name": "Entropy Check", "description": "Scan codebase for drift, dead references, and doc inconsistencies. Return a structured report.", "inputModes": ["text/plain"], "outputModes": ["text/plain"], "inputSchema": { "type": "object", "properties": {} }, "outputSchema": { "type": "object", "properties": { "findings": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string" }, "location": { "type": "string" }, "description": { "type": "string" } } } }, "issues_opened": { "type": "integer" } } } }, { "id": "orchestrate", "name": "Orchestrate", "description": "Read swarm state and assign the next unassigned feature to the appropriate cost tier.", "inputModes": ["text/plain"], "outputModes": ["text/plain"], "inputSchema": { "type": "object", "properties": {} }, "outputSchema": { "type": "object", "properties": { "assignments": { "type": "array", "items": { "type": "object", "properties": { "feature_id": { "type": "string" }, "agent_id": { "type": "string" }, "tier": { "type": "string" } } } }, "stalls_detected": { "type": "integer" } } } } ], "securitySchemes": [], "defaultInputModes": ["text/plain"], "defaultOutputModes": ["text/plain"], "interfaces": [ { "type": "file-based", "description": "State coordination via git-tracked JSON files (features.json, agents.json, issues.json). No HTTP server — agents communicate through file-based handoffs." } ], "extensions": { "state_files": { "features": "features.json", "agents": "agents.json", "issues": "issues.json", "progress": "claude-progress.txt" }, "mcp_servers": { "filesystem": "@modelcontextprotocol/server-filesystem", "git": "mcp-server-git", "github": "https://api.githubcopilot.com/mcp/", "memory": "@modelcontextprotocol/server-memory", "deepwiki": "https://mcp.deepwiki.com/mcp", "context7": "https://mcp.context7.com/mcp" }, "delegation": { "pattern": "git-worktree", "brief_location": ".worktrees//BRIEF.md", "handoff_skill": "delegate-subagent" } } }