← Back to Skills Marketplace
danielfoojunwei

Feedback-Loop-v2

by Daniel Foo Jun Wei · GitHub ↗ · v1.0.1 · MIT-0
cross-platform ⚠ suspicious
82
Downloads
0
Stars
0
Active Installs
2
Versions
Install in OpenClaw
/install auto-feedback
Description
A self-improving feedback loop skill that works fully standalone OR integrates with intent-engineering and dark-factory when available. Observes any system o...
README (SKILL.md)

Feedback Loop (v2)

Overview

The feedback-loop skill is a dual-mode, self-improving intelligence layer. It runs completely on its own with no external dependencies, and automatically unlocks richer analysis when intent-engineering or dark-factory are present.

Use this skill when:

  • You want to analyze the performance of any process, script, or agent execution.
  • You need prioritized improvement suggestions without running a full pipeline.
  • You want to auto-generate regression tests from observed failures or edge cases.
  • You need to track whether a system's behavior is drifting from its stated goals.
  • You want a self-contained improvement report you can act on immediately.
  • You are running the full intent-engineering → dark-factory → feedback-loop triad.

Dual-Mode Operation

The skill detects what inputs are available and automatically selects the richest mode:

Mode Inputs Available What You Get
Standalone Any JSON log, plain text, or prior observation Full analysis, suggestions, regression tests, alignment check, signed report
Dark Factory Enhanced outcome_report.json from dark-factory All standalone features + behavioral test pass rates, generated code review, security evidence
Full Triad outcome_report.json + specification.json from intent-engineering All enhanced features + goal alignment against original spec, updated specification for next cycle

There is no configuration switch — the skill detects what is available and adapts automatically. You never need to change anything to switch modes.


Architecture

┌──────────────────────────────────────────────────────────────────┐
│                     FEEDBACK LOOP (v2)                           │
│                                                                  │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │  INPUT LAYER (auto-detects mode)                            │ │
│  │                                                             │ │
│  │  Standalone:  any JSON log / plain text / prior obs        │ │
│  │  Enhanced:    + outcome_report.json (dark-factory)         │ │
│  │  Full Triad:  + specification.json (intent-engineering)    │ │
│  └───────────────────────┬─────────────────────────────────────┘ │
│                          │                                       │
│                          ▼                                       │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │  OBSERVER  (observer.py)                                    │ │
│  │  Normalizes all inputs → observation.json                  │ │
│  └───────────────────────┬─────────────────────────────────────┘ │
│                          │                                       │
│                          ▼                                       │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │  ANALYZER  (analyzer.py)                                    │ │
│  │  Scores performance · detects regressions                  │ │
│  │  Generates suggestions · checks alignment                  │ │
│  │  Auto-creates regression tests                             │ │
│  └───────────────────────┬─────────────────────────────────────┘ │
│                          │                                       │
│                          ▼                                       │
│  ┌─────────────────────────────────────────────────────────────┐ │
│  │  ORCHESTRATOR  (orchestrator.py)                            │ │
│  │  Assembles signed improvement_report.json                  │ │
│  │  Produces updated_observation.json for next cycle          │ │
│  │  Optionally produces updated_specification.json            │ │
│  └─────────────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────┘

Quick Start

Standalone — any JSON log

python scripts/orchestrator.py --input my_execution_log.json --goal "Process tickets in under 2 minutes"

Standalone — plain text description

python scripts/orchestrator.py --text "Script ran but missed 3 null input cases and took 4 minutes" --goal "Handle all inputs"

Standalone — continuing a prior cycle

python scripts/orchestrator.py --observation observation.json

Dark Factory Enhanced

python scripts/orchestrator.py --outcome outcome_report.json --goal "Achieve 98% test pass rate"

Full Triad (after intent-engineering + dark-factory)

python scripts/orchestrator.py --outcome outcome_report.json --spec specification.json

Run stages independently

python scripts/observer.py --input log.json --goal "..." --output observation.json
python scripts/analyzer.py --observation observation.json --output analysis.json
python scripts/orchestrator.py --analysis analysis.json --output-dir ./reports/

