Skip to content

Tool-surface self-documentation: generate agent skills from the live tool registry #30

Description

@hartsock

Feature

Agents should learn modulex from modulex. Generate skill/usage documents directly from the registered tool and step surface, so harness-side docs never drift from the binary.

Proposed shape

  • modulex skills export {dir}: walk the live tool registry (incl. plugin-contributed tools per Plugin architecture: out-of-tree Rust step plugins (modulex-plugin-* crates) #10) and step registry; emit one SKILL.md per tool family — name, when-to-use, input schema rendered as examples, side-effect classification (read-only vs mutating, derived from the tool's declared writes, not heuristics).
  • docs_self MCP tool: the same content as structured data, so a connected agent can self-brief without filesystem access.
  • Side-effect classification is declared, not guessed: tool specs grow a mutates: bool field (store writes, label applications, DM opens = true; everything else false) — feeds both the docs and future policy.
  • Regenerated in CI; a drift check fails the build if committed docs don't match the registry (hook-parity spirit).

Development discipline

Rust-first, jujutsu-style (no panics in lib code, RFC-1574 doc comments, lower-level tests over e2e). Follow Foundation contributor rules + the rust-tdd skill: TDD, regression tests, 80% coverage floor, README per crate, exec/net leashed, generation counters not wall-clock, credentials as references only. Plugin model per #10.

Metadata

Metadata

Assignees

No one assigned

    Labels

    pluginNew plugin / step-type family

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions