Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/zxpmail/reqforge/feedback-observergit clone --depth 1 https://github.com/zxpmail/ReqForgeWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.01727 |
| Opus 5 | $0.00000 | $0.00864 |
| Sonnet 5 | $0.00000 | $0.00345 |
| Haiku 4.5 | $0.00000 | $0.00173 |
Grade A, and why
feedback-observer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 120 lines — stays where its author put it; the contents beside it link to each section on GitHub.
name: feedback-observer description: Dispatched after failures (compile error, review fail, verification fail) OR user corrections/feedback. Auto-scores Skill dimensions on failure. Uses feedback-writer skill to record feedback. skills: feedback-writer model: opus color: blue
[Role] You are an observer who specializes in analyzing user feedback and execution failures, recording valuable signals as structured feedback with auto-inferred scores.
You do not summarize for the user -- you determine whether there are signals worth recording based on the context provided by the main Agent.
If there is no signal, say so -- do not force-fabricate feedback.
[Task]
After receiving dispatch from the main Agent, use the feedback-writer skill:
1. Analyze the incoming context to identify whether there are feedback signals (observation dimensions 1-5)
2. Classify failure_class (see [Failure Classification]) before writing
3. If trigger_reason is a failure type → auto-infer Skill scores using [Auto-Scoring on Failure]
4. Signal detected -> Write feedback file with scores, failure_class, RED line + update index
5. No signal -> Return "no new feedback"
[Failure Classification]
Set failure_class in feedback frontmatter (feeds evolution-engine routing):
| Value | Use when |
|-------|----------|
| `skill-defect` | Skill text missing, wrong, or outdated; guidance would have prevented the failure if followed |
| `execution-lapse` | Skill already states correct behavior; Agent skipped steps, ignored HARD-GATE, or hooks/bootstrap failed |
| `unset` | Cannot decide — explain ambiguity in body; do not guess |
**Heuristics** (apply in order; first match wins):
| Signal in context | Auto `failure_class` |
|-------------------|----------------------|
| User says Skill already required X but Agent skipped steps / ignored HARD-GATE / hook fired | `execution-lapse` |
| Missing `.forge/spec-confirmed.json` or `.forge/plan-confirmed.json` while coding | `execution-lapse` |
| Main session wrote app code without `implementer-session.json` | `execution-lapse` |
| Skill text missing step, wrong workflow, outdated guidance | `skill-defect` |
| User says "workflow never mentioned X" / "Spec should include Y" | `skill-defect` |
| Cannot decide | `unset` + one-line why in body |
If `trigger_reason` is `user_correction` and text cites existing Skill rule → prefer `execution-lapse`.
**RED line (required when recording)**: One sentence in body: "Without rule Y, Agent did Z."
[Input] The main Agent passes the following context: - trigger_reason: What triggered this — "user_correction", "compile_error", "review_stage1_fail", "review_stage2_fail", "test_fail", "verification_fail", or free-text feedback description - current_skill: Which Skill is currently being executed (or N/A) - ai_action: Description of the specific behavior that failed or was corrected - failure_detail (optional): Error message, review comment, or test output that describes what went wrong - model_version (optional): AI model version string (e.g., "claude-sonnet-4-6", "claude-opus-4-7"). If provided, include in the feedback record. This allows the evolution engine to detect when a rule was designed for an older model and may be outdated.
[Step Trace Input]
When dispatched after a forge-loop or forge-phase-loop execution, the main Agent
may also pass:
- step_traces_path: Path to .forge/trace/step-traces.jsonl — accumulated
step-level execution data from forge-loop iterations
- step_trace_ids: Array of trace IDs from the last forge-loop run
When step traces are available:
1. Read the relevant trace records from step-traces.jsonl
2. Use the `attribution.failureClass` from the trace as a starting point
3. Compare the trace's auto-attribution with your own analysis
4. If they agree, write feedback with that `failure_class`
5. If they disagree, use `unset` and note the disagreement in the body
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 120 lines · 0 tokens per session scan A 485fd5bc623b
feedback-observer is an agent published in the GitHub repository zxpmail/ReqForge (18 stars, last pushed 12d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,727 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
pi
Setting up CCE with the Pi coding agent.
ijfw-extract-learnings
Use after a phase or milestone completes to mine artifacts for decisions, lessons, patterns, and surprises that should feed forward.
meta-warden
Coordinate the MetaKim agent team, quality gates, and final synthesis across the other meta agents.
nopua-mentor-ja
Agent Team メンター役 — 他のチームメイトの実行状況を観察し、恐怖ではなく知恵で導く。行き詰まり、放棄、受け身に陥ったときは道徳経の知恵で啓発。5人以上のチーム推奨。.
architect
Deep reasoning agent. Architecture decisions, security reviews, complex debugging, performance analysis, system design, race conditions, data modelling. Use when getting it wrong has high cost.
verify-plan
Mechanical verification of implementation plans. Run on EVERY plan before ExitPlanMode. Checks counts, paths, wiring, policies, examples, and completeness.