Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Feedback Learning

v1.0.0

Zero-LLM feedback learning system for OpenClaw agents. Detects user feedback (emoji reactions, text signals like "переделай"/"круто"), logs events, discovers...

0· 122·0 current·0 all-time
byMaxim Kravtsov@surdeddd

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for surdeddd/feedback-learning.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Feedback Learning" (surdeddd/feedback-learning) from ClawHub.
Skill page: https://clawhub.ai/surdeddd/feedback-learning
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install feedback-learning

ClawHub CLI

Package manager switcher

npx clawhub@latest install feedback-learning
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description match the included scripts: detection, logging, pattern analysis, and reporting all operate on a local ~/.openclaw/shared/learning store. No network, credentials, or unrelated binaries are requested. One mismatch: analyze-patterns.py writes promoted rules with a comment saying "Will be refined by LLM in cron" although no LLM or refinement step is included in the package or SKILL.md—this is unexplained and worth asking the author about.
!
Instruction Scope
SKILL.md tells operators to copy scripts into a shared directory, add boot-time loading of genes.json to agents, and run cron jobs. The runtime instructions and scripts read/write only files inside ~/.openclaw/shared/learning, which aligns with purpose, but agents are instructed to read promoted rules at boot and apply them automatically. Because promoted rules are derived directly from user signals/hints (user input), this creates a high risk of behavior change from small numbers of events (promotion threshold is 3 in 30 days). Also SKILL.md contained detected unicode-control-chars prompt-injection patterns, which could be an attempt to manipulate human or automated reviewers.
Install Mechanism
No install spec (instruction-only with included scripts). That lowers supply-chain risk: nothing is downloaded or executed from remote URLs. Scripts are plain Python/bash and operate locally.
Credentials
The skill requests no environment variables, no credentials, and hardcodes a local file path under the user's HOME. That is proportionate to a local feedback pipeline.
!
Persistence & Privilege
The skill is not forced-always, but it asks operators to add files to a shared persistent learning directory and to have agents read genes.json at boot to apply rules. That gives the skill an effective persistent influence over agent behavior. Combined with low promotion thresholds and direct use of user-supplied signals/hints, this enables easy rule poisoning or accidental behavioral changes if inputs are not validated or human-reviewed before promotion.
Scan Findings in Context
[unicode-control-chars] unexpected: The SKILL.md contained unicode-control characters flagged as potential prompt-injection. Prompt-injection tokens in documentation are not expected for a local feedback pipeline and could be an attempt to influence automated/human reviewers or to hide text. Investigate and sanitize SKILL.md before trusting its instructions.
What to consider before installing
What to consider before installing: - The skill is coherent with its stated purpose and requires no external credentials or network access. The included scripts operate only on a local directory under $HOME and generate reports, patterns, and promoted rules. - However, there are two important safety signals: (1) SKILL.md was flagged for unicode-control characters (possible prompt-injection), and (2) promoted rules are created automatically from user signals/hints and the agents are advised to read and apply these rules at boot. With the current default (promote at 3 occurrences in 30 days), an attacker or noisy users could poison the knowledge base and change agent behavior. Actions you can take to reduce risk: - Inspect and remove any suspicious unicode/control characters from SKILL.md before installing. - Run this skill in an isolated agent or non-production environment first to observe behavior. - Require human review before promotions: modify analyze-patterns.py to write candidate promotions to a 'pending' file instead of directly adding to genes.json, and add a manual approval step. - Increase promotion thresholds (e.g., more than 3 occurrences and/or add manual vetting), and add provenance metadata (who triggered events) and stronger deduplication to detect automated flooding. - Restrict which agents/users can call log-event.sh and ensure events.jsonl is writable only by a limited user/group (set filesystem permissions on the shared directory). - Remove or clarify the LLM refinement comment: if you plan to have an LLM refine rules, make that explicit and add constraints and auditing for any LLM-run step. If you cannot perform the above checks or do not trust the source, do not install the skill into production agents. If you proceed, enforce human review of promoted rules and lock down write access to the shared learning directory.

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

latestvk97dh6sgxj8f9j64c80ht486nd838k9a
122downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

Feedback Learning System

A complete pipeline for agents to learn from user feedback without spending tokens on analysis.

Architecture

User feedback → detect-feedback.py → log-event.sh → events.jsonl
                                                         ↓
                          weekly-report.py ← analyze-patterns.py
                                                         ↓
                                                   patterns.json
                                                         ↓ (≥3 occurrences)
                                                    genes.json (promoted rules)

Setup

1. Install files

