{"id":"cmrodgqra0ek1ad08qwiiq0hy","slug":"cms-cwork-skilsskill","publicId":"a099c067-f8c3-4560-a469-010d5227e3fa","name":"cms-cwork-skils/SKILL","description":"CWork 工作协同原子能力集，覆盖员工搜索、文件上传下载、发送/回复汇报、收发件箱、汇报详情、任务、待办、事项、插件聚合、新消息、已读状态与 AI 问答；适用于“汇报、待办、任务、附件、消息、已读、员工查询”等场景；仅支持 appKey 鉴权并按需加载接口执行组合调用。","version":"","author":null,"license":"","compatibility":"","status":"completed","overallGrade":"B","scannerVersion":1,"fileCount":0,"hasSkillMd":false,"hasScripts":false,"hasReferences":false,"hasEvals":false,"hasAssets":false,"sourceType":"cli","sourceUrl":"","createdAt":"2026-07-17T03:22:17.486Z","completedAt":"2026-07-17T03:22:15.787Z","visibility":"public","publishedAt":"2026-07-28T14:40:42.721Z","category":"","frameworks":[],"badgeStatus":"conditional","downloadCount":0,"verdictRationale":null,"verdictPolicyVersion":null,"skillId":"cmrodgpzb0dkcad0867xghsrn","findings":[{"id":"cmrodgy3b0lgkad08n0j9cuxt","source":"vettd","category":"security","label":"References external URL — review for indirect prompt injection risk","detail":"External URL(s) detected in SKILL.md — referenced content can change after audit","severity":"medium","ruleId":"VTD-0088","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"885bf1b4de9a77b02bbb1cdf717927d5","filepath":""},{"id":"cmrodgy3b0lgjad0830txkoag","source":"vettd","category":"security","label":"No prompt injection or jailbreak signals detected","detail":"Scanned text content for instruction override, jailbreak framing, credential solicitation, and embedded injection markers","severity":"info","ruleId":"VTD-0092","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"ee5675c6452295fc92108d4c30cfebf6","filepath":""},{"id":"cmrodgy3a0lexad08pwiflxm9","source":"vettd","category":"security","label":"No repository link","detail":"No repository field found in SKILL.md frontmatter. Skills without a verifiable source repository cannot be externally audited.","severity":"info","ruleId":"VTD-0083","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"e09767e7943872a2754f559ba01ef7db","filepath":""},{"id":"cmrodgy3b0lgiad085zxsuha1","source":"vettd","category":"security","label":"No secrets or unsafe code patterns detected","detail":"Scanned all files for credentials, private keys, and code-level risks (eval, shell exec, destructive ops)","severity":"info","ruleId":"VTD-0091","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"2e3428ecd3c04cac33cabd959f51437a","filepath":""},{"id":"cmrodgy3a0leuad08gs672qfm","source":"vettd","category":"structure","label":"scripts/ directory present","detail":"Bundled executable scripts found","severity":"info","ruleId":"VTD-0096","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"21a167b473d29b0a653734953d43b2fc","filepath":""},{"id":"cmrodgy3a0letad08k86ntlxc","source":"vettd","category":"structure","label":"SKILL.md present","detail":"Required skill definition file found","severity":"info","ruleId":"VTD-0095","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"c4ab14319b89c3d0802fadf0dd105bac","filepath":""},{"id":"cmrodgy3a0lewad080magxw5t","source":"vettd","category":"structure","label":"Valid name field","detail":"Name \"cms-cwork-skils\" follows spec (lowercase, hyphens, ≤64 chars)","severity":"info","ruleId":"VTD-0099","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"5ba54eca0b3e299a99112de98cbcd97f","filepath":""},{"id":"cmrodgy3a0lezad086e6uxi90","source":"vettd","category":"description","label":"Description lacks usage context","detail":"Add context like \"Use this skill when...\" to help agents know when to activate it","severity":"info","ruleId":"VTD-0111","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"e325ab773f2c18f6f9d864add6464110","filepath":""},{"id":"cmrodgy3a0leyad08v8uhf5v7","source":"vettd","category":"description","label":"Description within character limit","detail":"136/1024 characters used","severity":"info","ruleId":"VTD-0110","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"66553d595a652c45a6f0d4353184b37e","filepath":""},{"id":"cmrodgy3a0lf1ad08tx5xjcah","source":"vettd","category":"best-practices","label":"Examples included","detail":"Found code blocks, input/output samples, or an examples section — concrete samples help agents pattern-match effectively","severity":"info","ruleId":"VTD-0103","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"c2ceb48c4af3c87dafa32ec2596251b8","filepath":""},{"id":"cmrodgy3a0lf3ad08wxaiv96s","source":"vettd","category":"best-practices","label":"Progressive disclosure used","detail":"SKILL.md body references files in references/, scripts/, or assets/ — agents can load additional context on demand instead of consuming everything upfront","severity":"info","ruleId":"VTD-0107","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"6fd5870d64ef20cb2bbaf421f8655a32","filepath":""},{"id":"cmrodgy3a0lf0ad0875830lxz","source":"vettd","category":"best-practices","label":"SKILL.md body length is reasonable","detail":"227 lines (recommended: under 500)","severity":"info","ruleId":"VTD-0101","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"42debaa072535bf5650f90d3168f0b93","filepath":""},{"id":"cmrodgy3a0lf2ad08932qi1ee","source":"vettd","category":"best-practices","label":"Step-by-step workflow found","detail":"Structured procedures improve reliability for complex tasks","severity":"info","ruleId":"VTD-0106","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"2368c9a31ac52269c854f105795cf28c","filepath":""},{"id":"cmrodgy3a0lf4ad08p3rz59mw","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/ai-qa/ask-sse.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lf6ad086h08y4q0","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/employee-service/get-by-person-ids.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lf8ad088q9icdmc","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/employee-service/get-org-info.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfaad08cbo3cv08","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/file-service/get-download-info.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfcad08b6vu8k0b","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/file-service/upload-file.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfead08109d1e8c","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/inbox/get-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfgad08imw0uj4k","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/outbox/get-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfiad08pb3zl4fy","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/plan-create/create-simple.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfkad08n3quelt7","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/plugin-report/get-latest-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfmad08d1jpucgh","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/plugin-report/get-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfoad089iyf2oya","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/plugin-report/get-unread-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfqad08i0wqmcoc","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-detail/get-info.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfsad08faat0xou","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-message/find-my-new-msg-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfuad08zuwkez0t","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-message/read-report.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfwad081cgeq34w","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-query/get-todo-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lfyad08qwbawprd","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-query/get-unread-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lg0ad085zfhq0qd","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-query/is-report-read.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lg2ad081vulsfxf","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-write/reply.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lg4ad08u96qf4yy","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/report-write/submit.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lg6ad08kklqmzak","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/tasks/get-page.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lg8ad081n93xv08","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/tasks/get-simple-plan-and-report-info.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3b0lgaad08wgpa6fuy","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/todos/complete.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3b0lgcad08tyhs6ej3","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/todos/get-list.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3b0lgead08d3sybgpl","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/todos/list-created-feedbacks.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3b0lggad08b35y2n4o","source":"vettd","category":"scripts","label":"CLI help supported","detail":"scripts/user-search/search-emp.py: Script documents its interface via --help or argument parsing","severity":"info","ruleId":"VTD-0114","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"bacfb1a11efd590203ff7c5670ad38d8","filepath":""},{"id":"cmrodgy3a0lf5ad08uyism4y5","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/ai-qa/ask-sse.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lf7ad08k69qnb51","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/employee-service/get-by-person-ids.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lf9ad08qg0lg366","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/employee-service/get-org-info.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfbad08ns77ot6e","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/file-service/get-download-info.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfdad08nuc1db0i","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/file-service/upload-file.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lffad08171zjm1b","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/inbox/get-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfhad08o5iduiyq","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/outbox/get-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfjad0819yfrqgs","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/plan-create/create-simple.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lflad08f1robqhg","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/plugin-report/get-latest-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfnad08v5jl78zf","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/plugin-report/get-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfpad08zub6ulob","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/plugin-report/get-unread-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfrad08ajpdvz13","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-detail/get-info.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lftad08emjj7hzq","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-message/find-my-new-msg-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfvad0860xveilt","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-message/read-report.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfxad08fs43f2eu","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-query/get-todo-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lfzad08qcs6vxde","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-query/get-unread-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lg1ad08384nox4d","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-query/is-report-read.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lg3ad08yj6jo6jt","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-write/reply.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lg5ad082zkbepa1","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/report-write/submit.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lg7ad083crkj92y","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/tasks/get-page.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0lg9ad081yyev5wo","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/tasks/get-simple-plan-and-report-info.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3b0lgbad08sxmzqa58","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/todos/complete.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3b0lgdad08tdeqi12l","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/todos/get-list.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3b0lgfad08qwgc7tlm","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/todos/list-created-feedbacks.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3b0lghad08padl96hr","source":"vettd","category":"scripts","label":"Structured output format","detail":"scripts/user-search/search-emp.py: Uses JSON/CSV output which is easily parseable by agents","severity":"info","ruleId":"VTD-0116","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4ec02baf55eb1cec6e7af5f4773039a2","filepath":""},{"id":"cmrodgy3a0levad085ab3e7gk","source":"vettd","category":"evals","label":"No evaluation test cases","detail":"Add an evals/ directory with test prompts and expected outputs to measure skill quality","severity":"info","ruleId":"VTD-0118","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"41d019e0494a4a9763fc23c948d14e09","filepath":""}],"scannerRuns":[{"source":"vettd","status":"success","verdict":null,"grade":null,"findingCount":64,"criticalCount":0,"highCount":0}],"user":{"name":"Justin Pacella","image":"https://avatars.githubusercontent.com/u/97124458?v=4"},"repository":null,"freshness":null,"signalCategories":[{"category":"safety","label":"Safety","form":"graded","verdict":null,"rows":[]},{"category":"reliability","label":"Reliability & Quality","form":"graded","verdict":null,"rows":[]},{"category":"performance","label":"Performance","form":"measured","verdict":null,"rows":[]},{"category":"cost","label":"Cost","form":"measured","verdict":null,"rows":[]},{"category":"compatibility","label":"Compatibility","form":"unjudged","verdict":null,"rows":[]},{"category":"sentiment","label":"Popularity","form":"unjudged","verdict":null,"rows":[]},{"category":"characteristics","label":"Characteristics","form":"unjudged","verdict":null,"rows":[]}],"signalCount":64,"publisherSupplied":["name","description","author","version","license"]}