{ "schema_version": "2026-06-04", "language": "python", "name": "customer-integration-engineer", "description": "Guides and validates customer integrations from requirements through a tested handoff while keeping credentials and production changes under customer control.", "version": "0.1.6", "entrypoint": { "module": "agent", "class_name": "CustomerIntegrationEngineer", "function": null, "command": [] }, "skills": [ { "name": "design_integration", "description": "Capture requirements, produce architecture and field mapping artifacts", "handler": "design_integration", "tags": [], "scopes": [], "stream": false, "policy": { "timeout_seconds": 120.0, "idempotent": true, "max_retries": 0, "cost_class": "deterministic", "allow_scope_expansion": false, "grant_mode": "read_write_overlay", "grant_allow_patterns": [ "outputs/integrations/**" ], "grant_deny_patterns": [], "grant_outputs_prefix": "outputs/integrations/", "grant_write_prefixes": [ "outputs/integrations/" ], "grant_ttl_seconds": null, "grant_run_timeout_seconds": null, "grant_approval_timeout_seconds": null, "grant_scope_approval_timeout_seconds": null }, "input_schema": { "type": "object", "required": [ "request" ], "additionalProperties": false, "properties": { "request": { "$defs": { "AuthMethod": { "additionalProperties": false, "properties": { "system_name": { "maxLength": 80, "minLength": 1, "title": "System Name", "type": "string" }, "auth_type": { "enum": [ "none", "api_key", "bearer_token", "oauth2_client_credentials", "hmac_signature", "mtls", "basic", "oidc" ], "title": "Auth Type", "type": "string" }, "secret_ref": { "anyOf": [ { "pattern": "^[A-Z][A-Z0-9_]{2,127}$", "type": "string" }, { "type": "null" } ], "default": null, "description": "Caller-managed secret reference name only; never a raw secret value.", "title": "Secret Ref" }, "header_name": { "anyOf": [ { "maxLength": 80, "type": "string" }, { "type": "null" } ], "default": null, "title": "Header Name" }, "token_url": { "anyOf": [ { "maxLength": 2048, "type": "string" }, { "type": "null" } ], "default": null, "title": "Token Url" }, "scopes": { "items": { "type": "string" }, "maxItems": 20, "title": "Scopes", "type": "array" } }, "required": [ "system_name", "auth_type" ], "title": "AuthMethod", "type": "object" }, "ComplianceConstraint": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "category": { "enum": [ "pii", "phi", "pci", "soc2", "gdpr", "hipaa", "data_residency", "retention", "audit", "other" ], "title": "Category", "type": "string" }, "requirement": { "maxLength": 2000, "minLength": 1, "title": "Requirement", "type": "string" } }, "required": [ "name", "category", "requirement" ], "title": "ComplianceConstraint", "type": "object" }, "DataContract": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "direction": { "enum": [ "inbound", "outbound", "bidirectional" ], "title": "Direction", "type": "string" }, "content_type": { "default": "application/json", "maxLength": 120, "title": "Content Type", "type": "string" }, "schema_ref": { "anyOf": [ { "maxLength": 500, "type": "string" }, { "type": "null" } ], "default": null, "title": "Schema Ref" }, "fields": { "items": { "$ref": "#/$defs/FieldMapping" }, "maxItems": 200, "title": "Fields", "type": "array" }, "example_payload": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "title": "Example Payload" } }, "required": [ "name", "direction" ], "title": "DataContract", "type": "object" }, "EnvironmentSpec": { "additionalProperties": false, "properties": { "name": { "maxLength": 64, "minLength": 1, "title": "Name", "type": "string" }, "purpose": { "enum": [ "dev", "test", "sandbox", "staging", "prod" ], "title": "Purpose", "type": "string" }, "endpoint_refs": { "items": { "type": "string" }, "maxItems": 20, "title": "Endpoint Refs", "type": "array" }, "object_storage_ref": { "anyOf": [ { "maxLength": 128, "type": "string" }, { "type": "null" } ], "default": null, "title": "Object Storage Ref" }, "observability_ref": { "anyOf": [ { "maxLength": 128, "type": "string" }, { "type": "null" } ], "default": null, "title": "Observability Ref" }, "mutable": { "default": false, "title": "Mutable", "type": "boolean" } }, "required": [ "name", "purpose" ], "title": "EnvironmentSpec", "type": "object" }, "FieldMapping": { "additionalProperties": false, "properties": { "source": { "maxLength": 160, "minLength": 1, "title": "Source", "type": "string" }, "target": { "maxLength": 160, "minLength": 1, "title": "Target", "type": "string" }, "transform": { "default": "copy", "maxLength": 500, "title": "Transform", "type": "string" }, "required": { "default": true, "title": "Required", "type": "boolean" }, "pii": { "default": false, "title": "Pii", "type": "boolean" } }, "required": [ "source", "target" ], "title": "FieldMapping", "type": "object" }, "IntegrationRequirements": { "additionalProperties": false, "properties": { "integration_id": { "pattern": "^[a-z][a-z0-9-]{2,63}$", "title": "Integration Id", "type": "string" }, "title": { "maxLength": 160, "minLength": 1, "title": "Title", "type": "string" }, "systems": { "items": { "$ref": "#/$defs/SystemSpec" }, "maxItems": 12, "minItems": 1, "title": "Systems", "type": "array" }, "auth_methods": { "items": { "$ref": "#/$defs/AuthMethod" }, "maxItems": 12, "title": "Auth Methods", "type": "array" }, "data_contracts": { "items": { "$ref": "#/$defs/DataContract" }, "maxItems": 20, "title": "Data Contracts", "type": "array" }, "rate_limits": { "items": { "$ref": "#/$defs/RateLimitSpec" }, "maxItems": 20, "title": "Rate Limits", "type": "array" }, "environments": { "items": { "$ref": "#/$defs/EnvironmentSpec" }, "maxItems": 12, "title": "Environments", "type": "array" }, "compliance_constraints": { "items": { "$ref": "#/$defs/ComplianceConstraint" }, "maxItems": 30, "title": "Compliance Constraints", "type": "array" }, "success_criteria": { "items": { "$ref": "#/$defs/SuccessCriterion" }, "maxItems": 20, "minItems": 1, "title": "Success Criteria", "type": "array" }, "external_host_allowlist": { "items": { "type": "string" }, "maxItems": 50, "title": "External Host Allowlist", "type": "array" }, "repository_write_allowlist": { "items": { "type": "string" }, "maxItems": 20, "title": "Repository Write Allowlist", "type": "array" }, "notes": { "anyOf": [ { "maxLength": 4000, "type": "string" }, { "type": "null" } ], "default": null, "title": "Notes" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" } }, "required": [ "integration_id", "title", "systems", "success_criteria" ], "title": "IntegrationRequirements", "type": "object" }, "RateLimitSpec": { "additionalProperties": false, "properties": { "system_name": { "maxLength": 80, "minLength": 1, "title": "System Name", "type": "string" }, "max_requests": { "maximum": 1000000, "minimum": 1, "title": "Max Requests", "type": "integer" }, "per_seconds": { "maximum": 86400, "minimum": 1, "title": "Per Seconds", "type": "integer" }, "burst": { "anyOf": [ { "maximum": 1000000, "minimum": 1, "type": "integer" }, { "type": "null" } ], "default": null, "title": "Burst" }, "retry_after_header": { "anyOf": [ { "maxLength": 80, "type": "string" }, { "type": "null" } ], "default": "Retry-After", "title": "Retry After Header" } }, "required": [ "system_name", "max_requests", "per_seconds" ], "title": "RateLimitSpec", "type": "object" }, "SuccessCriterion": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "measurement": { "maxLength": 500, "minLength": 1, "title": "Measurement", "type": "string" }, "target": { "maxLength": 200, "minLength": 1, "title": "Target", "type": "string" } }, "required": [ "name", "measurement", "target" ], "title": "SuccessCriterion", "type": "object" }, "SystemSpec": { "additionalProperties": false, "properties": { "name": { "maxLength": 80, "minLength": 1, "title": "Name", "type": "string" }, "kind": { "enum": [ "rest_api", "webhook", "database", "object_storage", "observability", "gitea", "kubernetes", "argo_cd", "queue", "other" ], "title": "Kind", "type": "string" }, "base_url": { "anyOf": [ { "maxLength": 2048, "type": "string" }, { "type": "null" } ], "default": null, "title": "Base Url" }, "environment": { "default": "sandbox", "maxLength": 64, "title": "Environment", "type": "string" }, "owner": { "anyOf": [ { "maxLength": 120, "type": "string" }, { "type": "null" } ], "default": null, "title": "Owner" }, "notes": { "anyOf": [ { "maxLength": 2000, "type": "string" }, { "type": "null" } ], "default": null, "title": "Notes" } }, "required": [ "name", "kind" ], "title": "SystemSpec", "type": "object" } }, "additionalProperties": false, "properties": { "requirements": { "$ref": "#/$defs/IntegrationRequirements" }, "create_artifacts": { "default": true, "title": "Create Artifacts", "type": "boolean" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" } }, "required": [ "requirements" ], "title": "DesignIntegrationRequest", "type": "object" } } }, "output_schema": { "$defs": { "ArtifactRecord": { "additionalProperties": false, "properties": { "path": { "title": "Path", "type": "string" }, "sha256": { "title": "Sha256", "type": "string" }, "size_bytes": { "minimum": 0, "title": "Size Bytes", "type": "integer" }, "mime_type": { "title": "Mime Type", "type": "string" } }, "required": [ "path", "sha256", "size_bytes", "mime_type" ], "title": "ArtifactRecord", "type": "object" }, "AuditEntry": { "additionalProperties": false, "properties": { "ts": { "title": "Ts", "type": "string" }, "action": { "title": "Action", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "details": { "additionalProperties": true, "title": "Details", "type": "object" } }, "required": [ "ts", "action", "integration_id" ], "title": "AuditEntry", "type": "object" } }, "additionalProperties": false, "properties": { "status": { "enum": [ "ok", "needs_setup", "blocked", "failed" ], "title": "Status", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "dry_run": { "title": "Dry Run", "type": "boolean" }, "audit": { "items": { "$ref": "#/$defs/AuditEntry" }, "title": "Audit", "type": "array" }, "warnings": { "items": { "type": "string" }, "title": "Warnings", "type": "array" }, "residual_risks": { "items": { "type": "string" }, "title": "Residual Risks", "type": "array" }, "architecture_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Architecture Path" }, "mapping_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Mapping Path" }, "plan_digest": { "title": "Plan Digest", "type": "string" }, "artifacts": { "items": { "$ref": "#/$defs/ArtifactRecord" }, "title": "Artifacts", "type": "array" }, "architecture_summary": { "title": "Architecture Summary", "type": "string" }, "field_mapping_count": { "minimum": 0, "title": "Field Mapping Count", "type": "integer" }, "required_setup": { "items": { "type": "string" }, "title": "Required Setup", "type": "array" } }, "required": [ "status", "integration_id", "dry_run", "plan_digest", "architecture_summary", "field_mapping_count" ], "title": "DesignIntegrationResult", "type": "object" } }, { "name": "generate_connector", "description": "Generate a minimal workspace-contained connector scaffold with no deployment or repository mutation", "handler": "generate_connector", "tags": [], "scopes": [], "stream": false, "policy": { "timeout_seconds": 120.0, "idempotent": true, "max_retries": 0, "cost_class": "deterministic", "allow_scope_expansion": false, "grant_mode": "read_write_overlay", "grant_allow_patterns": [ "outputs/integrations/**" ], "grant_deny_patterns": [], "grant_outputs_prefix": "outputs/integrations/", "grant_write_prefixes": [ "outputs/integrations/" ], "grant_ttl_seconds": null, "grant_run_timeout_seconds": null, "grant_approval_timeout_seconds": null, "grant_scope_approval_timeout_seconds": null }, "input_schema": { "type": "object", "required": [ "request" ], "additionalProperties": false, "properties": { "request": { "$defs": { "AuthMethod": { "additionalProperties": false, "properties": { "system_name": { "maxLength": 80, "minLength": 1, "title": "System Name", "type": "string" }, "auth_type": { "enum": [ "none", "api_key", "bearer_token", "oauth2_client_credentials", "hmac_signature", "mtls", "basic", "oidc" ], "title": "Auth Type", "type": "string" }, "secret_ref": { "anyOf": [ { "pattern": "^[A-Z][A-Z0-9_]{2,127}$", "type": "string" }, { "type": "null" } ], "default": null, "description": "Caller-managed secret reference name only; never a raw secret value.", "title": "Secret Ref" }, "header_name": { "anyOf": [ { "maxLength": 80, "type": "string" }, { "type": "null" } ], "default": null, "title": "Header Name" }, "token_url": { "anyOf": [ { "maxLength": 2048, "type": "string" }, { "type": "null" } ], "default": null, "title": "Token Url" }, "scopes": { "items": { "type": "string" }, "maxItems": 20, "title": "Scopes", "type": "array" } }, "required": [ "system_name", "auth_type" ], "title": "AuthMethod", "type": "object" }, "ComplianceConstraint": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "category": { "enum": [ "pii", "phi", "pci", "soc2", "gdpr", "hipaa", "data_residency", "retention", "audit", "other" ], "title": "Category", "type": "string" }, "requirement": { "maxLength": 2000, "minLength": 1, "title": "Requirement", "type": "string" } }, "required": [ "name", "category", "requirement" ], "title": "ComplianceConstraint", "type": "object" }, "DataContract": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "direction": { "enum": [ "inbound", "outbound", "bidirectional" ], "title": "Direction", "type": "string" }, "content_type": { "default": "application/json", "maxLength": 120, "title": "Content Type", "type": "string" }, "schema_ref": { "anyOf": [ { "maxLength": 500, "type": "string" }, { "type": "null" } ], "default": null, "title": "Schema Ref" }, "fields": { "items": { "$ref": "#/$defs/FieldMapping" }, "maxItems": 200, "title": "Fields", "type": "array" }, "example_payload": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "title": "Example Payload" } }, "required": [ "name", "direction" ], "title": "DataContract", "type": "object" }, "EnvironmentSpec": { "additionalProperties": false, "properties": { "name": { "maxLength": 64, "minLength": 1, "title": "Name", "type": "string" }, "purpose": { "enum": [ "dev", "test", "sandbox", "staging", "prod" ], "title": "Purpose", "type": "string" }, "endpoint_refs": { "items": { "type": "string" }, "maxItems": 20, "title": "Endpoint Refs", "type": "array" }, "object_storage_ref": { "anyOf": [ { "maxLength": 128, "type": "string" }, { "type": "null" } ], "default": null, "title": "Object Storage Ref" }, "observability_ref": { "anyOf": [ { "maxLength": 128, "type": "string" }, { "type": "null" } ], "default": null, "title": "Observability Ref" }, "mutable": { "default": false, "title": "Mutable", "type": "boolean" } }, "required": [ "name", "purpose" ], "title": "EnvironmentSpec", "type": "object" }, "FieldMapping": { "additionalProperties": false, "properties": { "source": { "maxLength": 160, "minLength": 1, "title": "Source", "type": "string" }, "target": { "maxLength": 160, "minLength": 1, "title": "Target", "type": "string" }, "transform": { "default": "copy", "maxLength": 500, "title": "Transform", "type": "string" }, "required": { "default": true, "title": "Required", "type": "boolean" }, "pii": { "default": false, "title": "Pii", "type": "boolean" } }, "required": [ "source", "target" ], "title": "FieldMapping", "type": "object" }, "IntegrationRequirements": { "additionalProperties": false, "properties": { "integration_id": { "pattern": "^[a-z][a-z0-9-]{2,63}$", "title": "Integration Id", "type": "string" }, "title": { "maxLength": 160, "minLength": 1, "title": "Title", "type": "string" }, "systems": { "items": { "$ref": "#/$defs/SystemSpec" }, "maxItems": 12, "minItems": 1, "title": "Systems", "type": "array" }, "auth_methods": { "items": { "$ref": "#/$defs/AuthMethod" }, "maxItems": 12, "title": "Auth Methods", "type": "array" }, "data_contracts": { "items": { "$ref": "#/$defs/DataContract" }, "maxItems": 20, "title": "Data Contracts", "type": "array" }, "rate_limits": { "items": { "$ref": "#/$defs/RateLimitSpec" }, "maxItems": 20, "title": "Rate Limits", "type": "array" }, "environments": { "items": { "$ref": "#/$defs/EnvironmentSpec" }, "maxItems": 12, "title": "Environments", "type": "array" }, "compliance_constraints": { "items": { "$ref": "#/$defs/ComplianceConstraint" }, "maxItems": 30, "title": "Compliance Constraints", "type": "array" }, "success_criteria": { "items": { "$ref": "#/$defs/SuccessCriterion" }, "maxItems": 20, "minItems": 1, "title": "Success Criteria", "type": "array" }, "external_host_allowlist": { "items": { "type": "string" }, "maxItems": 50, "title": "External Host Allowlist", "type": "array" }, "repository_write_allowlist": { "items": { "type": "string" }, "maxItems": 20, "title": "Repository Write Allowlist", "type": "array" }, "notes": { "anyOf": [ { "maxLength": 4000, "type": "string" }, { "type": "null" } ], "default": null, "title": "Notes" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" } }, "required": [ "integration_id", "title", "systems", "success_criteria" ], "title": "IntegrationRequirements", "type": "object" }, "RateLimitSpec": { "additionalProperties": false, "properties": { "system_name": { "maxLength": 80, "minLength": 1, "title": "System Name", "type": "string" }, "max_requests": { "maximum": 1000000, "minimum": 1, "title": "Max Requests", "type": "integer" }, "per_seconds": { "maximum": 86400, "minimum": 1, "title": "Per Seconds", "type": "integer" }, "burst": { "anyOf": [ { "maximum": 1000000, "minimum": 1, "type": "integer" }, { "type": "null" } ], "default": null, "title": "Burst" }, "retry_after_header": { "anyOf": [ { "maxLength": 80, "type": "string" }, { "type": "null" } ], "default": "Retry-After", "title": "Retry After Header" } }, "required": [ "system_name", "max_requests", "per_seconds" ], "title": "RateLimitSpec", "type": "object" }, "SuccessCriterion": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "measurement": { "maxLength": 500, "minLength": 1, "title": "Measurement", "type": "string" }, "target": { "maxLength": 200, "minLength": 1, "title": "Target", "type": "string" } }, "required": [ "name", "measurement", "target" ], "title": "SuccessCriterion", "type": "object" }, "SystemSpec": { "additionalProperties": false, "properties": { "name": { "maxLength": 80, "minLength": 1, "title": "Name", "type": "string" }, "kind": { "enum": [ "rest_api", "webhook", "database", "object_storage", "observability", "gitea", "kubernetes", "argo_cd", "queue", "other" ], "title": "Kind", "type": "string" }, "base_url": { "anyOf": [ { "maxLength": 2048, "type": "string" }, { "type": "null" } ], "default": null, "title": "Base Url" }, "environment": { "default": "sandbox", "maxLength": 64, "title": "Environment", "type": "string" }, "owner": { "anyOf": [ { "maxLength": 120, "type": "string" }, { "type": "null" } ], "default": null, "title": "Owner" }, "notes": { "anyOf": [ { "maxLength": 2000, "type": "string" }, { "type": "null" } ], "default": null, "title": "Notes" } }, "required": [ "name", "kind" ], "title": "SystemSpec", "type": "object" } }, "additionalProperties": false, "properties": { "requirements": { "$ref": "#/$defs/IntegrationRequirements" }, "connector_language": { "default": "python", "enum": [ "python", "typescript" ], "title": "Connector Language", "type": "string" }, "include_tests": { "default": true, "title": "Include Tests", "type": "boolean" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" }, "external_host_allowlist": { "items": { "type": "string" }, "maxItems": 50, "title": "External Host Allowlist", "type": "array" }, "repository_write_allowlist": { "items": { "type": "string" }, "maxItems": 20, "title": "Repository Write Allowlist", "type": "array" } }, "required": [ "requirements" ], "title": "GenerateConnectorRequest", "type": "object" } } }, "output_schema": { "$defs": { "ArtifactRecord": { "additionalProperties": false, "properties": { "path": { "title": "Path", "type": "string" }, "sha256": { "title": "Sha256", "type": "string" }, "size_bytes": { "minimum": 0, "title": "Size Bytes", "type": "integer" }, "mime_type": { "title": "Mime Type", "type": "string" } }, "required": [ "path", "sha256", "size_bytes", "mime_type" ], "title": "ArtifactRecord", "type": "object" }, "AuditEntry": { "additionalProperties": false, "properties": { "ts": { "title": "Ts", "type": "string" }, "action": { "title": "Action", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "details": { "additionalProperties": true, "title": "Details", "type": "object" } }, "required": [ "ts", "action", "integration_id" ], "title": "AuditEntry", "type": "object" } }, "additionalProperties": false, "properties": { "status": { "enum": [ "ok", "needs_setup", "blocked", "failed" ], "title": "Status", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "dry_run": { "title": "Dry Run", "type": "boolean" }, "audit": { "items": { "$ref": "#/$defs/AuditEntry" }, "title": "Audit", "type": "array" }, "warnings": { "items": { "type": "string" }, "title": "Warnings", "type": "array" }, "residual_risks": { "items": { "type": "string" }, "title": "Residual Risks", "type": "array" }, "connector_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Connector Path" }, "test_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Test Path" }, "plan_digest": { "title": "Plan Digest", "type": "string" }, "artifacts": { "items": { "$ref": "#/$defs/ArtifactRecord" }, "title": "Artifacts", "type": "array" }, "generated_files": { "items": { "type": "string" }, "title": "Generated Files", "type": "array" }, "blocked_actions": { "items": { "type": "string" }, "title": "Blocked Actions", "type": "array" } }, "required": [ "status", "integration_id", "dry_run", "plan_digest" ], "title": "GenerateConnectorResult", "type": "object" } }, { "name": "validate_contract", "description": "Validate OpenAPI, JSON Schema, and webhook contracts with deterministic fixtures", "handler": "validate_contract", "tags": [], "scopes": [], "stream": false, "policy": { "timeout_seconds": 120.0, "idempotent": true, "max_retries": 0, "cost_class": "deterministic", "allow_scope_expansion": false, "grant_mode": "read_write_overlay", "grant_allow_patterns": [ "outputs/integrations/**" ], "grant_deny_patterns": [], "grant_outputs_prefix": "outputs/integrations/", "grant_write_prefixes": [ "outputs/integrations/" ], "grant_ttl_seconds": null, "grant_run_timeout_seconds": null, "grant_approval_timeout_seconds": null, "grant_scope_approval_timeout_seconds": null }, "input_schema": { "type": "object", "required": [ "request" ], "additionalProperties": false, "properties": { "request": { "$defs": { "ContractArtifact": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "kind": { "enum": [ "json_schema", "openapi_3", "webhook" ], "title": "Kind", "type": "string" }, "schema_doc": { "additionalProperties": true, "title": "Schema Doc", "type": "object" }, "fixtures": { "items": { "$ref": "#/$defs/ContractFixture" }, "maxItems": 50, "title": "Fixtures", "type": "array" }, "signature_header": { "anyOf": [ { "maxLength": 120, "type": "string" }, { "type": "null" } ], "default": null, "title": "Signature Header" }, "secret_ref": { "anyOf": [ { "pattern": "^[A-Z][A-Z0-9_]{2,127}$", "type": "string" }, { "type": "null" } ], "default": null, "title": "Secret Ref" } }, "required": [ "name", "kind", "schema_doc" ], "title": "ContractArtifact", "type": "object" }, "ContractFixture": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "payload": { "additionalProperties": true, "title": "Payload", "type": "object" }, "should_pass": { "default": true, "title": "Should Pass", "type": "boolean" } }, "required": [ "name", "payload" ], "title": "ContractFixture", "type": "object" } }, "additionalProperties": false, "properties": { "integration_id": { "pattern": "^[a-z][a-z0-9-]{2,63}$", "title": "Integration Id", "type": "string" }, "contracts": { "items": { "$ref": "#/$defs/ContractArtifact" }, "maxItems": 20, "minItems": 1, "title": "Contracts", "type": "array" }, "fail_on_drift": { "default": true, "title": "Fail On Drift", "type": "boolean" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" } }, "required": [ "integration_id", "contracts" ], "title": "ValidateContractRequest", "type": "object" } } }, "output_schema": { "$defs": { "ArtifactRecord": { "additionalProperties": false, "properties": { "path": { "title": "Path", "type": "string" }, "sha256": { "title": "Sha256", "type": "string" }, "size_bytes": { "minimum": 0, "title": "Size Bytes", "type": "integer" }, "mime_type": { "title": "Mime Type", "type": "string" } }, "required": [ "path", "sha256", "size_bytes", "mime_type" ], "title": "ArtifactRecord", "type": "object" }, "AuditEntry": { "additionalProperties": false, "properties": { "ts": { "title": "Ts", "type": "string" }, "action": { "title": "Action", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "details": { "additionalProperties": true, "title": "Details", "type": "object" } }, "required": [ "ts", "action", "integration_id" ], "title": "AuditEntry", "type": "object" }, "ContractCheck": { "additionalProperties": false, "properties": { "name": { "title": "Name", "type": "string" }, "kind": { "title": "Kind", "type": "string" }, "status": { "enum": [ "pass", "fail", "warn" ], "title": "Status", "type": "string" }, "findings": { "items": { "type": "string" }, "title": "Findings", "type": "array" }, "fixture_results": { "items": { "additionalProperties": true, "type": "object" }, "title": "Fixture Results", "type": "array" } }, "required": [ "name", "kind", "status" ], "title": "ContractCheck", "type": "object" } }, "additionalProperties": false, "properties": { "status": { "enum": [ "ok", "needs_setup", "blocked", "failed" ], "title": "Status", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "dry_run": { "title": "Dry Run", "type": "boolean" }, "audit": { "items": { "$ref": "#/$defs/AuditEntry" }, "title": "Audit", "type": "array" }, "warnings": { "items": { "type": "string" }, "title": "Warnings", "type": "array" }, "residual_risks": { "items": { "type": "string" }, "title": "Residual Risks", "type": "array" }, "contract_report_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Contract Report Path" }, "artifacts": { "items": { "$ref": "#/$defs/ArtifactRecord" }, "title": "Artifacts", "type": "array" }, "checks": { "items": { "$ref": "#/$defs/ContractCheck" }, "title": "Checks", "type": "array" }, "drift_detected": { "default": false, "title": "Drift Detected", "type": "boolean" } }, "required": [ "status", "integration_id", "dry_run" ], "title": "ValidateContractResult", "type": "object" } }, { "name": "run_acceptance", "description": "Run dry-run or allowlisted acceptance checks using endpoint metadata and secret references", "handler": "run_acceptance", "tags": [], "scopes": [], "stream": false, "policy": { "timeout_seconds": 180.0, "idempotent": true, "max_retries": 0, "cost_class": "deterministic", "allow_scope_expansion": false, "grant_mode": "read_write_overlay", "grant_allow_patterns": [ "outputs/integrations/**" ], "grant_deny_patterns": [], "grant_outputs_prefix": "outputs/integrations/", "grant_write_prefixes": [ "outputs/integrations/" ], "grant_ttl_seconds": null, "grant_run_timeout_seconds": null, "grant_approval_timeout_seconds": null, "grant_scope_approval_timeout_seconds": null }, "input_schema": { "type": "object", "required": [ "request" ], "additionalProperties": false, "properties": { "request": { "$defs": { "ContractArtifact": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "kind": { "enum": [ "json_schema", "openapi_3", "webhook" ], "title": "Kind", "type": "string" }, "schema_doc": { "additionalProperties": true, "title": "Schema Doc", "type": "object" }, "fixtures": { "items": { "$ref": "#/$defs/ContractFixture" }, "maxItems": 50, "title": "Fixtures", "type": "array" }, "signature_header": { "anyOf": [ { "maxLength": 120, "type": "string" }, { "type": "null" } ], "default": null, "title": "Signature Header" }, "secret_ref": { "anyOf": [ { "pattern": "^[A-Z][A-Z0-9_]{2,127}$", "type": "string" }, { "type": "null" } ], "default": null, "title": "Secret Ref" } }, "required": [ "name", "kind", "schema_doc" ], "title": "ContractArtifact", "type": "object" }, "ContractFixture": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "payload": { "additionalProperties": true, "title": "Payload", "type": "object" }, "should_pass": { "default": true, "title": "Should Pass", "type": "boolean" } }, "required": [ "name", "payload" ], "title": "ContractFixture", "type": "object" }, "EndpointTest": { "additionalProperties": false, "properties": { "name": { "maxLength": 120, "minLength": 1, "title": "Name", "type": "string" }, "method": { "default": "POST", "enum": [ "GET", "POST", "PUT", "PATCH", "DELETE" ], "title": "Method", "type": "string" }, "url": { "maxLength": 2048, "title": "Url", "type": "string" }, "expected_status": { "default": 200, "maximum": 599, "minimum": 100, "title": "Expected Status", "type": "integer" }, "request_json": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "title": "Request Json" }, "required_secret_refs": { "items": { "type": "string" }, "maxItems": 10, "title": "Required Secret Refs", "type": "array" }, "idempotency_key": { "anyOf": [ { "maxLength": 160, "type": "string" }, { "type": "null" } ], "default": null, "title": "Idempotency Key" } }, "required": [ "name", "url" ], "title": "EndpointTest", "type": "object" } }, "additionalProperties": false, "properties": { "integration_id": { "pattern": "^[a-z][a-z0-9-]{2,63}$", "title": "Integration Id", "type": "string" }, "endpoint_tests": { "items": { "$ref": "#/$defs/EndpointTest" }, "maxItems": 20, "title": "Endpoint Tests", "type": "array" }, "contract_fixtures": { "items": { "$ref": "#/$defs/ContractArtifact" }, "maxItems": 20, "title": "Contract Fixtures", "type": "array" }, "external_host_allowlist": { "items": { "type": "string" }, "maxItems": 50, "title": "External Host Allowlist", "type": "array" }, "allow_network": { "default": false, "title": "Allow Network", "type": "boolean" }, "max_retries": { "default": 1, "maximum": 3, "minimum": 0, "title": "Max Retries", "type": "integer" }, "timeout_seconds": { "default": 8.0, "maximum": 30.0, "minimum": 1.0, "title": "Timeout Seconds", "type": "number" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" } }, "required": [ "integration_id" ], "title": "RunAcceptanceRequest", "type": "object" } } }, "output_schema": { "$defs": { "AcceptanceStepResult": { "additionalProperties": false, "properties": { "name": { "title": "Name", "type": "string" }, "status": { "enum": [ "pass", "fail", "skipped", "blocked" ], "title": "Status", "type": "string" }, "attempts": { "minimum": 0, "title": "Attempts", "type": "integer" }, "detail": { "title": "Detail", "type": "string" }, "idempotency_key": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Idempotency Key" } }, "required": [ "name", "status", "attempts", "detail" ], "title": "AcceptanceStepResult", "type": "object" }, "ArtifactRecord": { "additionalProperties": false, "properties": { "path": { "title": "Path", "type": "string" }, "sha256": { "title": "Sha256", "type": "string" }, "size_bytes": { "minimum": 0, "title": "Size Bytes", "type": "integer" }, "mime_type": { "title": "Mime Type", "type": "string" } }, "required": [ "path", "sha256", "size_bytes", "mime_type" ], "title": "ArtifactRecord", "type": "object" }, "AuditEntry": { "additionalProperties": false, "properties": { "ts": { "title": "Ts", "type": "string" }, "action": { "title": "Action", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "details": { "additionalProperties": true, "title": "Details", "type": "object" } }, "required": [ "ts", "action", "integration_id" ], "title": "AuditEntry", "type": "object" }, "ContractCheck": { "additionalProperties": false, "properties": { "name": { "title": "Name", "type": "string" }, "kind": { "title": "Kind", "type": "string" }, "status": { "enum": [ "pass", "fail", "warn" ], "title": "Status", "type": "string" }, "findings": { "items": { "type": "string" }, "title": "Findings", "type": "array" }, "fixture_results": { "items": { "additionalProperties": true, "type": "object" }, "title": "Fixture Results", "type": "array" } }, "required": [ "name", "kind", "status" ], "title": "ContractCheck", "type": "object" } }, "additionalProperties": false, "properties": { "status": { "enum": [ "ok", "needs_setup", "blocked", "failed" ], "title": "Status", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "dry_run": { "title": "Dry Run", "type": "boolean" }, "audit": { "items": { "$ref": "#/$defs/AuditEntry" }, "title": "Audit", "type": "array" }, "warnings": { "items": { "type": "string" }, "title": "Warnings", "type": "array" }, "residual_risks": { "items": { "type": "string" }, "title": "Residual Risks", "type": "array" }, "acceptance_report_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Acceptance Report Path" }, "artifacts": { "items": { "$ref": "#/$defs/ArtifactRecord" }, "title": "Artifacts", "type": "array" }, "step_results": { "items": { "$ref": "#/$defs/AcceptanceStepResult" }, "title": "Step Results", "type": "array" }, "contract_results": { "items": { "$ref": "#/$defs/ContractCheck" }, "title": "Contract Results", "type": "array" }, "network_calls_made": { "minimum": 0, "title": "Network Calls Made", "type": "integer" } }, "required": [ "status", "integration_id", "dry_run", "network_calls_made" ], "title": "RunAcceptanceResult", "type": "object" } }, { "name": "prepare_handoff", "description": "Prepare rollout, rollback, monitoring, and operator handoff documentation with approval-gated delivery planning", "handler": "prepare_handoff", "tags": [], "scopes": [], "stream": false, "policy": { "timeout_seconds": 120.0, "idempotent": true, "max_retries": 0, "cost_class": "deterministic", "allow_scope_expansion": false, "grant_mode": "read_write_overlay", "grant_allow_patterns": [ "outputs/integrations/**" ], "grant_deny_patterns": [], "grant_outputs_prefix": "outputs/integrations/", "grant_write_prefixes": [ "outputs/integrations/" ], "grant_ttl_seconds": null, "grant_run_timeout_seconds": null, "grant_approval_timeout_seconds": null, "grant_scope_approval_timeout_seconds": null }, "input_schema": { "type": "object", "required": [ "request" ], "additionalProperties": false, "properties": { "request": { "$defs": { "HandoffSection": { "additionalProperties": false, "properties": { "heading": { "maxLength": 120, "minLength": 1, "title": "Heading", "type": "string" }, "body": { "maxLength": 8000, "minLength": 1, "title": "Body", "type": "string" } }, "required": [ "heading", "body" ], "title": "HandoffSection", "type": "object" } }, "additionalProperties": false, "properties": { "integration_id": { "pattern": "^[a-z][a-z0-9-]{2,63}$", "title": "Integration Id", "type": "string" }, "title": { "maxLength": 160, "minLength": 1, "title": "Title", "type": "string" }, "rollout_steps": { "items": { "type": "string" }, "maxItems": 30, "minItems": 1, "title": "Rollout Steps", "type": "array" }, "rollback_steps": { "items": { "type": "string" }, "maxItems": 30, "minItems": 1, "title": "Rollback Steps", "type": "array" }, "monitoring_checks": { "items": { "type": "string" }, "maxItems": 30, "minItems": 1, "title": "Monitoring Checks", "type": "array" }, "operator_notes": { "items": { "$ref": "#/$defs/HandoffSection" }, "maxItems": 20, "title": "Operator Notes", "type": "array" }, "delivery_actions": { "items": { "type": "string" }, "maxItems": 20, "title": "Delivery Actions", "type": "array" }, "plan_digest": { "anyOf": [ { "maxLength": 128, "type": "string" }, { "type": "null" } ], "default": null, "title": "Plan Digest" }, "approval_phrase": { "anyOf": [ { "maxLength": 64, "type": "string" }, { "type": "null" } ], "default": null, "title": "Approval Phrase" }, "approve_delivery": { "default": false, "title": "Approve Delivery", "type": "boolean" }, "dry_run": { "default": true, "title": "Dry Run", "type": "boolean" } }, "required": [ "integration_id", "title", "rollout_steps", "rollback_steps", "monitoring_checks" ], "title": "PrepareHandoffRequest", "type": "object" } } }, "output_schema": { "$defs": { "ArtifactRecord": { "additionalProperties": false, "properties": { "path": { "title": "Path", "type": "string" }, "sha256": { "title": "Sha256", "type": "string" }, "size_bytes": { "minimum": 0, "title": "Size Bytes", "type": "integer" }, "mime_type": { "title": "Mime Type", "type": "string" } }, "required": [ "path", "sha256", "size_bytes", "mime_type" ], "title": "ArtifactRecord", "type": "object" }, "AuditEntry": { "additionalProperties": false, "properties": { "ts": { "title": "Ts", "type": "string" }, "action": { "title": "Action", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "details": { "additionalProperties": true, "title": "Details", "type": "object" } }, "required": [ "ts", "action", "integration_id" ], "title": "AuditEntry", "type": "object" } }, "additionalProperties": false, "properties": { "status": { "enum": [ "ok", "needs_setup", "blocked", "failed" ], "title": "Status", "type": "string" }, "integration_id": { "title": "Integration Id", "type": "string" }, "dry_run": { "title": "Dry Run", "type": "boolean" }, "audit": { "items": { "$ref": "#/$defs/AuditEntry" }, "title": "Audit", "type": "array" }, "warnings": { "items": { "type": "string" }, "title": "Warnings", "type": "array" }, "residual_risks": { "items": { "type": "string" }, "title": "Residual Risks", "type": "array" }, "handoff_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Handoff Path" }, "plan_digest": { "title": "Plan Digest", "type": "string" }, "artifacts": { "items": { "$ref": "#/$defs/ArtifactRecord" }, "title": "Artifacts", "type": "array" }, "approval_required": { "title": "Approval Required", "type": "boolean" }, "approval_valid": { "title": "Approval Valid", "type": "boolean" }, "delivery_executed": { "default": false, "title": "Delivery Executed", "type": "boolean" } }, "required": [ "status", "integration_id", "dry_run", "plan_digest", "approval_required", "approval_valid" ], "title": "PrepareHandoffResult", "type": "object" } } ], "capabilities": {}, "input_modes": [ "application/json" ], "output_modes": [ "application/json" ], "required_secrets": [], "required_env": [], "consumer_setup": { "fields": [ { "name": "GITEA_REPOSITORY", "kind": "config", "label": "Gitea repository", "description": "Optional owner/repo target controlled by the caller.", "required": false, "input_type": "text", "options": [] }, { "name": "GITEA_TOKEN", "kind": "secret", "label": "Gitea token", "description": "Optional caller-managed token reference; never returned or stored.", "required": false, "input_type": "password", "options": [] }, { "name": "API_BASE_URL", "kind": "config", "label": "API base URL", "description": "Optional endpoint used only when allowlisted and dry_run=false.", "required": false, "input_type": "url", "options": [] }, { "name": "API_AUTH_TOKEN", "kind": "secret", "label": "API auth token", "description": "Optional caller-managed API credential reference.", "required": false, "input_type": "password", "options": [] }, { "name": "OBJECT_STORAGE_REF", "kind": "config", "label": "Object storage reference", "description": "Caller-owned object storage config reference.", "required": false, "input_type": "text", "options": [] }, { "name": "OBSERVABILITY_REF", "kind": "config", "label": "Observability reference", "description": "Caller-owned logs/metrics/traces reference.", "required": false, "input_type": "text", "options": [] }, { "name": "KUBERNETES_CONTEXT_REF", "kind": "config", "label": "Kubernetes context reference", "description": "Optional caller-owned Kubernetes context reference.", "required": false, "input_type": "text", "options": [] }, { "name": "ARGOCD_APP_REF", "kind": "config", "label": "Argo CD app reference", "description": "Optional caller-owned Argo CD app reference.", "required": false, "input_type": "text", "options": [] } ] }, "runtime": { "lifecycle": "ephemeral", "availability": "on_demand", "state": "none", "sandbox": "microsandbox", "resources": { "cpu": "500m", "memory": "512Mi", "gpu": 0, "max_runtime_seconds": 600 }, "concurrency": 1, "egress": { "allow_hosts": [], "allow_internal_services": [], "deny_internet_by_default": true }, "tools_used": [ "pydantic", "jsonschema", "httpx" ], "llm_provisioning": "platform", "pricing": { "price_per_call_usd": 0.0, "caller_pays_llm": false, "notes": "Deterministic no-LLM integration engineering; callers keep credentials and production changes under their control." }, "wants_cp_jwt": false, "platform_resources": { "memory": null, "databases": [] }, "endpoints": [], "apt_packages": [] }, "template_lineage": null, "meta_agent_manifest": null, "state_schema": null, "workspace_access": { "enabled": true, "max_files": 256, "allowed_modes": [ "read_only", "read_write_overlay" ], "require_reason": true, "deny_patterns": [ "**/.env", "**/*secret*", "**/*token*", "**/id_rsa", "**/.git/**" ], "require_human_approval": false, "max_total_size_bytes": 20971520 }, "config_schema": { "additionalProperties": false, "properties": { "default_dry_run": { "default": true, "title": "Default Dry Run", "type": "boolean" } }, "title": "CustomerIntegrationEngineerConfig", "type": "object" }, "auth": { "model": "a2a_pack.auth.NoAuth", "strategy": "public", "principal_schema": { "additionalProperties": false, "description": "Public agent: no caller identity required.", "properties": {}, "title": "NoAuth", "type": "object" }, "resolver": null, "required": false }, "metadata": { "source": "python-a2a-pack", "project_manifest": { "name": "customer-integration-engineer", "version": "0.1.6", "entrypoint": "agent:CustomerIntegrationEngineer" } } }