← 返回 Skills 市场
edmonddantesj

PublishGuard — Post Verification & Credential Manager

作者 edmonddantesj · GitHub ↗ · v1.1.0
cross-platform ⚠ suspicious
775
总下载
0
收藏
1
当前安装
2
版本数
在 OpenClaw 中安装
/install publish-guard
功能描述
Prevents false "posted successfully" claims by verifying content URLs, enforcing platform rules, tracking rate limits, and securely storing credentials persi...
安全使用建议
Do not install or store live credentials yet. The package claims "never stored in plaintext" but the main engine writes credentials to a plaintext JSON file in the workspace. Before using: (1) Ask the maintainer to explain why publish_guard.py includes CredentialStore that saves plaintext and whether that is intentional or a leftover; (2) If you must test, do so in an isolated sandbox and do not enter real secrets; (3) Prefer using the EncryptedVault and run the provided migrate tool, but verify that publish_guard actually reads from the encrypted vault rather than the plaintext file; (4) If you intend to use this in production, request the author remove (or gate) the plaintext store, or modify the code to use only the encrypted vault with secure permissions and documented migration behavior; (5) Confirm the vault's cryptography and threat model meet your security needs — the vault implements custom crypto primitives (HMAC-CTR, PBKDF2) and makes specific machine-binding choices that you may want reviewed by a crypto expert.
功能分析
Type: OpenClaw Skill Name: publish-guard Version: 1.1.0 The skill bundle is classified as suspicious due to a critical security vulnerability in `scripts/publish_guard.py`. While `SKILL.md` and `scripts/vault_crypto.py` describe and implement robust, machine-bound encryption for credentials, the main `PublishGuard` class in `scripts/publish_guard.py` uses an unencrypted `CredentialStore` that saves sensitive API keys and tokens in plaintext JSON files on disk. This directly contradicts the stated security features and exposes credentials to local file system access, representing a severe flaw that allows for data compromise.
能力评估
Purpose & Capability
The name and SKILL.md describe a post-verification and credential manager — that purpose fits the code (URL verification, platform rules, credential storage). However, SKILL.md emphatically claims 'API keys and tokens are never stored in plaintext' and describes a VaultCrypto engine; the main module (publish_guard.py) implements a separate CredentialStore that saves credentials in plaintext JSON to workspace/the-alpha-oracle/vault/publish_guard_creds.json. This directly contradicts the stated purpose and guarantees.
Instruction Scope
SKILL.md and the code instruct the agent to verify posts by performing HTTP GETs (expected). But the instructions and code also read/write workspace files (audit logs and credential files) and reference the OPENCLAW_WORKSPACE environment variable — this env var is used at runtime but not declared in the skill's manifest. The migration CLI in vault_crypto suggests moving plaintext creds to the vault, but the presence of an always-written plaintext credential store means credentials may be left unencrypted unless the user explicitly migrates them.
Install Mechanism
No install spec or external downloads; skill is instruction-only with bundled Python files and claims zero external dependencies. No network install URLs or package manager installs were found. That lowers supply-chain risk compared with remote downloads.
Credentials
The skill declares no required environment variables, but both scripts use OPENCLAW_WORKSPACE (falling back to ~/.openclaw/workspace), plus they derive a machine fingerprint from hostname, username, and home directory. That implicit dependency on OPENCLAW_WORKSPACE and machine identity is not declared. The credential storage behavior (plaintext JSON vs encrypted vault) is disproportionate to the manifest's lack of secrets requirements and is likely to surprise users.
Persistence & Privilege
The skill persistently writes files in the workspace: plaintext credential JSON (publish_guard_creds.json), an encrypted vault (publish_guard_creds.vault), and JSONL audit logs under memory/publish_audit/. It does not request elevated OS privileges or force installation (always:false). The persistence of plaintext credentials by default is the primary concern.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install publish-guard
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /publish-guard 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.1.0
Added VaultCrypto: encrypted credential storage with PBKDF2+HMAC-CTR, machine-bound decryption, secure plaintext deletion. API keys are never stored in plaintext.
v1.0.0
Initial release: post verification, soft-404 detection, persistent credentials, platform guides (BotMadang/Moltbook/ClawHub), content validation, rate limit tracking, audit trail. Zero dependencies.
元数据
Slug publish-guard
版本 1.1.0
许可证
累计安装 1
当前安装数 1
历史版本数 2
常见问题

PublishGuard — Post Verification & Credential Manager 是什么?

Prevents false "posted successfully" claims by verifying content URLs, enforcing platform rules, tracking rate limits, and securely storing credentials persi... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 775 次。

如何安装 PublishGuard — Post Verification & Credential Manager?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install publish-guard」即可一键安装,无需额外配置。

PublishGuard — Post Verification & Credential Manager 是免费的吗?

是的,PublishGuard — Post Verification & Credential Manager 完全免费(开源免费),可自由下载、安装和使用。

PublishGuard — Post Verification & Credential Manager 支持哪些平台?

PublishGuard — Post Verification & Credential Manager 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 PublishGuard — Post Verification & Credential Manager?

由 edmonddantesj(@edmonddantesj)开发并维护,当前版本 v1.1.0。

💬 留言讨论