UNPKG

aiwg

Version:

Cognitive architecture for AI-augmented software development with structured memory, ensemble validation, and closed-loop correction. FAIR-aligned artifacts, 84% cost reduction via human-in-the-loop, standards adopted by 100+ organizations.

463 lines (426 loc) 11.3 kB
# Grounding Agent Schema # Based on REF-022 AutoGen (ALFChat case study) # Issue: #184 $schema: "https://json-schema.org/draft/2020-12/schema" $id: "https://aiwg.io/schemas/grounding-agents/v1" title: "Grounding Agent Schema" description: | Schema for specialized grounding agents that inject domain-specific knowledge into conversations, improving accuracy and reducing hallucination per REF-022 AutoGen ALFChat case study. type: object required: - version - grounding_config - knowledge_bases properties: version: type: string pattern: "^\\d+\\.\\d+\\.\\d+$" default: "1.0.0" grounding_config: $ref: "#/$defs/GroundingConfig" knowledge_bases: $ref: "#/$defs/KnowledgeBases" verification: $ref: "#/$defs/VerificationConfig" $defs: GroundingConfig: type: object description: "Global grounding configuration" properties: enabled: type: boolean default: true injection_mode: type: string enum: - automatic # Ground all agent messages - on_request # Ground when explicitly requested - on_detection # Ground when claims detected default: automatic trigger_patterns: type: array items: type: string default: - "should be" - "must be" - "is required" - "according to" - "best practice" description: "Patterns that trigger grounding verification" confidence_threshold: type: number minimum: 0 maximum: 1 default: 0.7 description: "Minimum confidence to accept unverified claims" KnowledgeBases: type: object description: "Domain knowledge base configurations" properties: storage_path: type: string default: ".aiwg/knowledge/" domains: type: array items: $ref: "#/$defs/KnowledgeDomain" KnowledgeDomain: type: object required: - name - sources properties: name: type: string description: "Domain identifier (security, performance, compliance)" sources: type: array items: $ref: "#/$defs/KnowledgeSource" embedding_model: type: string default: "text-embedding-3-small" description: "Model for semantic search" update_frequency: type: string enum: [manual, daily, weekly] default: manual KnowledgeSource: type: object required: - name - type - location properties: name: type: string type: type: string enum: - json_file # Structured knowledge file - markdown # Documentation - external_api # External knowledge API - embedded # Pre-embedded vectors location: type: string priority: type: integer default: 100 description: "Lower = higher priority for conflicts" VerificationConfig: type: object description: "Claim verification settings" properties: enabled: type: boolean default: true claim_extraction: type: object properties: patterns: type: array items: type: string default: - "\\b(?:must|should|is required to|needs to)\\b" - "\\b(?:according to|per|as per)\\b" - "\\b(?:best practice|standard|guideline)\\b" min_claim_length: type: integer default: 10 verification_result: type: object properties: include_sources: type: boolean default: true include_confidence: type: boolean default: true include_correction: type: boolean default: true # Pre-built grounding agent definitions grounding_agents: security: name: "security-grounding-agent" domain: "security" description: "Verifies security claims against OWASP, CWE, and best practices" knowledge_sources: - name: "OWASP Top 10" type: json_file location: ".aiwg/knowledge/security/owasp-top-10.json" priority: 10 - name: "CWE Database" type: json_file location: ".aiwg/knowledge/security/cwe-database.json" priority: 20 - name: "Security Best Practices" type: json_file location: ".aiwg/knowledge/security/best-practices.json" priority: 50 verification_keywords: - "vulnerability" - "secure" - "encrypt" - "authenticate" - "authorize" - "injection" - "XSS" - "CSRF" applies_to_agents: - architect - software-implementer - code-reviewer performance: name: "performance-grounding-agent" domain: "performance" description: "Verifies performance claims and suggests optimizations" knowledge_sources: - name: "Performance Patterns" type: json_file location: ".aiwg/knowledge/performance/patterns.json" priority: 10 - name: "Benchmarks" type: json_file location: ".aiwg/knowledge/performance/benchmarks.json" priority: 30 verification_keywords: - "O(n)" - "complexity" - "latency" - "throughput" - "cache" - "optimize" applies_to_agents: - architect - software-implementer - performance-engineer compliance: name: "compliance-grounding-agent" domain: "compliance" description: "Verifies compliance claims for GDPR, HIPAA, SOC2" knowledge_sources: - name: "GDPR Requirements" type: json_file location: ".aiwg/knowledge/compliance/gdpr.json" priority: 10 - name: "HIPAA Requirements" type: json_file location: ".aiwg/knowledge/compliance/hipaa.json" priority: 10 - name: "SOC2 Controls" type: json_file location: ".aiwg/knowledge/compliance/soc2.json" priority: 10 verification_keywords: - "GDPR" - "HIPAA" - "SOC2" - "PII" - "consent" - "data retention" applies_to_agents: - architect - requirements-analyst - legal-liaison technology: name: "technology-grounding-agent" domain: "technology" description: "Verifies API usage and framework best practices" knowledge_sources: - name: "Framework Patterns" type: json_file location: ".aiwg/knowledge/technology/framework-patterns.json" priority: 30 - name: "API References" type: json_file location: ".aiwg/knowledge/technology/api-references.json" priority: 20 verification_keywords: - "API" - "method" - "function" - "deprecated" - "version" applies_to_agents: - software-implementer - test-engineer # Knowledge entry schema knowledge_entry: type: object required: - id - topic - content - source properties: id: type: string pattern: "^[A-Z]+-\\d{3}$" description: "Unique identifier (e.g., SEC-001, PERF-042)" topic: type: string content: type: string description: "The factual content" source: type: string description: "Authoritative source" url: type: string format: uri embedding: type: array items: type: number description: "Vector embedding for semantic search" related: type: array items: type: string description: "Related entry IDs" tags: type: array items: type: string confidence: type: number minimum: 0 maximum: 1 default: 1.0 last_verified: type: string format: date # Verification result schema verification_result: type: object required: - claim - verified properties: claim: type: string verified: type: boolean confidence: type: number minimum: 0 maximum: 1 sources: type: array items: type: object properties: entry_id: type: string content_excerpt: type: string relevance: type: number correction: type: string description: "Suggested correction if claim is incorrect" related_entries: type: array items: type: string # Grounding message schema grounding_message: type: object required: - type - verifications properties: type: type: string const: "grounding" original_message_id: type: string verifications: type: array items: $ref: "#/$defs/verification_result" injected_knowledge: type: array items: type: object properties: topic: type: string content: type: string source: type: string summary: type: string description: "Human-readable summary of grounding" # Agent protocol agent_protocol: ground_message: description: "Ground a message before delivery" triggers: - message_generated - explicit_request steps: - extract_claims_from_message - filter_by_domain_relevance - for_each_claim: - search_knowledge_base - verify_against_sources - if_not_verified: - flag_for_correction - retrieve_correct_information - if_claims_found: - generate_grounding_message - inject_into_conversation - log_grounding_activity verify_artifact: description: "Verify claims in generated artifacts" triggers: - artifact_generated steps: - load_artifact_content - extract_all_claims - verify_batch - generate_verification_report - if_unverified_claims: - flag_artifact - suggest_corrections # CLI integration cli_commands: knowledge_add: command: "aiwg knowledge add <domain> <source-file>" description: "Add knowledge source to domain" knowledge_update: command: "aiwg knowledge update <domain>" description: "Update knowledge base embeddings" knowledge_search: command: "aiwg knowledge search <query> --domain <domain>" description: "Search knowledge base" knowledge_verify: command: "aiwg knowledge verify <claim>" description: "Verify a specific claim" # Storage storage: knowledge_path: ".aiwg/knowledge/" embeddings_path: ".aiwg/knowledge/embeddings/" verification_log: ".aiwg/logs/grounding-verifications.jsonl" # Research targets (from REF-022) research_targets: accuracy_improvement: "+40% domain accuracy vs ungrounded" hallucination_reduction: "-35% factually incorrect claims" verification_speed: "<500ms per claim" # References references: research: - "@.aiwg/research/findings/REF-022-autogen.md" implementation: - "#184" related: - "@.claude/rules/conversable-agent-interface.md" - "@.claude/rules/auto-reply-chains.md" - "@agentic/code/frameworks/sdlc-complete/schemas/flows/tool-grounding.yaml"