Copy the skill contents to your shared learning directory:

DEST="$HOME/.openclaw/shared/learning"
mkdir -p "$DEST/reports"
cp scripts/* "$DEST/"
chmod +x "$DEST/log-event.sh"
touch "$DEST/events.jsonl"

2. Initialize data files

If they don't exist, create empty JSON stores:

cat > "$DEST/patterns.json" << 'EOF'
{"version": "2.0", "updated": "", "patterns": []}
EOF

cat > "$DEST/genes.json" << 'EOF'
{"version": "2.0", "rules": []}
EOF

cat > "$DEST/capsules.json" << 'EOF'
{"version": "2.0", "capsules": []}
EOF

3. Create LEARNINGS.md for each agent

Add to each agent's workspace:

# LEARNINGS.md
**Last Updated:** YYYY-MM-DD
**Total:** 0

## 🟢 Что работает (положительный фидбек)
(пока пусто)

## 🔴 Что НЕ работает (отрицательный фидбек)
(пока пусто)

## 🧠 Извлечённые правила
(пока пусто)

## 🔁 Повторяющиеся паттерны
(пока пусто)

## 💡 Feature Requests
(пока пусто)

4. Add to AGENTS.md

Add this block to each agent's AGENTS.md boot sequence:

## Feedback Learning
- On positive feedback (👍❤️🔥👏💯 or words like "круто","топ","зашло"):
  Run: `bash ~/.openclaw/shared/learning/log-event.sh <agent> positive user_emoji "<context>" "<signal>"`
- On negative feedback (👎🤦😤 or words like "фигня","переделай"):
  Run: `bash ~/.openclaw/shared/learning/log-event.sh <agent> correction user_nlp "<context>" "<signal>" "<hint>"`
- On exec errors:
  Run: `bash ~/.openclaw/shared/learning/log-event.sh <agent> error exec_fail "<context>" "<signal>" "<hint>"`

5. Set up crons

Pattern analysis (daily):

schedule: cron 30 3 * * * @ <timezone>
payload: python3 ~/.openclaw/shared/learning/analyze-patterns.py

Weekly report (Sundays):

schedule: cron 30 4 * * 0 @ <timezone>
payload: python3 ~/.openclaw/shared/learning/weekly-report.py

Usage

Log an event manually

bash log-event.sh anton error exec_fail "config update" "trailing comma in JSON" "Validate JSON before writing"
bash log-event.sh anton positive user_emoji "sent report" "🔥"
bash log-event.sh anton correction user_nlp "sent message" "переделай, не тот формат" "Confirm format before sending"

Detect feedback from text (no LLM)

echo "круто, зашло!" | python3 detect-feedback.py
# → {"type": "positive", "source": "user_nlp", "signal": "круто", "confidence": 0.8}

python3 detect-feedback.py "переделай это"
# → {"type": "correction", "source": "user_nlp", "signal": "переделай", "confidence": 0.8}

Run pattern analysis

python3 analyze-patterns.py

Outputs: pattern count, promotion status. Updates patterns.json. Auto-promotes to genes.json when a pattern hits ≥3 occurrences in 30 days.

Generate weekly report

python3 weekly-report.py

Saves to reports/WEEKLY_REPORT_YYYY_WNN.md with stats by agent, source, top patterns, and newly promoted rules.

Data Files

FilePurpose
events.jsonlAppend-only event log (all feedback)
patterns.jsonGrouped recurring patterns with counts
genes.jsonPromoted rules (≥3 occurrences → active rule)
capsules.jsonSuccessful reasoning paths (avoid re-computation)
reports/Weekly synthesis reports

Event Schema

{
  "ts": "2026-03-20T12:00:00Z",
  "agent": "anton",
  "type": "error|correction|positive|pattern|requery",
  "source": "exec_fail|user_nlp|user_emoji|requery|auto",
  "context": "what agent was doing",
  "signal": "the trigger text or emoji",
  "hint": "suggested fix or rule",
  "heat": 1
}

Promotion Flow

  1. Events accumulate in events.jsonl
  2. analyze-patterns.py groups similar events by signal text (≥60% similarity)
  3. Patterns with ≥3 occurrences in 30 days are promoted to genes.json
  4. Agents read genes.json at boot to apply learned rules
  5. weekly-report.py synthesizes progress for human review

Supported Languages

Feedback detection supports:

  • Russian: 20+ negative triggers, 19+ positive triggers, correction patterns
  • English: 10 negative, 8 positive triggers
  • Emoji: Universal positive/negative reactions

Comments

Loading comments...