Install
openclaw skills install consensus-publish-guardPersona-weighted governance for outbound publishing (blog, social, announcements). Prevents unsafe public claims via hard-block checks, weighted consensus, rewrite paths, and board-native audit artifacts.
openclaw skills install consensus-publish-guardconsensus-publish-guard protects public-facing content before release.
APPROVE | BLOCK | REWRITEPublic content creates brand, legal, and trust exposure. Consensus review creates a safer publish gate than single-pass generation.
Uses deterministic logic from consensus-guard-core and existing persona inputs, persisted via consensus board primitives.
node, tsxCONSENSUS_STATE_FILE, CONSENSUS_STATE_ROOTconsensus-guard-core is the first-party consensus package used in guard executionpackage.json for reproducible installsThis repository currently expects a local sibling checkout of consensus-guard-core.
# from repos/ directory
# repos/
# consensus-guard-core/
# consensus-publish-guard/
Then install dependencies in this repo:
npm i
npm i consensus-publish-guard
node --import tsx run.js --input ./examples/input.json
This skill is wired to the consensus-interact contract boundary (via shared consensus-guard-core wrappers where applicable):
This keeps board orchestration standardized across skills.
This skill exposes a canonical entrypoint:
invoke(input, opts?) -> Promise<OutputJson | ErrorJson>invoke() starts the guard flow and executes deterministic policy evaluation with board operations via shared guard-core wrappers.
Guards support two modes:
mode="external_agent": caller supplies external_votes[] from agents/humans/models for deterministic aggregation.mode="persona": requires an existing persona_set_id; guard will not generate persona sets internally.