{"id":"cmt8nfi270v7sad090aq1g66q","slug":"project-flow-ops","publicId":"ef81a082-ee20-4d7c-8aea-4de3c38eb2b4","name":"project-flow-ops","description":"通过分类问题和拉取请求、关联活跃工作、保持GitHub对外可见而Linear作为内部执行层，来协调GitHub和Linear之间的执行流程。当用户需要待办事项控制、PR分类或GitHub与Linear协调时使用。","version":"","author":"affaan-m","license":"","compatibility":"","status":"completed","overallGrade":"A","scannerVersion":9,"fileCount":1,"hasSkillMd":true,"hasScripts":false,"hasReferences":false,"hasEvals":false,"hasAssets":false,"sourceType":"github","sourceUrl":"https://github.com/affaan-m/ecc/tree/main/docs/zh-CN/skills/project-flow-ops","createdAt":"2026-08-25T12:36:21.679Z","completedAt":"2026-08-25T12:36:21.676Z","visibility":"public","publishedAt":"2026-08-06T17:13:19.499Z","category":"","frameworks":[],"badgeStatus":"vettd","downloadCount":0,"verdictRationale":{"summary":"Skill passed all structure and security checks.","verdict":"pass","scanners":[{"source":"vettd","weight":1,"verdict":"pass"},{"source":"cisco","weight":0.8,"verdict":"pass"}],"consensus":"pass","warnTriggers":[],"policyVersion":"consensus-v1","hardFailTriggers":[]},"verdictPolicyVersion":"consensus-v1","skillId":"cmshryhpx05o7ad07o0vte8dv","findings":[{"id":"cmt8nfi280v86ad09snpuc6ww","source":"vettd","category":"security","label":"No external URLs in skill definition","detail":"SKILL.md and references/ files do not reference external URLs","severity":"info","ruleId":"VTD-0093","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"ae07c3d33479da3c78284ef25d62be79","filepath":""},{"id":"cmt8nfi280v85ad09ceq8jnba","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":"cmt8nfi280v7xad096lie4lf7","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":"negligent","chainId":null,"fingerprint":"e09767e7943872a2754f559ba01ef7db","filepath":""},{"id":"cmt8nfi280v84ad09nqb2juxp","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":"cmt8nfi280v87ad09ylurc8te","source":"cisco","category":"security","label":"Skill does not specify a license","detail":"SKILL.md — Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.","severity":"info","ruleId":"MANIFEST_MISSING_LICENSE","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"592f7ac7731768f0fd0bba83f30850f9","filepath":"SKILL.md"},{"id":"cmt8nfi280v7uad09b8m66dgy","source":"vettd","category":"structure","label":"No scripts/ directory","detail":"Consider bundling reusable scripts for validation and automation","severity":"info","ruleId":"VTD-0096","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"21a167b473d29b0a653734953d43b2fc","filepath":""},{"id":"cmt8nfi280v7tad09kc16l3d8","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":"cmt8nfi280v7wad099o5kymk1","source":"vettd","category":"structure","label":"Valid name field","detail":"Name \"project-flow-ops\" follows spec (lowercase, hyphens, ≤64 chars)","severity":"info","ruleId":"VTD-0099","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"5ba54eca0b3e299a99112de98cbcd97f","filepath":""},{"id":"cmt8nfi280v7zad09aa918kny","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":"cmt8nfi280v80ad09cll5pkoc","source":"vettd","category":"description","label":"Description too brief","detail":"A few sentences covering scope and trigger conditions improves activation accuracy","severity":"info","ruleId":"VTD-0112","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"592614385df5fc41eb1336fc0e003c01","filepath":""},{"id":"cmt8nfi280v7yad098jchmrp9","source":"vettd","category":"description","label":"Description within character limit","detail":"106/1024 characters used","severity":"info","ruleId":"VTD-0110","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"66553d595a652c45a6f0d4353184b37e","filepath":""},{"id":"cmt8nfi280v82ad098n8k27kx","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":"cmt8nfi280v83ad09vrnnxbya","source":"vettd","category":"best-practices","label":"No clear workflow structure","detail":"Consider adding numbered steps or a structured procedure for the agent to follow","severity":"info","ruleId":"VTD-0106","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"2368c9a31ac52269c854f105795cf28c","filepath":""},{"id":"cmt8nfi280v81ad09mbmvg2bh","source":"vettd","category":"best-practices","label":"SKILL.md body length is reasonable","detail":"106 lines (recommended: under 500)","severity":"info","ruleId":"VTD-0101","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"42debaa072535bf5650f90d3168f0b93","filepath":""},{"id":"cmt8nfi280v7vad093jafrumu","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":"cisco","status":"success","verdict":null,"grade":"A","findingCount":1,"criticalCount":0,"highCount":0},{"source":"vettd","status":"success","verdict":null,"grade":"A","findingCount":14,"criticalCount":0,"highCount":0}],"user":{"name":"Justin Pacella","image":"https://avatars.githubusercontent.com/u/97124458?v=4"},"repository":{"owner":"affaan-m","name":"ecc"},"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":21,"publisherSupplied":["name","description","author","version","license"]}