Back to skill

Security audit

Relationship Coach

Security checks for vulnerabilities and agentic risk

Overview

This relationship coaching skill is not malicious, but it should be reviewed because it automatically keeps sensitive relationship notes in workspace files without clear consent or deletion controls.

Review this skill carefully before installing. It may be useful for ongoing couples coaching, but it tells the agent to keep long-lived notes about both partners' triggers, wounds, patterns, boundaries, and session learnings in workspace Markdown files. Use it only in a workspace you trust, and prefer explicit consent from everyone involved plus a clear plan for reviewing and deleting stored profiles.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:16
Finding
Persistent Plaintext Storage of Sensitive Relationship and Private-Session Data## Vulnerability Details **File Location**: `SKILL.md:16-24, 152-174` **Vulnerability Type**: Persistent plaintext storage of sensitive personal data without defined access, consent, retention, or deletion controls **Risk Level**: Medium ### Vulnerable Code Snippets ```markdown ## Setup: couple profiles On first use, create a `profiles/` directory in the agent workspace with: - `partner-a.md` and `partner-b.md` (individual patterns, triggers, parts, session notes) - `dynamic.md` (relationship cycle, attachment patterns, recurring loops) - `agreement.md` (living relationship agreement: boundaries, commitments, shared rules) - `golden.md` (success stories, golden concepts, and what works; see [references/golden-concepts.md](references/golden-concepts.md)) Load relevant profiles before starting any session. Treat profiles as hypotheses to refine; treat agreements as established ground rules. ``` ```markdown ## Session-end learning check Run at the end of every session: **1. Scan for new learnings:** - Anything contradict or refine existing profiles? - New pattern, trigger, exile, or protector visible? - History shared that explains a current pattern? - Dynamic behave differently than hypothesized? **2. Scan for skill gaps:** - Missing process or framing? - Question or situation the skill didn't handle well? **3. Update profiles** with dated, concrete entries. Note patterns and insights, not verbatim quotes. **4. Privacy between DMs:** - What one partner shares in DM stays between you and them - In the shared channel, only reference what was said there - Never say "X told me in private that..." - In memory files, note patterns, not private quotes **5. If a skill gap was found**, note it for future improvement. ``` ### Technical Analysis The skill requires the agent to create and continually update Markdown files containing individual triggers, psychological patterns, attachment dynamics ...[truncated 3068 chars]
Remediation
## Remediation Suggestions 1. **Make persistence opt-in.** Default to ephemeral processing and obtain explicit consent from every person whose information will be recorded. 2. **Disclose the data model.** Explain which fields will be stored, where they will be stored, who can access them, and how long they will remain. 3. **Separate privacy domains.** Keep each partner's private records isolated from shared couple records. Never write private-DM-derived facts or inferences into jointly accessible files without explicit authorization. 4. **Enforce least privilege.** Restrict profile permissions to the minimum required identity and prevent unrelated agents, users, and workspaces from reading them. 5. **Encrypt sensitive records.** Use platform-supported encryption at rest and secure key management rather than relying on ordinary plaintext Markdown files. 6. **Minimize collection.** Store only information required for a user-approved coaching purpose. Avoid detailed histories, diagnostic-style labels, and speculative psychological inferences. 7. **Add retention and deletion controls.** Define an expiration period, support immediate deletion on request, and remove stale profiles automatically. 8. **Support review and correction.** Allow each partner to inspect, correct, and remove information attributed to them without exposing the other partner's private records. 9. **Verify identity and channel context.** Before loading a profile, ensure that the current user, couple, workspace, and private/shared channel match the record's authorization scope. 10. **Track provenance and sharing status.** Mark each entry as private, shared, or explicitly approved for sharing, and prevent information from moving between scopes automatically. 11. **Replace the current DM rule.** Explicitly prohibit storing private-session-derived facts and inferences in shared memory; removing quotations alone is not a sufficient privacy safeguard.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (8)

Missing User Warnings

High
Confidence
98% confidence
Finding
The skill requires persistent storage of sensitive personal and relational data but gives no user-facing warning that such data will be saved across sessions. This undermines informed consent and creates substantial privacy risk, particularly because users may disclose trauma, attachment wounds, conflict history, and private details about a non-present partner.

Anti-Refusal Statement

High
Category
Anti-Refusal
Content
- Suggest a specific process or exercise ("Let's try the parts check-in...")
- Do NOT say "it sounds like you need to set boundaries" or "you should try X"

### Never judge who is right

Do not assess proportionality, validate that one partner was wrong, suggest fault distribution, or imply one reaction is healthier.
Confidence
85% confidence
Finding
Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.

Vague Triggers

Medium
Confidence
96% confidence
Finding
The trigger criteria are broad enough to activate on many ordinary emotional or interpersonal conversations, which can cause the skill to engage in contexts where users did not specifically request relationship coaching or sensitive data handling. In this skill, that matters because activation can lead directly into collecting intimate partner information and creating persistent records.

Context-Inappropriate Capability

Medium
Confidence
97% confidence
Finding
The skill explicitly directs the agent to create persistent files containing highly sensitive relationship data, including triggers, attachment patterns, boundaries, and session-derived notes. Because this data is intimate and longitudinal, storing it by default without minimization or explicit consent creates unnecessary privacy and surveillance risk if the workspace is later accessed, reused, or exfiltrated.

Context-Inappropriate Capability

Medium
Confidence
95% confidence
Finding
Mandating a 'learning check' after every session turns a coaching skill into an ongoing memory-collection system that continuously accumulates sensitive inferences about both partners. This increases the chance of unauthorized disclosure, cross-session misuse, and hidden profiling, especially because the updates include inferred patterns and private disclosures rather than narrowly necessary operational data.

Autonomous Decision Making

Medium
Category
Excessive Agency
Content
**Examples:**

Blended (protector speaking): "You're so selfish. You never think about how I feel."
Self-led (speaking for protector): "A part of me gets really angry when plans change last minute without checking with me. That part feels like I don't matter."

Blended: "You don't care about me anymore."
Self-led: "There's a part of me that's scared you're pulling away. It feels really alone when you don't reach out first."
Confidence
75% confidence
Finding
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Autonomous Decision Making

Medium
Category
Excessive Agency
Content
**Example:**
> "Can I bring something up? I want us to understand each other, not have a fight.
> [2] When you make plans without asking me [observation],
> [3] a part of me panics and feels like I'm not factored in. Underneath that, there's something that's scared of being an afterthought. [parts language]
> [4] I'm not asking you to never make plans — I'm asking if you can loop me in first. Would that work?"
Confidence
75% confidence
Finding
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
This file gives a structured self-guided therapeutic process for emotionally activated partners, including prompts to access protectors, exiles, abandonment fears, shame, and childhood wounds, but it does not provide a clear up-front warning about trauma activation, dissociation, emotional overwhelm, or when to stop and seek professional support. In a relationship-coaching skill, users may follow this during or after acute conflict without recognizing that introspection into vulnerable parts can intensify distress, especially for trauma survivors or highly dysregulated users.

Static analysis

No suspicious patterns detected.