Back to skill

Security audit

Team Collaboration Skill

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent multi-agent collaboration template, but it stores user information and agent state persistently and encourages periodic proactive behavior without enough user control or safety boundaries.

Install only if you want a Chinese-language multi-agent workflow that keeps shared Markdown memory. Before using it with sensitive work, add explicit opt-in for memory, review/delete controls, retention limits, rules treating stored memory as untrusted data, and confirmation before proactive reminders, posting, skill installation, repository changes, or scheduled automation.

Vulnerability Patterns
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

T02 · Agent Memory Poisoning

Warning
Location
SKILL.md:69
Finding

Persistent Prompt Injection Through Unsanitized Agent State

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:69-78; related persistence rules in SKILL.md:91-98, templates/shared/knowledge-extraction.md:3-11, and templates/shared/workflow.md:17-20
Vulnerability Type: Persistent agent memory poisoning
Risk Level: Medium

Vulnerable Code

javascript
// Read state
const state = read('memory/agents/product-agent.md');

// Spawn
spawnAgent('product', `
You are the product team agent.

## Your state
${state}

## Task
${task}
`);

The related knowledge-extraction template persists user-supplied information:

markdown
| User statement | Extracted information | Storage destination |
|----------------|-----------------------|---------------------|
| "My name is/I am..." | Name/identity | doctor-profile.md |
| "I like/dislike..." | Preference | doctor-profile.md |
| "Remember this..." | Important information | MEMORY.md |
| "This is important..." | Decision | decisions.md |
| "Do not make this mistake again..." | Lesson | lessons.md |

The workflow then makes persisted information available to later operations:

markdown
After each task:
1. Update `memory/agents/{role}-agent.md`
2. Write important discoveries to `memory/lessons.md`
3. Write decisions to `memory/shared/decisions.md`

Technical Analysis

The Skill deliberately extracts user-controlled content into persistent memory, decision, lesson, and agent-state files. It subsequently reads an agent-state file and directly interpolates its contents into a child agent's prompt.

No controls are specified for validating stored entries, distinguishing trusted instructions from untrusted historical data, rejecting imperative text, recording provenance, or preventing a spawned agent from following instructions embedded in its state. Consequently, an attacker can frame malicious prompt instructions as information that should be remembered. Once persisted, those instr ...[truncated 1767 chars]

Remediation
View remediation

Remediation Suggestions

  1. Treat persistent content as untrusted data. Place stored state inside explicit data delimiters and instruct child agents that text inside those delimiters must never be executed as instructions.
  2. Use structured storage. Store facts in a schema with fields such as value, source, timestamp, confidence, sensitivity, and approval status instead of appending arbitrary prose.
  3. Validate before persistence. Detect and reject entries containing imperative instructions, role reassignment, policy overrides, tool directives, secret-access requests, or requests to ignore future instructions.
  4. Require confirmation. Obtain explicit user or administrator approval before persisting security-sensitive information or instruction-like text.
  5. Separate data from policy. Never place user-derived memory in the same prompt section as trusted role definitions, system rules, or tool policies.
  6. Apply least privilege. Spawn agents only with tools and data required for the current task, limiting the impact of poisoned state.
  7. Add provenance-aware precedence. Define that system and current-task instructions override all historical state, and that user-authored memory cannot modify security policy.
  8. Provide lifecycle controls. Implement review, editing, expiration, and deletion of stored entries, with an audit trail for changes.
  9. Sanitize existing memory. Review current memory and state files for embedded directives before loading them into future agent prompts.
  10. Test adversarial cases. Add tests using stored payloads such as “ignore previous instructions,” tool-execution requests, and data-disclosure requests to verify they remain inert.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (23)

Natural-Language Policy Violations

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The file is written as a Chinese-only rule set and does not indicate that users may choose another language or locale. This creates a language policy concern because the skill appears to require a specific language without documented opt-in or justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
82% confidence
Finding

