mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-19 15:18:03 +00:00
* chore(skills): remove red-team skills (godmode, obliteratus) from bundled catalog Anthropic's output classifier on claude-fable-5 (and likely other Claude models served through it) intermittently returns empty content for sessions whose system prompt advertises these skills. The bundled skills-catalog block is injected into every session's system prompt, so the descriptions - red-teaming/godmode 'Jailbreak LLMs: Parseltongue, GODMODE, ULTRAPLINIAN' - mlops/inference/obliteratus 'OBLITERATUS: abliterate LLM refusals (diff-in-means)' trip the classifier on EVERY session regardless of which skill is actually loaded, killing unrelated legitimate work (PR review, codebase audits, etc.). Measured impact (controlled, interleaved A/B, claude-fable-5 via OpenRouter, prompts differing only by the ~204 chars of these catalog lines, N=20 each): catalog lines present -> 19/20 (95%) blocked catalog lines absent -> 5/20 (25%) blocked Removing them ~quartered the block rate. Rewording the descriptions was not enough; the skills must leave the bundled catalog. - Delete skills/red-teaming/godmode and skills/mlops/inference/obliteratus - Drop their generated doc pages + catalog/sidebar entries (EN + zh-Hans) - Drop the godmode hand-written-page exception in generate-skill-docs.py * chore(skills): relocate godmode + obliteratus to optional-skills Rather than deleting outright, move both into optional-skills/ so they remain installable via `hermes skills install` while leaving the always-injected bundled catalog (which is what tripped Anthropic's classifier). - optional-skills/security/godmode (was skills/red-teaming/godmode) - optional-skills/mlops/obliteratus (was skills/mlops/inference/obliteratus) - regenerate optional-skills catalog + sidebar entries
40 lines
1.3 KiB
YAML
40 lines
1.3 KiB
YAML
# OBLITERATUS Analysis Study Config
|
|
# Usage: obliteratus run this-file.yaml --preset jailbreak
|
|
#
|
|
# Run analysis modules to understand refusal geometry BEFORE abliterating.
|
|
# Useful for research or when you want to understand what you're removing.
|
|
|
|
# Model to analyze
|
|
model:
|
|
name: "meta-llama/Llama-3.1-8B-Instruct"
|
|
dtype: "bfloat16"
|
|
quantization: "4bit" # Saves VRAM for analysis
|
|
device: "auto"
|
|
|
|
# Study configuration
|
|
study:
|
|
# Available presets: quick, full, attention, jailbreak, guardrail, knowledge
|
|
preset: "jailbreak"
|
|
|
|
# Or specify individual strategies:
|
|
# strategies:
|
|
# - layer_removal
|
|
# - head_pruning
|
|
# - ffn_ablation
|
|
# - embedding_ablation
|
|
|
|
# Analysis modules to run (subset of the 27 available)
|
|
analysis:
|
|
- alignment_imprint # Detect DPO/RLHF/CAI/SFT training method
|
|
- concept_geometry # Map refusal cone geometry
|
|
- logit_lens # Find which layer decides to refuse
|
|
- anti_ouroboros # Detect self-repair tendency
|
|
- cross_layer # Cross-layer alignment clustering
|
|
- causal_tracing # Causal necessity of components
|
|
- residual_stream # Attention vs MLP contribution
|
|
|
|
# Output
|
|
output:
|
|
directory: "./analysis-results"
|
|
save_plots: true # Generate matplotlib visualizations
|
|
save_report: true # Generate markdown report
|