Scan Report
5 /100
wechat-mp-publisher
OpenClaw Skill for publishing WeChat Official Account articles
This is a legitimate WeChat Official Account publisher skill with no malicious behavior. All functionality is properly declared, security controls are in place, and only necessary permissions are used.
Safe to install
This skill is safe to use. No security concerns identified.
Findings 2 items
| Severity | Finding | Location |
|---|---|---|
| Info | Config file permission check Sensitive Access | src/index.ts:47 |
| Info | Test mock credential is not a real secret Credential Theft | tests/auth.test.ts:69 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | READ,WRITE | READ,WRITE | ✓ Aligned | Reads config from ~/.openclaw, writes token cache with 0o600 permissions |
| Network | READ | READ | ✓ Aligned | Only calls official WeChat API endpoints |
| Environment | READ | READ | ✓ Aligned | Reads WECHAT_MP_* env vars for config |
| Shell | NONE | NONE | — | No shell execution found |
1 High 311 findings
High API Key 疑似硬编码凭证
access_token: 'cached_token_123' tests/auth.test.ts:69 Medium External URL 外部 URL
https://developers.weixin.qq.com/doc/offiaccount/en/Getting_Started/Overview.html SKILL.md:301 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET TECH_SPEC.md:114 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/media/uploadimg?access_token=ACCESS_TOKEN TECH_SPEC.md:119 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token=ACCESS_TOKEN TECH_SPEC.md:125 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/freepublish/submit?access_token=ACCESS_TOKEN TECH_SPEC.md:131 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.29.0.tgz package-lock.json:28 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.29.0.tgz package-lock.json:43 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/core/-/core-7.29.0.tgz package-lock.json:53 Medium External URL 外部 URL
https://opencollective.com/babel package-lock.json:79 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/generator/-/generator-7.29.1.tgz package-lock.json:84 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz package-lock.json:101 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-globals/-/helper-globals-7.28.0.tgz package-lock.json:118 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz package-lock.json:128 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz package-lock.json:142 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz package-lock.json:160 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz package-lock.json:170 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz package-lock.json:180 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz package-lock.json:190 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/helpers/-/helpers-7.28.6.tgz package-lock.json:200 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/parser/-/parser-7.29.0.tgz package-lock.json:214 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz package-lock.json:230 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz package-lock.json:243 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz package-lock.json:256 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz package-lock.json:269 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz package-lock.json:285 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz package-lock.json:301 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz package-lock.json:314 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz package-lock.json:327 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-oper... package-lock.json:343 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-opera... package-lock.json:356 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz package-lock.json:369 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz package-lock.json:382 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.... package-lock.json:395 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz package-lock.json:408 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-objec... package-lock.json:421 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz package-lock.json:437 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz package-lock.json:453 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/template/-/template-7.28.6.tgz package-lock.json:469 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/traverse/-/traverse-7.29.0.tgz package-lock.json:484 Medium External URL 外部 URL
https://registry.npmmirror.com/@babel/types/-/types-7.29.0.tgz package-lock.json:503 Medium External URL 外部 URL
https://registry.npmmirror.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz package-lock.json:517 Medium External URL 外部 URL
https://registry.npmmirror.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz package-lock.json:524 Medium External URL 外部 URL
https://registry.npmmirror.com/@istanbuljs/schema/-/schema-0.1.3.tgz package-lock.json:541 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/console/-/console-29.7.0.tgz package-lock.json:551 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/core/-/core-29.7.0.tgz package-lock.json:569 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/environment/-/environment-29.7.0.tgz package-lock.json:617 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/expect/-/expect-29.7.0.tgz package-lock.json:633 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz package-lock.json:647 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz package-lock.json:660 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/globals/-/globals-29.7.0.tgz package-lock.json:678 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/reporters/-/reporters-29.7.0.tgz package-lock.json:694 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/schemas/-/schemas-29.6.3.tgz package-lock.json:738 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/source-map/-/source-map-29.6.3.tgz package-lock.json:751 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/test-result/-/test-result-29.7.0.tgz package-lock.json:766 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz package-lock.json:782 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/transform/-/transform-29.7.0.tgz package-lock.json:798 Medium External URL 外部 URL
https://registry.npmmirror.com/@jest/types/-/types-29.6.3.tgz package-lock.json:825 Medium External URL 外部 URL
https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz package-lock.json:843 Medium External URL 外部 URL
https://registry.npmmirror.com/@jridgewell/remapping/-/remapping-2.3.5.tgz package-lock.json:854 Medium External URL 外部 URL
https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz package-lock.json:865 Medium External URL 外部 URL
https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz package-lock.json:875 Medium External URL 外部 URL
https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz package-lock.json:882 Medium External URL 外部 URL
https://registry.npmmirror.com/@sinclair/typebox/-/typebox-0.27.10.tgz package-lock.json:893 Medium External URL 外部 URL
https://registry.npmmirror.com/@sinonjs/commons/-/commons-3.0.1.tgz package-lock.json:900 Medium External URL 外部 URL
https://registry.npmmirror.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz package-lock.json:910 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/babel__core/-/babel__core-7.20.5.tgz package-lock.json:920 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/babel__generator/-/babel__generator-7.27.0.tgz package-lock.json:934 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/babel__template/-/babel__template-7.4.4.tgz package-lock.json:944 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.28.0.tgz package-lock.json:955 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz package-lock.json:965 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz package-lock.json:975 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz package-lock.json:982 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz package-lock.json:992 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/jest/-/jest-29.5.14.tgz package-lock.json:1002 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/node/-/node-20.19.37.tgz package-lock.json:1013 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/stack-utils/-/stack-utils-2.0.3.tgz package-lock.json:1023 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/yargs/-/yargs-17.0.35.tgz package-lock.json:1030 Medium External URL 外部 URL
https://registry.npmmirror.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz package-lock.json:1040 Medium External URL 外部 URL
https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz package-lock.json:1047 Medium External URL 外部 URL
https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz package-lock.json:1063 Medium External URL 外部 URL
https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz package-lock.json:1073 Medium External URL 外部 URL
https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz package-lock.json:1089 Medium External URL 外部 URL
https://registry.npmmirror.com/argparse/-/argparse-1.0.10.tgz package-lock.json:1103 Medium External URL 外部 URL
https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz package-lock.json:1113 Medium External URL 外部 URL
https://registry.npmmirror.com/axios/-/axios-1.13.6.tgz package-lock.json:1119 Medium External URL 外部 URL
https://registry.npmmirror.com/babel-jest/-/babel-jest-29.7.0.tgz package-lock.json:1130 Medium External URL 外部 URL
https://registry.npmmirror.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz package-lock.json:1152 Medium External URL 外部 URL
https://registry.npmmirror.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz package-lock.json:1169 Medium External URL 外部 URL
https://registry.npmmirror.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz package-lock.json:1186 Medium External URL 外部 URL
https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz package-lock.json:1202 Medium External URL 外部 URL
https://registry.npmmirror.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz package-lock.json:1229 Medium External URL 外部 URL
https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz package-lock.json:1246 Medium External URL 外部 URL
https://registry.npmmirror.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz package-lock.json:1253 Medium External URL 外部 URL
https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.12.tgz package-lock.json:1266 Medium External URL 外部 URL
https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz package-lock.json:1277 Medium External URL 外部 URL
https://registry.npmmirror.com/browserslist/-/browserslist-4.28.1.tgz package-lock.json:1290 Medium External URL 外部 URL
https://opencollective.com/browserslist package-lock.json:1296 Medium External URL 外部 URL
https://tidelift.com/funding/github/npm/browserslist package-lock.json:1300 Medium External URL 外部 URL
https://registry.npmmirror.com/bs-logger/-/bs-logger-0.2.6.tgz package-lock.json:1324 Medium External URL 外部 URL
https://registry.npmmirror.com/bser/-/bser-2.1.1.tgz package-lock.json:1337 Medium External URL 外部 URL
https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz package-lock.json:1347 Medium External URL 外部 URL
https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz package-lock.json:1354 Medium External URL 外部 URL
https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz package-lock.json:1367 Medium External URL 外部 URL
https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz package-lock.json:1377 Medium External URL 外部 URL
https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001777.tgz package-lock.json:1387 Medium External URL 外部 URL
https://tidelift.com/funding/github/npm/caniuse-lite package-lock.json:1397 Medium External URL 外部 URL
https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz package-lock.json:1408 Medium External URL 外部 URL
https://registry.npmmirror.com/char-regex/-/char-regex-1.0.2.tgz package-lock.json:1425 Medium External URL 外部 URL
https://registry.npmmirror.com/ci-info/-/ci-info-3.9.0.tgz package-lock.json:1435 Medium External URL 外部 URL
https://registry.npmmirror.com/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz package-lock.json:1451 Medium External URL 外部 URL
https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz package-lock.json:1458 Medium External URL 外部 URL
https://registry.npmmirror.com/co/-/co-4.6.0.tgz package-lock.json:1473 Medium External URL 外部 URL
https://registry.npmmirror.com/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz package-lock.json:1484 Medium External URL 外部 URL
https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz package-lock.json:1491 Medium External URL 外部 URL
https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz package-lock.json:1504 Medium External URL 外部 URL
https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz package-lock.json:1511 Medium External URL 外部 URL
https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz package-lock.json:1523 Medium External URL 外部 URL
https://registry.npmmirror.com/convert-source-map/-/convert-source-map-2.0.0.tgz package-lock.json:1530 Medium External URL 外部 URL
https://registry.npmmirror.com/create-jest/-/create-jest-29.7.0.tgz package-lock.json:1537 Medium External URL 外部 URL
https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz package-lock.json:1559 Medium External URL 外部 URL
https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz package-lock.json:1574 Medium External URL 外部 URL
https://registry.npmmirror.com/dedent/-/dedent-1.7.2.tgz package-lock.json:1592 Medium External URL 外部 URL
https://registry.npmmirror.com/deepmerge/-/deepmerge-4.3.1.tgz package-lock.json:1607 Medium External URL 外部 URL
https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz package-lock.json:1617 Medium External URL 外部 URL
https://registry.npmmirror.com/detect-newline/-/detect-newline-3.1.0.tgz package-lock.json:1626 Medium External URL 外部 URL
https://registry.npmmirror.com/diff-sequences/-/diff-sequences-29.6.3.tgz package-lock.json:1636 Medium External URL 外部 URL
https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz package-lock.json:1646 Medium External URL 外部 URL
https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.307.tgz package-lock.json:1660 Medium External URL 外部 URL
https://registry.npmmirror.com/emittery/-/emittery-0.13.1.tgz package-lock.json:1667 Medium External URL 外部 URL
https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz package-lock.json:1680 Medium External URL 外部 URL
https://registry.npmmirror.com/error-ex/-/error-ex-1.3.4.tgz package-lock.json:1687 Medium External URL 外部 URL
https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz package-lock.json:1697 Medium External URL 外部 URL
https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz package-lock.json:1706 Medium External URL 外部 URL
https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz package-lock.json:1715 Medium External URL 外部 URL
https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz package-lock.json:1727 Medium External URL 外部 URL
https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz package-lock.json:1742 Medium External URL 外部 URL
https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz package-lock.json:1752 Medium External URL 外部 URL
https://registry.npmmirror.com/esprima/-/esprima-4.0.1.tgz package-lock.json:1762 Medium External URL 外部 URL
https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz package-lock.json:1776 Medium External URL 外部 URL
https://registry.npmmirror.com/exit/-/exit-0.1.2.tgz package-lock.json:1800 Medium External URL 外部 URL
https://registry.npmmirror.com/expect/-/expect-29.7.0.tgz package-lock.json:1809 Medium External URL 外部 URL
https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz package-lock.json:1826 Medium External URL 外部 URL
https://registry.npmmirror.com/fb-watchman/-/fb-watchman-2.0.2.tgz package-lock.json:1833 Medium External URL 外部 URL
https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz package-lock.json:1843 Medium External URL 外部 URL
https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz package-lock.json:1856 Medium External URL 外部 URL
https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.11.tgz package-lock.json:1870 Medium External URL 外部 URL
https://registry.npmmirror.com/form-data/-/form-data-4.0.5.tgz package-lock.json:1890 Medium External URL 外部 URL
https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz package-lock.json:1906 Medium External URL 外部 URL
https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz package-lock.json:1913 Medium External URL 外部 URL
https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz package-lock.json:1928 Medium External URL 外部 URL
https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz package-lock.json:1937 Medium External URL 外部 URL
https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz package-lock.json:1947 Medium External URL 外部 URL
https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz package-lock.json:1957 Medium External URL 外部 URL
https://registry.npmmirror.com/get-package-type/-/get-package-type-0.1.0.tgz package-lock.json:1981 Medium External URL 外部 URL
https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz package-lock.json:1991 Medium External URL 外部 URL
https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz package-lock.json:2004 Medium External URL 外部 URL
https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz package-lock.json:2017 Medium External URL 外部 URL
https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz package-lock.json:2039 Medium External URL 外部 URL
https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz package-lock.json:2051 Medium External URL 外部 URL
https://registry.npmmirror.com/handlebars/-/handlebars-4.7.8.tgz package-lock.json:2058 Medium External URL 外部 URL
https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz package-lock.json:2080 Medium External URL 外部 URL
https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz package-lock.json:2090 Medium External URL 外部 URL
https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz package-lock.json:2102 Medium External URL 外部 URL
https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz package-lock.json:2117 Medium External URL 外部 URL
https://registry.npmmirror.com/html-escaper/-/html-escaper-2.0.2.tgz package-lock.json:2129 Medium External URL 外部 URL
https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz package-lock.json:2136 Medium External URL 外部 URL
https://registry.npmmirror.com/import-local/-/import-local-3.2.0.tgz package-lock.json:2146 Medium External URL 外部 URL
https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz package-lock.json:2166 Medium External URL 外部 URL
https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz package-lock.json:2176 Medium External URL 外部 URL
https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz package-lock.json:2188 Medium External URL 外部 URL
https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz package-lock.json:2195 Medium External URL 外部 URL
https://registry.npmmirror.com/is-core-module/-/is-core-module-2.16.1.tgz package-lock.json:2202 Medium External URL 外部 URL
https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz package-lock.json:2218 Medium External URL 外部 URL
https://registry.npmmirror.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz package-lock.json:2228 Medium External URL 外部 URL
https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz package-lock.json:2238 Medium External URL 外部 URL
https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz package-lock.json:2248 Medium External URL 外部 URL
https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz package-lock.json:2261 Medium External URL 外部 URL
https://registry.npmmirror.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz package-lock.json:2268 Medium External URL 外部 URL
https://registry.npmmirror.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz package-lock.json:2278 Medium External URL 外部 URL
https://registry.npmmirror.com/semver/-/semver-7.7.4.tgz package-lock.json:2295 Medium External URL 外部 URL
https://registry.npmmirror.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz package-lock.json:2308 Medium External URL 外部 URL
https://registry.npmmirror.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz package-lock.json:2323 Medium External URL 外部 URL
https://registry.npmmirror.com/istanbul-reports/-/istanbul-reports-3.2.0.tgz package-lock.json:2338 Medium External URL 外部 URL
https://registry.npmmirror.com/jest/-/jest-29.7.0.tgz package-lock.json:2352 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz package-lock.json:2379 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-circus/-/jest-circus-29.7.0.tgz package-lock.json:2394 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-cli/-/jest-cli-29.7.0.tgz package-lock.json:2426 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-config/-/jest-config-29.7.0.tgz package-lock.json:2460 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-diff/-/jest-diff-29.7.0.tgz package-lock.json:2506 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-docblock/-/jest-docblock-29.7.0.tgz package-lock.json:2522 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-each/-/jest-each-29.7.0.tgz package-lock.json:2535 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz package-lock.json:2552 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-get-type/-/jest-get-type-29.6.3.tgz package-lock.json:2570 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz package-lock.json:2580 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz package-lock.json:2606 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz package-lock.json:2620 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-message-util/-/jest-message-util-29.7.0.tgz package-lock.json:2636 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-mock/-/jest-mock-29.7.0.tgz package-lock.json:2657 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz package-lock.json:2672 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz package-lock.json:2690 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-resolve/-/jest-resolve-29.7.0.tgz package-lock.json:2700 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz package-lock.json:2721 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-runner/-/jest-runner-29.7.0.tgz package-lock.json:2735 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-runtime/-/jest-runtime-29.7.0.tgz package-lock.json:2768 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz package-lock.json:2802 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-util/-/jest-util-29.7.0.tgz package-lock.json:2847 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-validate/-/jest-validate-29.7.0.tgz package-lock.json:2865 Medium External URL 外部 URL
https://registry.npmmirror.com/camelcase/-/camelcase-6.3.0.tgz package-lock.json:2883 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-watcher/-/jest-watcher-29.7.0.tgz package-lock.json:2896 Medium External URL 外部 URL
https://registry.npmmirror.com/jest-worker/-/jest-worker-29.7.0.tgz package-lock.json:2916 Medium External URL 外部 URL
https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz package-lock.json:2932 Medium External URL 外部 URL
https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz package-lock.json:2948 Medium External URL 外部 URL
https://registry.npmmirror.com/js-yaml/-/js-yaml-3.14.2.tgz package-lock.json:2955 Medium External URL 外部 URL
https://registry.npmmirror.com/jsesc/-/jsesc-3.1.0.tgz package-lock.json:2969 Medium External URL 外部 URL
https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz package-lock.json:2982 Medium External URL 外部 URL
https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz package-lock.json:2989 Medium External URL 外部 URL
https://registry.npmmirror.com/kleur/-/kleur-3.0.3.tgz package-lock.json:3002 Medium External URL 外部 URL
https://registry.npmmirror.com/leven/-/leven-3.1.0.tgz package-lock.json:3012 Medium External URL 外部 URL
https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz package-lock.json:3022 Medium External URL 外部 URL
https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz package-lock.json:3029 Medium External URL 外部 URL
https://registry.npmmirror.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz package-lock.json:3042 Medium External URL 外部 URL
https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz package-lock.json:3049 Medium External URL 外部 URL
https://registry.npmmirror.com/make-dir/-/make-dir-4.0.0.tgz package-lock.json:3059 Medium External URL 外部 URL
https://registry.npmmirror.com/make-error/-/make-error-1.3.6.tgz package-lock.json:3088 Medium External URL 外部 URL
https://registry.npmmirror.com/makeerror/-/makeerror-1.0.12.tgz package-lock.json:3095 Medium External URL 外部 URL
https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz package-lock.json:3105 Medium External URL 外部 URL
https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz package-lock.json:3114 Medium External URL 外部 URL
https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz package-lock.json:3121 Medium External URL 外部 URL
https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz package-lock.json:3135 Medium External URL 外部 URL
https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz package-lock.json:3144 Medium External URL 外部 URL
https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz package-lock.json:3156 Medium External URL 外部 URL
https://registry.npmmirror.com/minimatch/-/minimatch-3.1.5.tgz package-lock.json:3166 Medium External URL 外部 URL
https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz package-lock.json:3179 Medium External URL 外部 URL
https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz package-lock.json:3189 Medium External URL 外部 URL
https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz package-lock.json:3196 Medium External URL 外部 URL
https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz package-lock.json:3203 Medium External URL 外部 URL
https://registry.npmmirror.com/node-int64/-/node-int64-0.4.0.tgz package-lock.json:3210 Medium External URL 外部 URL
https://registry.npmmirror.com/node-releases/-/node-releases-2.0.36.tgz package-lock.json:3217 Medium External URL 外部 URL
https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz package-lock.json:3224 Medium External URL 外部 URL
https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz package-lock.json:3234 Medium External URL 外部 URL
https://registry.npmmirror.com/once/-/once-1.4.0.tgz package-lock.json:3247 Medium External URL 外部 URL
https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz package-lock.json:3257 Medium External URL 外部 URL
https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz package-lock.json:3273 Medium External URL 外部 URL
https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz package-lock.json:3289 Medium External URL 外部 URL
https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz package-lock.json:3302 Medium External URL 外部 URL
https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz package-lock.json:3318 Medium External URL 外部 URL
https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz package-lock.json:3328 Medium External URL 外部 URL
https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz package-lock.json:3347 Medium External URL 外部 URL
https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz package-lock.json:3357 Medium External URL 外部 URL
https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz package-lock.json:3367 Medium External URL 外部 URL
https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz package-lock.json:3377 Medium External URL 外部 URL
https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz package-lock.json:3384 Medium External URL 外部 URL
https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz package-lock.json:3391 Medium External URL 外部 URL
https://registry.npmmirror.com/pirates/-/pirates-4.0.7.tgz package-lock.json:3404 Medium External URL 外部 URL
https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz package-lock.json:3414 Medium External URL 外部 URL
https://registry.npmmirror.com/pretty-format/-/pretty-format-29.7.0.tgz package-lock.json:3427 Medium External URL 外部 URL
https://registry.npmmirror.com/ansi-styles/-/ansi-styles-5.2.0.tgz package-lock.json:3442 Medium External URL 外部 URL
https://registry.npmmirror.com/prompts/-/prompts-2.4.2.tgz package-lock.json:3455 Medium External URL 外部 URL
https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz package-lock.json:3469 Medium External URL 外部 URL
https://registry.npmmirror.com/pure-rand/-/pure-rand-6.1.0.tgz package-lock.json:3475 Medium External URL 外部 URL
https://opencollective.com/fast-check package-lock.json:3485 Medium External URL 外部 URL
https://registry.npmmirror.com/react-is/-/react-is-18.3.1.tgz package-lock.json:3492 Medium External URL 外部 URL
https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz package-lock.json:3499 Medium External URL 外部 URL
https://registry.npmmirror.com/resolve/-/resolve-1.22.11.tgz package-lock.json:3509 Medium External URL 外部 URL
https://registry.npmmirror.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz package-lock.json:3530 Medium External URL 外部 URL
https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz package-lock.json:3543 Medium External URL 外部 URL
https://registry.npmmirror.com/resolve.exports/-/resolve.exports-2.0.3.tgz package-lock.json:3553 Medium External URL 外部 URL
https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz package-lock.json:3563 Medium External URL 外部 URL
https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz package-lock.json:3573 Medium External URL 外部 URL
https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz package-lock.json:3586 Medium External URL 外部 URL
https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz package-lock.json:3596 Medium External URL 外部 URL
https://registry.npmmirror.com/sisteransi/-/sisteransi-1.0.5.tgz package-lock.json:3603 Medium External URL 外部 URL
https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz package-lock.json:3610 Medium External URL 外部 URL
https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz package-lock.json:3620 Medium External URL 外部 URL
https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.13.tgz package-lock.json:3630 Medium External URL 外部 URL
https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.0.3.tgz package-lock.json:3641 Medium External URL 外部 URL
https://registry.npmmirror.com/stack-utils/-/stack-utils-2.0.6.tgz package-lock.json:3648 Medium External URL 外部 URL
https://registry.npmmirror.com/string-length/-/string-length-4.0.2.tgz package-lock.json:3661 Medium External URL 外部 URL
https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz package-lock.json:3675 Medium External URL 外部 URL
https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz package-lock.json:3690 Medium External URL 外部 URL
https://registry.npmmirror.com/strip-bom/-/strip-bom-4.0.0.tgz package-lock.json:3703 Medium External URL 外部 URL
https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz package-lock.json:3713 Medium External URL 外部 URL
https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz package-lock.json:3723 Medium External URL 外部 URL
https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz package-lock.json:3736 Medium External URL 外部 URL
https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz package-lock.json:3749 Medium External URL 外部 URL
https://registry.npmmirror.com/test-exclude/-/test-exclude-6.0.0.tgz package-lock.json:3762 Medium External URL 外部 URL
https://registry.npmmirror.com/tmpl/-/tmpl-1.0.5.tgz package-lock.json:3777 Medium External URL 外部 URL
https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz package-lock.json:3784 Medium External URL 外部 URL
https://registry.npmmirror.com/ts-jest/-/ts-jest-29.4.6.tgz package-lock.json:3797 Medium External URL 外部 URL
https://registry.npmmirror.com/type-fest/-/type-fest-4.41.0.tgz package-lock.json:3863 Medium External URL 外部 URL
https://registry.npmmirror.com/type-detect/-/type-detect-4.0.8.tgz package-lock.json:3876 Medium External URL 外部 URL
https://registry.npmmirror.com/type-fest/-/type-fest-0.21.3.tgz package-lock.json:3886 Medium External URL 外部 URL
https://registry.npmmirror.com/typescript/-/typescript-5.9.3.tgz package-lock.json:3899 Medium External URL 外部 URL
https://registry.npmmirror.com/uglify-js/-/uglify-js-3.19.3.tgz package-lock.json:3913 Medium External URL 外部 URL
https://registry.npmmirror.com/undici-types/-/undici-types-6.21.0.tgz package-lock.json:3927 Medium External URL 外部 URL
https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz package-lock.json:3934 Medium External URL 外部 URL
https://registry.npmmirror.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz package-lock.json:3965 Medium External URL 外部 URL
https://registry.npmmirror.com/walker/-/walker-1.0.8.tgz package-lock.json:3980 Medium External URL 外部 URL
https://registry.npmmirror.com/which/-/which-2.0.2.tgz package-lock.json:3990 Medium External URL 外部 URL
https://registry.npmmirror.com/wordwrap/-/wordwrap-1.0.0.tgz package-lock.json:4006 Medium External URL 外部 URL
https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz package-lock.json:4013 Medium External URL 外部 URL
https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz package-lock.json:4031 Medium External URL 外部 URL
https://registry.npmmirror.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz package-lock.json:4038 Medium External URL 外部 URL
https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz package-lock.json:4052 Medium External URL 外部 URL
https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz package-lock.json:4062 Medium External URL 外部 URL
https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz package-lock.json:4069 Medium External URL 外部 URL
https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz package-lock.json:4088 Medium External URL 外部 URL
https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz package-lock.json:4098 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin src/article.ts:18 Medium External URL 外部 URL
https://api.weixin.qq.com/cgi-bin/token tests/auth.test.ts:157 File Tree
18 files · 204.2 KB · 6359 lines JSON 3f · 4159L
TypeScript 10f · 1485L
Markdown 4f · 687L
JavaScript 1f · 28L
├─
▾
src
│ ├─
▾
scripts
│ │ ├─
publish.ts
TypeScript
│ │ ├─
query.ts
TypeScript
│ │ └─
upload-media.ts
TypeScript
│ ├─
article.ts
TypeScript
│ ├─
auth.ts
TypeScript
│ ├─
index.ts
TypeScript
│ ├─
media.ts
TypeScript
│ └─
types.ts
TypeScript
├─
▾
tests
│ ├─
auth.test.ts
TypeScript
│ └─
setup.ts
TypeScript
├─
DELIVERY.md
Markdown
├─
jest.config.js
JavaScript
├─
package-lock.json
JSON
├─
package.json
JSON
├─
README.md
Markdown
├─
SKILL.md
Markdown
├─
TECH_SPEC.md
Markdown
└─
tsconfig.json
JSON
Dependencies 2 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
axios | ^1.6.0 | npm | No | Standard HTTP client |
form-data | ^4.0.0 | npm | No | Standard multipart form handling |
Security Positives
✓ Proper file permission handling (0o600) for token cache files
✓ Config file world-readable permission warnings
✓ Error message sanitization to prevent information leakage
✓ Access token caching with proper expiration handling
✓ Standard HTTPS requests to WeChat official API only
✓ No sensitive path access (SSH, AWS credentials, .env files)
✓ No obfuscation or encoded execution
✓ No remote script execution patterns
✓ Comprehensive test coverage
✓ Well-documented SKILL.md matching actual implementation