Agent skill

Harness Drift From History

by ruvnet in ruvnet/ruflo

One-command drift detection. An agent skill from ruvnet/ruflo.

MITAuto-check: notesDevelopment

Install Harness Drift From History

skills CLI
$ npx skills add ruvnet/ruflo --skill harness-drift-from-history -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ruvnet/ruflo harness-drift-from-history --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ruvnet/ruflo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/ruflo-metaharness/skills/harness-drift-from-history .claude/skills/harness-drift-from-history && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
harness-drift-from-history
GitHub stars
74k
Token cost
~632 tokens
SKILL.md length
169 words
Files
1
Skills in repo
265
Repo updated
First seen
Licence
MIT

At a glance

One-command drift detection. An agent skill from ruvnet/ruflo.

  • Works in 5 steps: Lists records from metaharness-audit… → Picks the most recent record by… → Runs a fresh oia-audit against the… → …
  • Tasks that involve Architecture decision records
  • SKILL.md covers What it does, Architectural constraint…, Exit codes and Example, plus 1 more section
  • Calls npx

What it does

Harness Drift From History is an agent skill from ruvnet/ruflo. One-command drift detection. Composes audit-list + oia-audit + audit-trend into a single primitive — finds the most recent audit in metaharness-audit namespace, runs a fresh audit against the current repo, diffs them via ADR-152 §3.1 similarity, and alerts when structural distance crosses --threshold. Iter 53 of ADR-150 deep integration.

Its SKILL.md is about 630 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Architecture decision records and GitOps. The repository describes itself as: 🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory…. The licence is MIT.

When your agent uses it

  • Tasks that involve Architecture decision records
  • Tasks that involve GitOps

Example prompts

  • “/harness-drift-from-history”

Requirements

  • Node.js
  • Pre-approved tools (allowed-tools): Bash

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Lists records from metaharness-audit namespace via audit-list.mjs
  2. Picks the most recent record by startedAt (or --baseline-since 7d skips anything newer than 7 days)
  3. Runs a fresh oia-audit against the current path
  4. Diffs the two via audit-trend, applying --alert-on-distance-below ${threshold}
  5. Returns the structured drift report

What it can do on your machine

Read from SKILL.md and the folder at commit 6c04654. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Harness Drift From History loads about 632 tokens when it runs. Until then it costs about 93 tokens; SKILL.md has 169 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~93
When it runs · the whole SKILL.md, loaded when a task matches
~632

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ruvnet/ruflo at commit 6c04654, republished under its MIT licence (© ruvnet). 169 words, ~632 tokens.

