Files
ruflo/plugins
ea25a05abe fix(ruflo-console): Windows writes go through the host filesystem (#4433) (#4434)
* test(console): fixture file system accepts Windows drive paths

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): Windows project folders are project folders (ADRs, export, catalog, mission cost)

Guards that accepted only a path starting with "/" treated a Windows session
folder (C:\Users\x\proj) as "no project folder is known". Adds hooks/data/paths.ts
(pure string helpers: isAbsolutePath, joinPath, samePath, plus hasParentSegment,
normalizePath, below, trimTrailing, isWindowsPath) and uses it at the absolute-path
guards in adr, event-export, wf-file, plugin-catalog, mission-cost (and the ledger
install path), wf-worktrees, skills-lab, wf-drill-io, facts, ap-envelope and
register. Each caller keeps its own ".." refusal; POSIX paths take the same code
path as before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): protected autopilot folders match ignoring case on Windows paths

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): find the home folder on Windows (sessions, plugin health, What's new)

Implements homeOf function that checks HOME → USERPROFILE → HOMEDRIVE+HOMEPATH
with comprehensive test coverage. Fixes state.home initialization on Windows
where HOME is unset.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): disk writes work on Windows through the host file API

Windows has none of uname, dd, sh, install, mkdir or cp in Claude Code's process
environment, so every console write (Events, Timeline, autopilot journal, ADRs,
exports, .gitignore) failed there. New write flavor host-fs, chosen on win32 (no
uname is run), carries the enumerated writes through $.fs.read/write/exists via
writeVia. Linux GNU and macOS/BSD argv are unchanged (pinned by test).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): autopilot kill flag can be cleared on Windows; document host-fs create window

Windows has no delete, so clearKill rewrites the KILL flag with a fixed marker and
killSeen treats exactly that content as not set (host-fs only); stopNow rewrites
the flag empty so a second stop is seen. POSIX rm/stat behaviour is unchanged.
write-via and wf-file now say host-fs creates are check-then-write (no O_EXCL).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): no Linux-only process probe on Windows; clear probe timers

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): a hive started from the console shows at once

When a start's CLI run exited 0 but its verify fails (the CLI can return
before its state file lands), wait 1 s via host.after, read fresh and verify
once more before reporting the "expected ..." text. No retry when the run
failed; exactly one retry.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* test(console): pin Windows containment, parent-segment and UNC rules in paths.ts

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): workspace keys equal across drive-letter case and trailing separator

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): autopilot start is refused on Windows until atomic appends and Windows-aware path checks exist

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* chore(console): 0.42.2 changelog and version

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(console): read home variables by literal name so the module loads

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* post-merge cleanup: finish #4036 integration

The Option B merge commit (4313013cb) landed cleanly against upstream/main
but a batch of merge-resolution edits in the working tree were not persisted
into the commit itself. This commit finishes the integration:

Path-helper consolidation (abs-path.ts → paths.ts):
- hooks/data/wf-drill-io.ts: add missing paths.ts import for below,
  hasParentSegment, isAbsolutePath, samePath, trimTrailing (fixes 4
  wf-drill-read.spec.ts failures that threw `ReferenceError: isAbsolutePath
  is not defined` at runtime).
- hooks/adr.ts: migrate from ./data/abs-path to ./data/paths, pulling in
  joinPath which is needed at lines 89/94.
- hooks/register.ts: drop the rootedPath import from the deleted
  abs-path.ts; inline the equivalent isAbsolutePath+joinPath expression.
- hooks/data/event-export.ts, hooks/data/wf-file.ts: drop the duplicate
  isAbsolutePath import from the deleted ./abs-path (the main-side wider
  './paths' import already covers it).

