{"name":"agent_brand_guidelines","supportedInterfaces":[{"url":"http://brand-guidelines-f80d4.agent-provider.svc.cluster.local:8080","protocolBinding":"JSONRPC"}],"version":"0.0.1","capabilities":{"streaming":true,"pushNotifications":true,"extensions":[{"uri":"https://google.github.io/adk-docs/a2a/a2a-extension/","description":"Ability to use the new agent executor implementation","required":false}]},"defaultInputModes":["text/plain","image/*","application/octet-stream"],"defaultOutputModes":["text/plain","image/*","application/octet-stream"],"skills":[{"id":"agent_brand_guidelines","name":"agent_brand_guidelines","description":"This workflow orchestrates the following nodes: router: Định tuyến mỗi invocation: file mới → submit; job_id trong message →\nreuse (bỏ OCR); hỏi lại → poll; không gì → hướng dẫn gửi file; submit_file: execute the submit_file node; poll_ocr: Poll /result tới khi completed/failed hoặc hết MAX_POLL_SECONDS; no_job_note: execute the no_job_note node; fail_note: execute the fail_note node; kb_wait: Chờ chunk index xong vào KnowledgeBase. disabled/failed/hết giờ → vẫn\ntrả kết quả (search trả rỗng); wait_note: Timeout OCR hoặc KB — dừng tại bước đó, todo giữ trạng thái chờ.\nUser nhắn lại (\"thử lại\"/\"xong chưa\") → router thấy job_id → poll tiếp; fetch_all: Fetch TOÀN BỘ chunk của doc (1 lần /search, filter job_id) -> merge 1\nchunk + gom toàn bộ ảnh. Không search keyword, không filter title; format_output: Đóng gói JSON cuối — FUNCTION node thuần, không LLM.\n\nDEBUG=true: mọi debug artifact (merged, search, llm_stats, metadata_summary)\nđược lưu ra file qua tools.dump_debug — KHÔNG nhét lại vào JSON result; extract: 1 LLM call duy nhất: đọc toàn bộ merge + danh sách ảnh, điền template\n(logos/colors/fonts/illustrations) -> JSON.","tags":["workflow"]}],"description":"","preferredTransport":"JSONRPC","protocolVersion":"0.3","url":"http://brand-guidelines-f80d4.agent-provider.svc.cluster.local:8080"}