agentleFS
modeled-information-formatmodeled-information-format/mif-docs-plugin/skills/doc-set-planner/SKILL.md

doc-set-planner

Skill1 starsChanged 34 days agoMITView on GitHub

Plan and decompose a broad documentation subject into a coordinated SET of MIF documents, fan out to the genre member skills, and reconcile the cross-document MIF relationship graph. Use when a request spans multiple documents ("document the auth system", "produce the full spec set for feature X") rather than a single genre artifact.

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    When a semantic corpus is available, search it for each planned member first (see *Semantic discovery* below) and surface strong hits as …

    line 21
  2. Very specific:

    When the optional mif-rs tooling is available (an mif-mcp server or the mif-cli binary — see the mif-corpus skill for resolution order and …

    line 56

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

doc-set-planner

The orchestration engine of the suite. A broad subject is planned and decomposed, not hand-assembled doc-by-doc. One engine + declarative per-group recipes (mirroring an orchestrator -> fan-out pattern): take a subject, decompose it into a group's member documents, fan out to the member genre skills, and reconcile the cross-document MIF relationships[] graph.

Engine flow (genre-agnostic)

  1. Scope — take the subject + target group; load the group recipe from recipes/<group>.json.
  2. Plan — decompose into the recipe's member docs; emit a plan (what each member covers, the shared MIF namespace, the intended cross-link graph). When a semantic corpus is available, search it for each planned member first (see Semantic discovery below) and surface strong hits as "existing coverage — extend instead of create?" decisions in the plan.
  3. Fan-out — invoke each member skill with its slice; members author independently (in parallel where possible).
  4. Reconcile — wire MIF relationships[] across members per the recipe's cross-link contract; dedupe entities. When a corpus is available, offer find-similar results per member as candidate additional relationships[] targets for the author to accept or reject.
  5. Validate — every member passes its own acceptance (mif-validate --level 1) and the set is link-complete: every declared cross-relationships[] target resolves to a produced member.

Recipes (data, not code) — recipes/*.json

RecipeMembersDecompositionCross-link contract
diataxistutorial, how-to, reference, explanationsubject -> 4 user-need modeseach mode links to its siblings
ai-specprd, feature-spec, ai-architecture-docproblem -> solution -> architecturePRD realized-by feature-spec; feature-spec depends-on arch-doc
kirokiro-requirements, kiro-design, kiro-tasksfeature -> req -> design -> taskstasks trace-to design trace-to requirements
architecturearc42-arch-doc, c4-model-diagramsubject -> narrative + diagramsC4 diagrams referenced by matching arc42 sections

What stays standalone

Singletons have no member set and are invoked directly: adr, changelog, sre-runbook, playbook, rust-rfc, python-pep, google-design-doc, engineering, academic, systematic-review, computing-paper, humanities-mla, humanities-chicago, clinical-submission, nist-sp, regulatory-disclosure, compliance-audit, security-pentest, legal-memo, market-research-report, business-plan, sustainability-report, trend-analysis, competitive-quadrant, briefing, exec-summary.

Semantic discovery (optional, via mif-corpus)

When the optional mif-rs tooling is available (an mif-mcp server or the mif-cli binary — see the mif-corpus skill for resolution order and store conventions), the engine uses it at exactly two points:

  • Plan — search the corpus (search_documents / mif-cli search) with each planned member's one-line scope. A hit scoring roughly 0.55 or higher is surfaced in the plan as an existing-coverage decision: extend the found doc, or proceed and cross-link it. State the score and id; the human (or calling context) decides.
  • Reconcile — for each produced member, run find-similar (find_similar_documents / mif-cli find-similar) on its urn:mif: id and offer the top matches as candidate relationships[] targets beyond the recipe's contract. Candidates are suggestions; never write them into a member silently.

Two hard rules. First, the corpus never gates: recipe decomposition, the cross-link contract, and planner-check behave byte-identically with or without it — similarity output adds candidates and decisions, not verdicts. Second, absence is stated, not papered over: with no corpus available the engine runs exactly as before, and if discovery was asked for explicitly, say the tooling is not installed rather than substituting string search.

Link-completeness check

node scripts/planner-check.mjs <recipe>   # asserts every recipe member exists
                                           # and the cross-link graph closes

planner-check is deterministic and corpus-independent by design: it checks the declared cross-link graph over the recipe's declared member set, never similarity.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.