The description and all user-facing instructions are written in Chinese, with no indication that other languages are supported or that Chinese is required for a region-specific purpose. Under the language/locale policy, forcing a specific language without user opt-in can be a policy violation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill explicitly promotes persistent storage of user preferences, identity details, and decisions in shared markdown files, but it provides no notice, consent flow, retention limits, or access-control guidance. In a multi-agent setup, this increases the chance that sensitive user data is silently accumulated and propagated across agents beyond the user's expectations.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The heartbeat checklist instructs the system to initiate proactive outreach ('发个问候') and reminders based on user inactivity, but the skill's stated purpose is collaboration-system setup, not autonomous user re-engagement. This creates a scope-expansion and consent problem: an agent may contact users or nudge them without an explicit opt-in, which can violate user expectations and platform policy.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The line directing the agent to send a greeting after 24 hours of silence describes unsolicited user contact without any notice, consent, or boundary conditions. In an automated multi-agent system, this can lead to spammy or privacy-invasive behavior, especially if users did not agree to monitoring of inactivity for outreach purposes.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The entire skill template is written in Chinese and labels the agent role and workflow exclusively in that language, with no indication that the user can choose another language or that the skill is intended only for a Chinese-language environment. This creates a natural-language locale policy concern because it implicitly enforces a specific language without opt-in or documented justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill content is entirely written to operate in Chinese and does not provide any mechanism for honoring the user's preferred language or obtaining opt-in. In a multi-agent collaboration system, this can cause miscommunication, incorrect task execution, and inaccessible outputs for users or downstream agents that expect another language.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The guidance explicitly tells agents to write user-related information into a profile file without any mention of consent, minimization, retention limits, or sensitivity boundaries. In a multi-agent system with persistence, this can normalize unnecessary collection and storage of personal data, increasing privacy, compliance, and unauthorized access risk.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The entire template, including headings and decision principles, is written in Chinese with no indication that language selection is optional or limited to a specific region-specific use case. This can violate language or locale policy when users have not opted into Chinese output.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrases are broad and conversational, so ordinary user statements can cause persistent storage without clear, informed intent to save data. In a multi-agent collaboration skill with memory files, this increases the chance of over-collection and unintended retention of sensitive or personal information.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The file defines automatic persistence of names, identities, preferences, and important statements into memory files, but provides no user-facing warning or consent mechanism. This creates a privacy risk because users may not realize their personal data is being retained across sessions or shared among cooperating agents.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The rules explicitly retain personal details and preferences in persistent files without defining scope, retention limits, sensitivity boundaries, or access controls. In a multi-agent system, persistent memory can be consumed by multiple components, amplifying privacy leakage and creating secondary use risks beyond the user's immediate request.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

This markdown file uses Chinese throughout for headings, labels, and task descriptions, which effectively forces a specific language on users. The policy allows locale constraints only when the skill offers user choice or clearly documents a justified region-specific need, neither of which appears here.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The rule set defines large, ambiguous categories without clear activation boundaries, so a single request may reasonably match multiple teams. In this skill's context, that ambiguity is more dangerous because downstream agents appear specialized for product, engineering, and operations workflows, making unintended routing likely to cause incorrect actions or cross-role task escalation.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The routing keywords are broad and overlap with common user language, which can cause requests to be sent to the wrong agent without explicit user intent. In a multi-agent collaboration skill, misrouting can lead to incorrect task execution, unnecessary capability exposure, and accidental handling by a more privileged or automation-capable role.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The workflow explicitly instructs agents to persist task results, discoveries, and decisions into memory files, but provides no notice, consent mechanism, retention policy, or scoping limits. In a multi-agent collaboration skill, this can cause unintended storage of user-provided sensitive data or proprietary context across sessions, increasing privacy and data-governance risk.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The file presents all operational instructions in Chinese, which may imply a fixed language behavior without documenting user choice or a justified locale-specific scope. The policy requires avoiding forced language or locale constraints unless they are explicitly optional or justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The entire skill template is written in Chinese, including headings, labels, and operational guidance, with no indication that language selection is user-configurable or that the skill is intended only for a Chinese-speaking or region-specific environment. This creates a natural-language policy concern because it implicitly enforces a specific language without user opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

This markdown file presents all substantive user-facing content in Chinese, including headings and role descriptions, with no indication that the user can choose another language. Under the policy for natural-language violations, forcing a specific language without user opt-in should be flagged.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

This markdown file presents all headings and instructional text in Chinese, which may implicitly enforce a specific language for users. The policy requires offering a language or locale choice unless the constraint is clearly documented and justified, which is not present here.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

The instructions prescribe baidu-search for Chinese searches and prioritize Feishu as 'domestic-friendly', which imposes a locale-specific workflow. The document does not present this as optional or limited to a region-specific deployment, nor does it offer users a language or locale choice.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

All headings, keywords, and examples are written only in Chinese, which implicitly constrains use to a specific language without stating that limitation or offering an alternative. Under the language/locale policy, a skill should either provide user language choice or clearly document and justify a locale-specific scope.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The file presents all user-facing workflow instructions in Chinese and does not offer an alternative language or note that the skill is intended only for Chinese-speaking users. This can violate language/locale policy when a specific language is imposed without explicit opt-in or documented justification.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.