wifi-densepose/plugins/ruview/skills/ruview-rvagent/SKILL.md

3.8 KiB

name description
ruview-rvagent Explore and prototype rvAgent + RVF integration for RuView agentic flows. Use when working on cross-cog coordination, operator-facing agents reading BFLD / pose / vitals events live, or persisting agent state alongside sensing data in the same RVF container.

RuView rvAgent + RVF integration

Surface area for wiring vendor/ruvector/crates/rvAgent/ into RuView so the existing sensing pipeline becomes the substrate an agentic flow can read, reason about, and respond to.

Quickstart — published MCP server (@ruvnet/rvagent v0.1.0)

Installing this plugin registers @ruvnet/rvagent as an MCP server. On activation, Claude Code spawns npx -y @ruvnet/rvagent and exposes its tools directly:

Tool Purpose
bfld_last_scan Most recent BFLD event from the sensing server
bfld_subscribe Stream BFLD events for a window
presence_now Current room-level presence state
vitals_get_breathing Latest breathing-rate sample
vitals_get_heart_rate Latest heart-rate sample
vitals_get_all Composite vitals snapshot
vitals_fetch Historical vitals window

Override the sensing-server URL via the RVAGENT_SENSING_URL env var (default http://localhost:3000). Source lives at tools/ruview-mcp/; ADR-124 captures the design.

Smoke-check the wiring: npm view @ruvnet/rvagent version should return 0.1.0 (or newer).

When to use this skill

  • "I want an agent that reacts to BFLD presence in the kitchen and pages the carer."
  • "I need cog-pose-estimation and cog-bfld to negotiate before publishing a synthesized event."
  • "Can the witness chain attest both the sensing event AND the agent decision in one RVF blob?"
  • "How do we keep rvAgent's tool outputs class-3 compliant when the source BFLD event is Restricted?"

Key surfaces

Surface File Notes
rvAgent core vendor/ruvector/crates/rvAgent/rvagent-core/src/agi_container.rs (627 LOC) RVF-compatible state container
rvAgent middleware vendor/ruvector/crates/rvAgent/rvagent-middleware/ Witness, sanitizer, SONA, HNSW
Agent personas vendor/ruvector/crates/rvAgent/.ruv/agents/rvagent-{queen,coder,tester,security}.md Reference patterns
RVF container v2/crates/wifi-densepose-sensing-server/src/rvf_container.rs Add SEG_AGENT_STATE, SEG_DECISION
BFLD event v2/crates/wifi-densepose-bfld/src/event.rs BfldEvent::to_json()ToolOutput
BFLD pipeline handle v2/crates/wifi-densepose-bfld/src/pipeline_handle.rs BfldPipelineHandle::send

Research dossier

Full integration analysis lives at docs/research/rvagent-rvf-integration/README.md.

Three shippable touchpoints, each independent:

  1. RVF wire: two new segment types (SEG_AGENT_STATE = 0x08, SEG_DECISION = 0x09) let rvAgent sessions interleave with RuView sensing sessions in the same blob.
  2. Tool surface: BfldEvent → ToolOutput shim turns BFLD events into agent context with no new IPC.
  3. Cog subagents: cog-pose-estimation / cog-person-count / cog-ha-matter / cog-bfld register as rvAgent subagents under a queen-agent router.

Open questions

  • Workspace inclusion of vendor/ruvector/crates/rvAgent/ (path dep vs published crate)
  • Sync ↔ async adapter (BFLD Publish is sync, rvAgent backends are tokio)
  • Privacy-class composition (does rvAgent's sanitizer consume PrivacyClass?)
  • Soul Signature ↔ SoulMatchOracle bridge
  • Whether BfldPipelineHandle::send lands as a public MCP tool via rvagent-mcp

Next decision

ADR-124 (proposed) — "rvAgent + RVF integration for RuView agentic flows" — would capture segment assignments, cog-subagent contract, and the privacy-class composition rule. Land before scaffolding v2/crates/wifi-densepose-agent.