DD wechat-studio
Launch a local WeChat article workbench for Markdown import, WeChat HTML preview, theme tuning, image selection, and optional draft push. Use when Codex needs a browser-based preview and manual QA layer before publishing.
As a process D 38/100 · Unfinished process — weak spots: result and completion, when it triggers, inputs and preconditions
What is at stake
Medium-severity findings: the skill is probably honest, but read what alarmed the scanner.
Below is the worst case for this category. The finding here is medium: the guard saw a sign, not a proof.
The files contain invisible characters, encoded commands or comments hidden from readers but visible to the model. What you read differs from what the agent sees.
Remove invisible characters (they usually sneak in through copy-paste) and encoded strings: no catalog will pass them. Instructions for the model must be readable by a human too.
How to improve
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 43
✓ No critical or high findings
Medium and low: 43
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/doocs.md:31Escaped/char-code string obfuscation5. [电动汽车的五大趋势及其对线束设计的影响 - Cadonix](https://www.cadonix.com/zh-hans/%E7%94%B5%E5%8A%A8%E6%B1%BD%E8%BD%A6%E7%BA%BF%E6%9D%9F%E8%AE%BE%E8%AE%A1%E7%9A%84%E4%BA%94%E5%A4%A7%E8%B6%8B%E5%8A%BF)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/doocs.md:32Escaped/char-code string obfuscation6. [线束培训资料网站及视频资源 – 知默 | 一个线束工程师的资源站](http://www.…com/2025/04/30/%E7%BA%BF%E6%9D%9F%E5%9F%B9%E8%AE%AD%E8%B5%84%E6%96%99%E7%BD%91%E7%AB%99%E5%8F%8A%E8%A7%86%E9%A2%91%E8%B5%84%E6%BA%90/)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/doocs.md:46Escaped/char-code string obfuscation- [电动汽车的五大趋势及其对线束设计的影响 - Cadonix](https://www.cadonix.com/zh-hans/%E7%94%B5%E5%8A%A8%E6%B1%BD%E8%BD%A6%E7%BA%BF%E6%9D%9F%E8%AE%BE%E8%AE%A1%E7%9A%84%E4%BA%94%E5%A4%A7%E8%B6%8B%E5%8A%BF)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/doocs.md:47Escaped/char-code string obfuscation- [线束培训资料网站及视频资源 – 知默 | 一个线束工程师的资源站](http://www.…com/2025/04/30/%E7%BA%BF%E6%9D%9F%E5%9F%B9%E8%AE%AD%E8%B5%84%E6%96%99%E7%BD%91%E7%AB%99%E5%8F%8A%E8%A7%86%E9%A2%91%E8%B5%84%E6%BA%90/)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/source.md:26Escaped/char-code string obfuscation5. [电动汽车的五大趋势及其对线束设计的影响 - Cadonix](https://www.cadonix.com/zh-hans/%E7%94%B5%E5%8A%A8%E6%B1%BD%E8%BD%A6%E7%BA%BF%E6%9D%9F%E8%AE%BE%E8%AE%A1%E7%9A%84%E4%BA%94%E5%A4%A7%E8%B6%8B%E5%8A%BF)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/source.md:27Escaped/char-code string obfuscation6. [线束培训资料网站及视频资源 – 知默 | 一个线束工程师的资源站](http://www.…com/2025/04/30/%E7%BA%BF%E6%9D%9F%E5%9F%B9%E8%AE%AD%E8%B5%84%E6%96%99%E7%BD%91%E7%AB%99%E5%8F%8A%E8%A7%86%E9%A2%91%E8%B5%84%E6%BA%90/)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/source.md:41Escaped/char-code string obfuscation- [电动汽车的五大趋势及其对线束设计的影响 - Cadonix](https://www.cadonix.com/zh-hans/%E7%94%B5%E5%8A%A8%E6%B1%BD%E8%BD%A6%E7%BA%BF%E6%9D%9F%E8%AE%BE%E8%AE%A1%E7%9A%84%E4%BA%94%E5%A4%A7%E8%B6%8B%E5%8A%BF)
-
medium Obfuscation
obf-hex-escape-chaincontent/articles/2026-04-06-harness-engineering-2/source.md:42Escaped/char-code string obfuscation- [线束培训资料网站及视频资源 – 知默 | 一个线束工程师的资源站](http://www.…com/2025/04/30/%E7%BA%BF%E6%9D%9F%E5%9F%B9%E8%AE%AD%E8%B5%84%E6%96%99%E7%BD%91%E7%AB%99%E5%8F%8A%E8%A7%86%E9%A2%91%E8%B5%84%E6%BA%90/)
-
low Obfuscation
obf-base64-blobcontent/articles/2026-03-28-ai-art-advantage/studio-state.json:39Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "https://s3.s….cn/default/outputs/2pnp…png?X-Amz-Algorithm=…&X-Amz-Credential=…
quoted -
low Secrets in code
secret-aws-keycontent/articles/2026-03-28-ai-art-advantage/studio-state.json:39AWS access key ID (placeholder value)"previewUrl": "https://s3.s….cn/default/outputs/2pnp…png?X-Amz-Algorithm=…&X-Amz-Credential=…
placeholder -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-28-ai-art-advantage/studio-state.json:40Long base64-looking blob (detector / deny-list definition)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_png/TTkq…jPg/0?wx_fmt=png",
detector -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-28-ai-art-advantage/studio-state.json:52Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "https://s3.s….cn/default/outputs/2pnp…png?X-Amz-Algorithm=…&X-Amz-Credential=…
quoted -
low Secrets in code
secret-aws-keycontent/articles/2026-03-28-ai-art-advantage/studio-state.json:52AWS access key ID (placeholder value)"previewUrl": "https://s3.s….cn/default/outputs/2pnp…png?X-Amz-Algorithm=…&X-Amz-Credential=…
placeholder -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-28-ai-art-advantage/studio-state.json:53Long base64-looking blob (detector / deny-list definition)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_png/TTkq…jPg/0?wx_fmt=png",
detector -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-28-ai-art-advantage/studio-state.json:81Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…kdw/0?wx_fmt=jpeg",
quoted -
low Secrets in code
secret-aws-keycontent/articles/2026-03-28-ai-art-advantage/studio-state.json:147AWS access key ID (placeholder value)"previewUrl": "https://s3.s….cn/default/outputs/2snh…png?X-Amz-Algorithm=…&X-Amz-Credential=…
placeholder -
low Secrets in code
secret-aws-keycontent/articles/2026-03-28-ai-art-advantage/studio-state.json:185AWS access key ID (placeholder value)"previewUrl": "https://s3.s….cn/default/outputs/24nm…png?X-Amz-Algorithm=…&X-Amz-Credential=…
placeholder -
low Secrets in code
secret-aws-keycontent/articles/2026-03-28-ai-art-advantage/studio-state.json:260AWS access key ID (placeholder value)"previewUrl": "https://s3.s….cn/default/outputs/2snh…png?X-Amz-Algorithm=…&X-Amz-Credential=…
placeholder -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai-agent-rag/studio-state.json:39Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…yT0/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai-agent-rag/studio-state.json:40Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…yT0/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai-agent-rag/studio-state.json:55Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…wBU/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai-agent-rag/studio-state.json:56Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…wBU/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai-agent-rag/studio-state.json:70Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…cYU/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai/studio-state.json:39Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…azg/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai/studio-state.json:40Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…azg/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai/studio-state.json:55Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…aBY/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai/studio-state.json:56Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…aBY/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-03-29-ai/studio-state.json:70Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…azg/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-06-harness-engineering-2/studio-state.json:41Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…jKs/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-06-harness-engineering-2/studio-state.json:42Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…jKs/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-06-harness-engineering-2/studio-state.json:58Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…O3M/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-06-harness-engineering-2/studio-state.json:59Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…O3M/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-06-harness-engineering-2/studio-state.json:74Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…WK0/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-07-vibe-coding-harness-engineering/studio-state.json:41Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…g0c/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-07-vibe-coding-harness-engineering/studio-state.json:42Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…g0c/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-07-vibe-coding-harness-engineering/studio-state.json:58Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…g0c/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-07-vibe-coding-harness-engineering/studio-state.json:59Long base64-looking blob (quoted — discussed, not commanded)"draftUrl": "http://mmbiz.qpic.cn/sz_mmbiz_jpg/TTkq…g0c/0?wx_fmt=jpeg",
quoted -
low Obfuscation
obf-base64-blobcontent/articles/2026-04-07-vibe-coding-harness-engineering/studio-state.json:74Long base64-looking blob (quoted — discussed, not commanded)"previewUrl": "http://mmbiz.qpic.cn/mmbiz_jpg/TTkq…90k/0?wx_fmt=jpeg",
quoted -
low Secrets in code
secret-high-entropy-tokenfrontend/package-lock.json:18High-entropy token-like string (may be an id, hash or a credential) (detector / deny-list definition)"integrity": "sha5…uWm+fFRcIOgKBMiOBP+eXiy…9ab+DDKA==",
detector -
low Obfuscation
obf-base64-blobfrontend/tmp-spring-preview.html:1Long base64-looking blob (quoted — discussed, not commanded)<!doctype html><html lang="zh-CN"><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>当 AI 越会执行,艺术生的优势反而越明显</title></head><body style="margin:0;b
quoted -
low Secrets in code
secret-aws-keyfrontend/tmp-spring-preview.html:1AWS access key ID (placeholder value)<!doctype html><html lang="zh-CN"><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>当 AI 越会执行,艺术生的优势反而越明显</title></head><body style="margin:0;b
placeholder -
low Obfuscation
obf-base64-blobfrontend/tmp-wechat-safe-check.html:1Long base64-looking blob (quoted — discussed, not commanded)<!doctype html><html lang="zh-CN"><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>当 AI 越会执行,艺术生的优势反而越明显</title></head><body style="margin:0;b
quoted -
low Secrets in code
secret-aws-keyfrontend/tmp-wechat-safe-check.html:1AWS access key ID (placeholder value)<!doctype html><html lang="zh-CN"><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>当 AI 越会执行,艺术生的优势反而越明显</title></head><body style="margin:0;b
placeholder
Files scanned: 64. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
✓ No remarks against the Agent Skills spec
Process rating: all ten parameters 38/100
- 0Result and completion. Does not say what the result is
- 0Inputs and preconditions. Does not say what the process needs to start
- 0Failures and branches. Linear process with no failure handling
- 20When it triggers. No condition that starts the skill
- 30Running it twice. 7 mutating operations with no state check
- 40Consistency. Frontmatter name (wechat-studio) differs from the folder (content-system-wechat-studio)
- 60Tools and files. Uses tools (python) that frontmatter does not declare
- 85Steps. 20 steps, 1 vague phrases
- 100Execution cost. Instruction body is 544 tokens
- 100Progress reporting. Reports progress
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +5Description has no quoted example phrases that should trigger the skill
- +4Description does not say when NOT to use the skill (false activations)
- +3Output format is not stated: the model decides each time
- -2localhost URLs: will not work for another user
- +1No license
- +2Single-language instructions
- +3Description length 221: enough signal without eating the budget
- +4Structure: 6 headings
- +3Step-by-step instructions: 20 items
- +4Has examples (4 code blocks)
Quality base 70; lint remarks subtract, signals add up to 100. Result: 82.