Download SKILL.mdSave it as .claude/skills/harness-drift-from-history/SKILL.md (or your agent's skills folder).
name
harness-drift-from-history
description
One-command drift detection. Composes audit-list + oia-audit + audit-trend into a single primitive — finds the most recent audit in `metaharness-audit` namespace, runs a fresh audit against the current repo, diffs them via ADR-152 §3.1 similarity, and alerts when structural distance crosses `--threshold`. Iter 53 of ADR-150 deep integration.
allowed-tools
Bash
argument-hint
[--path .] [--baseline-since 7d] [--threshold 0.95] [--dry-run] [--format json|table]

The natural ops question after running oia-audit weekly is "did anything drift?" Before this skill, the answer required a three-step sequence:

bash
npx ruflo metaharness audit-list --format json   # → pick a key by hand
npx ruflo metaharness oia-audit --format json > /tmp/curr.json
npx ruflo metaharness audit-trend \
  --baseline-key <picked-key> --current /tmp/curr.json \
  --alert-on-distance-below 0.95

This skill collapses it into one command:

bash
npx ruflo metaharness drift-from-history --threshold 0.95

What it does

  1. Lists records from metaharness-audit namespace via audit-list.mjs
  2. Picks the most recent record by startedAt (or --baseline-since 7d skips anything newer than 7 days)
  3. Runs a fresh oia-audit against the current path
  4. Diffs the two via audit-trend, applying --alert-on-distance-below ${threshold}
  5. Returns the structured drift report

Architectural constraint inheritance (ADR-150)

ConstraintHow drift-from-history satisfies it
RemovablePure subprocess composition over existing scripts — no new @metaharness/* import
OptionalIf oia-audit reports degraded:true, this skill exits 3 with a degraded payload
GracefulEmpty audit history → exit 2 with hint to seed it; never crashes
CI-gateSmoke step 17z16 anchors the dispatcher entry + subcommand listing

Exit codes

  • 0 — similarity ≥ threshold (or threshold not crossed)
  • 1 — drift detected: similarity < threshold (alert fired)
  • 2 — config error (no history, audit-list failed)
  • 3 — upstream metaharness absent (degraded payload returned)

Example

bash
$ npx ruflo metaharness drift-from-history --threshold 0.95
# drift-from-history

Baseline:        audit-2026-06-16T22-58-47-840Z
Current:         2026-06-16T23:05:02.231Z

Structural similarity: 1 (near-identical)
Distance:              0

✓ similarity ≥ 0.95 — OK

Implementation

scripts/drift-from-history.mjs

© ruvnet, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/ruflo-metaharness/skills/harness-drift-from-history of ruvnet/ruflo.

Open the folder on GitHubat commit 6c04654

Compare with similar skills

Harness Drift From History next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Harness Drift From History compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Harness Drift From History this skillruvnet/ruflo74k—~632Automated safety check: NotesMIT
Zizkadb Dev SetupZIZKA-AI-SL/ZizkaDB129—~535Automated safety check: NotesCustom licence
Change Impactqshanx/docs-governance137—~960Automated safety check: PassMIT
Project Knowledgeradix-ng/primitives2741 repos~833Automated safety check: PassMIT
Requirement Tracingeclipse-ankaios/ankaios125—~2.4kAutomated safety check: PassApache-2.0
Record A Decisioninkeep/open-knowledge4.5k—~3.5kAutomated safety check: PassGPL-3.0

Similar skills

  • Zizkadb Dev Setup

    ZIZKA-AI-SL/ZizkaDB

    Set up and start the local ZizkaDB development stack. An agent skill from ZIZKA-AI-SL/ZizkaDB.

    129 GitHub stars~535 tokensUpdated today
    DevelopmentAuto-check: notes
  • Change Impact

    qshanx/docs-governance

    在改代码、数据、接口或治理文档前做有证据的影响分析,并在实施后把计划影响与实际 diff 对照;覆盖代码调用、数据/Schema、API 契约、测试、文档、ADR、部署、迁移和回滚。用于跨模块修改、高风险变更、数据库迁移、认证、公共接口、用户问“会影响哪里”“改之前检查一下”或实施后需要反思偏差时。English triggers: change impact analysis, blast…

    137 GitHub stars~960 tokensUpdated today
    DevelopmentAuto-check passed
  • Project Knowledge

    radix-ng/primitives

    A skill your agent uses when you need information about this project's architecture, tech stack, coding patterns, data model, deployment setup, git workflow, or UX guidelines.

    274 GitHub starsUsed in 1 repo~833 tokens
    DevelopmentAuto-check passed
  • Requirement Tracing

    eclipse-ankaios/ankaios

    Manage requirement tracing — write new or update existing requirements/design decisions, link implementations and tests to existing ones, and maintain tracing consistency.

    125 GitHub stars~2.4k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Record A Decision

    inkeep/open-knowledge

    Records an architecture decision as a Nygard/MADR-shaped ADR under decisions/ — capturing the context that forced the choice, the options weighed, the decision itself, and its consequences in both…

    4.5k GitHub stars~3.5k tokensUpdated today
    DevelopmentAuto-check passed
  • Upgrade Harness

    ruvnet/metaharness

    Drift detection + apply for a scaffolded harness. An agent skill from ruvnet/metaharness.

    696 GitHub stars~497 tokensUpdated yesterday
    DevelopmentAuto-check passed

More from ruvnet/ruflo

All 265 skills in this repo
  • Stores, searches, and retrieves successful patterns with HNSW-indexed semantic search so agents can reuse past solutions instead of relearning them.

    74k GitHub starsUsed in 1 repo~830 tokens
    Auto-check passed
  • Sets up and drives Ruflo, an npm-installed orchestration layer for multi-agent swarms, persistent memory, routing, hooks and its MCP tool catalog.

    74k GitHub starsUsed in 1 repo~975 tokens
    Auto-check passed
  • Runs claude-flow CLI security scans for input validation, path traversal, SQL injection, XSS, hardcoded secrets and known CVEs, and writes an audit report.

    74k GitHub starsUsed in 1 repo~823 tokens
    Auto-check passed
  • Applies the SPARC method (specification, pseudocode, architecture, refinement, completion) with 17 specialized modes and multi-agent orchestration, from research to deployment.

    74k GitHub starsUsed in 1 repo~829 tokens
    Auto-check passed
  • Coordinates a hierarchical swarm of specialized agents through the claude-flow CLI for work that spans several files or modules at once.

    74k GitHub starsUsed in 1 repo~779 tokens
    Auto-check passed
  • Finds models on the Hugging Face router that lack descriptions in chat-ui's prod.yaml and dev.yaml, researches each one and adds short descriptions.

    74k GitHub starsUsed in 1 repo~600 tokens
    Auto-check passed

Questions about Harness Drift From History

What does Harness Drift From History do?

One-command drift detection. An agent skill from ruvnet/ruflo. Harness Drift From History is an agent skill from ruvnet/ruflo. One-command drift detection.

When should I use Harness Drift From History?

Harness Drift From History fits situations like: tasks that involve Architecture decision records; tasks that involve GitOps.

How do I install Harness Drift From History in Claude Code?

Run `npx skills add ruvnet/ruflo --skill harness-drift-from-history -a claude-code`. Or copy the skill folder (plugins/ruflo-metaharness/skills/harness-drift-from-history in ruvnet/ruflo) into .claude/skills/harness-drift-from-history in your project. Claude Code loads it when a task matches its description.

How do I install Harness Drift From History in Codex?

Run `npx skills add ruvnet/ruflo --skill harness-drift-from-history -a codex`. Or copy the skill folder (plugins/ruflo-metaharness/skills/harness-drift-from-history in ruvnet/ruflo) into .agents/skills/harness-drift-from-history in your project. Codex loads it when a task matches its description.

Can I use Harness Drift From History in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ruvnet/ruflo --skill harness-drift-from-history -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/harness-drift-from-history, .gemini/skills/harness-drift-from-history, .github/skills/harness-drift-from-history and .opencode/skills/harness-drift-from-history in your project.

What does Harness Drift From History need to run?

Going by SKILL.md and its folder, Harness Drift From History needs the command-line tools its instructions call (npx). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Bash.

Does Harness Drift From History access the network?

SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Harness Drift From History safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Harness Drift From History use?

Harness Drift From History is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Harness Drift From History use?

About 632 tokens (SKILL.md is roughly 2.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Harness Drift From History?

Skills that share tags, products or a category with Harness Drift From History: Zizkadb Dev Setup (ZIZKA-AI-SL/ZizkaDB, 129 stars), Change Impact (qshanx/docs-governance, 137 stars), Project Knowledge (radix-ng/primitives, 274 stars) and Requirement Tracing (eclipse-ankaios/ankaios, 125 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Harness Drift From History?

ruvnet (a GitHub user) maintains it in ruvnet/ruflo, which has 74,222 GitHub stars. The repository holds 265 skills in this directory. The repository was last updated on October 10, 2026.

Source: ruvnet/ruflo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.