VERIFY_RETRY_MS lifecycle (ADR-450 interaction with Marius' feature):
- hooks/runner.ts: extend the retry condition — `verified === 'n/a' &&
  spec.verify !== undefined` also retries, so a snapshot that hasn't
  loaded yet (null, not "no verifier") gets the one-second re-check.

Tests brought in line with the new timing / platform guards:
- tests/tui-actions.spec.ts: settle(600) → settle(1200) at the point the
  runner's VERIFY_RETRY_MS one-second re-check has to resolve before the
  verdict is drawn.
- tests/windows-drive-path-sites.spec.ts: fsWithDir made separator-agnostic
  via a normSeps helper, since joinPath now uses the base path's own
  separator (`\` on a Windows base).

Version bump:
- .claude-plugin/plugin.json, hooks/version.ts, scripts/smoke.sh: 0.44.7
  → 0.44.8.
- CHANGELOG.md: prepend 0.44.8 entry crediting #4036 and @socrates6969.

Verified: full console suite 3400 total · 3362 pass · 15 fail · 23 skipped.
Every one of the 15 remaining fails is pre-existing on main or a
platform/env limitation (Windows chmod, fake-timer timing, codex not
installed) — zero merge-caused failures remain.

Co-Authored-By: RuFlo <ruv@ruv.net>

---------

Co-authored-by: Marius Carlsson <109006081+socrates6969@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Mario Jauvin <marioja@users.noreply.github.com>
Co-authored-by: r <r@x>
2026-10-23 14:04:03 -04:00
..

Ruflo Plugins

32 Claude Code plugins for agent-powered development workflows. Load with --plugin-dir.

Quick Start

# Load specific plugins
claude --plugin-dir plugins/ruflo-core --plugin-dir plugins/ruflo-swarm

# Load all plugins
claude $(ls -d plugins/ruflo-*/ | sed 's|^|--plugin-dir |' | tr '\n' ' ')

Plugin Catalog

Core & Coordination

Plugin Description
ruflo-core MCP server, status, doctor, coder/researcher/reviewer agents
ruflo-swarm Swarm topologies (hierarchical, mesh), Monitor streaming
ruflo-autopilot Autonomous /loop task completion with prediction
ruflo-loop-workers 12 background workers via /loop or CronCreate
ruflo-workflows Workflow templates, parallel execution, branching

Memory & Intelligence

Plugin Description
ruflo-agentdb AgentDB with HNSW vector search (150x-12,500x faster)
ruflo-rag-memory SOTA RAG — hybrid search, Graph RAG, MMR diversity, memory bridge
ruflo-rvf Portable RVF memory format, session persistence
ruflo-ruvector ruvector — FlashAttention-3, Graph RAG, hybrid search, 103 MCP tools, Brain AGI
ruflo-knowledge-graph Entity extraction, relation mapping, pathfinder traversal
ruflo-intelligence SONA neural patterns, trajectory learning, model routing
ruflo-daa Dynamic Agentic Architecture, cognitive patterns

Architecture & Methodology

Plugin Description
ruflo-adr ADR lifecycle — create, index, supersede, compliance checking
ruflo-ddd DDD scaffolding — bounded contexts, aggregates, domain events
ruflo-sparc SPARC methodology with 5 phases and quality gates

Quality & Security

Plugin Description
ruflo-security-audit CVE scanning, dependency vulnerability checks
ruflo-aidefence Prompt injection detection, PII scanning
ruflo-protector Project Anatole: optional learning watchdog for unattended agents (default off)
ruflo-testgen Test gap detection, TDD London School workflow
ruflo-browser Playwright browser automation and testing
agentic-qe-fleet External (Agentic QE, pinned in the marketplace): QE agents, coverage, chaos, TDD skills, agentic-qe MCP server. Install with /plugin install agentic-qe-fleet@ruflo; not in this folder, so --plugin-dir does not load it. Install it from one marketplace only (agentic-qe or ruflo), not both: enabled from both, its mod and commands load twice

Development Tools

Plugin Description
ruflo-jujutsu Diff analysis, risk scoring, reviewer recommendations
ruflo-docs Doc generation, drift detection, API docs
ruflo-ruvllm Local LLM inference, MicroLoRA, chat formatting
ruflo-agent WASM agent sandboxing and gallery
ruflo-plugin-creator Scaffold and validate new plugins
ruflo-migrations Database schema migration management
ruflo-observability Structured logging, tracing, metrics correlation
ruflo-cost-tracker Token usage tracking, budget alerts, cost optimization

Domain-Specific

Plugin Description
ruflo-goals GOAP planning, deep research, horizon tracking
ruflo-federation Zero-trust cross-installation agent federation
ruflo-iot-cognitum Cognitum Seed IoT — trust scoring, anomaly detection, fleet management
ruflo-neural-trader neural-trader — 4 agents, LSTM/Transformer, Rust/NAPI backtesting, 112+ MCP tools
ruflo-market-data Market data ingestion, OHLCV vectorization, pattern matching
Use Case Plugins
Feature development ruflo-core + ruflo-swarm + ruflo-testgen + ruflo-ddd
Security audit ruflo-core + ruflo-security-audit + ruflo-aidefence
Architecture work ruflo-core + ruflo-adr + ruflo-ddd + ruflo-sparc
Deep research ruflo-core + ruflo-goals + ruflo-rag-memory + ruflo-intelligence
Vector search ruflo-core + ruflo-ruvector + ruflo-rag-memory + ruflo-knowledge-graph
IoT development ruflo-core + ruflo-iot-cognitum + ruflo-agentdb
Trading systems ruflo-core + ruflo-neural-trader + ruflo-market-data + ruflo-ruvector
Full stack All 32 plugins

npm Package Integration

Several plugins wrap standalone npm packages for deeper functionality:

Plugin npm Package What It Adds
ruflo-neural-trader neural-trader 112+ MCP tools, Rust/NAPI engine, LSTM/Transformer models
ruflo-ruvector ruvector 103 MCP tools, FlashAttention-3, Graph RAG, Brain AGI
# Install backing packages
npm install neural-trader ruvector

# Add as MCP servers (optional, for direct tool access)
claude mcp add neural-trader -- npx neural-trader mcp start
claude mcp add ruvector -- npx ruvector mcp start

Plugin Structure

Each plugin follows the Claude Code plugin specification:

ruflo-<name>/
  .claude-plugin/plugin.json    # Plugin manifest
  agents/<name>.md              # Agent definitions (frontmatter: name, description, model)
  commands/<name>.md            # CLI command mappings
  skills/<name>/SKILL.md        # Interactive skills (frontmatter: name, description, argument-hint, allowed-tools)
  README.md                     # Plugin documentation

Creating a Plugin

claude --plugin-dir plugins/ruflo-plugin-creator
# Then: /create-plugin my-new-plugin

Or manually: copy any existing plugin directory and modify.

Validation

claude plugin validate plugins/ruflo-<name>

Verification & Discoverability

Every MCP tool description across the 32 plugins must answer "use this over native (Bash/Read/Grep/Glob/Task/TodoWrite) when?" per ADR-112. The rule is enforced by CI:

# Run the audit (scans all MCPTool definitions across all plugins)
node scripts/audit-tool-descriptions.mjs

# Gates: every description must include "Use when …" guidance,
# be ≥ 80 chars, and be unique. Baseline at verification/mcp-tool-baseline.json
# is monotone-decreasing — CI fails on any regression.

Combined with verification/ (Ed25519-signed witness manifest, 103+ documented fixes attested), the plugin surface is regression-protected at three layers: install smoke (npm i), behavioral smoke (paired-tool round-trips), and presence attestation (every load-bearing line of every documented fix). See verification/README.md for the full stack.

License

MIT