a2a-source-edit: write agent.py
This commit is contained in:
4
agent.py
4
agent.py
@@ -332,7 +332,7 @@ class AgentComplianceAuditor(A2AAgent[AgentComplianceAuditorConfig, NoAuth]):
|
|||||||
)
|
)
|
||||||
|
|
||||||
@a2a.tool(description="Inventory a deployed A2A agent card, repository evidence, manifests, exposure, provenance, resources, and health", timeout_seconds=180, idempotent=True, cost_class="read-only", input_schema=_tool_schema("inventory"))
|
@a2a.tool(description="Inventory a deployed A2A agent card, repository evidence, manifests, exposure, provenance, resources, and health", timeout_seconds=180, idempotent=True, cost_class="read-only", input_schema=_tool_schema("inventory"))
|
||||||
async def inventory_agent(self, ctx: RunContext[NoAuth], request: InventoryRequest) -> dict[str, Any]:
|
async def inventory_agent(self, ctx: RunContext[NoAuth], request: InventoryRequest) -> InventoryResult:
|
||||||
audit_id = _audit_id(request.target, request.options.audit_id)
|
audit_id = _audit_id(request.target, request.options.audit_id)
|
||||||
await _event(ctx, "audit_started", audit_id=audit_id, skill="inventory_agent", target=request.target.agent_name)
|
await _event(ctx, "audit_started", audit_id=audit_id, skill="inventory_agent", target=request.target.agent_name)
|
||||||
inventory, evidence, warnings, status = await _collect_inventory(self, ctx, request.target, request.options, audit_id)
|
inventory, evidence, warnings, status = await _collect_inventory(self, ctx, request.target, request.options, audit_id)
|
||||||
@@ -377,7 +377,7 @@ class AgentComplianceAuditor(A2AAgent[AgentComplianceAuditorConfig, NoAuth]):
|
|||||||
return RiskSummaryResult(audit_id=audit_id, target=request.target, status="ok", output_dir=output_dir, generated_files=files, risk_summary=summary, findings=all_findings)
|
return RiskSummaryResult(audit_id=audit_id, target=request.target, status="ok", output_dir=output_dir, generated_files=files, risk_summary=summary, findings=all_findings)
|
||||||
|
|
||||||
@a2a.tool(description="Generate actionable remediation and a machine-readable SARIF report for compliance findings", timeout_seconds=120, idempotent=True, cost_class="read-only", input_schema=_tool_schema("remediation"))
|
@a2a.tool(description="Generate actionable remediation and a machine-readable SARIF report for compliance findings", timeout_seconds=120, idempotent=True, cost_class="read-only", input_schema=_tool_schema("remediation"))
|
||||||
async def generate_remediation(self, ctx: RunContext[NoAuth], request: GenerateRemediationRequest) -> RemediationResult:
|
async def generate_remediation(self, ctx: RunContext[NoAuth], request: GenerateRemediationRequest) -> dict[str, Any]:
|
||||||
audit_id = _audit_id(request.target, request.options.audit_id)
|
audit_id = _audit_id(request.target, request.options.audit_id)
|
||||||
await _event(ctx, "audit_started", audit_id=audit_id, skill="generate_remediation", target=request.target.agent_name)
|
await _event(ctx, "audit_started", audit_id=audit_id, skill="generate_remediation", target=request.target.agent_name)
|
||||||
findings = _dedupe_findings(request.findings)
|
findings = _dedupe_findings(request.findings)
|
||||||
|
|||||||
Reference in New Issue
Block a user