Repository navigation
v3.60.0 — ruRE reverse-engineering tools, console page, security fixes
Minor release: @claude-flow/cli, claude-flow, ruflo 3.60.0, with @claude-flow/hooks 3.0.2 and @claude-flow/mcp 3.1.2 published standalone. Backward-compatible additions (six new reverse-engineering MCP tools, a ruRE page in the console) plus security and correctness fixes. The 3.59.x patch releases are not itemised here; this lists what changed since 3.59.17.
Added
- ruRE: static reverse engineering (ruflo-rure 0.4.2, ADR-0001..0005 of the plugin). Six read-only MCP tools —
rure_extract_asar,rure_analyze_js_app,rure_find_feature,rure_analyze_binary(ELF, PE, Mach-O),rure_analyze_dotnet(metadata only) andrure_analyze_evm(bytecode inventory) — that parse a file and never run it. Every string taken from the analyzed file passes the AIDefence gate; results sayscreened: falsewhen the scanner is unavailable. New dependency:@electron/asar. Known gaps: EVM and P/Invoke handling validated on built fixtures only; the.asarscratch folder is not cleaned up; the tools read any path the process can read. ruflo-console0.45.0: a ruRE page in the TOOLS group (ADR-494) with a row per tool, a project-relativesamplefield, and results cleaned of terminal escapes. The tools are needed in the CLI: on 3.59.17 and older the rows say to update.agentic-qe-fleetmarketplace pin moved to v3.15.12 (#4419).
Fixed
- Security:
agentbbsaccepted..in a room id, letting a room log path escape.agentbbs(#4416). - Security (
@claude-flow/mcp3.1.2): MCP session ids were a counter, a timestamp and sixMath.random()characters, so they were guessable; they now usecrypto.randomUUID()(#4418). neural_compresswithmethod: "prune"deleted every stored neural pattern and reported success, because pattern usage is never recorded; it now refuses and leaves the store untouched (#4428, #4423).github_pr_managemerge/close andgithub_issue_trackupdate/close reported success whenghfailed or no record matched, and PR actions ignoredowner/repo; they now fail withgh's error and pass--repo(#4425, #4424).daa_agent_adaptrecordedperformanceScore: 0, and an omitted score, as a 0.8 success; 0 is now a failure, an omitted score records none, and an out-of-range score is rejected (#4427, #4426).- The bridge search looked at only the newest 1000 rows, hiding older ones; the window is back to 10000 and configurable with
CLAUDE_FLOW_SEARCH_WINDOW(#4405, #4397). - The cost-tracker Stop hook stored its record in the session's project instead of
CLAUDE_FLOW_CWD(#4407), anddoctorcould not read the version of aclaude.cmdshim on Windows (#4408) (#4397). - The AgentDB embedder rescue applied only to the first store in a process (#4421).
transport use slim,agent publishandswarm joinnow report "not configured" when the installed AGNTCY SDK lacks the function they call, instead of failing at the call site (#4409, #4376).update allhonours--dry-run(#4398).WorkerDaemonkept two timers for a worker enabled twice (#4412). In@claude-flow/hooks3.0.2: an explicit stop is no longer undone by a pending auto-restart (#4413), a duplicate cluster is counted once (#4415), and fallback embeddings no longer block the event loop for up to 10 s (#4422).ruflo-ai-team'sannotation-review.mdmissed two tools (#4394); the federation peer's standalone TLS lock moved to patched rustls, webpki and quinn-proto (#4414).
Packages
@claude-flow/cli,claude-flow,ruflo3.60.0@claude-flow/hooks3.0.2 and@claude-flow/mcp3.1.2 (standalone)
Also fixed on the way to this release: the CLI's startup update check treated any older registry version with a higher patch number as an update and auto-installed it (a downgrade); an update must now be strictly newer (#4432).
Install: npx ruflo@latest. Console: claude plugin marketplace update ruflo && claude plugin update ruflo-console@ruflo, then restart Claude Code.
🤖 Generated with RuFlo