Outputs

Every run produces files in the current directory (or --output-dir):

File Always Present Description
observation.json Yes Normalized observation with extracted metrics
analysis.json Yes Performance score, suggestions, alignment score, regression tests
improvement_report.json Yes Final signed report with all findings and next steps
updated_observation.json Yes Updated observation for the next cycle
updated_specification.json Full Triad only Updated spec with new regression tests for intent-engineering

The Six-Step Internal Workflow

Step 1 — Normalize Input

observer.py accepts any input format and normalizes it into a standard observation.json. In standalone mode it extracts metrics from JSON or text. In enhanced/triad mode it also ingests the structured fields from outcome_report.json and specification.json.

Step 2 — Score Performance

analyzer.py computes a performance_score (0.0–1.0) from extracted metrics. It compares against the previous cycle's score (if available) to detect regressions and trends.

Step 3 — Generate Improvement Suggestions

The analyzer produces concrete, actionable suggestions ranked critical → high → medium → low. Each suggestion includes a description, rationale, effort estimate, and expected impact. In triad mode, suggestions are also cross-referenced against the original specification's success criteria.

Step 4 — Auto-Generate Regression Tests

Every failure and edge case is automatically converted into a regression test with a concrete input and expected_output. These are appended to updated_observation.json and (in triad mode) to updated_specification.json.

Step 5 — Check Goal Alignment

