Simple Random Interaction Designer
Use this skill to simulate spontaneous, human-like pings during periodic checks.
Use {baseDir}/scripts/random_interaction_designer.py as the default execution path.
Workflow
- Run the script once per scheduled check interval.
- Read
should_interactfrom the JSON output. - Stop immediately if
should_interactisfalse. - If
should_interactistrue, useinteraction_typeto generate the outgoing ping. - For data-dependent interaction types, do best-effort retrieval using any available tools, skills, or MCP integrations before drafting the message.
- If real data cannot be retrieved, switch interaction type to
Jokeand send a simple interaction that requires no external data.
Primary Tooling
- Script path:
{baseDir}/scripts/random_interaction_designer.py - Runtime: Python 3, standard library only.
Preferred command:
python {baseDir}/scripts/random_interaction_designer.py
Output Contract
should_interact(trueorfalse)yes_probability_percent(integer between 25 and 75)roll_percent(integer between 1 and 100)interaction_type(present only whenshould_interactistrue)
Supported interaction types:
System status updateWeather updatePersonality-based random factCurrent events updateUser status updateJokeCalendar reminderEmail inbox summaryTraffic or commute updateFinance or crypto market snapshot
Real Data Policy
- Treat
System status update,Weather update,Current events update,User status update,Calendar reminder,Email inbox summary,Traffic or commute update, andFinance or crypto market snapshotas data-dependent types. - Use best efforts to fetch live or account-backed data through the tools and skills currently available in the run.
- Do not invent external facts when those sources are unavailable.
- Fall back to
Jokewhen data retrieval fails, times out, or is not authorized.
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
interaction_typeis missing whileshould_interactistrue, rerun and discard the invalid result.
Minimal Examples
python {baseDir}/scripts/random_interaction_designer.py
python {baseDir}/scripts/random_interaction_designer.py --seed 42
python "{baseDir}/scripts/random_interaction_designer.py"
python "{baseDir}/scripts/random_interaction_designer.py" --seed 42