Simple Random Interaction Designer

v2.0.0

Decide whether OpenClaw should send a spontaneous casual message during periodic checks, and when it should, choose a natural interaction type plus concise g...

2· 536·0 current·0 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (decide whether to send a casual proactive message) matches the included Python script and the SKILL.md. The script implements a simple local RNG decision and selects from a short catalog of interaction types; no unrelated capabilities or credentials are requested.
Instruction Scope
Runtime instructions stay within the stated purpose (run script each check, use the JSON result). They do instruct the agent to use 'any relevant OpenClaw-accessible tools, skills, or integrations to fetch live context' when an interaction is data-aware — this is reasonable for context-aware messages but grants the agent broad discretion to call other enabled integrations. The SKILL.md otherwise avoids reading files, environment variables, or external endpoints directly and discourages fabricating context.
Install Mechanism
No install spec and the script relies only on Python 3 standard library. Nothing is downloaded or written to disk beyond running the included script, which is low-risk.
Credentials
The skill declares no environment variables, no credentials, and no config paths. The instructions' recommendation to fetch context uses platform-managed integrations rather than requiring new secrets from the skill itself, which is proportionate to the purpose.
Persistence & Privilege
The skill is not set to always: true, does not request permanent presence, and does not modify other skills or system-wide settings. Autonomous invocation is allowed (platform default) but not combined with other concerning privileges.
Assessment
This skill appears coherent and low-risk: it runs a local Python decision helper and returns only a small JSON payload. Two things to keep in mind before enabling it: (1) SKILL.md allows the agent to call other OpenClaw integrations to fetch live context for data-aware interactions — review and limit which integrations/credentials the agent may call so the skill cannot access unexpected data sources; (2) test its behavior and frequency in a staging environment to ensure the spontaneous messages and rates are acceptable for your users and privacy policies.

Like a lobster shell, security has layers — review code before you run it.

latestvk97dqtbrsr9jbhnpa2snd70r2s826f6p
536downloads
2stars
2versions
Updated 1mo ago
v2.0.0
MIT-0

Simple Random Interaction Designer

Use this skill to decide whether to send a casual proactive message and, when the answer is yes, what kind of interaction to deliver. Use {baseDir}/scripts/random_interaction_designer.py as the default execution path.

Workflow

  1. Run the script once per scheduled check interval.
  2. Read decision from the JSON output.
  3. Stop immediately if decision is no.
  4. If decision is yes, use both interaction_type and interaction_description to draft the outgoing message.
  5. If the selected interaction is data-aware, use any relevant OpenClaw-accessible tools, skills, or integrations to fetch live context before drafting the message.
  6. Keep the final message brief, casual, and easy to ignore without social pressure.
  7. Prefer recent chat context when it is clearly present.
  8. Do not mention the random process, scheduled checks, or why this interaction was selected.

Primary Tooling

  • Script path: {baseDir}/scripts/random_interaction_designer.py
  • Runtime: Python 3, standard library only.

Preferred command:

  • python3 {baseDir}/scripts/random_interaction_designer.py

Output Contract

When the result is no:

{"decision":"no"}

When the result is yes:

{
  "decision": "yes",
  "interaction_type": "Playful opener",
  "interaction_description": "Send a brief playful line that feels spontaneous and easy to ignore."
}

Contract rules:

  • decision is always present and is either yes or no.
  • interaction_type is present only when decision is yes.
  • interaction_description is present only when decision is yes.
  • Do not expect debug fields, probability values, roll values, or fallback metadata.

Interaction Design Rules

  • Treat the JSON as execution guidance, not user-facing text.
  • Keep the final message to one or two short chat lines.
  • Prefer soft phrasing over transactional or assistant-like framing.
  • Avoid defaulting to "just checking in" language.
  • Ask at most one question in a single ping.
  • Do not fabricate recent context, external facts, or account-backed data.
  • For data-aware categories, prefer real-world grounding when OpenClaw can actually access the relevant source.
  • Use smart-home, weather, calendar, traffic, news, or market context only when the information is reliable, fresh, and genuinely relevant to the user.
  • If interaction_type depends on context or fresh data and that support is unavailable, rerun once to try for a non-data interaction; if rerunning is not practical, keep the message general and low-pressure instead of pretending specificity.
  • Vary tone and wording from recent interactions when possible so the behavior feels casual rather than patterned.

Interaction Catalog

Use the selected interaction_type and follow the matching guidance from interaction_description.

  1. Playful opener Start with a short playful line that feels light and spontaneous.
  2. Curious check-in Ask one low-stakes question that is easy to answer or ignore.
  3. Light shared observation Make a casual observation that feels conversational rather than task-driven.
  4. Tiny celebration Briefly acknowledge a small win or effort when the chat supports it.
  5. Smart device status If OpenClaw can access relevant device state, share one useful smart-device status or gentle suggestion naturally.
  6. Weather-aware check-in Use current weather only when fresh reliable data is available and clearly relevant.
  7. Calendar-aware nudge Turn calendar context into a soft human-sounding reminder or prompt, not an alert.
  8. Context-aware follow-up Build on a recent chat detail only when it is clearly present in the current conversation.
  9. Practical nudge Offer one concise optional nudge that may help the user.
  10. Optional real-world update Share one brief real-world update such as traffic, news, or market context only when reliable relevant data is already available.

Error Handling

  • If execution fails, surface the Python error message and rerun.
  • If output is not valid JSON, treat it as a hard failure and rerun.
  • If decision is missing or is not yes or no, rerun and discard the invalid result.
  • If decision is yes and either interaction_type or interaction_description is missing, rerun and discard the invalid result.

Minimal Examples

python3 {baseDir}/scripts/random_interaction_designer.py
python3 {baseDir}/scripts/random_interaction_designer.py --seed 42
python3 "{baseDir}/scripts/random_interaction_designer.py"
python3 "{baseDir}/scripts/random_interaction_designer.py" --seed 42

Comments

Loading comments...