The analyzer checks the observation against references/alignment_values.json (your organization's principles) and, in triad mode, against the original specification's stated goal. It produces an alignment_score (0.0–1.0) and flags any drift.

Step 6 — Generate Signed Report

orchestrator.py assembles all outputs into a single improvement_report.json with a SHA-256 integrity digest, making every report independently verifiable.


Self-Improving Loop

The skill is designed to be run repeatedly. Each run produces an updated_observation.json that serves as the input for the next run. Over time, the regression test suite grows, the alignment score stabilizes, and the improvement suggestions become more targeted.

Cycle 1:  any input → observation → analysis → improvement_report_1.json + updated_observation.json
Cycle 2:  updated_observation.json → analysis → improvement_report_2.json + updated_observation.json
Cycle N:  ...

In full triad mode, the updated_specification.json feeds back into intent-engineering to close the loop across all three skills.


Configuration

All configuration lives inside the skill — no external files required.

references/alignment_values.json — Edit to define your organization's goals and values. The analyzer checks every observation against these values to produce the alignment score.

references/scoring_weights.json — Edit to change how the performance score is calculated (e.g. weight pass rate more heavily than speed).

references/suggestion_rules.json — Edit to add custom rules for generating improvement suggestions.


Resources

feedback-loop/
├── SKILL.md                              ← this file
├── scripts/
│   ├── observer.py                       ← normalizes any input → observation.json
│   ├── analyzer.py                       ← scores, detects regressions, generates suggestions
│   └── orchestrator.py                   ← runs all stages, produces signed report
├── references/
│   ├── alignment_values.json             ← org goals and values (edit this)
│   ├── scoring_weights.json              ← performance score weights
│   ├── suggestion_rules.json             ← rules for improvement suggestions
│   └── operations_guide.md              ← detailed ops and troubleshooting guide
└── templates/
    ├── improvement_report_template.md    ← human-readable report template
    └── observation_template.json         ← blank observation template
Usage Guidance
This skill appears to implement the claimed feedback loop locally and does not request credentials or network access, but take care before running it on important systems: 1) Inspect suggestion_rules.json and any alignment/weights files before use — they are evaluated with Python eval and can run code if tampered with. 2) Only run the tool on inputs and rule files you trust; do not feed it untrusted outcome_report.json or specification.json without review. 3) Run first in an isolated/sandbox environment (container or VM) and review generated files before promoting them to production. 4) If you will use custom rules, consider replacing the free-form Python expressions with a safer, declarative rule format or restrict eval (e.g., parse conditions rather than eval). 5) Review and version-control the shipped reference files so they cannot be silently modified by third parties.
Capability Analysis
Type: OpenClaw Skill Name: auto-feedback Version: 1.0.1 The skill bundle is classified as suspicious due to a critical security vulnerability in `scripts/analyzer.py`. The script utilizes the `eval()` function to process logic conditions defined in `references/suggestion_rules.json` (and potentially user-provided rule files), which allows for arbitrary code execution (RCE) if the configuration or input metrics are manipulated. While the provided rules are benign and the overall logic aligns with the stated purpose of a performance feedback loop, the use of unsafe execution primitives without proper sandboxing or sanitization poses a high risk of exploitation.
Capability Assessment
Purpose & Capability
Name, description, and code align: the code normalizes inputs, scores performance, generates suggestions and regression tests, and assembles a signed report. Integration points (dark-factory outcome_report.json and intent-engineering specification.json) are implemented and expected; no unrelated credentials, binaries, or external services are requested.
Instruction Scope
Runtime instructions operate on local files (inputs, outcome_report.json, specification.json) and produce local artifacts (observation.json, analysis.json, improvement_report.json, updated_*.json). There is no network I/O or secret-exfiltration code visible. However, the analyzer evaluates 'condition' strings from suggestion_rules.json using Python eval(condition, {}, context). Because rule files are editable and loaded at runtime, a malicious or tampered rules/alignment file could execute arbitrary code in the process context. This is a significant runtime risk if rule files are not strictly controlled.
Install Mechanism
No install spec; the skill is distributed as scripts and reference files. Nothing in the package pulls external archives or runs network installs. Risk from installation is low, but the package includes executable Python scripts that will run on the host when invoked.
Credentials
The skill declares no required env vars, credentials, or config paths. All functionality is driven by local input files and shipped reference files. This is proportionate to the described purpose.
Persistence & Privilege
The skill does not request 'always' presence and does not modify other skills or system-wide agent settings. It writes files to the current working directory (reports, updated observations/specs) as part of normal operation — expected behaviour for a feedback loop tool.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install auto-feedback
  3. After installation, invoke the skill by name or use /auto-feedback
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.1
- Major upgrade: Feedback Loop skill is now self-contained and autodetects integration contexts for richer analysis. - New architecture: Modular scripts (`observer.py`, `analyzer.py`, `orchestrator.py`) replace previous pipeline, supporting fully standalone operation or enhanced modes with dark-factory and intent-engineering. - Simplified input system: Accepts any JSON log, plain text, or structured results; dynamically adjusts capabilities based on available files. - Improved outputs: Generates normalized observations, actionable suggestions, automatic regression tests, alignment checks, and a signed, independently verifiable improvement report. - Resources reorganized: Added new references and scripts; legacy pipeline scripts and configs removed to streamline workflow.
v1.0.0
feedback-loop 1.0.0 - Introduces a meta-skill that orchestrates a continuous self-improving feedback loop across the intent-engineering, dark-factory, and provenable skills. - Automates feedback collection, improvement analysis, new behavioral test generation, goal alignment tracking, and inter-skill learning propagation. - Provides a six-step workflow for autonomous skill evolution and alignment. - Outputs comprehensive improvement reports and updates to skill specifications after each execution cycle. - Includes scripts, configuration references, and report templates for extensibility.
Metadata
Slug auto-feedback
Version 1.0.1
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 2
Frequently Asked Questions

What is Feedback-Loop-v2?

A self-improving feedback loop skill that works fully standalone OR integrates with intent-engineering and dark-factory when available. Observes any system o... It is an AI Agent Skill for Claude Code / OpenClaw, with 82 downloads so far.

How do I install Feedback-Loop-v2?

Run "/install auto-feedback" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Feedback-Loop-v2 free?

Yes, Feedback-Loop-v2 is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Feedback-Loop-v2 support?

Feedback-Loop-v2 is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Feedback-Loop-v2?

It is built and maintained by Daniel Foo Jun Wei (@danielfoojunwei); the current version is v1.0.1.

💬 Comments